FSN#39055 BCS/2000 functionaliteit in FACILITOR - customization

svn path=/Customer/trunk/; revision=36428
This commit is contained in:
Erik Groener
2017-12-20 14:47:25 +00:00
parent c43da5517b
commit f6bcfdf403

View File

@@ -2927,60 +2927,6 @@ END;
-- basis views
CREATE OR REPLACE VIEW twyn_v_bgt_mutatie
AS
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
--2017.3 , m.bgt_budgetmutatie_reserve
, 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
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
--2017.3 , m.bgt_budgetmutatie_reserve
, 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
FROM bgt_budget b
, bgt_budgetmutatie m
WHERE b.bgt_budget_key = m.bgt_budget_key_naar;
CREATE OR REPLACE VIEW twyn_v_bgt_budgetmutatie
AS
@@ -3636,98 +3582,140 @@ AS
-- BREG_TOT
CREATE OR REPLACE VIEW twyn_v_budgettotaal
AS
SELECT *
FROM ( SELECT bud.ins_discipline_key,
bud.bgt_project_key,
bud.bgt_kostenrubriek_key,
bud.opdrachtgever,
bud.pcode,
bud.project,
bud.subproject,
bud.sortcode,
bud.kostenrubriek,
bud.rcode,
bud.versienummer,
MAX (bud.budget_actueel)
budget_actueel,
MAX (bud.budget_actueel - bud.budget_mutatie)
budget_origineel,
MAX (bud.budget_mutatie)
budget_mutatie,
SUM (besteding.gecontracteerd)
gecontracteerd,
MAX (COALESCE (bud.budget_actueel, 0))
- SUM (COALESCE (besteding.gecontracteerd, 0))
tecontracteren,
SUM (besteding.gefactureerd)
gefactureerd,
SUM (besteding.tefactureren)
tefactureren,
MAX (bud.budget_btwactueel)
budget_btwactueel,
MAX (bud.budget_btwactueel - bud.budget_btwmutatie)
budget_btworigineel,
MAX (bud.budget_btwmutatie)
budget_btwmutatie,
SUM (besteding.gecontracteerdbtw)
gecontracteerdbtw,
MAX (COALESCE (bud.budget_btwactueel, 0))
- SUM (COALESCE (besteding.gecontracteerdbtw, 0))
tecontracterenbtw,
SUM (besteding.gefactureerdbtw)
gefactureerdbtw,
SUM (besteding.tefacturerenbtw)
tefacturerenbtw
FROM twyn_v_bgt_budget bud,
( SELECT opdr.ins_discipline_key,
opdr.bgt_project_key,
opdr.bgt_kostenrubriek_key,
opdr.prs_kostensoortgrp_key,
opdr.prs_kostensoort_key,
SUM (opdr.gecontracteerd)
gecontracteerd,
SUM (opdr.gecontracteerdbtw)
gecontracteerdbtw,
SUM (fact.gefactureerd)
gefactureerd,
SUM (fact.gefactureerdbtw)
gefactureerdbtw,
SUM (COALESCE (opdr.gecontracteerd, 0))
- SUM (COALESCE (fact.gefactureerd, 0))
tefactureren,
SUM (COALESCE (opdr.gecontracteerdbtw, 0))
- SUM (COALESCE (fact.gefactureerdbtw, 0))
tefacturerenbtw
FROM twyn_v_bgt_opdracht opdr, twyn_v_bgt_factuur fact
WHERE opdr.prs_kostensoort_key(+) =
fact.prs_kostensoort_key
AND opdr.ins_discipline_key =
fact.ins_discipline_key
AND opdr.bgt_project_key = fact.bgt_project_key
GROUP BY opdr.ins_discipline_key,
opdr.bgt_project_key,
opdr.bgt_kostenrubriek_key,
opdr.prs_kostensoortgrp_key,
opdr.prs_kostensoort_key) besteding
WHERE bud.bgt_kostenrubriek_key = besteding.bgt_kostenrubriek_key(+)
AND bud.ins_discipline_verwijder IS NULL
AND bud.bgt_project_verwijder IS NULL
GROUP BY bud.ins_discipline_key,
bud.bgt_project_key,
bud.bgt_kostenrubriek_key,
bud.opdrachtgever,
bud.pcode,
bud.project,
bud.subproject,
bud.kostenrubriek,
bud.rcode,
bud.sortcode,
bud.versienummer,
bud.budget_actueel)
ORDER BY project,
subproject,
sortcode,
kostenrubriek;
SELECT opdrachtgever
, pcode
, project
, projectnaam
, dcode
, subproject
, subprojectnaam
, versienummer
, rcode
, kostenrubriek
, financieel.*
FROM bgt_v_project_full gegevens
, (
SELECT kr.bgt_kostenrubriek_key
, 'B' soort
, SUM(bu.bgt_budget_bedrag) bgt_bedrag_exc
, SUM(bu.bgt_budget_btwbedrag) bgt_bedrag_btw
, 0 res_bedrag_exc
, 0 res_bedrag_btw
, 0 mut_bedrag_exc
, 0 mut_bedrag_btw
, NULL bgt_datum
, 0 cnt_bedrag_exc
, 0 cnt_bedrag_btw
, NULL cnt_datum
, 0 fin_bedrag_exc
, 0 fin_bedrag_btw
, NULL fin_datum
FROM bgt_kostenrubriek kr
, bgt_budget bu
WHERE bu.bgt_kostenrubriek_key = kr.bgt_kostenrubriek_key
GROUP BY kr.bgt_kostenrubriek_key
UNION ALL
SELECT bu.bgt_kostenrubriek_key
, 'M' soort
, 0 bgt_bedrag_exc
, 0 bgt_bedrag_btw
, 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 bgt_datum
, 0 cnt_bedrag_exc
, 0 cnt_bedrag_btw
, NULL cnt_datum
, 0 fin_bedrag_exc
, 0 fin_bedrag_btw
, NULL fin_datum
FROM bgt_budget bu
, (SELECT bm_1.bgt_budget_key_van bgt_budget_key
, bm_1.bgt_budgetmutatie_datum
, 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
SELECT bm_2.bgt_budget_key_naar bgt_budget_key
, bm_2.bgt_budgetmutatie_datum
, 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
) bm
WHERE bu.bgt_budget_key = bm.bgt_budget_key
UNION ALL
SELECT bu.bgt_kostenrubriek_key
, 'C' soort
, 0 bgt_bedrag_exc
, 0 bgt_bedrag_btw
, 0 res_bedrag_exc
, 0 res_bedrag_btw
, 0 mut_bedrag_exc
, 0 mut_bedrag_btw
, NULL bgt_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
, NULL fin_datum
FROM bgt_budget bu
, mld_opdr mo
WHERE bu.prs_kostensoort_key = mo.prs_kostensoort_key(+)
UNION ALL
SELECT bu.bgt_kostenrubriek_key
, 'F' soort
, 0 bgt_bedrag_exc
, 0 bgt_bedrag_btw
, 0 res_bedrag_exc
, 0 res_bedrag_btw
, 0 mut_bedrag_exc
, 0 mut_bedrag_btw
, NULL bgt_datum
, 0 cnt_bedrag_exc
, 0 cnt_bedrag_btw
, 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
, fin_factuur fa
WHERE bu.prs_kostensoort_key = fa.prs_kostensoort_key
) financieel
WHERE gegevens.bgt_kostenrubriek_key = financieel.bgt_kostenrubriek_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;
-- BREG_RES