X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=sidebyside;f=bin%2Fmozilla%2Far.pl;h=969d73d2afab50506cea37cf9b333080f2a391d3;hb=ee56f1b20ab915671ded297f593c0e2e245bad70;hp=059bfc415e5a35bafaa8a715d8e400de53f6b7fc;hpb=60fd91996b9b38f11519f467e8b0664448db2755;p=kivitendo-erp.git
diff --git a/bin/mozilla/ar.pl b/bin/mozilla/ar.pl
index 059bfc415..969d73d2a 100644
--- a/bin/mozilla/ar.pl
+++ b/bin/mozilla/ar.pl
@@ -24,7 +24,8 @@
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+# MA 02110-1335, USA.
#======================================================================
#
# Accounts Receivables
@@ -37,13 +38,15 @@ use List::UtilsBy qw(sort_by);
use SL::AR;
use SL::FU;
+use SL::GL;
use SL::IS;
-use SL::PE;
+use SL::DB::Business;
+use SL::DB::Currency;
use SL::DB::Default;
+use SL::DB::Employee;
use SL::DB::Invoice;
use SL::ReportGenerator;
-require "bin/mozilla/arap.pl";
require "bin/mozilla/common.pl";
require "bin/mozilla/reportgenerator.pl";
@@ -81,7 +84,7 @@ use strict;
sub add {
$main::lxdebug->enter_sub();
- $main::auth->assert('general_ledger');
+ $main::auth->assert('ar_transactions');
my $form = $main::form;
my %myconfig = %main::myconfig;
@@ -101,6 +104,12 @@ sub add {
$form->{initial_transdate} = $form->{transdate};
create_links(dont_save => 1);
$form->{transdate} = $form->{initial_transdate};
+
+ if ($form->{customer_id}) {
+ my $last_used_ar_chart = SL::DB::Customer->load_cached($form->{customer_id})->last_used_ar_chart;
+ $form->{"AR_amount_chart_id_1"} = $last_used_ar_chart->id if $last_used_ar_chart;
+ }
+
&display_form;
$main::lxdebug->leave_sub();
}
@@ -108,7 +117,7 @@ sub add {
sub edit {
$main::lxdebug->enter_sub();
- $main::auth->assert('general_ledger');
+ $main::auth->assert('ar_transactions');
my $form = $main::form;
@@ -127,7 +136,7 @@ sub edit {
sub display_form {
$main::lxdebug->enter_sub();
- $main::auth->assert('general_ledger');
+ $main::auth->assert('ar_transactions');
my $form = $main::form;
@@ -146,7 +155,7 @@ sub _retrieve_invoice_object {
sub create_links {
$main::lxdebug->enter_sub();
- $main::auth->assert('general_ledger');
+ $main::auth->assert('ar_transactions');
my %params = @_;
my $form = $main::form;
@@ -159,45 +168,19 @@ sub create_links {
if (!$params{dont_save}) {
%saved = map { ($_ => $form->{$_}) } qw(direct_debit id taxincluded);
$saved{duedate} = $form->{duedate} if $form->{duedate};
+ $saved{currency} = $form->{currency} if $form->{currency};
}
IS->get_customer(\%myconfig, \%$form);
$form->{$_} = $saved{$_} for keys %saved;
- $form->{oldcustomer} = "$form->{customer}--$form->{customer_id}";
$form->{rowcount} = 1;
+ $form->{AR_chart_id} = $form->{acc_trans} && $form->{acc_trans}->{AR} ? $form->{acc_trans}->{AR}->[0]->{chart_id} : $form->{AR_links}->{AR}->[0]->{chart_id};
# currencies
$form->{defaultcurrency} = $form->get_default_currency(\%myconfig);
- map { $form->{selectcurrency} .= "