1 # @tag: charts_without_taxkey
2 # @description: Fügt für jedes Konto, was keinen Steuerschlüssel hat, den Steuerschlüssel 0 hinzu
3 # @depends: release_3_0_0
4 package SL::DBUpgrade2::charts_without_taxkey;
9 use parent qw(SL::DBUpgrade2::Base);
14 my ($taxkey0_with_taxes_exists) = $self->dbh->selectrow_array("SELECT COUNT(*) FROM tax WHERE taxkey=0 AND NOT rate=0;");
16 if ($taxkey0_with_taxes_exists > 0){
17 print_error_message();
21 my ($taxkey0_exists) = $self->dbh->selectrow_array("SELECT COUNT(*) FROM tax WHERE taxkey=0");
23 if ($taxkey0_exists == 0){
24 my $insert_taxkey0 = <<SQL;
26 (rate, taxkey, taxdescription)
28 (0, 0, 'Keine Steuer');
30 $self->db_query($insert_taxkey0);
31 print $::locale->text("taxkey 0 with taxrate 0 was created.");
34 my $insert_taxkeys = <<SQL;
36 (chart_id, tax_id, taxkey_id, startdate)
38 c.id, (SELECT id FROM tax WHERE taxkey=0), 0, '1970-01-01'
39 FROM chart c WHERE c.id NOT IN (SELECT chart_id FROM taxkeys);
41 $self->db_query($insert_taxkeys);
45 sub print_error_message {
46 print $::form->parse_html_template("dbupgrade/taxkey_update");