diff options
author | einhverfr <einhverfr@4979c152-3d1c-0410-bac9-87ea11338e46> | 2006-09-13 06:45:11 +0000 |
---|---|---|
committer | einhverfr <einhverfr@4979c152-3d1c-0410-bac9-87ea11338e46> | 2006-09-13 06:45:11 +0000 |
commit | 9c7983f5cd23027bdd73694bfc3b5d269af9998b (patch) | |
tree | 61f0c9c0d163c0ffdd3ae8f49412d94058c6a2f4 | |
parent | 3f15acabf8761a9c2e2b9722e184a565262bc501 (diff) |
Added most of the code for batch printing for checks. Doesn't quite work yet
but nothing else should be broken. If we have to, I suppose we could disable
the UI option in the next release if necessary.
git-svn-id: https://ledger-smb.svn.sourceforge.net/svnroot/ledger-smb/trunk@81 4979c152-3d1c-0410-bac9-87ea11338e46
-rw-r--r-- | Changelog | 12 | ||||
-rwxr-xr-x | LedgerSMB/BP.pm | 8 | ||||
-rwxr-xr-x | bin/mozilla/aa.pl | 4 | ||||
-rwxr-xr-x | bin/mozilla/ap.pl | 2 | ||||
-rwxr-xr-x | bin/mozilla/arapprn.pl | 70 | ||||
-rwxr-xr-x | bin/mozilla/bp.pl | 1 |
6 files changed, 90 insertions, 7 deletions
@@ -1,4 +1,14 @@ -Changelog for LedgerSMB v 2.6.17 +Changelog for LedgerSMV 1.1.0 + +* +* Warnings are printed when check stub is truncated +* Protection against duplicate transaction id's. +* FLOAT datatypes removed from database +* Sales Data Report added +* SL2LS.pl now dies if it cannot open the files. +* Corrected directory transversal bug + +Changelog for LedgerSMB v 1.0.0 (Changes relative to the pre-fork SQL-Ledger 2.6.17) diff --git a/LedgerSMB/BP.pm b/LedgerSMB/BP.pm index 098d814b..1d863389 100755 --- a/LedgerSMB/BP.pm +++ b/LedgerSMB/BP.pm @@ -49,7 +49,9 @@ sub get_vc { bin_list => ['oe'], sales_quotation => ['oe'], request_quotation => ['oe'], - timecard => ['jcitems'],); + timecard => ['jcitems'], + check => ['ar'], + ); my $query = ""; my $sth; @@ -123,7 +125,9 @@ sub get_spoolfiles { bin_list => ['oe'], sales_quotation => ['oe'], request_quotation => ['oe'], - timecard => ['jc'],); + timecard => ['jc'], + check => ['ar'], + ); ($form->{transdatefrom}, $form->{transdateto}) = $form->from_to($form->{year}, $form->{month}, $form->{interval}) if $form->{year} && $form->{month}; diff --git a/bin/mozilla/aa.pl b/bin/mozilla/aa.pl index abbbd7da..95e4b3d0 100755 --- a/bin/mozilla/aa.pl +++ b/bin/mozilla/aa.pl @@ -963,6 +963,10 @@ sub post { } if (AA->post_transaction(\%myconfig, \%$form)) { + $form->update_status(\%myconfig); + if ($form->{printandpost}){ + &{ "print_$form->{formname}" }($old_form, 1); + } $form->redirect($locale->text('Transaction posted!')); } else { $form->error($locale->text('Cannot post transaction!')); diff --git a/bin/mozilla/ap.pl b/bin/mozilla/ap.pl index 2bfa2772..607bca42 100755 --- a/bin/mozilla/ap.pl +++ b/bin/mozilla/ap.pl @@ -46,7 +46,7 @@ #====================================================================== use LedgerSMB::PE; -use Ledger::IR; +use LedgerSMB::IR; require "$form->{path}/arap.pl"; require "$form->{path}/arapprn.pl"; diff --git a/bin/mozilla/arapprn.pl b/bin/mozilla/arapprn.pl index 792b01af..6bb808cf 100755 --- a/bin/mozilla/arapprn.pl +++ b/bin/mozilla/arapprn.pl @@ -105,8 +105,21 @@ sub print { } } + if ($filename = $queued{$form->{formname}}) { + $form->{queued} =~ s/$form->{formname} $filename//; + unlink "$spool/$filename"; + $filename =~ s/\..*$//g; + } else { + $filename = time; + $filename .= $$; + } + + if ($form->{printandpost}){ + &post; + } else { + &{ "print_$form->{formname}" }($old_form, 1); + } - &{ "print_$form->{formname}" }($old_form, 1); } @@ -177,8 +190,27 @@ sub print_check { if ($form->{format} =~ /(postscript|pdf)/) { $form->{IN} =~ s/html$/tex/; } + if ($form->{media} eq 'queue') { + + # save status + $form->update_status(\%myconfig); + + $old_form->{queued} = $form->{queued}; + + %audittrail = ( tablename => ($order) ? 'oe' : lc $ARAP, + reference => $form->{"${inv}number"}, + formname => $form->{formname}, + action => 'queued', + id => $form->{id} ); + + $old_form->{audittrail} .= $form->audittrail("", \%myconfig, \%audittrail); + } + + if ($form->{media} !~ /(screen|queue)/) { + + %queued = split / /, $form->{queued}; + - if ($form->{media} !~ /(screen)/) { $form->{OUT} = "| $printer{$form->{media}}"; if ($form->{printed} !~ /$form->{formname}/) { @@ -363,8 +395,39 @@ sub print_transaction { if ($form->{format} =~ /(postscript|pdf)/) { $form->{IN} =~ s/html$/tex/; } + if ($form->{media} eq 'queue') { + %queued = split / /, $form->{queued}; + + if ($filename = $queued{$form->{formname}}) { + $form->{queued} =~ s/$form->{formname} $filename//; + unlink "$spool/$filename"; + $filename =~ s/\..*$//g; + } else { + $filename = time; + $filename .= $$; + } + + $filename .= ($form->{format} eq 'postscript') ? '.ps' : '.pdf'; + $form->{OUT} = ">$spool/$filename"; + + $form->{queued} .= " $form->{formname} $filename"; + $form->{queued} =~ s/^ //; + + # save status + $form->update_status(\%myconfig); + + $old_form->{queued} = $form->{queued}; + + %audittrail = ( tablename => ($order) ? 'oe' : lc $ARAP, + reference => $form->{"${inv}number"}, + formname => $form->{formname}, + action => 'queued', + id => $form->{id} ); + + $old_form->{audittrail} .= $form->audittrail("", \%myconfig, \%audittrail); + } - if ($form->{media} !~ /(screen)/) { + if ($form->{media} !~ /(queue|screen)/) { $form->{OUT} = "| $printer{$form->{media}}"; if ($form->{printed} !~ /$form->{formname}/) { @@ -556,6 +619,7 @@ sub print_options { $form->{selectformat} .= qq| <option value="postscript">|.$locale->text('Postscript').qq| <option value="pdf">|.$locale->text('PDF'); + $media .= qq|<option value="queue">|.$locale->text('Queue'); } $format = qq|<select name=format>$form->{selectformat}</select>|; diff --git a/bin/mozilla/bp.pl b/bin/mozilla/bp.pl index 2981ca21..4dd1bc83 100755 --- a/bin/mozilla/bp.pl +++ b/bin/mozilla/bp.pl @@ -83,6 +83,7 @@ sub search { sales_quotation => { title => 'Quotations', name => 'Customer' }, request_quotation => { title => 'RFQs', name => 'Vendor' }, timecard => { title => 'Time Cards', name => 'Employee' }, + check => {title => 'Check', name => 'Vendor'}, ); $label{invoice}{invnumber} = qq| |