- # Localise $a, $b
- my ($caller_a, $caller_b) = do
- {
- my $pkg = caller();
- no strict 'refs';
- \*{$pkg.'::a'}, \*{$pkg.'::b'};
- };
-
- my $limit = $#A > $#B? $#A : $#B; # loop iteration limit
-
- local(*$caller_a, *$caller_b);
-
- # This map expression is also the return value.
- map { my $b_index = $_;
- map { my $a_index = $_;
- # assign to $a, $b as refs to caller's array elements
- (*$caller_a, *$caller_b) = \($A[$a_index], $B[$b_index]);
- $op->(); # perform the transformation
- } 0 .. $#A;
- } 0 .. $#B;
+# Functions to call add routines beneath different reports
+
+sub sales_invoice {
+ $main::lxdebug->enter_sub();
+
+ print $::form->redirect_header('is.pl?action=add&type=invoice');
+
+ $main::lxdebug->leave_sub();
+}
+
+sub ar_transaction {
+ $main::lxdebug->enter_sub();
+
+ print $::form->redirect_header('ar.pl?action=add');
+
+ $main::lxdebug->leave_sub();
+}
+
+sub vendor_invoice {
+ $main::lxdebug->enter_sub();
+
+ print $::form->redirect_header('ir.pl?action=add&type=invoice');
+
+ $main::lxdebug->leave_sub();
+}
+
+sub ap_transaction {
+ $main::lxdebug->enter_sub();
+
+ print $::form->redirect_header('ap.pl?action=add');
+
+ $main::lxdebug->leave_sub();
+}
+
+sub gl_transaction {
+ $main::lxdebug->enter_sub();
+
+ print $::form->redirect_header('gl.pl?action=add');
+
+ $main::lxdebug->leave_sub();
+}
+
+if ($::use_rdbo) {
+ eval {
+ require SL::DB::Helpers::Mappings;
+ sub db {
+ goto &SL::DB::Helpers::Mappings::db;
+ }
+ } or die $@;