38 lines
1.7 KiB
SQL
38 lines
1.7 KiB
SQL
-- schema version 40 to 41
|
|
|
|
PRAGMA writable_schema = ON;
|
|
|
|
UPDATE sqlite_schema SET sql = REPLACE(sql, 'scale_id ', 'scale_terminal')
|
|
WHERE type = 'table' AND name = 'delivery_part';
|
|
|
|
DROP VIEW v_bki_delivery;
|
|
DROP VIEW v_bki_member;
|
|
|
|
CREATE VIEW v_bki_member AS
|
|
SELECT s.year, m.mgnr, m.lfbis_nr, m.name,
|
|
(COALESCE(m.prefix || ' ', '') || m.given_name || COALESCE(' ' || m.middle_names, '') || COALESCE(' ' || m.suffix, '')) AS other_names,
|
|
a.name AS billing_name, COALESCE(a.address, m.address) AS address,
|
|
COALESCE(a.country, m.country) AS country, COALESCE(a.postal_dest, m.postal_dest) AS postal_dest,
|
|
m.volllieferant AS vollablieferer,
|
|
SUM(COALESCE(IIF((c.year_from IS NULL OR c.year_from <= s.year) AND (c.year_to IS NULL OR c.year_to >= s.year), c.area, NULL), 0)) AS area
|
|
FROM season s, member m
|
|
LEFT JOIN member_billing_address a ON a.mgnr = m.mgnr
|
|
LEFT JOIN area_commitment c ON c.mgnr = m.mgnr
|
|
GROUP BY s.year, m.mgnr;
|
|
|
|
CREATE VIEW v_bki_delivery AS
|
|
SELECT m.lfbis_nr, m.name, m.other_names, m.billing_name,
|
|
m.address, plz.plz, IIF(INSTR(o.name, ',') = 0, o.name, SUBSTR(o.name, 1, INSTR(o.name, ',') - 1)) AS ort,
|
|
d.date, d.weight, v.type, v.sortid, d.qualid, d.year, d.hkid, d.kmw, d.oe,
|
|
m.vollablieferer, m.area
|
|
FROM v_delivery d
|
|
JOIN v_bki_member m ON (m.year, m.mgnr) = (d.year, d.mgnr)
|
|
JOIN postal_dest pd ON (pd.country, pd.id) = (m.country, m.postal_dest)
|
|
LEFT JOIN AT_plz_dest ap ON (ap.country, ap.id) = (pd.country, pd.id)
|
|
LEFT JOIN AT_plz plz ON plz.plz = ap.plz
|
|
LEFT JOIN AT_ort o ON o.okz = ap.okz
|
|
JOIN wine_variety v ON v.sortid = d.sortid
|
|
ORDER BY d.date, d.time;
|
|
|
|
PRAGMA writable_schema = OFF;
|