Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 11e6f144

Von Udo Spallek vor etwa 18 Jahren hinzugefügt

  • ID 11e6f144c6af375d7b061bde6484266884d6f636
  • Vorgänger 563c29dd
  • Nachfolger ac0c6a86

Bug 528 solved. Better Taxbird export for USTVA.

Unterschiede anzeigen:

bin/mozilla/ustva.pl
#$form->{"iconv"} = Text::Iconv->new($myconfig{dbcharset}, "UTF-8");
#my $iconv = $self->{"iconv"};
#$iconv->convert($variable);
if ($form->{period} =~ /^[4]\d$/ ){
my %periods = ( # Lx => taxbird
'41' => '12',
......
foreach my $quarter ( keys %periods ) {
$form->{taxbird_period} = $periods{$quarter} if ( $form->{period} eq $quarter);
}
my %lands = ( # Lx => taxbird # TODO: besser als array...
'Baden W?rtemberg' => '0',
'Bayern' => '1',
'Berlin' => '2',
'Brandenburg' => '3',
'Bremen' => '4',
'Hamburg' => '5',
'Hessen' => '6',
'Mecklenburg Vorpommern' => '7',
'Niedersachsen' => '8',
'Nordrhein Westfalen' => '9',
'Rheinland Pfalz' => '10',
'Saarland' => '11',
'Sachsen' => '12',
'Sachsen Anhalt' => '13',
'Schleswig Holstein' => '14',
'Th?ringen' => '15',
);
foreach my $land ( keys %lands ){
$form->{taxbird_land_nr} = $lands{$land} if ($form->{elsterland} eq $land );
}
$form->{co_zip} = $form->{co_city};
$form->{co_zip} =~ s/\D//g;
$form->{co_city} =~ s/\d//g;
$form->{co_city} =~ s/^\s//g;
($form->{co_phone_prefix}, $form->{co_phone}) = split("-", $form->{tel});
$form->{co_phone_prefix} =~ s/\s//g;
$form->{co_phone} =~ s/\s//g;
$form->{taxbird_steuernummer} = $form->{steuernummer};
# $form->{taxbird_steuernummer} =~ s/\D//g;
$form->{taxbird_steuernummer} =~ s/\///; # ersten Querstrich ersetzen
# Numberformatting for Taxbird
my $temp_numberformat = $myconfig{numberformat};
# Numberformat must be '1000,00' for Taxbird ?!
$myconfig{numberformat} = '1000,00';
foreach my $number (@category_cent) {
$form->{$number} = ( $form->{$number} !=0 ) ? $form->format_amount(\%myconfig, $form->{$number}, '2', '') : '';
}
foreach my $number (@category_euro) {
$form->{$number} = ( $form->{$number} !=0 ) ? $form->format_amount(\%myconfig, $form->{$number}, '0', '') : '';
}
# Re-set Numberformat
$myconfig{numberformat} = $temp_numberformat;
} elsif ($form->{period} =~ /^\d+$/ ) {
$form->{period} =~ s/^0//g;
my $period = $form->{period};
......
exit(0);
}
my %lands = ( # Lx => taxbird # TODO: besser als array...
'Baden W?rtemberg' => '0',
'Bayern' => '1',
'Berlin' => '2',
'Brandenburg' => '3',
'Bremen' => '4',
'Hamburg' => '5',
'Hessen' => '6',
'Mecklenburg Vorpommern' => '7',
'Niedersachsen' => '8',
'Nordrhein Westfalen' => '9',
'Rheinland Pfalz' => '10',
'Saarland' => '11',
'Sachsen' => '12',
'Sachsen Anhalt' => '13',
'Schleswig Holstein' => '14',
'Th?ringen' => '15',
);
foreach my $land ( keys %lands ){
$form->{taxbird_land_nr} = $lands{$land} if ($form->{elsterland} eq $land );
}
$form->{co_zip} = $form->{co_city};
$form->{co_zip} =~ s/\D//g;
$form->{co_city} =~ s/\d//g;
$form->{co_city} =~ s/^\s//g;
($form->{co_phone_prefix}, $form->{co_phone}) = split("-", $form->{tel});
$form->{co_phone_prefix} =~ s/\s//g;
$form->{co_phone} =~ s/\s//g;
$form->{taxbird_steuernummer} = $form->{steuernummer};
# $form->{taxbird_steuernummer} =~ s/\D//g;
$form->{taxbird_steuernummer} =~ s/\///; # ersten Querstrich ersetzen
# Numberformatting for Taxbird
my $temp_numberformat = $myconfig{numberformat};
# Numberformat must be '1000,00' for Taxbird ?!
$myconfig{numberformat} = '1000,00';
foreach my $number (@category_cent) {
$form->{$number} = ( $form->{$number} !=0 ) ? $form->format_amount(\%myconfig, $form->{$number}, '2', '') : '';
}
foreach my $number (@category_euro) {
$form->{$number} = ( $form->{$number} !=0 ) ? $form->format_amount(\%myconfig, $form->{$number}, '0', '') : '';
}
# Re-set Numberformat
$myconfig{numberformat} = $temp_numberformat;
# push Kennziffern to <%foreach Array fo easyer
# output in xml format. Thx to Moritz.
my %taxbird_id_for = (
'511' => 'Kz51-calc',
'861' => 'Kz86-calc',
'971' => 'Kz97-calc',
'931' => 'Kz93-calc',
'811' => 'Kz81-calc',
'891' => 'Kz89-calc',
'Z45' => 'uebertrag',
'Z53' => 'ust-sum',
'Z62' => 'ust-minus-vost',
'Z65' => 'ust-sum+69',
'Z67' => 'ust-vz',
);
for my $kennziffer (@category_cent, @category_euro) {
next if ($kennziffer eq 'Z43');
if ($form->{$kennziffer} != 0){
if (defined $taxbird_id_for{$kennziffer}) {
push(@{ $form->{id}}, $taxbird_id_for{$kennziffer});
} else {
push(@{ $form->{id}}, "Kz$kennziffer");
}
push(@{ $form->{amount}}, $form->{$kennziffer});
}
}
} elsif ( $form->{format} eq '' ){ # No format error.
$form->header;
USTVA::error( $locale->text('Application Error. No Format given' ) . "!");
......
exit(0);
}
if ( $form->{period} eq '13' and $form->{format} ne 'html') {
$form->header;
USTVA::info(
templates/German-taxbird.txb
;; This file was produced using lx-office
;; This file was produced by lx-office
;; for using in taxbird.
;; You probably don't want to touch this
;; file. In case you do want it anyway,
......
("zeitraum" . "<%taxbird_period%>")
("stnr" . "<%taxbird_steuernummer%>")
<%if 10%>("Kz10" . "<%10%>")<%end 10%>
<%if 22%>("Kz22" . "<%22%>")<%end 22%>
<%if 26%>("Kz26" . "<%26%>")<%end 26%>
<%if 29%>("Kz29" . "<%29%>")<%end 29%>
<%if 35%>("Kz35" . "<%35%>")<%end 35%>
<%if 36%>("Kz36" . "<%36%>")<%end 36%>
<%if 39%>("Kz39" . "<%39%>")<%end 39%>
<%if 41%>("Kz41" . "<%41%>")<%end 41%>
<%if 42%>("Kz42" . "<%42%>")<%end 42%>
<%if 43%>("Kz43" . "<%43%>")<%end 43%>
<%if 44%>("Kz44" . "<%44%>")<%end 44%>
<%if 45%>("Kz45" . "<%45%>")<%end 45%>
<%if 48%>("Kz48" . "<%48%>")<%end 48%>
<%if 49%>("Kz49" . "<%49%>")<%end 49%>
<%if 51%>("Kz51" . "<%51%>")<%end 51%>
<%if 511%>("Kz51-calc" . "<%511%>")<%end 511%>
<%if 52%>("Kz52" . "<%52%>")<%end 52%>
<%if 53%>("Kz53" . "<%53%>")<%end 53%>
<%if 59%>("Kz59" . "<%59%>")<%end 59%>
<%if 60%>("Kz60" . "<%60%>")<%end 60%>
<%if 61%>("Kz61" . "<%61%>")<%end 61%>
<%if 62%>("Kz62" . "<%62%>")<%end 62%>
<%if 63%>("Kz63" . "<%63%>")<%end 63%>
<%if 64%>("Kz64" . "<%64%>")<%end 64%>
<%if 65%>("Kz65" . "<%65%>")<%end 65%>
<%if 66%>("Kz66" . "<%66%>")<%end 66%>
<%if 67%>("Kz67" . "<%67%>")<%end 67%>
<%if 69%>("Kz69" . "<%69%>")<%end 69%>
<%if 73%>("Kz73" . "<%73%>")<%end 73%>
<%if 74%>("Kz74" . "<%74%>")<%end 74%>
<%if 76%>("Kz76" . "<%76%>")<%end 76%>
<%if 77%>("Kz77" . "<%77%>")<%end 77%>
<%if 80%>("Kz80" . "<%80%>")<%end 80%>
<%if 83%>("Kz83" . "<%83%>")<%end 83%>
<%if 84%>("Kz84" . "<%84%>")<%end 84%>
<%if 85%>("Kz85" . "<%85%>")<%end 85%>
<%if 86%>("Kz86" . "<%86%>")<%end 86%>
<%if 861%>("Kz86-calc" . "<%861%>")<%end 861%>
<%if 91%>("Kz91" . "<%91%>")<%end 91%>
<%if 93%>("Kz93" . "<%93%>")<%end 93%>
<%if 931%>("Kz93-calc" . "<%931%>")<%end 931%>
<%if 94%>("Kz94" . "<%94%>")<%end 94%>
<%if 95%>("Kz95" . "<%95%>")<%end 95%>
<%if 96%>("Kz96" . "<%96%>")<%end 96%>
<%if 97%>("Kz97" . "<%97%>")<%end 97%>
<%if 971%>("Kz97-calc" . "<%971%>")<%end 971%>
<%if 98%>("Kz98" . "<%98%>")<%end 98%>
<%foreach id%>
("<%id%>" . "<%amount%>")<%end%>
))

Auch abrufbar als: Unified diff