aboutsummaryrefslogtreecommitdiffstats
path: root/sql
diff options
context:
space:
mode:
Diffstat (limited to 'sql')
-rw-r--r--sql/dawn.sql35
1 files changed, 34 insertions, 1 deletions
diff --git a/sql/dawn.sql b/sql/dawn.sql
index 87ab345c..de7d8f55 100644
--- a/sql/dawn.sql
+++ b/sql/dawn.sql
@@ -3897,4 +3897,37 @@ ON
FOR EACH ROW
EXECUTE PROCEDURE update_account('ISDA');
-CREATE TYPE author AS ENUM ('auto', 'manual'); \ No newline at end of file
+CREATE TYPE author AS ENUM ('auto', 'manual');
+
+CREATE OR REPLACE VIEW forward_trades
+AS SELECT a.*, c.name from(SELECT unnest(ARRAY[fx_swaps.dealid::text || '_N'::text, fx_swaps.dealid::text || '_F'::text]) AS dealid,
+ fx_swaps.trade_date,
+ unnest(ARRAY[fx_swaps.near_settle_date, fx_swaps.far_settle_date]) AS settle_date,
+ fx_swaps.fund,
+ fx_swaps.portfolio,
+ fx_swaps.folder,
+ fx_swaps.cp_code,
+ unnest(ARRAY[fx_swaps.near_buy_currency, fx_swaps.far_buy_currency]) AS buy_currency,
+ unnest(ARRAY[fx_swaps.near_sell_currency, fx_swaps.far_sell_currency]) AS sell_currency,
+ unnest(ARRAY[fx_swaps.near_buy_amount, fx_swaps.far_buy_amount]) AS buy_amount,
+ unnest(ARRAY[fx_swaps.near_sell_amount, fx_swaps.far_sell_amount]) AS sell_amount,
+ unnest(ARRAY[fx_swaps.near_cpty_id, fx_swaps.far_cpty_id]) AS cpty_id,
+ unnest(ARRAY[fx_swaps.near_rate, fx_swaps.far_rate]) AS spot_rate
+ FROM fx_swaps
+UNION
+ SELECT spots.dealid,
+ spots.trade_date,
+ spots.settle_date,
+ spots.fund,
+ spots.portfolio,
+ spots.folder,
+ spots.cp_code,
+ spots.buy_currency,
+ spots.sell_currency,
+ spots.buy_amount,
+ spots.sell_amount,
+ spots.cpty_id,
+ spots.spot_rate
+ FROM spots) a
+ LEFT JOIN counterparties c ON cp_code=code ;
+ \ No newline at end of file