X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FUSTVA.pm;h=d387b5ec448500232aee7d6312a9f01f3043ca85;hb=8c4f656c35da0888f5c19438064bd5c76b41c875;hp=ed0166986732d0a565091292328f9755ed3d9f00;hpb=f8779cd3dec79719e2b4ef77ee70f44afabad8d8;p=kivitendo-erp.git diff --git a/SL/USTVA.pm b/SL/USTVA.pm index ed0166986..d387b5ec4 100644 --- a/SL/USTVA.pm +++ b/SL/USTVA.pm @@ -1,5 +1,5 @@ #===================================================================== -# Lx-Office ERP +# kivitendo ERP # Copyright (c) 2004 by Udo Spallek, Aachen # # Author: Udo Spallek @@ -29,23 +29,26 @@ use List::Util qw(first); use SL::DBUtils; +use utf8; +use strict; + my @tax_office_information = ( - { 'id' => 8, 'name' => 'Baden Württemberg', 'taxbird_nr' => '0', 'elster_format' => 'FF/BBB/UUUUP', }, + { 'id' => 8, 'name' => 'Baden-Württemberg', 'taxbird_nr' => '0', 'elster_format' => 'FF/BBB/UUUUP', }, { 'id' => 9, 'name' => 'Bayern', 'taxbird_nr' => '1', 'elster_format' => 'FFF/BBB/UUUUP', }, { 'id' => 11, 'name' => 'Berlin', 'taxbird_nr' => '2', 'elster_format' => 'FF/BBB/UUUUP', }, { 'id' => 12, 'name' => 'Brandenburg', 'taxbird_nr' => '3', 'elster_format' => 'FFF/BBB/UUUUP', }, { 'id' => 4, 'name' => 'Bremen', 'taxbird_nr' => '4', 'elster_format' => 'FF BBB UUUUP', }, { 'id' => 2, 'name' => 'Hamburg', 'taxbird_nr' => '5', 'elster_format' => 'FF/BBB/UUUUP', }, { 'id' => 6, 'name' => 'Hessen', 'taxbird_nr' => '6', 'elster_format' => '0FF BBB UUUUP', }, - { 'id' => 13, 'name' => 'Mecklenburg Vorpommern', 'taxbird_nr' => '7', 'elster_format' => 'FFF/BBB/UUUUP', }, + { 'id' => 13, 'name' => 'Mecklenburg-Vorpommern', 'taxbird_nr' => '7', 'elster_format' => 'FFF/BBB/UUUUP', }, { 'id' => 3, 'name' => 'Niedersachsen', 'taxbird_nr' => '8', 'elster_format' => 'FF/BBB/UUUUP', }, - { 'id' => 5, 'name' => 'Nordrhein Westfalen', 'taxbird_nr' => '9', 'elster_format' => 'FFF/BBBB/UUUP', }, - { 'id' => 7, 'name' => 'Rheinland Pfalz', 'taxbird_nr' => '10', 'elster_format' => 'FF/BBB/UUUU/P', }, + { 'id' => 5, 'name' => 'Nordrhein-Westfalen', 'taxbird_nr' => '9', 'elster_format' => 'FFF/BBBB/UUUP', }, + { 'id' => 7, 'name' => 'Rheinland-Pfalz', 'taxbird_nr' => '10', 'elster_format' => 'FF/BBB/UUUU/P', }, { 'id' => 10, 'name' => 'Saarland', 'taxbird_nr' => '11', 'elster_format' => 'FFF/BBB/UUUUP', }, { 'id' => 14, 'name' => 'Sachsen', 'taxbird_nr' => '12', 'elster_format' => 'FFF/BBB/UUUUP', }, - { 'id' => 15, 'name' => 'Sachsen Anhalt', 'taxbird_nr' => '13', 'elster_format' => 'FFF/BBB/UUUUP', }, - { 'id' => 1, 'name' => 'Schleswig Holstein', 'taxbird_nr' => '14', 'elster_format' => 'FF BBB UUUUP', }, - { 'id' => 16, 'name' => 'Thüringen', 'taxbird_nr' => '15', 'elster_format' => 'FFF/BBB/UUUUP', }, + { 'id' => 15, 'name' => 'Sachsen-Anhalt', 'taxbird_nr' => '13', 'elster_format' => 'FFF/BBB/UUUUP', }, + { 'id' => 1, 'name' => 'Schleswig-Holstein', 'taxbird_nr' => '14', 'elster_format' => 'FF BBB UUUUP', }, + { 'id' => 16, 'name' => 'Thüringen', 'taxbird_nr' => '15', 'elster_format' => 'FFF/BBB/UUUUP', }, ); sub new { @@ -67,7 +70,7 @@ sub _init { foreach (@tax_office_information) { my $entry = \%{ $_ }; - $entry->{name} = $main::locale->{iconv_iso8859}->convert($entry->{name}); + $entry->{name} = $::locale->{iconv_utf8}->convert($entry->{name}); push @{ $self->{tax_office_information} }, $entry; } } @@ -99,8 +102,6 @@ sub report_variables { # Get all positions for taxreport out of the database # Needs Databaseupdate Pg-upgrade2/USTVA_abstraction.pl - return unless defined wantarray; - my ( $self, $arg_ref) = @_; @@ -110,8 +111,8 @@ sub report_variables { my $attribute = $arg_ref->{attribute}; # my $dec_places = (defined $arg_ref->{dec_places}) ? $arg_ref->{dec_places}:undef; - my $where_type = "AND tax.report_headings.type = '$type'" if ( $type ); - my $where_dcp = "AND tax.report_variables.dec_places = '$dec_places'" if ( defined $dec_places ); + my $where_type = $type ? "AND tax.report_headings.type = '$type'" : ''; + my $where_dcp = defined $dec_places ? "AND tax.report_variables.dec_places = '$dec_places'" : ''; my $query = qq| SELECT $attribute @@ -145,10 +146,14 @@ sub report_variables { sub create_steuernummer { $main::lxdebug->enter_sub(); - $part = $form->{part}; - $patterncount = $form->{patterncount}; - $delimiter = $form->{delimiter}; - $elster_pattern = $form->{elster_pattern}; + my $form = $main::form; + + our ($elster_FFFF); + + my $part = $form->{part}; + my $patterncount = $form->{patterncount}; + my $delimiter = $form->{delimiter}; + my $elster_pattern = $form->{elster_pattern}; # rebuild steuernummer and elstersteuernummer # es gibt eine gespeicherte steuernummer $form->{steuernummer} @@ -157,9 +162,9 @@ sub create_steuernummer { my $h = 0; my $i = 0; - $steuernummer_new = $part; - $elstersteuernummer_new = $elster_FFFF; - $elstersteuernummer_new .= '0'; + my $steuernummer_new = $part; + my $elstersteuernummer_new = $elster_FFFF; + $elstersteuernummer_new .= '0'; for ($h = 1; $h < $patterncount; $h++) { $steuernummer_new .= qq|$delimiter|; @@ -181,6 +186,7 @@ sub steuernummer_input { $main::lxdebug->enter_sub(); my ($self, $elsterland, $elsterFFFF, $steuernummer) = @_; + our ($elster_FFFF, $elster_land); my $steuernummer_input = ''; @@ -275,9 +281,9 @@ sub fa_auswahl { # use SL::Form; - # Referenz wird übergeben, hash of hash wird nicht - # in neues Hash kopiert, sondern direkt über die Referenz verändert - # Prototyp für diese Konstruktion + # Referenz wird übergeben, hash of hash wird nicht + # in neues Hash kopiert, sondern direkt über die Referenz verändert + # Prototyp für diese Konstruktion my ($self, $land, $elsterFFFF, $elster_init) = @_; @@ -286,6 +292,7 @@ sub fa_auswahl { my $ffff = ''; my $checked = ''; $checked = 'checked' if ($elsterFFFF eq '' and $land eq ''); + my %elster_land_fa; my $fa_auswahl = qq|