SelfTest - bessere Fehlerbehandlung für Einbinden der Test-Module
[kivitendo-erp.git] / SL / BackgroundJob / CreatePeriodicInvoices.pm
index 651552a..2df2a30 100644 (file)
@@ -107,7 +107,7 @@ sub _generate_time_period_variables {
 sub _replace_vars {
   my (%params) = @_;
   my $sub      = $params{attribute};
-  my $str      = $params{object}->$sub;
+  my $str      = $params{object}->$sub // '';
   my $sub_fmt  = lc($params{attribute_format} // 'text');
 
   my ($start_tag, $end_tag) = $sub_fmt eq 'html' ? ('&lt;%', '%&gt;') : ('<%', '%>');
@@ -200,6 +200,7 @@ sub _create_periodic_invoice {
     $invoice->assign_attributes(deliverydate => $period_start_date,
                                 intnotes     => $intnotes,
                                 employee     => $order->employee, # new_from sets employee to import user
+                                direct_debit => $config->direct_debit,
                                );
 
     _replace_vars(object => $invoice, vars => $time_period_vars, attribute => $_, attribute_format => ($_ eq 'notes' ? 'html' : 'text')) for qw(notes intnotes transaction_description);
@@ -316,6 +317,14 @@ sub _print_invoice {
   $form->{OUT}          = $config->printer->printer_command;
   $form->{OUT_MODE}     = '|-';
 
+  $form->{TEMPLATE_DRIVER_OPTIONS} = {
+    variable_content_types => {
+      longdescription => 'html',
+      partnotes       => 'html',
+      notes           => 'html',
+    },
+  };
+
   $form->prepare_for_printing;
 
   $form->throw_on_error(sub {