TWYN#54117 Fout in sortering rapporten
svn path=/Customer/trunk/; revision=39107
This commit is contained in:
@@ -560,6 +560,18 @@ AS
|
||||
, p_cursor OUT t_cursor
|
||||
, p_where IN VARCHAR2
|
||||
);
|
||||
PROCEDURE twyn_v_contract_rubriek ( user_key IN NUMBER
|
||||
, p_datum_van IN VARCHAR2
|
||||
, p_datum_tot IN VARCHAR2
|
||||
, p_cursor OUT t_cursor
|
||||
, p_where IN VARCHAR2
|
||||
);
|
||||
PROCEDURE twyn_v_contr_fact_bedrijf ( 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;
|
||||
/
|
||||
|
||||
@@ -698,6 +710,165 @@ AS
|
||||
|| '( SELECT * FROM (' || v_part_T || ')'
|
||||
|| ')';
|
||||
END;
|
||||
|
||||
PROCEDURE twyn_v_contract_rubriek ( 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_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_T := 'SELECT tp.opdrachtgever'
|
||||
|| ' , tp.pcode'
|
||||
|| ' , tp.project'
|
||||
|| ' , tp.projectnaam'
|
||||
|| ' , tp.dcode'
|
||||
|| ' , tp.subproject'
|
||||
|| ' , tp.subprojectnaam'
|
||||
|| ' , tp.rcode'
|
||||
|| ' , tp.kostenrubriek'
|
||||
|| ' , tp.gcode'
|
||||
|| ' , tp.kostengroep'
|
||||
|| ' , tp.scode'
|
||||
|| ' , tp.kostensoort'
|
||||
|| ' , tp.versienummer'
|
||||
|| ' , tp.kostencode'
|
||||
|| ' , tp.kostennaam'
|
||||
|| ' , b.prs_leverancier_nr'
|
||||
|| ' , o.mld_opdr_ordernr'
|
||||
|| ' , COALESCE(o.mld_opdr_bedrijfopdr_volgnr, 0) mld_opdr_ordervolgnr'
|
||||
|| ' , o.mld_opdr_meerwerk mld_opdr_meerwerk'
|
||||
|| ' , o.mld_opdr_id kenmerk'
|
||||
|| ' , o.mld_opdr_omschrijving mld_opdr_omschrijving'
|
||||
|| ' , kp.prs_kostenplaats_nr accountcode'
|
||||
|| ' , kp.prs_kostenplaats_omschrijving account'
|
||||
|| ' , TO_CHAR (o.mld_opdr_datumbegin, ''DD-MM-YYYY'') datum_p'
|
||||
|| ' , BGT.getGecontracteerd(o.mld_opdr_key, 0, null, to_date(''' || p_datum_tot || ''', ''dd-mm-yyyy'')) kosten'
|
||||
|| ' , BGT.getGecontracteerd(o.mld_opdr_key, 1, null, to_date(''' || p_datum_tot || ''', ''dd-mm-yyyy'')) btw'
|
||||
|| ' , BGT.getGefactureerd (o.mld_opdr_key, 0, null, to_date(''' || p_datum_tot || ''', ''dd-mm-yyyy'')) facturen'
|
||||
|| ' , p.startdatum_p'
|
||||
|| ' FROM bgt_v_project_full tp'
|
||||
|| ' , prs_kostenplaats kp'
|
||||
|| ' , mld_opdr o'
|
||||
|| ' , prs_bedrijf b'
|
||||
|| ' , twyn_v_bgt_projectdatum p'
|
||||
|| ' WHERE o.prs_kostensoort_key = tp.prs_kostensoort_key'
|
||||
|| ' AND o.prs_kostenplaats_key = kp.prs_kostenplaats_key(+)'
|
||||
|| ' AND o.mld_uitvoerende_keys = b.prs_bedrijf_key'
|
||||
|| ' AND o.mld_statusopdr_key <> 10' -- ter goedkeuring (=raming) hier niet in meenemen
|
||||
|| ' AND tp.bgt_project_key = p.bgt_project_key'
|
||||
|| ' AND tp.ins_discipline_verwijder IS NULL'
|
||||
|| ' AND tp.bgt_project_verwijder IS NULL'
|
||||
|| ' '|| v_where;
|
||||
|
||||
OPEN p_cursor FOR 'SELECT * FROM (' || v_part_T || ')';
|
||||
END;
|
||||
|
||||
PROCEDURE twyn_v_contr_fact_bedrijf ( 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_D 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_D := CASE WHEN p_datum_van IS NOT NULL
|
||||
THEN ' AND f.fin_factuur_advies >= TO_DATE('''|| p_datum_van ||''', ''dd-mm-yyyy'')'
|
||||
|| ' AND o.mld_opdr_datumbegin >= TO_DATE('''|| p_datum_van ||''', ''dd-mm-yyyy'')'
|
||||
ELSE ''
|
||||
END
|
||||
|| CASE WHEN p_datum_tot IS NOT NULL
|
||||
THEN ' AND f.fin_factuur_advies < TO_DATE('''|| p_datum_tot ||''', ''dd-mm-yyyy'')'
|
||||
|| ' AND o.mld_opdr_datumbegin < TO_DATE('''|| p_datum_tot ||''', ''dd-mm-yyyy'')'
|
||||
ELSE ''
|
||||
END;
|
||||
|
||||
v_part_T := 'SELECT tp.opdrachtgever'
|
||||
|| ' , tp.pcode'
|
||||
|| ' , tp.project'
|
||||
|| ' , tp.subproject'
|
||||
|| ' , tp.rcode'
|
||||
|| ' , tp.kostenrubriek'
|
||||
|| ' , tp.kostengroep'
|
||||
|| ' , tp.scode'
|
||||
|| ' , tp.kostensoort'
|
||||
|| ' , tp.versienummer'
|
||||
|| ' , b.prs_bedrijf_naam'
|
||||
|| ' , b.prs_leverancier_nr'
|
||||
|| ' , o.mld_opdr_ordernr'
|
||||
|| ' , COALESCE(o.mld_opdr_bedrijfopdr_volgnr, 0) mld_opdr_ordervolgnr'
|
||||
|| ' , o.mld_opdr_id kenmerk'
|
||||
|| ' , o.mld_opdr_omschrijving'
|
||||
|| ' , COALESCE(kp.prs_kostenplaats_nr, '' '') accountcode'
|
||||
|| ' , COALESCE(kp.prs_kostenplaats_omschrijving, ''zonder account'') account'
|
||||
|| ' , o.mld_opdr_kosten'
|
||||
|| ' , o.mld_opdr_kosten_btw'
|
||||
|| ' , o.mld_opdr_meerwerk'
|
||||
|| ' , CASE WHEN fin_factuur_key IS NULL'
|
||||
|| ' THEN 1'
|
||||
|| ' WHEN (SELECT MIN(fc.fin_factuur_key)'
|
||||
|| ' FROM fin_factuur fc'
|
||||
|| ' WHERE fc.mld_opdr_key = f.mld_opdr_key) = f.fin_factuur_key'
|
||||
|| ' THEN 1'
|
||||
|| ' ELSE 0'
|
||||
|| ' END contractwaarde'
|
||||
|| ' , f.fin_factuur_nr'
|
||||
|| ' , f.fin_factuur_opmerking'
|
||||
|| ' , f.fin_factuur_totaal'
|
||||
|| ' , f.fin_factuur_totaal_btw'
|
||||
|| ' , o.mld_opdr_datumbegin contractdatum'
|
||||
|| ' , f.fin_factuur_datum factuurdatum'
|
||||
|| ' , f.fin_factuur_advies adviesdatum'
|
||||
|| ' , TO_CHAR (o.mld_opdr_datumbegin, ''DD-MM-YYYY'') contractdatum_p'
|
||||
|| ' , TO_CHAR (f.fin_factuur_datum, ''DD-MM-YYYY'') factuurdatum_p'
|
||||
|| ' , TO_CHAR (f.fin_factuur_advies, ''DD-MM-YYYY'') adviesdatum_p'
|
||||
|| ' , p.startdatum_p'
|
||||
|| ' FROM fin_factuur f'
|
||||
|| ' , mld_opdr o'
|
||||
|| ' , prs_bedrijf b'
|
||||
|| ' , prs_kostenplaats kp'
|
||||
|| ' , bgt_v_project_full tp'
|
||||
|| ' , twyn_v_bgt_projectdatum p'
|
||||
|| ' WHERE o.mld_opdr_key = f.mld_opdr_key(+)'
|
||||
|| ' AND o.prs_kostensoort_key = tp.prs_kostensoort_key'
|
||||
|| ' AND o.prs_kostenplaats_key = kp.prs_kostenplaats_key(+)'
|
||||
|| ' AND o.mld_uitvoerende_keys = b.prs_bedrijf_key'
|
||||
|| ' AND o.mld_statusopdr_key <> 10'
|
||||
|| ' AND tp.bgt_project_key = p.bgt_project_key'
|
||||
|| ' AND tp.ins_discipline_verwijder IS NULL'
|
||||
|| ' AND tp.bgt_project_verwijder IS NULL'
|
||||
|| ' '|| v_part_D
|
||||
|| ' '|| v_where;
|
||||
|
||||
OPEN p_cursor FOR 'SELECT * FROM (' || v_part_T || ')';
|
||||
END;
|
||||
|
||||
END;
|
||||
|
||||
---
|
||||
|
||||
@@ -481,65 +481,13 @@ AS
|
||||
-- CON_FACT
|
||||
-- CON_ACC
|
||||
-- FACTCORU
|
||||
-- De werkelijke gegevens worden opgehaald in twyn.twyn_v_contr_fact_bedrijf
|
||||
CREATE OR REPLACE VIEW twyn_v_contr_fact_bedrijf
|
||||
AS
|
||||
SELECT tp.opdrachtgever
|
||||
, tp.pcode
|
||||
, tp.project
|
||||
, tp.subproject
|
||||
, tp.rcode
|
||||
, tp.kostenrubriek
|
||||
, tp.kostengroep
|
||||
, tp.scode
|
||||
, tp.kostensoort
|
||||
, tp.versienummer
|
||||
, b.prs_bedrijf_naam
|
||||
, b.prs_leverancier_nr
|
||||
, o.mld_opdr_ordernr
|
||||
, COALESCE(o.mld_opdr_bedrijfopdr_volgnr, 0) mld_opdr_ordervolgnr
|
||||
, o.mld_opdr_id kenmerk
|
||||
, o.mld_opdr_omschrijving
|
||||
, COALESCE(kp.prs_kostenplaats_nr, ' ') accountcode
|
||||
, COALESCE(kp.prs_kostenplaats_omschrijving, 'zonder account') account
|
||||
, NVL(fin_factuur_datum, o.mld_opdr_datumbegin) datumfilter
|
||||
, o.mld_opdr_datumbegin contractdatum
|
||||
, o.mld_opdr_kosten
|
||||
, o.mld_opdr_kosten_btw
|
||||
, o.mld_opdr_meerwerk
|
||||
, CASE WHEN fin_factuur_key IS NULL
|
||||
THEN 1
|
||||
WHEN (SELECT MIN(fc.fin_factuur_key)
|
||||
FROM fin_factuur fc
|
||||
WHERE fc.mld_opdr_key = f.mld_opdr_key) = f.fin_factuur_key
|
||||
THEN 1
|
||||
ELSE 0
|
||||
END contractwaarde
|
||||
, f.fin_factuur_nr
|
||||
, f.fin_factuur_opmerking
|
||||
, f.fin_factuur_totaal
|
||||
, f.fin_factuur_totaal_btw
|
||||
, f.fin_factuur_datum factuurdatum
|
||||
, f.fin_factuur_advies adviesdatum
|
||||
, TO_CHAR (o.mld_opdr_datumbegin, 'DD-MM-YYYY') contractdatum_p
|
||||
, TO_CHAR (f.fin_factuur_datum, 'DD-MM-YYYY') factuurdatum_p
|
||||
, TO_CHAR (f.fin_factuur_advies, 'DD-MM-YYYY') adviesdatum_p
|
||||
FROM fin_factuur f
|
||||
, mld_opdr o
|
||||
, prs_bedrijf b
|
||||
, prs_kostenplaats kp
|
||||
, bgt_v_project_full tp
|
||||
WHERE o.mld_opdr_key = f.mld_opdr_key(+)
|
||||
AND o.prs_kostensoort_key = tp.prs_kostensoort_key
|
||||
AND o.prs_kostenplaats_key = kp.prs_kostenplaats_key(+)
|
||||
AND o.mld_uitvoerende_keys = b.prs_bedrijf_key
|
||||
AND o.mld_statusopdr_key <> 10
|
||||
AND tp.ins_discipline_verwijder IS NULL
|
||||
AND tp.bgt_project_verwijder IS NULL
|
||||
ORDER BY b.prs_leverancier_nr
|
||||
, tp.scode
|
||||
, o.mld_opdr_datumbegin
|
||||
, o.mld_opdr_ordernr
|
||||
, o.mld_opdr_bedrijfopdr_volgnr;
|
||||
SELECT *
|
||||
FROM bgt_v_project_full
|
||||
WHERE ins_discipline_verwijder IS NULL
|
||||
AND bgt_project_verwijder IS NULL;
|
||||
|
||||
|
||||
-- CON_ACC1
|
||||
@@ -720,6 +668,7 @@ AS
|
||||
-- BREG_RES
|
||||
-- BREG_BTW
|
||||
-- BREG_RUB
|
||||
-- De werkelijke gegevens worden opgehaald in twyn.twyn_v_detailoverzicht
|
||||
CREATE OR REPLACE VIEW twyn_v_detailoverzicht
|
||||
AS
|
||||
SELECT *
|
||||
|
||||
Reference in New Issue
Block a user