1 # @tag: charts_without_taxkey
2 # @description: Fügt für jedes Konto, was keinen Steuerschlüssel hat, den Steuerschlüssel 0 hinzu
10 die("This script cannot be run from the command line.") unless ($main::form);
14 die($dbup_locale->text("Database update error:") . "<br>$msg<br>" . $DBI::errstr);
18 my ($query, $may_fail) = @_;
20 if (!$dbh->do($query)) {
21 mydberror($query) unless ($may_fail);
29 my ($taxkey0_with_taxes_exists) = $dbh->selectrow_array("SELECT COUNT(*) FROM tax WHERE taxkey=0 AND NOT rate=0;");
31 if ($taxkey0_with_taxes_exists > 0){
32 print_error_message();
36 my ($taxkey0_exists) = $dbh->selectrow_array("SELECT COUNT(*) FROM tax WHERE taxkey=0");
38 if ($taxkey0_exists == 0){
39 my $insert_taxkey0 = <<SQL;
41 (rate, taxkey, taxdescription)
43 (0, 0, 'Keine Steuer');
45 do_query($insert_taxkey0);
46 print $::locale->text("taxkey 0 with taxrate 0 was created.");
49 my $insert_taxkeys = <<SQL;
51 (chart_id, tax_id, taxkey_id, startdate)
53 c.id, (SELECT id FROM tax WHERE taxkey=0), 0, '1970-01-01'
54 FROM chart c WHERE c.id NOT IN (SELECT chart_id FROM taxkeys);
56 do_query($insert_taxkeys);
60 sub print_error_message {
61 print $main::form->parse_html_template("dbupgrade/taxkey_update");