Revision b989d7cf
Von Kivitendo Admin vor mehr als 10 Jahren hinzugefügt
SL/IR.pm | ||
---|---|---|
221 | 221 |
my $taxzone = $form->{taxzone_id} * 1; |
222 | 222 |
$query = |
223 | 223 |
qq|SELECT i.id, i.qty, i.allocated, i.trans_id, i.base_qty, |
224 |
bg.inventory_accno_id, bg.expense_accno_id_${taxzone} AS expense_accno_id, a.transdate
|
|
225 |
FROM invoice i, ar a, parts p, buchungsgruppen bg |
|
224 |
bg.inventory_accno_id, tc.expense_accno_id AS expense_accno_id, a.transdate
|
|
225 |
FROM invoice i, ar a, parts p, buchungsgruppen bg, taxzone_charts tc
|
|
226 | 226 |
WHERE (i.parts_id = p.id) |
227 | 227 |
AND (i.parts_id = ?) |
228 | 228 |
AND ((i.base_qty + i.allocated) > 0) |
229 | 229 |
AND (i.trans_id = a.id) |
230 | 230 |
AND (p.buchungsgruppen_id = bg.id) |
231 |
AND (tc.buchungsgruppen_id = p.buchungsgruppen_id) |
|
232 |
AND (tc.taxzone_id = ${taxzone}) |
|
231 | 233 |
ORDER BY transdate|; |
232 | 234 |
# ORDER BY transdate guarantees FIFO |
233 | 235 |
|
... | ... | |
980 | 982 |
FROM invoice i |
981 | 983 |
JOIN parts p ON (i.parts_id = p.id) |
982 | 984 |
LEFT JOIN chart c1 ON ((SELECT inventory_accno_id FROM buchungsgruppen WHERE id = p.buchungsgruppen_id) = c1.id) |
983 |
LEFT JOIN chart c2 ON ((SELECT income_accno_id_${taxzone_id} FROM buchungsgruppen WHERE id = p.buchungsgruppen_id) = c2.id)
|
|
984 |
LEFT JOIN chart c3 ON ((SELECT expense_accno_id_${taxzone_id} FROM buchungsgruppen WHERE id = p.buchungsgruppen_id) = c3.id)
|
|
985 |
LEFT JOIN chart c2 ON ((SELECT tc.income_accno_id FROM taxzone_charts tc where tc.taxzone_id = '$taxzone_id' and tc.buchungsgruppen_id = p.buchungsgruppen_id) = c2.id)
|
|
986 |
LEFT JOIN chart c3 ON ((SELECT tc.expense_accno_id FROM taxzone_charts tc where tc.taxzone_id = '$taxzone_id' and tc.buchungsgruppen_id = p.buchungsgruppen_id) = c3.id)
|
|
985 | 987 |
LEFT JOIN project pr ON (i.project_id = pr.id) |
986 | 988 |
LEFT JOIN partsgroup pg ON (pg.id = p.partsgroup_id) |
987 | 989 |
|
... | ... | |
1248 | 1250 |
FROM buchungsgruppen |
1249 | 1251 |
WHERE id = p.buchungsgruppen_id) = c1.id) |
1250 | 1252 |
LEFT JOIN chart c2 ON |
1251 |
((SELECT income_accno_id_${taxzone_id}
|
|
1252 |
FROM buchungsgruppen
|
|
1253 |
WHERE id = p.buchungsgruppen_id) = c2.id) |
|
1253 |
((SELECT tc.income_accno_id
|
|
1254 |
FROM taxzone_charts tc
|
|
1255 |
WHERE tc.taxzone_id = '$taxzone_id' and tc.buchungsgruppen_id = p.buchungsgruppen_id) = c2.id)
|
|
1254 | 1256 |
LEFT JOIN chart c3 ON |
1255 |
((SELECT expense_accno_id_${taxzone_id}
|
|
1256 |
FROM buchungsgruppen
|
|
1257 |
WHERE id = p.buchungsgruppen_id) = c3.id) |
|
1257 |
((SELECT tc.expense_accno_id
|
|
1258 |
FROM taxzone_charts tc
|
|
1259 |
WHERE tc.taxzone_id = '$taxzone_id' and tc.buchungsgruppen_id = p.buchungsgruppen_id) = c3.id)
|
|
1258 | 1260 |
LEFT JOIN partsgroup pg ON (pg.id = p.partsgroup_id) |
1259 | 1261 |
LEFT JOIN price_factors pfac ON (pfac.id = p.price_factor_id) |
1260 | 1262 |
WHERE $where|; |
Auch abrufbar als: Unified diff
Auf Datenbankebene Steuerzonen konfigurierbar gemacht
Damit können jetzt mehr als die 4 Standardsteuerzonen eingerichtet
werden. Die bisherigen Steuerzonen wurden aus der Tabelle
buchungsgruppen in die neue Tabelle taxzone_charts ausgelagert.
Konzeption siehe Ticket #2295
Es wurden noch keinerlei Veränderungen an der Kivitendo
Benutzeroberfläche durchgeführt, durch dieses Upgrade können die
Buchungsgruppen also nicht mehr konfiguriert werden, dies muß auf
Datenbankebene passieren.
Rose schon angepasst.
Conflicts: