TWYN#53903 Totaaloverzicht en Overzicht rubrieken deelproject 3 Stadhuis
svn path=/Customer/trunk/; revision=39016
This commit is contained in:
@@ -550,6 +550,150 @@ END;
|
||||
--
|
||||
--
|
||||
--
|
||||
CREATE OR REPLACE PACKAGE TWYN.twyn
|
||||
AS
|
||||
TYPE t_cursor IS REF CURSOR;
|
||||
|
||||
PROCEDURE twyn_v_budgettotaal ( user_key IN NUMBER
|
||||
, p_datum_van IN VARCHAR2
|
||||
, p_datum_tot IN VARCHAR2
|
||||
, p_cursor OUT t_cursor
|
||||
, p_where IN VARCHAR2
|
||||
);
|
||||
END twyn;
|
||||
/
|
||||
|
||||
CREATE OR REPLACE PACKAGE BODY TWYN.twyn
|
||||
AS
|
||||
PROCEDURE twyn_v_budgettotaal ( user_key IN NUMBER
|
||||
, p_datum_van IN VARCHAR2
|
||||
, p_datum_tot IN VARCHAR2
|
||||
, p_cursor OUT t_cursor
|
||||
, p_where IN VARCHAR2
|
||||
)
|
||||
AS
|
||||
v_datum_van DATE;
|
||||
v_datum_tot DATE;
|
||||
|
||||
v_part_A VARCHAR2(32767);
|
||||
v_part_B VARCHAR2(32767);
|
||||
v_part_W VARCHAR2(32767);
|
||||
v_part_T VARCHAR2(32767);
|
||||
v_where VARCHAR2(32767);
|
||||
|
||||
BEGIN
|
||||
v_datum_van := TO_DATE(p_datum_van, 'dd-mm-yyyy');
|
||||
v_datum_tot := TO_DATE(p_datum_tot, 'dd-mm-yyyy');
|
||||
v_part_W := SUBSTR(p_where, INSTR(p_where, 'WHERE')+6);
|
||||
v_where := CASE WHEN v_part_W IS NOT NULL THEN 'AND ' || v_part_W ELSE '' END;
|
||||
|
||||
v_part_A := 'SELECT f.*'
|
||||
|| ' , 0 budget_origineel_exc'
|
||||
|| ' , 0 budget_origineel_btw'
|
||||
|| ' , 0 budget_actueel_exc'
|
||||
|| ' , 0 budget_actueel_btw'
|
||||
|| ' , 0 budget_reserve_exc'
|
||||
|| ' , 0 budget_reserve_btw'
|
||||
|| ' , 0 budget_mutatie_exc'
|
||||
|| ' , 0 budget_mutatie_btw'
|
||||
|| ' , BGT.getGecontracteerd(o.mld_opdr_key, 0, null, to_date(''' || p_datum_tot || ''', ''dd-mm-yyyy'')) gecontracteerd_exc'
|
||||
|| ' , BGT.getGecontracteerd(o.mld_opdr_key, 1, null, to_date(''' || p_datum_tot || ''', ''dd-mm-yyyy'')) gecontracteerd_btw'
|
||||
|| ' , BGT.getGefactureerd (o.mld_opdr_key, 0, null, to_date(''' || p_datum_tot || ''', ''dd-mm-yyyy'')) gefactureerd_exc'
|
||||
|| ' , BGT.getGefactureerd (o.mld_opdr_key, 1, null, to_date(''' || p_datum_tot || ''', ''dd-mm-yyyy'')) gefactureerd_btw'
|
||||
|| ' , p.startdatum_p startdatum'
|
||||
|| ' , ''' || p_datum_tot || ''' bgt_datum'
|
||||
|| ' FROM bgt_v_project_full f'
|
||||
|| ' , bgt_budget b'
|
||||
|| ' , twyn_v_bgt_projectdatum p'
|
||||
|| ' , mld_opdr o'
|
||||
|| ' WHERE ( f.prs_kostensoort_key = b.prs_kostensoort_key'
|
||||
|| ' OR ( f.bgt_kostenrubriek_key = b.bgt_kostenrubriek_key'
|
||||
|| ' AND b.prs_kostensoort_key IS NULL'
|
||||
|| ' )'
|
||||
|| ' )'
|
||||
|| ' AND f.bgt_project_key = p.bgt_project_key'
|
||||
|| ' AND f.prs_kostensoort_key = o.prs_kostensoort_key'
|
||||
|| ' AND f.ins_discipline_verwijder IS NULL'
|
||||
|| ' AND f.bgt_project_verwijder IS NULL'
|
||||
|| ' '|| v_where;
|
||||
|
||||
v_part_B := 'SELECT f.*'
|
||||
|| ' , BGT.getBudgetOpDatum(b.bgt_budget_key, 0, null) budget_origineel_exc'
|
||||
|| ' , BGT.getBudgetOpDatum(b.bgt_budget_key, 1, null) budget_origineel_btw'
|
||||
|| ' , BGT.getBudgetOpDatum(b.bgt_budget_key, 0, to_date(''' || p_datum_tot || ''', ''dd-mm-yyyy'')) budget_actueel_exc'
|
||||
|| ' , BGT.getBudgetOpDatum(b.bgt_budget_key, 1, to_date(''' || p_datum_tot || ''', ''dd-mm-yyyy'')) budget_actueel_btw'
|
||||
|| ' , BGT.getBudgetSoortMutatie(b.bgt_kostenrubriek_key, b.prs_kostensoortgrp_key, b.prs_kostensoort_key, 0, ''AR'', to_date(''' || p_datum_tot || ''', ''dd-mm-yyyy'')) budget_reserve_exc'
|
||||
|| ' , BGT.getBudgetSoortMutatie(b.bgt_kostenrubriek_key, b.prs_kostensoortgrp_key, b.prs_kostensoort_key, 1, '''', to_date(''' || p_datum_tot || ''', ''dd-mm-yyyy'')) budget_reserve_btw'
|
||||
|| ' , BGT.getBudgetSoortMutatie(b.bgt_kostenrubriek_key, b.prs_kostensoortgrp_key, b.prs_kostensoort_key, 0, ''EM'', to_date(''' || p_datum_tot || ''', ''dd-mm-yyyy'')) budget_mutatie_exc'
|
||||
|| ' , BGT.getBudgetSoortMutatie(b.bgt_kostenrubriek_key, b.prs_kostensoortgrp_key, b.prs_kostensoort_key, 1, ''EM'', to_date(''' || p_datum_tot || ''', ''dd-mm-yyyy'')) budget_mutatie_btw'
|
||||
|| ' , 0 gecontracteerd_exc'
|
||||
|| ' , 0 gecontracteerd_btw'
|
||||
|| ' , 0 gefactureerd_exc'
|
||||
|| ' , 0 gefactureerd_btw'
|
||||
|| ' , p.startdatum_p startdatum'
|
||||
|| ' , ''' || p_datum_tot || ''' bgt_datum'
|
||||
|| ' FROM bgt_v_project_full f'
|
||||
|| ' , bgt_budget b'
|
||||
|| ' , twyn_v_bgt_projectdatum p'
|
||||
|| ' WHERE ( f.prs_kostensoort_key = b.prs_kostensoort_key'
|
||||
|| ' OR ( f.bgt_kostenrubriek_key = b.bgt_kostenrubriek_key'
|
||||
|| ' AND b.prs_kostensoort_key IS NULL'
|
||||
|| ' )'
|
||||
|| ' )'
|
||||
|| ' AND f.bgt_project_key = p.bgt_project_key'
|
||||
|| ' AND f.ins_discipline_verwijder IS NULL'
|
||||
|| ' AND f.bgt_project_verwijder IS NULL'
|
||||
|| ' '|| v_where;
|
||||
|
||||
v_part_T := 'SELECT opdrachtgever'
|
||||
|| ' , pcode'
|
||||
|| ' , project'
|
||||
|| ' , projectnaam'
|
||||
|| ' , dcode'
|
||||
|| ' , subproject'
|
||||
|| ' , subprojectnaam'
|
||||
|| ' , rcode'
|
||||
|| ' , kostenrubriek'
|
||||
|| ' , startdatum'
|
||||
|| ' , bgt_datum'
|
||||
|| ' , bgt_kostenrubriek_key'
|
||||
|| ' , sum(budget_origineel_exc) org_bedrag_exc'
|
||||
|| ' , sum(budget_origineel_btw) org_bedrag_btw'
|
||||
|| ' , sum(budget_actueel_exc) bgt_bedrag_exc'
|
||||
|| ' , sum(budget_actueel_btw) bgt_bedrag_btw'
|
||||
|| ' , sum(budget_reserve_exc) res_bedrag_exc'
|
||||
|| ' , sum(budget_reserve_btw) res_bedrag_btw'
|
||||
|| ' , sum(budget_mutatie_exc) mut_bedrag_exc'
|
||||
|| ' , sum(budget_mutatie_btw) mut_bedrag_btw'
|
||||
|| ' , sum(gecontracteerd_exc) cnt_bedrag_exc'
|
||||
|| ' , sum(gecontracteerd_btw) cnt_bedrag_btw'
|
||||
|| ' , sum(gefactureerd_exc) fin_bedrag_exc'
|
||||
|| ' , sum(gefactureerd_btw) fin_bedrag_btw'
|
||||
|| ' FROM (' || v_part_A || ' UNION ' || v_part_B || ')'
|
||||
|| ' GROUP BY opdrachtgever'
|
||||
|| ' , pcode'
|
||||
|| ' , project'
|
||||
|| ' , projectnaam'
|
||||
|| ' , dcode'
|
||||
|| ' , subproject'
|
||||
|| ' , subprojectnaam'
|
||||
|| ' , rcode'
|
||||
|| ' , kostenrubriek'
|
||||
|| ' , startdatum'
|
||||
|| ' , bgt_datum'
|
||||
|| ' , bgt_kostenrubriek_key'
|
||||
|| ' ORDER BY rcode';
|
||||
|
||||
OPEN p_cursor FOR 'SELECT * FROM '
|
||||
|| '( SELECT * FROM (' || v_part_T || ')'
|
||||
|| ')';
|
||||
-- || p_where;
|
||||
|
||||
END;
|
||||
END;
|
||||
---
|
||||
---
|
||||
---
|
||||
------ payload end ------
|
||||
|
||||
SET DEFINE OFF
|
||||
|
||||
Reference in New Issue
Block a user