Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 4be32a52

Von Moritz Bunkus vor fast 7 Jahren hinzugefügt

  • ID 4be32a52cae7fbdb06ea0b8c2d3d03f42f90730e
  • Vorgänger 4c56bb5b
  • Nachfolger 93f06915

DATEV: `input_check` für UStID an `formatter`+`valid_check` angepasst

Die Kombination aus `formatter`+`valid_check` kann UStIDs richtig
behandeln, die Leerzeichen enthalten. Daher muss der vorher laufende
`input_check` Leerzeichen ebenfalls ignorieren.

Weiterhin muss der `input_check` auch das gleiche Format erlauben, das
`valid_check` später auch erlaubt — bezogen auf verschiedene Formate
in verschiedenen Ländern. So enhält z.B. der `valid_check` eine
Ausnahme für die Schweiz, für die nur erforderlich ist, dass die UStID
mit `CH` beginnt. Der `input_check` hingegen hat weiterhin darauf
bestanden, dass dahinter zwischen fünf und 13 Wortzeichen kommen.

Unterschiede anzeigen:

SL/DATEV/CSV.pm
228 228
                              max_length      => 15,
229 229
                              type            => 'Text',
230 230
                              default         => '',
231
                              input_check     => sub { my ($check) = @_; return ($check eq '' || $check =~ m/[A-Z]{2}\w{5,13}/) },
231
                              input_check     => sub {
232
                                                       my ($ustid) = @_;
233
                                                       return 1 if ('' eq $ustid);
234
                                                       $ustid =~ s{\s+}{}g;
235
                                                       return ($ustid =~ m/^CH|^[A-Z]{2}\w{5,13}$/);
236
                                                     },
232 237
                              formatter       => sub { my ($input) = @_; $input =~ s/\s//g; return $input },
233 238
                              valid_check     => sub {
234 239
                                                       my ($ustid) = @_;

Auch abrufbar als: Unified diff