Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 9df5bd72

Von Moritz Bunkus vor mehr als 18 Jahren hinzugefügt

  • ID 9df5bd727acd137e086ee3bf5020868224797a71
  • Vorgänger ff24c71b
  • Nachfolger 6231ae0a

Datenbankupgrade: Standardbuchungsgruppen mit 16% und 7% fuer SKR03 und SKR04 anlegen.

Unterschiede anzeigen:

locale/de/Pg-upgrade-2.2.0.25-2.2.0.26
$self{texts} = {
'A unit with this name does already exist.' => 'Eine Einheit mit diesem Namen existiert bereits.',
'Database update error:' => 'Database update error:',
'Database update error:' => 'Fehler beim Datenbankupgrade:',
'The base unit does not exist.' => 'Die Basiseinheit existiert nicht.',
'The factor is missing.' => 'Der Faktor fehlt.',
'The name is missing.' => 'Der Name fehlt.',
locale/de/Pg-upgrade-2.2.0.27-2.2.0.28
$self{texts} = {
'Database update error:' => 'Database update error:',
'Database update error:' => 'Fehler beim Datenbankupgrade:',
};
$self{subs} = {
locale/de/Pg-upgrade-2.2.0.28-2.2.0.29
$self{texts} = {
'Database update error:' => 'Fehler beim Datenbankupgrade:',
};
$self{subs} = {
'create_standard_buchungsgruppen' => 'create_standard_buchungsgruppen',
'create_standard_buchungsgruppen_skr03' => 'create_standard_buchungsgruppen_skr03',
'create_standard_buchungsgruppen_skr04' => 'create_standard_buchungsgruppen_skr04',
'mydberror' => 'mydberror',
'myshowerror' => 'myshowerror',
};
1;
locale/de/all
'Database Driver not checked!' => 'Kein Datenbanktreiber ausgew?hlt!',
'Database Host' => 'Datenbankcomputer',
'Database User missing!' => 'Datenbankbenutzer fehlt!',
'Database update error:' => '',
'Database update error:' => 'Fehler beim Datenbankupgrade:',
'Dataset' => 'Datenbank',
'Dataset missing!' => 'Datenbank fehlt!',
'Dataset updated!' => 'Datenbank erneuert!',
sql/Pg-upgrade/Pg-upgrade-2.2.0.28-2.2.0.29.pl
#!/usr/bin/perl
die("This script cannot be run from the command line.") unless ($main::form);
sub mydberror {
my ($msg) = @_;
die($dbup_locale->text("Database update error:") .
"<br>$msg<br>" . $DBI::errstr);
}
sub myshowerror {
my ($msg) = @_;
print($main::form->parse_html_template("dbupgrade/units_error",
{ "message" => $msg }));
return 2;
}
sub create_standard_buchungsgruppen_skr03 {
my $query;
$query = "SELECT COUNT(*) FROM buchungsgruppen " .
"WHERE description = 'Standard 16%'";
my ($count) = $dbh->selectrow_array($query);
if (!$count) {
$query =
"INSERT INTO buchungsgruppen " .
"(description, inventory_accno_id, " .
" income_accno_id_0, expense_accno_id_0, " .
" income_accno_id_1, expense_accno_id_1, " .
" income_accno_id_2, expense_accno_id_2, " .
" income_accno_id_3, expense_accno_id_3) " .
"VALUES " .
"('Standard 16%', " .
($main::eur ?
"(SELECT id FROM chart WHERE link = 'IC' " .
" ORDER BY id ASC LIMIT 1), "
:
# 3980: Bestand Waren
" (SELECT id FROM chart WHERE accno = '3980'), ") .
# 8400: Erl?se 16% USt.
# 3400: Wareneingang 16% Vorsteuer
" (SELECT id FROM chart WHERE accno = '8400'), " .
" (SELECT id FROM chart WHERE accno = '3400'), " .
# 8125: Steuerfrei innergem. Lieferungen ?41bUStG
# 3550: Steuerfreier innergem.Erwerb
" (SELECT id FROM chart WHERE accno = '8125'), " .
" (SELECT id FROM chart WHERE accno = '3550'), " .
# 8400: Erl?se 16% USt.
# 3400: Wareneingang 16% Vorsteuer
" (SELECT id FROM chart WHERE accno = '8400'), " .
" (SELECT id FROM chart WHERE accno = '3400'), " .
# 8120: Steuerfreie Ums?tze ?4Nr.1a UstG
# 3550: Steuerfreier innergem.Erwerb
" (SELECT id FROM chart WHERE accno = '8120'), " .
" (SELECT id FROM chart WHERE accno = '3550'))";
$dbh->do($query) || mydberror($query);
}
$query = "SELECT COUNT(*) FROM buchungsgruppen " .
"WHERE description = 'Standard 7%'";
my ($count) = $dbh->selectrow_array($query);
if (!$count) {
$query =
"INSERT INTO buchungsgruppen " .
"(description, inventory_accno_id, " .
" income_accno_id_0, expense_accno_id_0, " .
" income_accno_id_1, expense_accno_id_1, " .
" income_accno_id_2, expense_accno_id_2, " .
" income_accno_id_3, expense_accno_id_3) " .
"VALUES " .
"('Standard 7%', " .
($main::eur ?
"(SELECT id FROM chart WHERE link = 'IC' " .
" ORDER BY id ASC LIMIT 1), "
:
# 3980: Bestand Waren
" (SELECT id FROM chart WHERE accno = '3980'), ") .
# 8300: Erl?se 7% USt.
# 3300: Wareneingang 7% Vorsteuer
" (SELECT id FROM chart WHERE accno = '8300'), " .
" (SELECT id FROM chart WHERE accno = '3300'), " .
# 8125: Steuerfrei innergem. Lieferungen ?41bUStG
# 3550: Steuerfreier innergem.Erwerb
" (SELECT id FROM chart WHERE accno = '8125'), " .
" (SELECT id FROM chart WHERE accno = '3550'), " .
# 8300: Erl?se 7% USt.
# 3420: Innergemein.Erwerb 7% VorSt u. Ust
" (SELECT id FROM chart WHERE accno = '8300'), " .
" (SELECT id FROM chart WHERE accno = '3420'), " .
# 8120: Steuerfreie Ums?tze ?4Nr.1a UstG
# 3300: Wareneingang 7% Vorsteuer
" (SELECT id FROM chart WHERE accno = '8120'), " .
" (SELECT id FROM chart WHERE accno = '3300'))";
$dbh->do($query) || mydberror($query);
}
return 1;
}
sub create_standard_buchungsgruppen_skr04 {
my $query;
$query = "SELECT COUNT(*) FROM buchungsgruppen " .
"WHERE description = 'Standard 16%'";
my ($count) = $dbh->selectrow_array($query);
if (!$count) {
$query =
"INSERT INTO buchungsgruppen " .
"(description, inventory_accno_id, " .
" income_accno_id_0, expense_accno_id_0, " .
" income_accno_id_1, expense_accno_id_1, " .
" income_accno_id_2, expense_accno_id_2, " .
" income_accno_id_3, expense_accno_id_3) " .
"VALUES " .
"('Standard 16%', " .
($main::eur ?
"(SELECT id FROM chart WHERE link = 'IC' " .
" ORDER BY id ASC LIMIT 1), "
:
# 1140: Bestand Waren
" (SELECT id FROM chart WHERE accno = '1140'), ") .
# 4400: Erl?se 16% USt.
# 5400: Wareneingang 16% Vorsteuer
" (SELECT id FROM chart WHERE accno = '4400'), " .
" (SELECT id FROM chart WHERE accno = '5400'), " .
# 4125: Steuerfrei innergem. Lieferungen ?41bUStG
# 5550: Steuerfreier innergem.Erwerb
" (SELECT id FROM chart WHERE accno = '4125'), " .
" (SELECT id FROM chart WHERE accno = '5550'), " .
# 4315: Erl?s Inland stpfl.EG-Lieferung 16%
# 5425: Innergem.Erwerb 16% VorSt u. Ust
" (SELECT id FROM chart WHERE accno = '4315'), " .
" (SELECT id FROM chart WHERE accno = '5425'), " .
# 4150: Sonstige steuerfreie Ums?tze ?42-7UStG
# 5550: Steuerfreier innergem.Erwerb
" (SELECT id FROM chart WHERE accno = '4150'), " .
" (SELECT id FROM chart WHERE accno = '5550'))";
$dbh->do($query) || mydberror($query);
}
$query = "SELECT COUNT(*) FROM buchungsgruppen " .
"WHERE description = 'Standard 7%'";
my ($count) = $dbh->selectrow_array($query);
if (!$count) {
$query =
"INSERT INTO buchungsgruppen " .
"(description, inventory_accno_id, " .
" income_accno_id_0, expense_accno_id_0, " .
" income_accno_id_1, expense_accno_id_1, " .
" income_accno_id_2, expense_accno_id_2, " .
" income_accno_id_3, expense_accno_id_3) " .
"VALUES " .
"('Standard 7%', " .
($main::eur ?
"(SELECT id FROM chart WHERE link = 'IC' " .
" ORDER BY id ASC LIMIT 1), "
:
# 1140: Bestand Waren
" (SELECT id FROM chart WHERE accno = '1140'), ") .
# 4300: Erl?se 7%USt
# 5300: Wareneingang 7% Vorsteuer
" (SELECT id FROM chart WHERE accno = '4300'), " .
" (SELECT id FROM chart WHERE accno = '5300'), " .
# 4125: Steuerfrei innergem. Lieferungen ?41bUStG
# 5550: Steuerfreier innergem.Erwerb
" (SELECT id FROM chart WHERE accno = '4125'), " .
" (SELECT id FROM chart WHERE accno = '5550'), " .
# 4310: Erl?se Inland stpfl. EG-Lieferung7%
# 5420: Innergemein.Erwerb 7% VorSt u. Ust
" (SELECT id FROM chart WHERE accno = '4310'), " .
" (SELECT id FROM chart WHERE accno = '5420'), " .
# 4150: Sonstige steuerfreie Ums?tze ?42-7UStG
# 5550: Steuerfreier innergem.Erwerb
" (SELECT id FROM chart WHERE accno = '4150'), " .
" (SELECT id FROM chart WHERE accno = '5550'))";
$dbh->do($query) || mydberror($query);
}
return 1;
}
sub create_standard_buchungsgruppen {
my $form = $main::form;
my $query = "SELECT coa FROM defaults";
my ($coa) = $dbh->selectrow_array($query);
if ($coa eq "Germany-DATEV-SKR03EU") {
return create_standard_buchungsgruppen_skr03();
} elsif ($coa eq "Germany-DATEV-SKR04EU") {
return create_standard_buchungsgruppen_skr04();
}
print($form->parse_html_template("dbupgrade/" .
"std_buchungsgruppen_unknown_coa",
{ "coa" => $coa }));
return 1;
}
return create_standard_buchungsgruppen();
templates/webpages/dbupgrade/std_buchungsgruppen_unknown_coa_de.html
<div class="listtop">Unbekannter Kontenrahmen</div>
<form name="Form" method="post" action="login.pl">
<input type="hidden" name="path" value="<TMPL_VAR path ESCAPE=HTML>">
<input type="hidden" name="login" value="<TMPL_VAR login ESCAPE=HTML>">
<input type="hidden" name="hashed_password" value="<TMPL_VAR password ESCAPE=HTML>">
<input type="hidden" name="action" value="login">
<input type="hidden" name="action2" value="">
<TMPL_IF saved_message>
<p><TMPL_VAR saved_message></p>
</TMPL_IF>
<p>
Hinweis:
Diese Installation benutzt einen unbekannten Kontenrahmen (&quot;<TMPL_VAR coa ESCAPE=HTML>&quot;). Dieses Datenbankupgrade kann die Standardbuchungsgruppen nicht automatisch anlegen.
</p>
<hr>
</form>
templates/webpages/dbupgrade/std_buchungsgruppen_unknown_coa_master.html
<div class="listtop"><translate>Unknown chart of accounts</translate></div>
<form name="Form" method="post" action="login.pl">
<input type="hidden" name="path" value="<TMPL_VAR path ESCAPE=HTML>">
<input type="hidden" name="login" value="<TMPL_VAR login ESCAPE=HTML>">
<input type="hidden" name="hashed_password" value="<TMPL_VAR password ESCAPE=HTML>">
<input type="hidden" name="action" value="login">
<input type="hidden" name="action2" value="">
<TMPL_IF saved_message>
<p><TMPL_VAR saved_message></p>
</TMPL_IF>
<p>
<translate>Note</translate>:
<translate>This installation uses an unknown chart of accounts
(&quot;<TMPL_VAR coa ESCAPE=HTML>&quot;). This database upgrade
cannot create standard buchungsgruppen automatically.</translate>
</p>
<hr>
</form>

Auch abrufbar als: Unified diff