ca3defd0d1638e9a820c4d172ff056936c5fca9c
[kivitendo-erp.git] / sql / Pg-upgrade2 / exchangerate_in_oe.sql
1 -- @tag: exchangerate_in_oe
2 -- @description: Wechselkurs pro Angebot/Auftrag in Belegtabelle speichern
3 -- @depends: release_3_5_5
4
5 ALTER TABLE oe ADD COLUMN exchangerate NUMERIC(15,5);
6
7 WITH table_ex AS
8   (SELECT oe.id, COALESCE(CASE WHEN customer_id IS NOT NULL THEN buy ELSE sell END, 1.0) AS exchangerate FROM oe
9     LEFT JOIN exchangerate ON (oe.transdate = exchangerate.transdate AND oe.currency_id = exchangerate.currency_id)
10     WHERE oe.currency_id != (SELECT currency_id FROM defaults))
11   UPDATE oe SET exchangerate = (SELECT exchangerate FROM table_ex WHERE table_ex.id = oe.id)
12     WHERE EXISTS (SELECT table_ex.exchangerate FROM table_ex WHERE table_ex.id = oe.id);