1242 lines
54 KiB
SQL
1242 lines
54 KiB
SQL
--
|
|
-- $Id$
|
|
--
|
|
-- Script containing customer specific views for the FACILITOR database
|
|
DEFINE thisfile = 'TWYN_VIE.SQL'
|
|
DEFINE dbuser = '^TWYN'
|
|
DEFINE custid = 'TWYN'
|
|
|
|
SET ECHO ON
|
|
SET DEFINE ON
|
|
COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT;
|
|
WHENEVER SQLERROR EXIT;
|
|
SELECT adm.scriptspoolfile('&dbuser', '&thisfile') AS fcltlogfile FROM DUAL;
|
|
WHENEVER SQLERROR CONTINUE;
|
|
SPOOL &fcltlogfile
|
|
SET DEFINE OFF
|
|
|
|
------ payload begin ------
|
|
|
|
--=============================================================================
|
|
-- RAPPORTAGES
|
|
-------------------------------------------------------------------------------
|
|
-- Via het menu/Rapportages kunnen rapporten worden gemaakt.
|
|
-- Graag een beetje uniforme (vriendelijke) naamgeving aanhouden voor de kolommen
|
|
-- omdat deze in de stylesheet driftig worden gebruikt
|
|
--
|
|
--o CONT_ALF Overzicht contractanten op alfabetische volgorde
|
|
|
|
--o CONT_RUB Overzicht contracten per rubriek
|
|
--o CON_FACT Overzicht (contracten en) facturen per contractant
|
|
--o CON_ACC Overzicht [contracten en] facturen per account @moet nog opdrachttotalen
|
|
--o CON_ACC1 Overzicht contracten per account
|
|
|
|
--o BREG_RES Overzicht reserve
|
|
--o BREG_BTW Overzicht BTW
|
|
--o BREG_TOT Totaaloverzicht budgetrapportage (meerdere subprojecten)
|
|
--o BREG_RUB Overzicht rubrieken (1 subproject)
|
|
|
|
--o FACT_MND Overzicht facturen per maand op adviesdatum
|
|
--• FACTCORU Overzicht contracten en facturen per rubriek
|
|
--o FDATFACT Overzicht facturen per maand op factuurdatum
|
|
--• BET_ADV Betalingsadvies d.d. dd-mm-jjjj
|
|
--o BMUT_NUM Overzicht budgetmutaties op volgnummer
|
|
--o MMW_CONT Overzicht Meer- en minderwerk per contractant
|
|
--o MMWINVCO Overzicht meer- en minderwerk facturen per contractant
|
|
--
|
|
-- Ten behoeve van de header zijn de volgende gegevens gewenst in al deze views
|
|
-- opdrachtgever p.bgt_disc_params_opdrachtgever
|
|
-- project p.bgt_disc_params_code || ' ' || d.ins_discipline_omschrijving
|
|
-- subproject bp.bgt_project_code || ' ' || bp.bgt_project_omschrijving
|
|
|
|
|
|
-- basis views
|
|
|
|
CREATE OR REPLACE VIEW twyn_v_bgt_projectdatum
|
|
AS
|
|
SELECT p.bgt_project_key
|
|
, TO_CHAR(MIN(LEAST( COALESCE(p.bgt_project_prijspeildatum, SYSDATE)
|
|
, COALESCE(b.bgt_budget_begin, SYSDATE)
|
|
, COALESCE(m.bgt_budgetmutatie_datum, SYSDATE)
|
|
, COALESCE(o.mld_opdr_datumbegin, SYSDATE)
|
|
, COALESCE(f.fin_factuur_datum, SYSDATE)
|
|
, COALESCE(f.fin_factuur_advies, SYSDATE)
|
|
)), 'dd-mm-yyyy') startdatum_p
|
|
FROM bgt_project p
|
|
, bgt_budget b
|
|
, (SELECT bgt_budget_key_naar bgt_budget_key
|
|
, bgt_budgetmutatie_datum
|
|
FROM bgt_budgetmutatie
|
|
UNION ALL
|
|
SELECT bgt_budget_key_van bgt_budget_key
|
|
, bgt_budgetmutatie_datum
|
|
FROM bgt_budgetmutatie
|
|
) m
|
|
, mld_opdr o
|
|
, fin_factuur f
|
|
WHERE b.bgt_project_key = p.bgt_project_key
|
|
AND b.bgt_budget_key = m.bgt_budget_key(+)
|
|
AND b.prs_kostensoort_key = o.prs_kostensoort_key(+)
|
|
AND o.mld_opdr_key = f.mld_opdr_key(+)
|
|
GROUP BY p.bgt_project_key;
|
|
|
|
|
|
CREATE OR REPLACE VIEW twyn_v_bgt_budgetmutatie
|
|
AS
|
|
SELECT mutatie.bgt_budget_key
|
|
, SUM (mutatie.bedrag_van) bedrag_van
|
|
, SUM (mutatie.bedrag_naar) bedrag_naar
|
|
, SUM (mutatie.btwbedrag_van) btwbedrag_van
|
|
, SUM (mutatie.btwbedrag_naar) btwbedrag_naar
|
|
FROM ( SELECT m1.bgt_budget_key_van bgt_budget_key
|
|
, SUM (COALESCE (m1.bgt_budget_bedrag_van, 0)) bedrag_van
|
|
, SUM (COALESCE (m1.bgt_budget_btwbedrag_van, 0)) btwbedrag_van
|
|
, 0 bedrag_naar
|
|
, 0 btwbedrag_naar
|
|
FROM bgt_budgetmutatie m1
|
|
GROUP BY m1.bgt_budget_key_van
|
|
UNION
|
|
SELECT m2.bgt_budget_key_naar bgt_budget_key
|
|
, 0 bedrag_van
|
|
, 0 btwbedrag_van
|
|
, SUM (COALESCE (m2.bgt_budget_bedrag_naar, 0)) bedrag_naar
|
|
, SUM (COALESCE (m2.bgt_budget_btwbedrag_naar, 0)) btwbedrag_naa
|
|
FROM bgt_budgetmutatie m2
|
|
GROUP BY m2.bgt_budget_key_naar
|
|
) mutatie
|
|
GROUP BY mutatie.bgt_budget_key;
|
|
|
|
|
|
CREATE OR REPLACE VIEW twyn_v_bgt_budgetsrtmutatie
|
|
AS
|
|
SELECT bm_1.bgt_budget_key_van bgt_budget_key
|
|
, bm_1.bgt_budgetmutatie_datum
|
|
, BGT.GETSOORTMUTATIE(bm_1.bgt_budgetmutatie_key) soortmutatie
|
|
, CASE WHEN INSTR('AR', BGT.GETSOORTMUTATIE(bm_1.bgt_budgetmutatie_key)) > 0
|
|
THEN COALESCE(bm_1.bgt_budget_bedrag_van, 0)
|
|
ELSE 0
|
|
END res_bedrag_exc
|
|
, CASE WHEN INSTR('AR', BGT.GETSOORTMUTATIE(bm_1.bgt_budgetmutatie_key)) > 0
|
|
THEN COALESCE(bm_1.bgt_budget_btwbedrag_van, 0)
|
|
ELSE 0
|
|
END res_bedrag_btw
|
|
, CASE WHEN INSTR('EM', BGT.GETSOORTMUTATIE(bm_1.bgt_budgetmutatie_key)) > 0
|
|
THEN COALESCE(bm_1.bgt_budget_bedrag_van, 0)
|
|
ELSE 0
|
|
END mut_bedrag_exc
|
|
, CASE WHEN INSTR('EM', BGT.GETSOORTMUTATIE(bm_1.bgt_budgetmutatie_key)) > 0
|
|
THEN COALESCE(bm_1.bgt_budget_btwbedrag_van, 0)
|
|
ELSE 0
|
|
END mut_bedrag_btw
|
|
FROM bgt_budgetmutatie bm_1
|
|
UNION ALL
|
|
SELECT bm_2.bgt_budget_key_naar bgt_budget_key
|
|
, bm_2.bgt_budgetmutatie_datum
|
|
, BGT.GETSOORTMUTATIE(bm_2.bgt_budgetmutatie_key) soortmutatie
|
|
, CASE WHEN INSTR('AR', BGT.GETSOORTMUTATIE(bm_2.bgt_budgetmutatie_key)) > 0
|
|
THEN COALESCE(bm_2.bgt_budget_bedrag_naar, 0)
|
|
ELSE 0
|
|
END res_bedrag_exc
|
|
, CASE WHEN INSTR('AR', BGT.GETSOORTMUTATIE(bm_2.bgt_budgetmutatie_key)) > 0
|
|
THEN COALESCE(bm_2.bgt_budget_btwbedrag_naar, 0)
|
|
ELSE 0
|
|
END res_bedrag_btw
|
|
, CASE WHEN INSTR('EM', BGT.GETSOORTMUTATIE(bm_2.bgt_budgetmutatie_key)) > 0
|
|
THEN COALESCE(bm_2.bgt_budget_bedrag_naar, 0)
|
|
ELSE 0
|
|
END mut_bedrag_exc
|
|
, CASE WHEN INSTR('EM', BGT.GETSOORTMUTATIE(bm_2.bgt_budgetmutatie_key)) > 0
|
|
THEN COALESCE(bm_2.bgt_budget_btwbedrag_naar, 0)
|
|
ELSE 0
|
|
END mut_bedrag_btw
|
|
FROM bgt_budgetmutatie bm_2;
|
|
|
|
|
|
|
|
CREATE OR REPLACE VIEW twyn_v_bgt_budget
|
|
AS
|
|
SELECT tp.ins_discipline_key
|
|
, tp.bgt_project_key
|
|
, tp.bgt_kostenrubriek_key
|
|
, tp.ins_discipline_verwijder
|
|
, tp.bgt_project_verwijder
|
|
, tp.opdrachtgever
|
|
, tp.pcode
|
|
, tp.project
|
|
, tp.dcode
|
|
, tp.subproject
|
|
, tp.rcode
|
|
, tp.kostenrubriek
|
|
, tp.versienummer
|
|
, DECODE (tp.rcode, 'R', 'A', 'B') || tp.rcode sortcode
|
|
, SUM (COALESCE (bud.bgt_budget_bedrag, 0)) budget_actueel
|
|
, SUM (COALESCE (mut.bedrag_naar, 0) + COALESCE (mut.bedrag_van, 0)) budget_mutatie
|
|
, SUM (COALESCE (bud.bgt_budget_btwbedrag, 0)) budget_btwactueel
|
|
, SUM (COALESCE (mut.btwbedrag_naar, 0) + COALESCE (mut.btwbedrag_van, 0)) budget_btwmutatie
|
|
FROM bgt_budget bud
|
|
, twyn_v_bgt_budgetmutatie mut
|
|
, bgt_v_project_full tp
|
|
WHERE mut.bgt_budget_key(+) = bud.bgt_budget_key
|
|
AND bud.bgt_kostenrubriek_key = tp.bgt_kostenrubriek_key
|
|
AND tp.prs_kostensoortgrp_key IS NULL
|
|
AND tp.prs_kostensoort_key IS NULL
|
|
GROUP BY tp.ins_discipline_key
|
|
, tp.bgt_project_key
|
|
, tp.bgt_kostenrubriek_key
|
|
, tp.opdrachtgever
|
|
, tp.pcode
|
|
, tp.project
|
|
, tp.dcode
|
|
, tp.subproject
|
|
, tp.kostenrubriek
|
|
, tp.rcode
|
|
, tp.versienummer
|
|
, tp.ins_discipline_verwijder
|
|
, tp.bgt_project_verwijder;
|
|
|
|
|
|
CREATE OR REPLACE view twyn_v_bgt_budgetgegevens
|
|
AS
|
|
SELECT pr.ins_discipline_key
|
|
, pr.bgt_project_key
|
|
, pr.opdrachtgever
|
|
, pr.pcode
|
|
, pr.project
|
|
, pr.projectnaam
|
|
, pr.dcode
|
|
, pr.subproject
|
|
, pr.subprojectnaam
|
|
, pr.versienummer
|
|
, pr.ins_discipline_verwijder
|
|
, pr.bgt_project_verwijder
|
|
, kr.bgt_kostenrubriek_key
|
|
, kr.bgt_kostenrubriek_code rcode
|
|
, kr.bgt_kostenrubriek_oms kostenrubriek
|
|
, ks.prs_kostensoort_key
|
|
, ks.prs_kostensoort_altcode scode
|
|
, ks.prs_kostensoort_oms kostensoort
|
|
, b.bgt_budget_key
|
|
, b.bgt_budget_bedrag
|
|
, b.bgt_budget_btwbedrag
|
|
FROM bgt_v_project_gegevens pr
|
|
, bgt_kostenrubriek kr
|
|
, prs_kostensoort ks
|
|
, bgt_budget b
|
|
WHERE b.bgt_project_key = pr.bgt_project_key
|
|
AND b.bgt_kostenrubriek_key = kr.bgt_kostenrubriek_key
|
|
AND b.prs_kostensoort_key = ks.prs_kostensoort_key(+);
|
|
|
|
|
|
CREATE OR REPLACE VIEW twyn_v_bgt_rubriekmutatie
|
|
AS
|
|
SELECT bud_org.ins_discipline_key,
|
|
bud_org.bgt_project_key,
|
|
bud_org.bgt_kostenrubriek_key rubriek_key_org,
|
|
bud_org.rcode rcode_org,
|
|
bud_des.bgt_kostenrubriek_key rubriek_key_des,
|
|
bud_des.rcode rcode_des,
|
|
mut.bgt_budget_bedrag_van,
|
|
mut.bgt_budget_bedrag_naar,
|
|
mut.bgt_budgetmutatie_bedrag,
|
|
mut.bgt_budgetmutatie_omschrijving,
|
|
mut.bgt_budgetmutatie_datum
|
|
FROM twyn_v_bgt_budgetgegevens bud_org,
|
|
twyn_v_bgt_budgetgegevens bud_des,
|
|
(SELECT bgt_budgetmutatie_key,
|
|
bgt_budget_key_van bgt_budget_key_org,
|
|
bgt_budget_key_naar bgt_budget_key_des,
|
|
bgt_budget_bedrag_van,
|
|
bgt_budget_btwbedrag_van,
|
|
0 bgt_budget_bedrag_naar,
|
|
0 bgt_budget_btwbedrag_naar,
|
|
bgt_budget_bedrag_van bgt_budgetmutatie_bedrag,
|
|
bgt_budget_btwbedrag_van bgt_budgetmutatie_btwbedrag,
|
|
bgt_budgetmutatie_omschrijving,
|
|
bgt_budgetmutatie_datum
|
|
FROM bgt_budgetmutatie m1
|
|
UNION
|
|
SELECT bgt_budgetmutatie_key,
|
|
bgt_budget_key_naar bgt_budget_key_org,
|
|
bgt_budget_key_van bgt_budget_key_des,
|
|
0 bgt_budget_bedrag_van,
|
|
0 bgt_budget_btwbedrag_van,
|
|
bgt_budget_bedrag_naar,
|
|
bgt_budget_btwbedrag_naar,
|
|
bgt_budget_bedrag_naar bgt_budgetmutatie_bedrag,
|
|
bgt_budget_btwbedrag_naar bgt_budgetmutatie_btwbedrag,
|
|
bgt_budgetmutatie_omschrijving,
|
|
bgt_budgetmutatie_datum
|
|
FROM bgt_budgetmutatie m2) mut
|
|
WHERE mut.bgt_budget_key_org = bud_org.bgt_budget_key
|
|
AND mut.bgt_budget_key_des = bud_des.bgt_budget_key
|
|
AND bud_org.bgt_project_key = bud_des.bgt_project_key;
|
|
|
|
|
|
CREATE OR REPLACE VIEW twyn_v_bgt_factuur
|
|
AS
|
|
SELECT id.ins_discipline_key,
|
|
pr.bgt_project_key,
|
|
kr.bgt_kostenrubriek_key,
|
|
ksg.prs_kostensoortgrp_key,
|
|
ks.prs_kostensoort_key,
|
|
SUM (COALESCE (f.fin_factuur_totaal, 0)) gefactureerd,
|
|
SUM (COALESCE (f.fin_factuur_totaal_btw, 0)) gefactureerdbtw
|
|
FROM fin_factuur f,
|
|
mld_opdr o,
|
|
prs_kostensoort ks,
|
|
prs_kostensoortgrp ksg,
|
|
bgt_kostenrubriek kr,
|
|
bgt_project pr,
|
|
ins_tab_discipline id
|
|
WHERE f.mld_opdr_key(+) = o.mld_opdr_key
|
|
AND ks.prs_kostensoort_key = o.prs_kostensoort_key(+)
|
|
AND ksg.bgt_kostenrubriek_key = kr.bgt_kostenrubriek_key
|
|
AND ksg.prs_kostensoortgrp_key = ks.prs_kostensoortgrp_key
|
|
AND pr.bgt_project_key = kr.bgt_project_key
|
|
AND id.ins_discipline_key = pr.ins_discipline_key
|
|
GROUP BY id.ins_discipline_key,
|
|
pr.bgt_project_key,
|
|
kr.bgt_kostenrubriek_key,
|
|
ksg.prs_kostensoortgrp_key,
|
|
ks.prs_kostensoort_key;
|
|
|
|
|
|
CREATE OR REPLACE VIEW twyn_v_bgt_opdracht
|
|
AS
|
|
SELECT id.ins_discipline_key,
|
|
pr.bgt_project_key,
|
|
kr.bgt_kostenrubriek_key,
|
|
ksg.prs_kostensoortgrp_key,
|
|
ks.prs_kostensoort_key,
|
|
SUM (COALESCE (o.mld_opdr_kosten, 0)) gecontracteerd,
|
|
SUM (COALESCE (o.mld_opdr_kosten_btw, 0)) gecontracteerdbtw
|
|
FROM mld_opdr o,
|
|
prs_kostensoort ks,
|
|
prs_kostensoortgrp ksg,
|
|
bgt_kostenrubriek kr,
|
|
bgt_project pr,
|
|
ins_tab_discipline id
|
|
WHERE ks.prs_kostensoort_key = o.prs_kostensoort_key(+)
|
|
AND ksg.bgt_kostenrubriek_key = kr.bgt_kostenrubriek_key
|
|
AND ksg.prs_kostensoortgrp_key = ks.prs_kostensoortgrp_key
|
|
AND pr.bgt_project_key = kr.bgt_project_key
|
|
AND id.ins_discipline_key = pr.ins_discipline_key
|
|
GROUP BY id.ins_discipline_key,
|
|
pr.bgt_project_key,
|
|
kr.bgt_kostenrubriek_key,
|
|
ksg.prs_kostensoortgrp_key,
|
|
ks.prs_kostensoort_key;
|
|
|
|
|
|
-- BET_ADV
|
|
CREATE OR REPLACE VIEW twyn_v_betalingsadvies
|
|
AS
|
|
SELECT tp.opdrachtgever
|
|
, tp.pcode
|
|
, tp.project
|
|
, tp.dcode
|
|
, tp.subproject
|
|
, tp.rcode
|
|
, tp.kostenrubriek
|
|
, tp.gcode
|
|
, tp.kostengroep
|
|
, tp.scode
|
|
, tp.kostensoort
|
|
, tp.versienummer
|
|
, f.fin_factuur_advies adviesdatum
|
|
, TO_CHAR (f.fin_factuur_advies, 'dd-mm-yyyy') adviesdatum_p
|
|
, f.fin_factuur_datum factuurdatum
|
|
, TO_CHAR (f.fin_factuur_datum, 'dd-mm-yyyy') factuurdatum_p
|
|
, f.fin_factuur_nr factuurnr
|
|
, b.prs_bedrijf_naam contractant
|
|
, f.fin_factuur_opmerking opmerking
|
|
, f.fin_factuur_totaal bedragexcl
|
|
, f.fin_factuur_totaal_btw bedragbtw
|
|
, f.fin_factuur_statuses_key factuurstatus
|
|
, CASE WHEN INSTR(f.fin_factuur_nr, '/') = 0
|
|
THEN f.fin_factuur_nr
|
|
ELSE SUBSTR(f.fin_factuur_nr, 1, INSTR(f.fin_factuur_nr, '/')-1 )
|
|
END factuurnummer
|
|
, CASE WHEN INSTR(f.fin_factuur_nr, '/') = 0
|
|
THEN '0'
|
|
ELSE SUBSTR(f.fin_factuur_nr, INSTR(f.fin_factuur_nr, '/')+1 )
|
|
END factuurvolgnr
|
|
FROM fin_factuur f
|
|
, mld_opdr o
|
|
, prs_bedrijf b
|
|
, bgt_v_project_full tp
|
|
WHERE o.mld_opdr_key = f.mld_opdr_key
|
|
AND o.mld_uitvoerende_keys = b.prs_bedrijf_key
|
|
AND o.prs_kostensoort_key = tp.prs_kostensoort_key
|
|
AND tp.ins_discipline_verwijder IS NULL
|
|
AND tp.bgt_project_verwijder IS NULL
|
|
AND f.fin_factuur_bron = 0;
|
|
|
|
|
|
-- CONT_ALF
|
|
CREATE OR REPLACE VIEW twyn_v_bedrijf
|
|
AS
|
|
SELECT tp.opdrachtgever
|
|
, tp.pcode
|
|
, tp.project
|
|
, tp.dcode
|
|
, tp.subproject
|
|
, tp.versienummer
|
|
, b.prs_leverancier_nr leveranciercode
|
|
, b.prs_bedrijf_naam naam
|
|
, b.prs_bedrijf_post_adres adres
|
|
, b.prs_bedrijf_post_postcode postcode
|
|
, b.prs_bedrijf_post_plaats plaats
|
|
, b.prs_bedrijf_telefoon telefoon
|
|
, b.prs_bedrijf_email email
|
|
FROM mld_opdr o
|
|
, prs_bedrijf b
|
|
, bgt_v_project_full tp
|
|
WHERE b.prs_bedrijf_key = o.mld_uitvoerende_keys
|
|
AND o.prs_kostensoort_key = tp.prs_kostensoort_key
|
|
AND tp.ins_discipline_verwijder IS NULL
|
|
AND tp.bgt_project_verwijder IS NULL
|
|
ORDER BY prs_bedrijf_naam;
|
|
|
|
|
|
-- CONT_RUB
|
|
-- Voor ieder rubriek/groep/onderdeel de som van de opdrachten en facturen
|
|
-- Opletten: in principe is iedere opdracht uniek en laat je alle individuele opdrachten zien
|
|
-- behalve voor MMW-opdrachten, die worden per mld_opdr_nr getotaaliseerd weergegeven
|
|
-- Daarom gebruiken we hier de MIN en MAX functies, om de MMW-opdrachten bij elkaar te tellen
|
|
-- Die andere view twyn_v_contract laat ook de mmw-opdrachten.
|
|
CREATE OR REPLACE VIEW twyn_v_contract_rubriek
|
|
AS
|
|
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
|
|
, o.mld_opdr_datumbegin datumfilter
|
|
, b.prs_leverancier_nr
|
|
, o.mld_opdr_ordernr
|
|
, COALESCE(o.mld_opdr_bedrijfopdr_volgnr, 0) mld_opdr_ordervolgnr
|
|
, MAX (o.mld_opdr_meerwerk) mld_opdr_meerwerk
|
|
, MAX (o.mld_opdr_id) kenmerk
|
|
, MAX (o.mld_opdr_omschrijving) mld_opdr_omschrijving
|
|
, kp.prs_kostenplaats_nr accountcode
|
|
, kp.prs_kostenplaats_omschrijving account
|
|
, MIN (o.mld_opdr_datumbegin) datum
|
|
, TO_CHAR (MIN (o.mld_opdr_datumbegin), 'DD-MM-YYYY') printdatum
|
|
, SUM (o.mld_opdr_kosten) kosten
|
|
, SUM (o.mld_opdr_kosten_btw) btw
|
|
, SUM (bgt.getgefactureerd (o.mld_opdr_key, 0)) facturen
|
|
FROM bgt_v_project_full tp
|
|
, prs_kostenplaats kp
|
|
, mld_opdr o
|
|
, prs_bedrijf b
|
|
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.ins_discipline_verwijder IS NULL
|
|
AND tp.bgt_project_verwijder IS NULL
|
|
GROUP BY tp.opdrachtgever
|
|
, tp.project
|
|
, tp.subproject
|
|
, tp.projectnaam
|
|
, tp.pcode
|
|
, tp.opdrachtgever
|
|
, tp.subprojectnaam
|
|
, tp.rcode
|
|
, tp.kostenrubriek
|
|
, tp.gcode
|
|
, tp.kostengroep
|
|
, tp.scode
|
|
, tp.kostensoort
|
|
, tp.versienummer
|
|
, tp.dcode
|
|
, tp.kostencode
|
|
, tp.kostennaam
|
|
, kp.prs_kostenplaats_nr
|
|
, kp.prs_kostenplaats_omschrijving
|
|
, b.prs_leverancier_nr
|
|
, o.mld_opdr_ordernr
|
|
, o.mld_opdr_bedrijfopdr_volgnr
|
|
, o.mld_opdr_datumbegin
|
|
ORDER BY tp.rcode
|
|
, tp.gcode
|
|
, tp.scode
|
|
, b.prs_leverancier_nr
|
|
, TO_NUMBER(o.mld_opdr_ordernr)
|
|
, o.mld_opdr_bedrijfopdr_volgnr;
|
|
|
|
|
|
-- CON_FACT
|
|
-- CON_ACC
|
|
-- FACTCORU
|
|
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;
|
|
|
|
|
|
-- CON_ACC1
|
|
CREATE OR REPLACE VIEW twyn_v_contract
|
|
AS
|
|
SELECT tp.opdrachtgever
|
|
, tp.pcode
|
|
, tp.project
|
|
, tp.projectnaam
|
|
, tp.subproject
|
|
, tp.subprojectnaam
|
|
, tp.rcode
|
|
, tp.kostenrubriek
|
|
, tp.gcode
|
|
, tp.kostengroep
|
|
, tp.scode
|
|
, tp.kostensoort
|
|
, tp.versienummer
|
|
, 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_datumbegin datumfilter
|
|
, TO_CHAR (o.mld_opdr_datumbegin, 'DD-MM-YYYY') printdatum
|
|
, o.mld_opdr_meerwerk
|
|
, o.mld_opdr_kosten
|
|
, o.mld_opdr_kosten_btw
|
|
, SUM (bgt.getgefactureerd (o.mld_opdr_key, 0)) fin_factuur_totaal
|
|
FROM bgt_v_project_full tp
|
|
, prs_kostenplaats kp
|
|
, mld_opdr o
|
|
, prs_bedrijf b
|
|
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 tp.ins_discipline_verwijder IS NULL
|
|
AND tp.bgt_project_verwijder IS NULL
|
|
GROUP BY tp.opdrachtgever
|
|
, tp.pcode
|
|
, tp.project
|
|
, tp.subproject
|
|
, tp.dcode
|
|
, tp.subprojectnaam
|
|
, tp.projectnaam
|
|
, tp.dcode
|
|
, tp.opdrachtgever
|
|
, tp.subprojectnaam
|
|
, tp.rcode
|
|
, tp.kostenrubriek
|
|
, tp.gcode
|
|
, tp.kostengroep
|
|
, tp.scode
|
|
, tp.kostensoort
|
|
, kp.prs_kostenplaats_nr
|
|
, kp.prs_kostenplaats_omschrijving
|
|
, b.prs_leverancier_nr
|
|
, o.mld_opdr_ordernr
|
|
, o.mld_opdr_bedrijfopdr_volgnr
|
|
, o.mld_opdr_id
|
|
, o.mld_opdr_omschrijving
|
|
, o.mld_opdr_meerwerk
|
|
, kp.prs_kostenplaats_nr
|
|
, kp.prs_kostenplaats_omschrijving
|
|
, o.mld_opdr_datumbegin
|
|
, o.mld_opdr_kosten
|
|
, o.mld_opdr_kosten_btw
|
|
, tp.versienummer
|
|
ORDER BY kp.prs_kostenplaats_nr
|
|
, b.prs_leverancier_nr
|
|
, o.mld_opdr_ordernr
|
|
, o.mld_opdr_bedrijfopdr_volgnr;
|
|
|
|
|
|
-- BREG_RUB
|
|
--
|
|
CREATE OR REPLACE VIEW twyn_v_budgetdetail
|
|
AS
|
|
SELECT opdrachtgever
|
|
, pcode
|
|
, project
|
|
, projectnaam
|
|
, dcode
|
|
, subproject
|
|
, subprojectnaam
|
|
, versienummer
|
|
, rcode
|
|
, kostenrubriek
|
|
, gcode
|
|
, kostengroep
|
|
, scode
|
|
, kostensoort
|
|
, financieel.bgt_kostenrubriek_key
|
|
, financieel.soort
|
|
, financieel.soortmutatie
|
|
, financieel.bgt_bedrag_exc
|
|
, financieel.bgt_bedrag_btw
|
|
, financieel.res_bedrag_exc
|
|
, financieel.res_bedrag_btw
|
|
, financieel.mut_bedrag_exc
|
|
, financieel.mut_bedrag_btw
|
|
, financieel.bgt_datum
|
|
, financieel.cnt_bedrag_exc
|
|
, financieel.cnt_bedrag_btw
|
|
, financieel.cnt_datum
|
|
, financieel.fin_bedrag_exc
|
|
, financieel.fin_bedrag_btw
|
|
, financieel.fin_datum
|
|
, CASE
|
|
WHEN financieel.soort = 'F' THEN financieel.fin_datum
|
|
WHEN financieel.soort = 'C' THEN financieel.cnt_datum
|
|
WHEN financieel.soort = 'M' THEN financieel.mut_datum
|
|
WHEN financieel.soort = 'B' THEN financieel.bgt_datum
|
|
END all_datum
|
|
FROM bgt_v_project_full gegevens
|
|
, (SELECT bu.bgt_kostenrubriek_key
|
|
, bu.prs_kostensoortgrp_key
|
|
, bu.prs_kostensoort_key
|
|
, 'B' soort
|
|
, NULL soortmutatie
|
|
, bu.bgt_budget_bedrag bgt_bedrag_exc
|
|
, bu.bgt_budget_btwbedrag bgt_bedrag_btw
|
|
, COALESCE(bu.bgt_budget_begin, p.bgt_project_prijspeildatum) bgt_datum
|
|
, 0 res_bedrag_exc
|
|
, 0 res_bedrag_btw
|
|
, 0 mut_bedrag_exc
|
|
, 0 mut_bedrag_btw
|
|
, TO_DATE(NULL) mut_datum
|
|
, 0 cnt_bedrag_exc
|
|
, 0 cnt_bedrag_btw
|
|
, TO_DATE(NULL) cnt_datum
|
|
, 0 fin_bedrag_exc
|
|
, 0 fin_bedrag_btw
|
|
, TO_DATE(NULL) fin_datum
|
|
FROM bgt_budget bu
|
|
, bgt_project p
|
|
WHERE bu.bgt_project_key = p.bgt_project_key
|
|
UNION ALL
|
|
SELECT bu.bgt_kostenrubriek_key
|
|
, bu.prs_kostensoortgrp_key
|
|
, bu.prs_kostensoort_key
|
|
, 'M' soort
|
|
, bm.soortmutatie soortmutatie
|
|
, 0 bgt_bedrag_exc
|
|
, 0 bgt_bedrag_btw
|
|
, TO_DATE(NULL) bgt_datum
|
|
, COALESCE (bm.res_bedrag_exc, 0) res_bedrag_exc
|
|
, COALESCE (bm.res_bedrag_btw, 0) res_bedrag_btw
|
|
, COALESCE (bm.mut_bedrag_exc, 0) mut_bedrag_exc
|
|
, COALESCE (bm.mut_bedrag_btw, 0) mut_bedrag_btw
|
|
, bm.bgt_budgetmutatie_datum mut_datum
|
|
, 0 cnt_bedrag_exc
|
|
, 0 cnt_bedrag_btw
|
|
, TO_DATE(NULL) cnt_datum
|
|
, 0 fin_bedrag_exc
|
|
, 0 fin_bedrag_btw
|
|
, TO_DATE(NULL) fin_datum
|
|
FROM bgt_budget bu
|
|
, twyn_v_bgt_budgetsrtmutatie bm
|
|
WHERE bu.bgt_budget_key = bm.bgt_budget_key
|
|
UNION ALL
|
|
SELECT bu.bgt_kostenrubriek_key
|
|
, bu.prs_kostensoortgrp_key
|
|
, bu.prs_kostensoort_key
|
|
, 'C' soort
|
|
, NULL soortmutatie
|
|
, 0 bgt_bedrag_exc
|
|
, 0 bgt_bedrag_btw
|
|
, TO_DATE(NULL) bgt_datum
|
|
, 0 res_bedrag_exc
|
|
, 0 res_bedrag_btw
|
|
, 0 mut_bedrag_exc
|
|
, 0 mut_bedrag_btw
|
|
, TO_DATE(NULL) mut_datum
|
|
, COALESCE (mo.mld_opdr_kosten, 0) cnt_bedrag_exc
|
|
, COALESCE (mo.mld_opdr_kosten_btw, 0) cnt_bedrag_btw
|
|
, mo.mld_opdr_datumbegin cnt_datum
|
|
, 0 fin_bedrag_exc
|
|
, 0 fin_bedrag_btw
|
|
, TO_DATE(NULL) fin_datum
|
|
FROM bgt_budget bu
|
|
, mld_opdr mo
|
|
WHERE bu.prs_kostensoort_key = mo.prs_kostensoort_key(+)
|
|
AND mo.mld_statusopdr_key <> 10 -- ter goedkeuring (=raming) hier niet in meenemen
|
|
UNION ALL
|
|
SELECT bu.bgt_kostenrubriek_key
|
|
, bu.prs_kostensoortgrp_key
|
|
, bu.prs_kostensoort_key
|
|
, 'F' soort
|
|
, NULL soortmutatie
|
|
, 0 bgt_bedrag_exc
|
|
, 0 bgt_bedrag_btw
|
|
, TO_DATE(NULL) bgt_datum
|
|
, 0 res_bedrag_exc
|
|
, 0 res_bedrag_btw
|
|
, 0 mut_bedrag_exc
|
|
, 0 mut_bedrag_btw
|
|
, TO_DATE(NULL) mut_datum
|
|
, 0 cnt_bedrag_exc
|
|
, 0 cnt_bedrag_btw
|
|
, TO_DATE(NULL) cnt_datum
|
|
, COALESCE (fa.fin_factuur_totaal, 0) fin_bedrag_exc
|
|
, COALESCE (fa.fin_factuur_totaal_btw, 0) fin_bedrag_btw
|
|
, fa.fin_factuur_datum fin_datum
|
|
FROM bgt_budget bu
|
|
, mld_opdr op
|
|
, fin_factuur fa
|
|
WHERE fa.mld_opdr_key = op.mld_opdr_key
|
|
AND bu.prs_kostensoort_key = op.prs_kostensoort_key)
|
|
financieel
|
|
WHERE gegevens.prs_kostensoort_key = financieel.prs_kostensoort_key
|
|
AND gegevens.ins_discipline_verwijder IS NULL
|
|
AND gegevens.bgt_project_verwijder IS NULL;
|
|
|
|
|
|
--BMUT_NUM
|
|
CREATE OR REPLACE VIEW twyn_v_budgetmutaties
|
|
AS
|
|
SELECT gegevens.opdrachtgever
|
|
, gegevens.pcode
|
|
, gegevens.project
|
|
, gegevens.projectnaam
|
|
, gegevens.dcode
|
|
, gegevens.subproject
|
|
, gegevens.subprojectnaam
|
|
, gegevens.kostencode
|
|
, gegevens.kostennaam
|
|
, gegevens.versienummer
|
|
, mutaties.bgt_budget_key
|
|
, mutaties.bgt_budget_isreserve
|
|
, mutaties.bgt_budgetmutatie_key
|
|
, mutaties.bgt_budgetmutatie_omschrijving mutatiereden
|
|
, mutaties.bgt_budgetmutatie_reserve reserve
|
|
, mutaties.bgt_budgetmutatie_datum mutatiedatum
|
|
, TO_CHAR (mutaties.bgt_budgetmutatie_datum, 'dd-mm-yyyy') mutatiedatum_p
|
|
, mutaties.bgt_mutatie_bedrag mutatiebedrag_exc
|
|
, mutaties.bgt_mutatie_btwbedrag mutatiebedrag_btw
|
|
, mutaties.bgt_mutatie_soort mutatiesoort
|
|
, mutaties.bgt_budgetmutatie_code mutatiecode
|
|
, mutaties.bgt_budgetmutatie_volgnr mutatievolgnr
|
|
FROM bgt_v_project_full gegevens
|
|
, (SELECT b.bgt_budget_key
|
|
, b.ins_discipline_key
|
|
, b.bgt_project_key
|
|
, b.bgt_kostenrubriek_key
|
|
, b.prs_kostensoortgrp_key
|
|
, b.prs_kostensoort_key
|
|
, b.prs_kostenplaatsgrp_key
|
|
, b.prs_kostenplaats_key
|
|
, b.bgt_budget_bedrag
|
|
, b.bgt_budget_btwbedrag
|
|
, b.bgt_budget_isreserve
|
|
, b.bgt_budget_begin
|
|
, b.bgt_budget_eind
|
|
, b.bgt_budget_aanmaak
|
|
, b.bgt_budget_vervaldatum
|
|
, m.bgt_budgetmutatie_key
|
|
, m.prs_perslid_key
|
|
, m.bgt_budgetmutatie_omschrijving
|
|
, m.bgt_budgetmutatie_reserve
|
|
, m.bgt_budgetmutatie_datum
|
|
, m.bgt_budget_bedrag_van bgt_mutatie_bedrag
|
|
, m.bgt_budget_btwbedrag_van bgt_mutatie_btwbedrag
|
|
, BGT.getSoortMutatie (m.bgt_budgetmutatie_key) bgt_mutatie_soort
|
|
, m.bgt_budgetmutatie_code
|
|
, m.bgt_budgetmutatie_volgnr
|
|
FROM bgt_budget b
|
|
, bgt_budgetmutatie m
|
|
WHERE b.bgt_budget_key = m.bgt_budget_key_van
|
|
UNION
|
|
SELECT b.bgt_budget_key
|
|
, b.ins_discipline_key
|
|
, b.bgt_project_key
|
|
, b.bgt_kostenrubriek_key
|
|
, b.prs_kostensoortgrp_key
|
|
, b.prs_kostensoort_key
|
|
, b.prs_kostenplaatsgrp_key
|
|
, b.prs_kostenplaats_key
|
|
, b.bgt_budget_bedrag
|
|
, b.bgt_budget_btwbedrag
|
|
, b.bgt_budget_isreserve
|
|
, b.bgt_budget_begin
|
|
, b.bgt_budget_eind
|
|
, b.bgt_budget_aanmaak
|
|
, b.bgt_budget_vervaldatum
|
|
, m.bgt_budgetmutatie_key
|
|
, m.prs_perslid_key
|
|
, m.bgt_budgetmutatie_omschrijving
|
|
, m.bgt_budgetmutatie_reserve
|
|
, m.bgt_budgetmutatie_datum
|
|
, m.bgt_budget_bedrag_naar bgt_mutatie_bedrag
|
|
, m.bgt_budget_btwbedrag_naar bgt_mutatie_btwbedrag
|
|
, BGT.getSoortMutatie (m.bgt_budgetmutatie_key) bgt_mutatie_soort
|
|
, m.bgt_budgetmutatie_code
|
|
, m.bgt_budgetmutatie_volgnr
|
|
FROM bgt_budget b
|
|
, bgt_budgetmutatie m
|
|
WHERE b.bgt_budget_key = m.bgt_budget_key_naar
|
|
) mutaties
|
|
WHERE ( ( mutaties.prs_kostensoort_key = gegevens.prs_kostensoort_key)
|
|
OR ( mutaties.bgt_kostenrubriek_key = gegevens.bgt_kostenrubriek_key
|
|
AND mutaties.prs_kostensoortgrp_key IS NULL
|
|
AND mutaties.prs_kostensoort_key IS NULL
|
|
)
|
|
)
|
|
AND gegevens.ins_discipline_verwijder IS NULL
|
|
AND gegevens.bgt_project_verwijder IS NULL
|
|
AND ( mutaties.bgt_budgetmutatie_omschrijving NOT LIKE 'AO %'
|
|
AND mutaties.bgt_budgetmutatie_omschrijving NOT LIKE 'MW %'
|
|
)
|
|
AND (mutaties.bgt_budgetmutatie_code NOT IN ('A','W')
|
|
OR mutaties.bgt_budgetmutatie_code IS NULL
|
|
);
|
|
|
|
|
|
-- BREG_TOT
|
|
-- BREG_RES
|
|
-- BREG_BTW
|
|
CREATE OR REPLACE VIEW twyn_v_budgettotaal
|
|
AS
|
|
SELECT opdrachtgever
|
|
, pcode
|
|
, project
|
|
, projectnaam
|
|
, dcode
|
|
, subproject
|
|
, subprojectnaam
|
|
, versienummer
|
|
, rcode
|
|
, kostenrubriek
|
|
, projectdatum.startdatum_p
|
|
, financieel.*
|
|
, CASE WHEN financieel.soort = 'F' THEN financieel.fin_datum
|
|
WHEN financieel.soort = 'C' THEN financieel.cnt_datum
|
|
WHEN financieel.soort = 'M' THEN financieel.mut_datum
|
|
WHEN financieel.soort = 'B' THEN financieel.bgt_datum
|
|
END all_datum
|
|
FROM bgt_v_project_full gegevens
|
|
, twyn_v_bgt_projectdatum projectdatum
|
|
, (
|
|
SELECT kr.bgt_kostenrubriek_key
|
|
, 'B' soort
|
|
, NULL soortmutatie
|
|
, SUM(bu.bgt_budget_bedrag) bgt_bedrag_exc
|
|
, SUM(bu.bgt_budget_btwbedrag) bgt_bedrag_btw
|
|
, COALESCE(MIN(bu.bgt_budget_begin), MIN(p.bgt_project_prijspeildatum)) bgt_datum
|
|
, 0 res_bedrag_exc
|
|
, 0 res_bedrag_btw
|
|
, 0 mut_bedrag_exc
|
|
, 0 mut_bedrag_btw
|
|
, TO_DATE(NULL) mut_datum
|
|
, 0 cnt_bedrag_exc
|
|
, 0 cnt_bedrag_btw
|
|
, TO_DATE(NULL) cnt_datum
|
|
, 0 fin_bedrag_exc
|
|
, 0 fin_bedrag_btw
|
|
, TO_DATE(NULL) fin_datum
|
|
FROM bgt_kostenrubriek kr
|
|
, bgt_budget bu
|
|
, bgt_project p
|
|
WHERE bu.bgt_kostenrubriek_key = kr.bgt_kostenrubriek_key
|
|
AND bu.bgt_project_key = p.bgt_project_key
|
|
GROUP BY kr.bgt_kostenrubriek_key
|
|
UNION ALL
|
|
SELECT bu.bgt_kostenrubriek_key
|
|
, 'M' soort
|
|
, bm.soortmutatie soortmutatie
|
|
, 0 bgt_bedrag_exc
|
|
, 0 bgt_bedrag_btw
|
|
, TO_DATE(NULL) bgt_datum
|
|
, COALESCE(bm.res_bedrag_exc, 0) res_bedrag_exc
|
|
, COALESCE(bm.res_bedrag_btw, 0) res_bedrag_btw
|
|
, COALESCE(bm.mut_bedrag_exc, 0) mut_bedrag_exc
|
|
, COALESCE(bm.mut_bedrag_btw, 0) mut_bedrag_btw
|
|
, bm.bgt_budgetmutatie_datum mut_datum
|
|
, 0 cnt_bedrag_exc
|
|
, 0 cnt_bedrag_btw
|
|
, TO_DATE(NULL) cnt_datum
|
|
, 0 fin_bedrag_exc
|
|
, 0 fin_bedrag_btw
|
|
, TO_DATE(NULL) fin_datum
|
|
FROM bgt_budget bu
|
|
, twyn_v_bgt_budgetsrtmutatie bm
|
|
WHERE bu.bgt_budget_key = bm.bgt_budget_key
|
|
UNION ALL
|
|
SELECT bu.bgt_kostenrubriek_key
|
|
, 'C' soort
|
|
, NULL soortmutatie
|
|
, 0 bgt_bedrag_exc
|
|
, 0 bgt_bedrag_btw
|
|
, TO_DATE(NULL) bgt_datum
|
|
, 0 res_bedrag_exc
|
|
, 0 res_bedrag_btw
|
|
, 0 mut_bedrag_exc
|
|
, 0 mut_bedrag_btw
|
|
, TO_DATE(NULL) mut_datum
|
|
, COALESCE(mo.mld_opdr_kosten, 0) cnt_bedrag_exc
|
|
, COALESCE(mo.mld_opdr_kosten_btw, 0) cnt_bedrag_btw
|
|
, mo.mld_opdr_datumbegin cnt_datum
|
|
, 0 fin_bedrag_exc
|
|
, 0 fin_bedrag_btw
|
|
, TO_DATE(NULL) fin_datum
|
|
FROM bgt_budget bu
|
|
, mld_opdr mo
|
|
WHERE bu.prs_kostensoort_key = mo.prs_kostensoort_key(+)
|
|
AND mo.mld_statusopdr_key <> 10 -- ter goedkeuring (=raming) hier niet in meenemen
|
|
UNION ALL
|
|
SELECT bu.bgt_kostenrubriek_key
|
|
, 'F' soort
|
|
, NULL soortmutatie
|
|
, 0 bgt_bedrag_exc
|
|
, 0 bgt_bedrag_btw
|
|
, TO_DATE(NULL) bgt_datum
|
|
, 0 res_bedrag_exc
|
|
, 0 res_bedrag_btw
|
|
, 0 mut_bedrag_exc
|
|
, 0 mut_bedrag_btw
|
|
, TO_DATE(NULL) mut_datum
|
|
, 0 cnt_bedrag_exc
|
|
, 0 cnt_bedrag_btw
|
|
, TO_DATE(NULL) cnt_datum
|
|
, COALESCE(fa.fin_factuur_totaal, 0) fin_bedrag_exc
|
|
, COALESCE(fa.fin_factuur_totaal_btw, 0) fin_bedrag_btw
|
|
, fa.fin_factuur_datum fin_datum
|
|
FROM bgt_budget bu
|
|
, mld_opdr op
|
|
, fin_factuur fa
|
|
WHERE fa.mld_opdr_key = op.mld_opdr_key
|
|
AND bu.prs_kostensoort_key = op.prs_kostensoort_key
|
|
) financieel
|
|
WHERE gegevens.bgt_kostenrubriek_key = financieel.bgt_kostenrubriek_key
|
|
AND gegevens.bgt_project_key = projectdatum.bgt_project_key
|
|
AND prs_kostensoortgrp_key IS NULL
|
|
AND prs_kostensoort_key IS NULL
|
|
AND ins_discipline_verwijder IS NULL
|
|
AND bgt_project_verwijder IS NULL;
|
|
|
|
|
|
-- MMW_CONT
|
|
CREATE OR REPLACE VIEW twyn_v_meerminderwerk_opdr
|
|
AS
|
|
SELECT p.ins_discipline_key
|
|
, p.bgt_project_key
|
|
, p.bgt_kostenrubriek_key
|
|
, p.prs_kostensoortgrp_key
|
|
, p.prs_kostensoort_key
|
|
, b.prs_bedrijf_key
|
|
, p.opdrachtgever
|
|
, p.pcode
|
|
, p.project
|
|
, p.projectnaam
|
|
, p.dcode
|
|
, p.subproject
|
|
, p.subprojectnaam
|
|
, b.prs_leverancier_nr
|
|
, b.prs_bedrijf_naam
|
|
, p.scode
|
|
, p.kostensoort
|
|
, p.versienummer
|
|
, p.kostencode
|
|
, m.mld_opdr_ordernr
|
|
, m.mld_opdr_bedrijfopdr_volgnr
|
|
, m.mld_opdr_omschrijving
|
|
, m.mld_opdr_id
|
|
, m.mld_opdr_datumbegin
|
|
, TO_CHAR (m.mld_opdr_datumbegin, 'dd-mm-yyyy') mld_opdr_datumbegin_p
|
|
, m.mld_opdr_kosten_refiat
|
|
, CASE WHEN m.mld_statusopdr_key=10 THEN m.mld_opdr_kosten END raming
|
|
, CASE WHEN m.mld_statusopdr_key<>10 THEN m.mld_opdr_kosten END gecontracteerd
|
|
, m.mld_opdr_kosten_btw contract_btw
|
|
, f.fin_factuur_totaal
|
|
, f.fin_factuur_totaal_btw
|
|
, c.mld_statusopdr_oms
|
|
FROM mld_opdr m
|
|
, prs_bedrijf b
|
|
, bgt_v_project_full p
|
|
, (SELECT fac_code2label_code
|
|
mld_statusopdr_key,
|
|
COALESCE (fac_locale_xsl_cust, fac_locale_xsl_tekst) mld_statusopdr_oms
|
|
FROM fac_locale_xsl fl
|
|
, fac_code2label fs
|
|
WHERE fl.fac_locale_xsl_label = fac_code2label_label
|
|
AND fac_code2label_domein = 'opdracht'
|
|
AND fac_locale_xsl_lang = lcl.getuserlanguage ()
|
|
) c
|
|
, (SELECT ff.mld_opdr_key
|
|
, SUM (ff.fin_factuur_totaal) fin_factuur_totaal
|
|
, SUM (ff.fin_factuur_totaal_btw) fin_factuur_totaal_btw
|
|
FROM fin_factuur ff
|
|
GROUP BY ff.mld_opdr_key
|
|
) f
|
|
WHERE m.mld_uitvoerende_keys = b.prs_bedrijf_key
|
|
AND m.prs_kostensoort_key = p.prs_kostensoort_key
|
|
AND m.mld_opdr_meerwerk = 1
|
|
AND m.mld_statusopdr_key = c.mld_statusopdr_key
|
|
AND m.mld_opdr_key = f.mld_opdr_key(+)
|
|
AND p.ins_discipline_verwijder IS NULL
|
|
AND p.bgt_project_verwijder IS NULL
|
|
ORDER BY b.prs_leverancier_nr
|
|
, p.scode
|
|
, m.mld_opdr_ordernr
|
|
, m.mld_opdr_bedrijfopdr_volgnr;
|
|
|
|
|
|
-- MMWINVCO
|
|
CREATE OR REPLACE VIEW twyn_v_meerminderwerk_fact
|
|
AS
|
|
SELECT *
|
|
FROM ( SELECT p.ins_discipline_key
|
|
, p.bgt_project_key
|
|
, p.bgt_kostenrubriek_key
|
|
, p.prs_kostensoortgrp_key
|
|
, p.prs_kostensoort_key
|
|
, b.prs_bedrijf_key
|
|
, f.fin_factuur_key
|
|
, p.opdrachtgever
|
|
, p.pcode
|
|
, p.project
|
|
, p.subproject
|
|
, p.versienummer
|
|
, b.prs_leverancier_nr
|
|
, b.prs_bedrijf_naam
|
|
, p.scode
|
|
, p.kostensoort
|
|
, m.mld_opdr_ordernr
|
|
, m.mld_opdr_bedrijfopdr_volgnr
|
|
, (SELECT CASE WHEN MIN (x.mld_opdr_bedrijfopdr_volgnr) = m.mld_opdr_bedrijfopdr_volgnr
|
|
THEN 1
|
|
ELSE 0
|
|
END
|
|
FROM mld_opdr x
|
|
WHERE x.mld_opdr_ordernr = m.mld_opdr_ordernr
|
|
AND x.mld_opdr_meerwerk = 1
|
|
) mld_opdr_mainorder
|
|
, m.mld_opdr_omschrijving
|
|
, m.mld_opdr_id
|
|
, m.mld_opdr_datumbegin
|
|
, TO_CHAR (m.mld_opdr_datumbegin, 'dd-mm-yyyy') mld_opdr_datumbegin_p
|
|
, m.mld_opdr_kosten
|
|
, m.mld_opdr_kosten_btw
|
|
, COALESCE(f.fin_factuur_datum, m.mld_opdr_datumbegin) fin_factuur_datum
|
|
, TO_CHAR (f.fin_factuur_datum, 'dd-mm-yyyy') fin_factuur_datum_p
|
|
, fin_factuur_nr
|
|
, fin_factuur_opmerking
|
|
, fin_factuur_totaal
|
|
, fin_factuur_totaal_btw
|
|
, fin_factuur_advies
|
|
, TO_CHAR (f.fin_factuur_advies, 'dd-mm-yyyy') fin_factuur_advies_p
|
|
, c.mld_statusopdr_oms
|
|
, c.mld_statusopdr_key
|
|
, 'F' soort
|
|
FROM mld_opdr m
|
|
, prs_bedrijf b
|
|
, fin_factuur f
|
|
, bgt_v_project_full p
|
|
, (SELECT fac_code2label_code
|
|
mld_statusopdr_key,
|
|
COALESCE (fac_locale_xsl_cust, fac_locale_xsl_tekst) mld_statusopdr_oms
|
|
FROM fac_locale_xsl fl
|
|
, fac_code2label fs
|
|
WHERE fl.fac_locale_xsl_label = fac_code2label_label
|
|
AND fac_code2label_domein = 'opdracht'
|
|
AND fac_locale_xsl_lang = lcl.getuserlanguage ()
|
|
) c
|
|
WHERE m.mld_uitvoerende_keys = b.prs_bedrijf_key
|
|
AND m.prs_kostensoort_key = p.prs_kostensoort_key
|
|
AND m.mld_opdr_meerwerk = 1
|
|
AND m.mld_statusopdr_key = c.mld_statusopdr_key
|
|
AND m.mld_opdr_key = f.mld_opdr_key(+)
|
|
AND p.ins_discipline_verwijder IS NULL
|
|
AND p.bgt_project_verwijder IS NULL
|
|
UNION
|
|
SELECT p.ins_discipline_key
|
|
, p.bgt_project_key
|
|
, p.bgt_kostenrubriek_key
|
|
, p.prs_kostensoortgrp_key
|
|
, p.prs_kostensoort_key
|
|
, b.prs_bedrijf_key
|
|
, NULL fin_factuur_key
|
|
, p.opdrachtgever
|
|
, p.pcode
|
|
, p.project
|
|
, p.subproject
|
|
, p.versienummer
|
|
, b.prs_leverancier_nr
|
|
, b.prs_bedrijf_naam
|
|
, p.scode
|
|
, p.kostensoort
|
|
, m.mld_opdr_ordernr
|
|
, m.mld_opdr_bedrijfopdr_volgnr
|
|
, (SELECT CASE WHEN MIN (x.mld_opdr_bedrijfopdr_volgnr) = m.mld_opdr_bedrijfopdr_volgnr
|
|
THEN 1
|
|
ELSE 0
|
|
END
|
|
FROM mld_opdr x
|
|
WHERE x.mld_opdr_ordernr = m.mld_opdr_ordernr
|
|
AND x.mld_opdr_meerwerk = 1
|
|
) mld_opdr_mainorder
|
|
, m.mld_opdr_omschrijving
|
|
, m.mld_opdr_id
|
|
, m.mld_opdr_datumbegin
|
|
, TO_CHAR (m.mld_opdr_datumbegin, 'dd-mm-yyyy') mld_opdr_datumbegin_p
|
|
, m.mld_opdr_kosten
|
|
, m.mld_opdr_kosten_btw
|
|
, COALESCE(f.fin_factuur_datum, m.mld_opdr_datumbegin) fin_factuur_datum
|
|
, TO_CHAR( COALESCE(f.fin_factuur_datum, m.mld_opdr_datumbegin), 'dd-mm-yyyy') fin_factuur_datum_p
|
|
, NULL fin_factuur_nr
|
|
, NULL fin_factuur_opmerking
|
|
, NULL fin_factuur_totaal
|
|
, NULL fin_factuur_totaal_btw
|
|
, NULL fin_factuur_advies
|
|
, NULL fin_factuur_advies_p
|
|
, c.mld_statusopdr_oms
|
|
, c.mld_statusopdr_key
|
|
, 'C' soort
|
|
FROM mld_opdr m
|
|
, prs_bedrijf b
|
|
, bgt_v_project_full p
|
|
, (SELECT fac_code2label_code
|
|
mld_statusopdr_key,
|
|
COALESCE (fac_locale_xsl_cust, fac_locale_xsl_tekst) mld_statusopdr_oms
|
|
FROM fac_locale_xsl fl
|
|
, fac_code2label fs
|
|
WHERE fl.fac_locale_xsl_label = fac_code2label_label
|
|
AND fac_code2label_domein = 'opdracht'
|
|
AND fac_locale_xsl_lang = lcl.getuserlanguage ()
|
|
) c
|
|
, (SELECT ff.mld_opdr_key
|
|
, MIN (ff.fin_factuur_datum) fin_factuur_datum
|
|
FROM fin_factuur ff
|
|
GROUP BY ff.mld_opdr_key
|
|
) f
|
|
WHERE m.mld_uitvoerende_keys = b.prs_bedrijf_key
|
|
AND m.prs_kostensoort_key = p.prs_kostensoort_key
|
|
AND m.mld_opdr_key = f.mld_opdr_key(+)
|
|
AND m.mld_opdr_meerwerk = 1
|
|
AND m.mld_statusopdr_key = c.mld_statusopdr_key
|
|
AND p.ins_discipline_verwijder IS NULL
|
|
AND p.bgt_project_verwijder IS NULL
|
|
)
|
|
ORDER BY prs_leverancier_nr
|
|
, scode
|
|
, mld_opdr_ordernr
|
|
, mld_opdr_bedrijfopdr_volgnr;
|
|
|
|
|
|
--FACT_MND
|
|
--FDATFACT
|
|
CREATE OR REPLACE VIEW twyn_v_factuur_datum
|
|
AS
|
|
SELECT tp.ins_discipline_key
|
|
, tp.bgt_project_key
|
|
, tp.opdrachtgever
|
|
, tp.pcode
|
|
, tp.project
|
|
, tp.subproject
|
|
, tp.rcode
|
|
, tp.kostencode
|
|
, tp.versienummer
|
|
, b.prs_leverancier_nr
|
|
, f.fin_factuur_datum factuur_datum
|
|
, COALESCE(f.fin_factuur_advies, f.fin_factuur_datum) advies_datum
|
|
, o.mld_opdr_ordernr contractnummer
|
|
, o.mld_opdr_bedrijfopdr_volgnr volgnummer
|
|
, f.fin_factuur_nr factuur_nr
|
|
, f.fin_factuur_opmerking factuur_opmerking
|
|
, f.fin_factuur_totaal factuur_exc
|
|
, f.fin_factuur_totaal_btw factuur_btw
|
|
, f.fin_factuur_totaal + f.fin_factuur_totaal_btw factuur_inc
|
|
, TO_CHAR(f.fin_factuur_datum, 'dd-mm-yyyy') factuur_datum_p
|
|
, TO_CHAR(f.fin_factuur_datum, 'yyyy') factuur_datum_jaar
|
|
, TO_CHAR(f.fin_factuur_datum, 'mm') factuur_datum_maand
|
|
, TO_CHAR(COALESCE(f.fin_factuur_advies, f.fin_factuur_datum), 'dd-mm-yyyy') factuur_advies_p
|
|
, TO_CHAR(COALESCE(f.fin_factuur_advies, f.fin_factuur_datum), 'yyyy') factuur_advies_jaar
|
|
, TO_CHAR(COALESCE(f.fin_factuur_advies, f.fin_factuur_datum), 'mm') factuur_advies_maand
|
|
FROM prs_bedrijf b
|
|
, fin_factuur f
|
|
, mld_opdr o
|
|
, bgt_v_project_full tp
|
|
WHERE f.mld_opdr_key(+) = o.mld_opdr_key
|
|
AND o.mld_uitvoerende_keys = b.prs_bedrijf_key(+)
|
|
AND tp.prs_kostensoort_key = o.prs_kostensoort_key(+)
|
|
AND tp.ins_discipline_verwijder IS NULL
|
|
AND tp.bgt_project_verwijder IS NULL;
|
|
|
|
|
|
------ payload end ------
|
|
|
|
SET DEFINE OFF
|
|
BEGIN adm.systrackscriptId ('$Id$', 0); END;
|
|
/
|
|
|
|
COMMIT;
|
|
SET ECHO OFF
|
|
SPOOL OFF
|
|
SET DEFINE ON
|
|
PROMPT Logfile of this upgrade is: &fcltlogfile
|