From f95864a1a9d840e0e7e0397d0a792f04d17903b1 Mon Sep 17 00:00:00 2001 From: Moritz Bunkus Date: Mon, 2 Nov 2015 14:57:56 +0100 Subject: [PATCH] DATEV: Benutzung undefinierter Werte vermeiden MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Wenn der DATEV-Export vom Payment-Helfer mit aktivierten DATEV-Checks heraus aufgerufen wird, so sind diverse Felder wie die KNE-Kopfdaten nicht gesetzt (werden auch nicht benötigt). --- SL/DATEV.pm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/SL/DATEV.pm b/SL/DATEV.pm index 90fa62073..c1c56c55d 100644 --- a/SL/DATEV.pm +++ b/SL/DATEV.pm @@ -258,12 +258,12 @@ sub clean_temporary_directories { sub _fill { $main::lxdebug->enter_sub(); - my $text = shift; + my $text = shift // ''; my $field_len = shift; my $fill_char = shift; my $alignment = shift || 'right'; - my $text_len = length($text // ''); + my $text_len = length $text; if ($field_len < $text_len) { $text = substr $text, 0, $field_len; @@ -674,7 +674,7 @@ sub make_kne_data_header { $header .= _fill($stamm->{dfvkz}, 2, '0'); $header .= _fill($stamm->{beraternr}, 7, '0'); $header .= _fill($stamm->{mandantennr}, 5, '0'); - $header .= _fill($stamm->{abrechnungsnr} . $jahr, 6, '0'); + $header .= _fill(($stamm->{abrechnungsnr} // '') . $jahr, 6, '0'); $header .= $self->from ? $self->from->strftime('%d%m%y') : ''; $header .= $self->to ? $self->to->strftime('%d%m%y') : ''; @@ -899,10 +899,10 @@ sub kne_buchungsexport { if ($transaction->[$haben]->{'name'} ne "") { $buchungstext = "\x1E" . $transaction->[$haben]->{'name'} . "\x1C"; } - if ($transaction->[$haben]->{'ustid'} ne "") { + if (($transaction->[$haben]->{'ustid'} // '') ne "") { $ustid = "\xBA" . $transaction->[$haben]->{'ustid'} . "\x1C"; } - if ($transaction->[$haben]->{'duedate'} ne "") { + if (($transaction->[$haben]->{'duedate'} // '') ne "") { $belegfeld2 = "\xBE" . &datetofour($transaction->[$haben]->{'duedate'}, 1) . "\x1C"; } } -- 2.20.1