X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FDN.pm;h=2eeed676295177efede165177c4859299c6e8bb3;hb=cb347e6ae7d6e1d67b25bafec66eb78c5fa232b1;hp=a1db029ca42b8f38e5202b9868fde1b0cd23b858;hpb=20993efbc44d0ccae27ff32a5f9e3f30a49180c8;p=kivitendo-erp.git diff --git a/SL/DN.pm b/SL/DN.pm index a1db029ca..2eeed6762 100644 --- a/SL/DN.pm +++ b/SL/DN.pm @@ -36,6 +36,7 @@ package DN; use SL::Common; use SL::DBUtils; +use SL::DB::Default; use SL::GenericTranslations; use SL::IS; use SL::Mailer; @@ -208,7 +209,7 @@ sub create_invoice_for_fees { $query = qq|INSERT INTO ar (id, invnumber, transdate, gldate, customer_id, taxincluded, amount, netamount, paid, duedate, - invoice, curr, notes, + invoice, currency_id, notes, employee_id) VALUES ( ?, -- id @@ -228,7 +229,7 @@ sub create_invoice_for_fees { -- duedate: (SELECT duedate FROM dunning WHERE dunning_id = ? LIMIT 1), 'f', -- invoice - ?, -- curr + (SELECT id FROM currencies WHERE name = ?), -- curr ?, -- notes -- employee_id: (SELECT id FROM employee WHERE login = ?) @@ -368,6 +369,7 @@ sub send_email { my $template = SL::Template::create(type => 'PlainText', form => $form, myconfig => $myconfig); my $mail = Mailer->new(); + $mail->{charset} = $::lx_office_conf{system}->{dbcharset} || Common::DEFAULT_CHARSET; $mail->{from} = $myconfig->{email}; $mail->{to} = $ref->{recipient}; $mail->{subject} = $template->parse_block($ref->{email_subject}); @@ -393,7 +395,9 @@ sub set_template_options { my ($self, $myconfig, $form) = @_; - $form->{templates} = "$myconfig->{templates}"; + my $defaults = SL::DB::Default->get; + $form->error($::locale->text('No print templates have been created for this client yet. Please do so in the client configuration.')) if !$defaults->templates; + $form->{templates} = $defaults->templates; $form->{language} = $form->get_template_language($myconfig); $form->{printer_code} = $form->get_printer_code($myconfig); @@ -432,7 +436,7 @@ sub set_template_options { $form->{IN} = undef; for my $filename (@template_files) { - if (-f "$form->{templates}/$filename") { + if (-f ($defaults->templates . "/$filename")) { $form->{IN} = $filename; last; } @@ -483,6 +487,7 @@ sub get_invoices { "ordnumber" => "a.ordnumber", "invnumber" => "a.invnumber", "notes" => "a.notes", + "country" => "ct.country", ); foreach my $key (keys(%columns)) { next unless ($form->{$key}); @@ -509,7 +514,7 @@ sub get_invoices { $query = qq|SELECT - a.id, a.ordnumber, a.transdate, a.invnumber, a.amount, + a.id, a.ordnumber, a.transdate, a.invnumber, a.amount, a.language_id, ct.name AS customername, a.customer_id, a.duedate, a.amount - a.paid AS open_amount, @@ -669,7 +674,7 @@ sub get_dunning { my $sortorder = join ', ', map { "$_ $sortdir" } @{ $sort_columns{$sortkey} }; my $query = - qq|SELECT a.id, a.ordnumber, a.invoice, a.transdate, a.invnumber, a.amount, + qq|SELECT a.id, a.ordnumber, a.invoice, a.transdate, a.invnumber, a.amount, a.language_id, ct.name AS customername, ct.id AS customer_id, a.duedate, da.fee, da.interest, dn.dunning_description, da.transdate AS dunning_date, da.duedate AS dunning_duedate, da.dunning_id, da.dunning_config_id, @@ -759,7 +764,7 @@ sub print_dunning { ar.transdate, ar.duedate, ar.customer_id, ar.invnumber, ar.ordnumber, ar.cp_id, ar.amount, ar.netamount, ar.paid, - ar.curr, + (SELECT cu.name FROM currencies cu WHERE cu.id=ar.currency_id) AS curr, ar.amount - ar.paid AS open_amount, ar.amount - ar.paid + da.fee + da.interest AS linetotal