From: Bernd Bleßmann Date: Fri, 16 Aug 2013 14:46:24 +0000 (+0200) Subject: _check_multiplexed setzt error im Fehlerfall. X-Git-Tag: release-3.1.0beta1~22^2~137 X-Git-Url: http://wagnertech.de/git?a=commitdiff_plain;h=a6372bfafa12301c00d77f7b806810177ced0e15;p=kivitendo-erp.git _check_multiplexed setzt error im Fehlerfall. --- diff --git a/SL/Helper/Csv.pm b/SL/Helper/Csv.pm index 491c393b6..85f175889 100644 --- a/SL/Helper/Csv.pm +++ b/SL/Helper/Csv.pm @@ -111,13 +111,31 @@ sub _check_multiplexed { if (scalar @profile > 1) { # Each profile needs a class and a row_ident my $info_ok = all { defined $_->{class} && defined $_->{row_ident} } @profile; + $self->_push_error([ + 0, + "missing class or row_ident in one of the profiles for multiplexed data", + 0, + 0]) unless $info_ok; # If header is given, there need to be a header for each profile # and no empty headers. if ($info_ok && $self->header) { my @header = @{ $self->header }; - $info_ok = $info_ok && scalar @profile == scalar @header; - $info_ok = $info_ok && all { scalar @$_ > 0} @header; + my $t_ok = scalar @profile == scalar @header; + $self->_push_error([ + 0, + "number of headers and number of profiles must be the same for multiplexed data", + 0, + 0]) unless $t_ok; + $info_ok = $info_ok && $t_ok; + + $t_ok = all { scalar @$_ > 0} @header; + $self->_push_error([ + 0, + "no empty headers are allowed for multiplexed data", + 0, + 0]) unless $t_ok; + $info_ok = $info_ok && $t_ok; } $self->is_multiplexed($info_ok); return $info_ok;