3 die("This script cannot be run from the command line.") unless ($main::form);
7 die($dbup_locale->text("Database update error:") .
8 "<br>$msg<br>" . $DBI::errstr);
14 print($main::form->parse_html_template("dbupgrade/units_error",
15 { "message" => $msg }));
24 "SET link = 'AP_amount:IC_cogs', pos_ustva = 91 " .
25 "WHERE accno = '3559'";
26 $dbh->do($query) || mydberror($query);
37 "SET link = 'AP_amount:IC_cogs', pos_ustva = 91 " .
38 "WHERE accno = '5559'";
39 $dbh->do($query) || mydberror($query);
45 sub create_standard_buchungsgruppen_skr03 {
48 $query = "SELECT COUNT(*) FROM buchungsgruppen " .
49 "WHERE description = 'Standard 16%'";
50 my ($count) = $dbh->selectrow_array($query);
54 "INSERT INTO buchungsgruppen " .
55 "(description, inventory_accno_id, " .
56 " income_accno_id_0, expense_accno_id_0, " .
57 " income_accno_id_1, expense_accno_id_1, " .
58 " income_accno_id_2, expense_accno_id_2, " .
59 " income_accno_id_3, expense_accno_id_3) " .
63 " (SELECT id FROM chart WHERE accno = '3980'), " .
64 # 8400: Erlöse 16% USt.
65 # 3400: Wareneingang 16% Vorsteuer
66 " (SELECT id FROM chart WHERE accno = '8400'), " .
67 " (SELECT id FROM chart WHERE accno = '3400'), " .
68 # 8320: Erlöse aus im and.EG-Land steuerpfl.Lieferungen
69 # 3550: Steuerfreier innergem.Erwerb
70 " (SELECT id FROM chart WHERE accno = '8320'), " .
71 " (SELECT id FROM chart WHERE accno = '3550'), " .
72 # 8315: Erlös Inland stpfl.EG-Lieferung 16%
73 # 3425: Innergem.Erwerb 16% VorSt u. Ust
74 " (SELECT id FROM chart WHERE accno = '8315'), " .
75 " (SELECT id FROM chart WHERE accno = '3425'), " .
76 # 8120: Steuerfreie Umsätze §4Nr.1a UstG
77 # 3559: Steuerfreie Einfuhren
78 " (SELECT id FROM chart WHERE accno = '8120'), " .
79 " (SELECT id FROM chart WHERE accno = '3559'))";
80 $dbh->do($query) || mydberror($query);
83 $query = "SELECT COUNT(*) FROM buchungsgruppen " .
84 "WHERE description = 'Standard 7%'";
85 my ($count) = $dbh->selectrow_array($query);
89 "INSERT INTO buchungsgruppen " .
90 "(description, inventory_accno_id, " .
91 " income_accno_id_0, expense_accno_id_0, " .
92 " income_accno_id_1, expense_accno_id_1, " .
93 " income_accno_id_2, expense_accno_id_2, " .
94 " income_accno_id_3, expense_accno_id_3) " .
98 " (SELECT id FROM chart WHERE accno = '3980'), " .
99 # 8300: Erlöse 7% USt.
100 # 3300: Wareneingang 7% Vorsteuer
101 " (SELECT id FROM chart WHERE accno = '8300'), " .
102 " (SELECT id FROM chart WHERE accno = '3300'), " .
103 # 8125: Steuerfrei innergem. Lieferungen §41bUStG
104 # 3550: Steuerfreier innergem.Erwerb
105 " (SELECT id FROM chart WHERE accno = '8125'), " .
106 " (SELECT id FROM chart WHERE accno = '3550'), " .
107 # 8310: Erlöse Inland stpfl. EG-Lieferung7%
108 # 3420: Innergemein.Erwerb 7% VorSt u. Ust
109 " (SELECT id FROM chart WHERE accno = '8310'), " .
110 " (SELECT id FROM chart WHERE accno = '3420'), " .
111 # 8120: Steuerfreie Umsätze §4Nr.1a UstG
112 # 3559: Steuerfreie Einfuhren
113 " (SELECT id FROM chart WHERE accno = '8120'), " .
114 " (SELECT id FROM chart WHERE accno = '3559'))";
115 $dbh->do($query) || mydberror($query);
121 sub create_standard_buchungsgruppen_skr04 {
124 $query = "SELECT COUNT(*) FROM buchungsgruppen " .
125 "WHERE description = 'Standard 16%'";
126 my ($count) = $dbh->selectrow_array($query);
130 "INSERT INTO buchungsgruppen " .
131 "(description, inventory_accno_id, " .
132 " income_accno_id_0, expense_accno_id_0, " .
133 " income_accno_id_1, expense_accno_id_1, " .
134 " income_accno_id_2, expense_accno_id_2, " .
135 " income_accno_id_3, expense_accno_id_3) " .
137 "('Standard 16%', " .
138 # 1140: Bestand Waren
139 " (SELECT id FROM chart WHERE accno = '1140'), " .
140 # 4400: Erlöse 16% USt.
141 # 5400: Wareneingang 16% Vorsteuer
142 " (SELECT id FROM chart WHERE accno = '4400'), " .
143 " (SELECT id FROM chart WHERE accno = '5400'), " .
144 # 4125: Steuerfrei innergem. Lieferungen §41bUStG
145 # 5550: Steuerfreier innergem.Erwerb
146 " (SELECT id FROM chart WHERE accno = '4125'), " .
147 " (SELECT id FROM chart WHERE accno = '5550'), " .
148 # 4315: Erlös Inland stpfl.EG-Lieferung 16%
149 # 5425: Innergem.Erwerb 16% VorSt u. Ust
150 " (SELECT id FROM chart WHERE accno = '4315'), " .
151 " (SELECT id FROM chart WHERE accno = '5425'), " .
152 # 4150: Sonstige steuerfreie Umsätze §42-7UStG
153 # 5559: Steuerfreie Einfuhren
154 " (SELECT id FROM chart WHERE accno = '4150'), " .
155 " (SELECT id FROM chart WHERE accno = '5559'))";
156 $dbh->do($query) || mydberror($query);
159 $query = "SELECT COUNT(*) FROM buchungsgruppen " .
160 "WHERE description = 'Standard 7%'";
161 my ($count) = $dbh->selectrow_array($query);
165 "INSERT INTO buchungsgruppen " .
166 "(description, inventory_accno_id, " .
167 " income_accno_id_0, expense_accno_id_0, " .
168 " income_accno_id_1, expense_accno_id_1, " .
169 " income_accno_id_2, expense_accno_id_2, " .
170 " income_accno_id_3, expense_accno_id_3) " .
173 # 1140: Bestand Waren
174 " (SELECT id FROM chart WHERE accno = '1140'), " .
176 # 5300: Wareneingang 7% Vorsteuer
177 " (SELECT id FROM chart WHERE accno = '4300'), " .
178 " (SELECT id FROM chart WHERE accno = '5300'), " .
179 # 4125: Steuerfrei innergem. Lieferungen §41bUStG
180 # 5550: Steuerfreier innergem.Erwerb
181 " (SELECT id FROM chart WHERE accno = '4125'), " .
182 " (SELECT id FROM chart WHERE accno = '5550'), " .
183 # 4310: Erlöse Inland stpfl. EG-Lieferung7%
184 # 5420: Innergemein.Erwerb 7% VorSt u. Ust
185 " (SELECT id FROM chart WHERE accno = '4310'), " .
186 " (SELECT id FROM chart WHERE accno = '5420'), " .
187 # 4150: Sonstige steuerfreie Umsätze §42-7UStG
188 # 5559; Steuerfreie Einfuhren
189 " (SELECT id FROM chart WHERE accno = '4150'), " .
190 " (SELECT id FROM chart WHERE accno = '5559'))";
191 $dbh->do($query) || mydberror($query);
197 sub create_standard_buchungsgruppen {
198 my $form = $main::form;
200 my $query = "SELECT coa FROM defaults";
201 my ($coa) = $dbh->selectrow_array($query);
203 if ($coa eq "Germany-DATEV-SKR03EU") {
205 return create_standard_buchungsgruppen_skr03();
207 } elsif ($coa eq "Germany-DATEV-SKR04EU") {
209 return create_standard_buchungsgruppen_skr04();
212 print($form->parse_html_template("dbupgrade/" .
213 "std_buchungsgruppen_unknown_coa",
219 return create_standard_buchungsgruppen();