AAXX#60595 -- Interface aanpassing kosten voorgaande jaar naar specifieke balansrekeningen

svn path=/Customer/trunk/; revision=45340
This commit is contained in:
Jos Migo
2020-01-02 15:50:54 +00:00
parent 960549c055
commit 2da2722cba

View File

@@ -2434,93 +2434,196 @@ AS
)
projectnaam,
prs_kostensoort_oms,
DECODE (aaxx_get_user,
'DOW', DECODE (coalesce (to_char(o.mld_opdr_datumbegin, 'yyyy'), coalesce(to_char(c.cnt_contract_looptijd_tot,'yyyy'), to_char(bo.bes_bestelopdr_datum, 'yyyy'))),
'2019', k.prs_kostensoort_refcode,
DECODE (substr(k.prs_kostensoort_upper,1,2), 'CO', DECODE (substr(k.prs_kostensoort_upper,1,7), 'COR VAR', '1350808', '1350807'),
'NC', DECODE (substr(k.prs_kostensoort_upper,1,5), 'NC P ', '1350817', '1350809'),
'Onbekend')
),
-- Gul kent een andere methode. Deze gaat niet mee in de jaarafsluiting. Met GULU#38855 is
-- bepaald dat de kosten vanaf 2017 op andere rekeningnummers komen dan de kosten uit voorafgaande
-- jaren.
'GUL', DECODE (coalesce (to_char(o.mld_opdr_datumbegin, 'yyyy'), coalesce(to_char(c.cnt_contract_looptijd_tot,'yyyy'), to_char(bo.bes_bestelopdr_datum, 'yyyy'))),
'2019', k.prs_kostensoort_refcode,
'2018', DECODE (substr(k.prs_kostensoort_upper,1,2), 'CF', '1350830',
'CV', '1350831',
'Onbekend'),
'2017', DECODE (substr(k.prs_kostensoort_upper,1,2), 'CF', '1350801',
'CV', '1350802',
'Onbekend'),
DECODE (substr(k.prs_kostensoort_upper,1,2), 'CF', '1350803',
'CV', '1350804',
'Onbekend')
),
'HB', DECODE (fac.safe_to_number(substr(fin_factuur_boekmaand, 1,4)) - fac.safe_to_number(to_char(sysdate, 'yyyy')),
1, '1350400', -- boekmaand ligt in het volgend jaar in verband met gebroken boekjaar
0, k.prs_kostensoort_refcode, -- boekmaand ligt in huidig jaar
-- boekmaand ligt in het verleden, dus bedragen mogen naar balansrekening.
DECODE (substr(k.prs_kostensoort_upper,1,3), 'CF ', '1350807',
'CFE', '1350807',
'CV ', '1350808',
'CVE', '1350809',
'NC ', DECODE (substr(k.prs_kostensoort_upper,1,7), 'NC PROJ', '1350817', '1350809'),
'Onbekend')
),
-- INLO uit standaard overgenomen. Zie ticket 57775.
'INLO', DECODE (coalesce (to_char(o.mld_opdr_datumbegin, 'yyyy'),
coalesce(to_char(DECODE (aaxx_get_top_bedrijf_key ((SELECT prs_kostenplaats_nr from prs_kostenplaats where prs_kostenplaats_key = c.prs_kostenplaats_key)),
2082,TO_DATE(fin_factuur_boekmaand, 'yyyy-mm'),
c.cnt_contract_looptijd_tot), 'yyyy'),
to_char(bo.bes_bestelopdr_datum, 'yyyy'))),
'2019', k.prs_kostensoort_refcode,
DECODE (substr(k.prs_kostensoort_upper,1,3), 'CF ', '1350807',
'CFE', '1350807',
'CV ', '1350808',
'CVE', '1350809',
'NC ', DECODE (substr(k.prs_kostensoort_upper,1,7), 'NC PROJ', '1350817', '1350809'),
'Onbekend')
),
'IT', DECODE (coalesce (to_char(o.mld_opdr_datumbegin, 'yyyy'), coalesce(to_char(c.cnt_contract_looptijd_tot,'yyyy'), to_char(bo.bes_bestelopdr_datum, 'yyyy'))),
'2019', k.prs_kostensoort_refcode, '2018', k.prs_kostensoort_refcode,
DECODE (substr(k.prs_kostensoort_upper,1,2), 'CF', '1350822',
'CV', '1350823',
'NC', DECODE (substr(k.prs_kostensoort_upper,1,7), 'NC PROJ', '1350817', '1350824'),
k.prs_kostensoort_refcode)
),
'PM', DECODE (coalesce (to_char(o.mld_opdr_datumbegin, 'yyyy'), coalesce(to_char(c.cnt_contract_looptijd_tot,'yyyy'), to_char(bo.bes_bestelopdr_datum, 'yyyy'))),
'2019', k.prs_kostensoort_refcode,
DECODE (substr(k.prs_kostensoort_upper,1,5), 'NC PR', '1350817', -- Geen NC PROJ
'Onbekend')
),
--NIEUW DSM ivm gebruik L-code #56150
'DSM', DECODE (coalesce (to_char(o.mld_opdr_datumbegin, 'yyyy'), coalesce(to_char(c.cnt_contract_looptijd_tot,'yyyy'), to_char(bo.bes_bestelopdr_datum, 'yyyy'))),
'2019', k.prs_kostensoort_refcode,
DECODE (substr(k.prs_kostensoort_upper,1,2), 'L ', DECODE (substr(k.prs_kostensoort_upper,1,5), 'L CF ', '1350807',
'L CFE', '1350807',
'L CV ', '1350808',
'L CVE', '1350809',
'L NC ', DECODE (substr(k.prs_kostensoort_upper,1,9), 'L NC PROJ', '1350817', '1350809'),
'Onbekend'),
DECODE (substr(k.prs_kostensoort_upper,1,3),'CF ', '1350807',
'CFE', '1350807',
'CV ', '1350808',
'CVE', '1350809',
'NC ', DECODE (substr(k.prs_kostensoort_upper,1,7), 'NC PROJ', '1350817', '1350809'),
'Onbekend')
)
),
-- standaard keuze werkt voor de meeste accounts.
DECODE (coalesce (to_char(o.mld_opdr_datumbegin, 'yyyy'), coalesce(to_char(c.cnt_contract_looptijd_tot,'yyyy'), to_char(bo.bes_bestelopdr_datum, 'yyyy'))),
'2019', k.prs_kostensoort_refcode,
DECODE (substr(k.prs_kostensoort_upper,1,3), 'CF ', '1350807',
'CFE', '1350807',
'CV ', '1350808',
'CVE', '1350809',
'NC ', DECODE (substr(k.prs_kostensoort_upper,1,7), 'NC PROJ', '1350817', '1350809'),
'Onbekend')
)
),
DECODE (
aaxx_get_user,
'DOW', DECODE (
COALESCE (
TO_CHAR (o.mld_opdr_datumbegin, 'yyyy'),
COALESCE (
TO_CHAR (c.cnt_contract_looptijd_tot,
'yyyy'),
TO_CHAR (bo.bes_bestelopdr_datum, 'yyyy'))),
'2020', k.prs_kostensoort_refcode,
DECODE (
SUBSTR (k.prs_kostensoort_upper, 1, 2),
'CO', DECODE (
SUBSTR (k.prs_kostensoort_upper,
1,
7),
'COR VAR', '1350814',
'1350813'),
'NC', DECODE (
SUBSTR (k.prs_kostensoort_upper,
1,
5),
'NC P ', '1350817',
'1350815'),
'Onbekend')),
-- Gul is uitgeschakeld (Sander Vogels dec-2019). Is dus ook niet meegenomen bij aanpassing interface 2020 ivm balansrekeningen voorgaande boekjaar (AAX#60595)
-- Gul kent een andere methode. Deze gaat niet mee in de jaarafsluiting. Met GULU#38855 is
-- bepaald dat de kosten vanaf 2017 op andere rekeningnummers komen dan de kosten uit voorafgaande
-- jaren.
'GUL', DECODE (
COALESCE (
TO_CHAR (o.mld_opdr_datumbegin, 'yyyy'),
COALESCE (
TO_CHAR (c.cnt_contract_looptijd_tot,
'yyyy'),
TO_CHAR (bo.bes_bestelopdr_datum, 'yyyy'))),
'2019', k.prs_kostensoort_refcode,
'2018', DECODE (
SUBSTR (k.prs_kostensoort_upper, 1, 2),
'CF', '1350830',
'CV', '1350831',
'Onbekend'),
'2017', DECODE (
SUBSTR (k.prs_kostensoort_upper, 1, 2),
'CF', '1350801',
'CV', '1350802',
'Onbekend'),
DECODE (SUBSTR (k.prs_kostensoort_upper, 1, 2),
'CF', '1350803',
'CV', '1350804',
'Onbekend')),
'HB', DECODE (
fac.safe_to_number (
SUBSTR (fin_factuur_boekmaand, 1, 4))
- fac.safe_to_number (TO_CHAR (SYSDATE, 'yyyy')),
1, '1350400', -- boekmaand ligt in het volgend jaar in verband met gebroken boekjaar
0, k.prs_kostensoort_refcode, -- boekmaand ligt in huidig jaar
-- boekmaand ligt in het verleden, dus bedragen mogen naar balansrekening.
DECODE (
SUBSTR (k.prs_kostensoort_upper, 1, 3),
'CF ', '1350813',
'CFE', '1350813',
'CV ', '1350814',
'CVE', '1350815',
'NC ', DECODE (
SUBSTR (k.prs_kostensoort_upper,
1,
7),
'NC PROJ', '1350817',
'1350815'),
'Onbekend')),
-- INLO uit standaard overgenomen. Zie ticket 57775.
'INLO', DECODE (
COALESCE (
TO_CHAR (o.mld_opdr_datumbegin, 'yyyy'),
COALESCE (
TO_CHAR (
DECODE (
aaxx_get_top_bedrijf_key (
(SELECT prs_kostenplaats_nr
FROM prs_kostenplaats
WHERE prs_kostenplaats_key =
c.prs_kostenplaats_key)),
2082, TO_DATE (
fin_factuur_boekmaand,
'yyyy-mm'),
c.cnt_contract_looptijd_tot),
'yyyy'),
TO_CHAR (bo.bes_bestelopdr_datum, 'yyyy'))),
'2020', k.prs_kostensoort_refcode,
DECODE (
SUBSTR (k.prs_kostensoort_upper, 1, 3),
'CF ', '1350813',
'CFE', '1350813',
'CV ', '1350814',
'CVE', '1350815',
'NC ', DECODE (
SUBSTR (k.prs_kostensoort_upper,
1,
7),
'NC PROJ', '1350817',
'1350815'),
'Onbekend')),
'IT', DECODE (
COALESCE (
TO_CHAR (o.mld_opdr_datumbegin, 'yyyy'),
COALESCE (
TO_CHAR (c.cnt_contract_looptijd_tot,
'yyyy'),
TO_CHAR (bo.bes_bestelopdr_datum, 'yyyy'))),
'2020', k.prs_kostensoort_refcode,
'2019', k.prs_kostensoort_refcode,
DECODE (
SUBSTR (k.prs_kostensoort_upper, 1, 2),
'CF', '1350822',
'CV', '1350823',
'NC', DECODE (
SUBSTR (k.prs_kostensoort_upper, 1, 7),
'NC PROJ', '1350817',
'1350824'),
k.prs_kostensoort_refcode)),
'PM', DECODE (
COALESCE (
TO_CHAR (o.mld_opdr_datumbegin, 'yyyy'),
COALESCE (
TO_CHAR (c.cnt_contract_looptijd_tot,
'yyyy'),
TO_CHAR (bo.bes_bestelopdr_datum, 'yyyy'))),
'2020', k.prs_kostensoort_refcode,
DECODE (SUBSTR (k.prs_kostensoort_upper, 1, 5),
'NC PR', '1350817', -- Geen NC PROJ
'Onbekend')),
--NIEUW DSM ivm gebruik L-code #56150
'DSM', DECODE (
COALESCE (
TO_CHAR (o.mld_opdr_datumbegin, 'yyyy'),
COALESCE (
TO_CHAR (c.cnt_contract_looptijd_tot,
'yyyy'),
TO_CHAR (bo.bes_bestelopdr_datum, 'yyyy'))),
'2020', k.prs_kostensoort_refcode,
DECODE (
SUBSTR (k.prs_kostensoort_upper, 1, 2),
'L ', DECODE (
SUBSTR (k.prs_kostensoort_upper,
1,
5),
'L CF ', '1350813',
'L CFE', '1350813',
'L CV ', '1350814',
'L CVE', '1350815',
'L NC ', DECODE (
SUBSTR (
k.prs_kostensoort_upper,
1,
9),
'L NC PROJ', '1350817',
'1350815'),
'Onbekend'),
DECODE (
SUBSTR (k.prs_kostensoort_upper, 1, 3),
'CF ', '1350813',
'CFE', '1350813',
'CV ', '1350814',
'CVE', '1350815',
'NC ', DECODE (
SUBSTR (k.prs_kostensoort_upper,
1,
7),
'NC PROJ', '1350817',
'1350815'),
'Onbekend'))),
-- standaard keuze werkt voor de meeste accounts.
DECODE (
COALESCE (
TO_CHAR (o.mld_opdr_datumbegin, 'yyyy'),
COALESCE (
TO_CHAR (c.cnt_contract_looptijd_tot, 'yyyy'),
TO_CHAR (bo.bes_bestelopdr_datum, 'yyyy'))),
'2020', k.prs_kostensoort_refcode,
DECODE (
SUBSTR (k.prs_kostensoort_upper, 1, 3),
'CF ', '1350813',
'CFE', '1350813',
'CV ', '1350814',
'CVE', '1350815',
'NC ', DECODE (SUBSTR (k.prs_kostensoort_upper, 1, 7),
'NC PROJ', '1350817',
'1350815'),
'Onbekend'))),
k.prs_kostensoort_key,
COALESCE(o.prs_kostenplaats_key,
COALESCE(c.prs_kostenplaats_key,