YKPN#70410 -- Klantspecifieke SLA rapportage

svn path=/Customer/trunk/; revision=54533
This commit is contained in:
Norbert Wassink
2022-01-14 11:58:51 +00:00
parent f9b876b537
commit 568a8ed4fc

View File

@@ -2284,7 +2284,7 @@ AS
rec.cnt_contract_key,
3,
SYSDATE,
'Contract ge<67>ndexeerd met ' || rec.indexatie || '%');
'Contract ge<67>ndexeerd met ' || rec.indexatie || '%');
-- Verwijder de kenmerken voor de indexatie
DELETE cnt_kenmerkcontract
@@ -2948,7 +2948,7 @@ AS
prs_bedrijf b
WHERE t.fac_srtnotificatie_key = sn.fac_srtnotificatie_key
AND sn.fac_srtnotificatie_xmlnode = 'contract'
AND fac_tracking_oms LIKE 'Contract ge<67>ndexeerd met%'
AND fac_tracking_oms LIKE 'Contract ge<67>ndexeerd met%'
AND t.fac_tracking_refkey = c.cnt_contract_key
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key;
@@ -3481,7 +3481,7 @@ BEGIN
UPDATE fac_imp_perslid
SET prs_srtperslid_omschrijving = COALESCE(prs_kenmerk3, 'Extern');
-- Verwijder dubbele records (personen met <20><>n login en meerdere personeelsnummers
-- Verwijder dubbele records (personen met <20><>n login en meerdere personeelsnummers
-- Anders krijgen we allemaal onnodige logging
FOR rec IN c
LOOP
@@ -3500,7 +3500,7 @@ BEGIN
-- De afdelingscode uit het persoonsbestand komt overeen met de kostenplaats. Dus zoeken we a.d.h.v.
-- de kostenplaats de juiste afdelingscode op.
-- YKPN#58764: Er kunnen natuurlijk >1 afdelingen zijn met dezelfde kostenplaats en dan ketst(e)
-- deze import met een "Enkele-rij subselect retourneert meer dan <20><>n rij". Dit opgelost
-- deze import met een "Enkele-rij subselect retourneert meer dan <20><>n rij". Dit opgelost
-- door voortaan de MIN (= alfabetisch 1e) te pakken en geen verwijderde entries meer
-- te beschouwen.
-- NB. En als >1 afdelingen dezelfde prs_afdeling_naam hebben (wat ook kan), dan lost de
@@ -4769,7 +4769,7 @@ CREATE OR REPLACE VIEW ykpn_v_kenteken_nedap
)
AS
SELECT REGEXP_REPLACE (UPPER (b.bez_bezoekers_kenteken),
'[^A-Z0-9<>-<2D>]+',
'[^A-Z0-9<>-<2D>]+',
'')
kenteken,
(SELECT kp.bez_kenmerkwaarde_waarde
@@ -6694,7 +6694,7 @@ AS
WHEN MAX (res_rsv_deel_tot) IS NULL THEN DECODE (res_discipline_key, 2341, 4, 2421, 0, 3661, 6, 5) -- 2341 flex cn, 2421 flex KPN 3661 buroblokken
WHEN TO_CHAR (MAX (res_rsv_deel_tot), 'HH24') <= 18 AND res_discipline_key = 2341 THEN 1 -- dag bezet (flex cn)
WHEN TO_CHAR (MIN (res_rsv_deel_van), 'HH24') >= 16 AND res_discipline_key = 2341 THEN 2 -- avond bezet (flex cn)
WHEN res_discipline_key = 2961 AND count(*) = 1 THEN 1 -- <20><>n blok bezet, catalogus proef Zo werken wij CS
WHEN res_discipline_key = 2961 AND count(*) = 1 THEN 1 -- <20><>n blok bezet, catalogus proef Zo werken wij CS
WHEN res_discipline_key = 2961 AND count(*) = 2 THEN 2 -- twee blokken bezet, catalogus proef Zo werken wij CS
ELSE 3 -- hele dag bezet
END
@@ -10015,7 +10015,7 @@ SELECT m.mld_melding_key,
-- Rapportage 1:
-- Alle hoofdmeldingen of onderliggende opdrachten waar het veld <20>bedrag gefactureerd<72> staat ingevuld.
-- Alle hoofdmeldingen of onderliggende opdrachten waar het veld <20>bedrag gefactureerd<72> staat ingevuld.
-- Alle procuraties die zijn doorlopen (ongeacht de status open / afgemeld / etc)
CREATE OR REPLACE VIEW ykpn_v_rap_facturatie1
AS
@@ -10033,7 +10033,7 @@ AS
OR procuratiebedrag IS NOT NULL);
-- Rapportage 2:
-- Alle opdrachten met opdrachttypes <20>uitvoer opdracht<68> en <20>bestelling<6E> waar het veld <20>bedrag gefactureerd<72> niet is ingevuld
-- Alle opdrachten met opdrachttypes <20>uitvoer opdracht<68> en <20>bestelling<6E> waar het veld <20>bedrag gefactureerd<72> niet is ingevuld
CREATE OR REPLACE VIEW ykpn_v_rap_facturatie2
AS
SELECT *
@@ -12885,7 +12885,7 @@ BEGIN
AND b.prs_leverancier_nr IS NOT NULL
AND fg.fin_factuur_statuses_key = 6
AND fg.fin_factuur_datum > SYSDATE - (5 * 365) -- Check op geldige factuurdatum:
AND fg.fin_factuur_datum < SYSDATE + 365 -- facturen mogen niet ouder zijn dan 5 jaar of meer dan <20><>n jaar in de toekomst.
AND fg.fin_factuur_datum < SYSDATE + 365 -- facturen mogen niet ouder zijn dan 5 jaar of meer dan <20><>n jaar in de toekomst.
);
-- Bepaal het boekstuknummer (key 3) met het hoogste nummer van dit jaar
@@ -13855,7 +13855,7 @@ BEGIN
fac.writelog ('PROCESSEMAIL', 'I', 'std: '|| v_stdmelding_key, '');
-- Om niet overal email adressen van te maken zet KPN retail alles op <20><>n email adres.
-- Om niet overal email adressen van te maken zet KPN retail alles op <20><>n email adres.
-- Dan kijken we nu maar even of we ook de afzender kennen.
v_errormsg := 'Is de afzender Retailsupport mail?';
IF v_perslid_key = 64801 -- API-user tbv. Retailsupport mail
@@ -13939,7 +13939,7 @@ BEGIN
END IF;
-- Controleer of dit een reactie is op een eerdere mail.
-- Vooralsnog alleen aanzetten voor vakgroep Financi<63>n/Financedesk 406
-- Vooralsnog alleen aanzetten voor vakgroep Financi<63>n/Financedesk 406
v_mld_id := REGEXP_SUBSTR (psubject, 'Melding [[:alpha:]][[:digit:]]{5,}', 1, 1);
IF v_mld_id IS NOT NULL
AND (LOWER(SUBSTR(psubject, 1, 3)) = 're:' OR LOWER(SUBSTR(psubject, 1, 3)) = 'fw:')
@@ -15028,6 +15028,165 @@ AS
AND o.mld_opdr_datumbegin >=
TO_DATE ('01-01-2014', 'DD-MM-YYYY')) x;
-- YKPN wil uitbereiding op de udr_medlingopdracht raportage
-- Extra kolom met leverancier sla en of deze op tijd is.
CREATE OR REPLACE VIEW ykpn_v_udr_meldingopdracht
AS
SELECT
mo.melding_key,
mo.meldingnummer,
mo.melding_start_key,
mo.externnummer,
mo.melding_regio,
mo.melding_district,
mo.melding_locatiecode,
mo.melding_locatie,
mo.melding_locatieplaats,
mo.fclt_3d_locatie_key,
mo.melding_gebouwcode,
mo.melding_gebouw,
mo.melding_verdieping,
mo.melding_ruimtenr,
mo.melding_ruimte,
mo.melding_ordernr,
mo.kostensoortgroep,
mo.kostensoort,
mo.kostenplaats,
mo.kostenplaats_oms,
mo.melder,
mo.melder_key,
mo.melder_email,
mo.afdeling,
mo.afdeling_omschrijving,
mo.fclt_3d_afdeling_key,
mo.divisie,
mo.divisie_omschrijving,
mo.fclt_3d_divisie_key,
mo.bedrijf_key,
mo.invoerder,
mo.meldbron,
mo.soortmelding,
mo.fclt_3d_discipline_key,
mo.productgroep,
mo.subproductgroep,
mo.behandelgroep,
mo.behandelaar,
mo.behandelaar_key,
mo.subproductgroepgroep,
mo.fclt_3d_discipline2_key,
mo.actieve_behandelgroep,
mo.actieve_behandelaar_key,
mo.actieve_behandelaar,
mo.melding_status,
mo.sla_nvt,
mo.sla_werkdgn,
mo.sla_werkuren,
mo.sla_respijtdgn,
mo.sla_respijturen,
mo.sla_accptdgn,
mo.sla_accpturen,
mo.plan_uitvoertijd_sla,
mo.melding_datum,
mo.melding_einddatum,
mo.melding_einddatum_std,
mo.melding_acceptdatum,
mo.melding_afgemeld,
mo.melding_accepted,
mo.doorlooptijd_werkdgn,
mo.doorlooptijd_werkuren,
mo.onderwerp,
mo.vomschrijving,
mo.melding_opmerking,
mo.prioriteit,
mo.prioriteittxt,
mo.rating,
mo.rating_opmerking,
mo.bolletje,
mo.actiecode,
mo.accept_sla_dagen,
mo.accept_sla_uren,
mo.uitvoering_sla_dagen,
mo.uitvoering_sla_uren,
mo.afspraak_sla_dagen,
mo.afspraak_sla_uren,
mo.accept_sla_optijd,
mo.uitvoering_sla_optijd,
mo.afspraak_sla_optijd,
mo.selfservice,
mo.opdracht_key,
mo.opdracht_nummer,
mo.opdracht_regio,
mo.opdracht_district,
mo.opdracht_locatie_code,
mo.opdracht_locatie,
mo.opdracht_locatieplaats,
--mo.fclt_3d_locatie_key,
mo.opdracht_gebouwcode,
mo.opdracht_gebouw,
mo.opdracht_verdieping,
mo.opdracht_ruimtenr,
mo.opdracht_ruimte,
mo.opdracht_kostenplaats,
mo.opdracht_kostenplaats_oms,
--mo.melding_key,
mo.opdracht_type,
mo.opdracht_volgnummer,
mo.opdracht_status,
mo.opdracht_duur_gepland,
mo.opdracht_datum,
mo.opdracht_einddatum,
mo.opdracht_plandatum,
mo.opdracht_acceptdatum,
mo.opdracht_afgemeld,
mo.opdracht_doorlooptijd,
mo.opdracht_accepttijd,
mo.opdracht_omschrijving,
mo.opdracht_opmerking,
mo.opdracht_uitvoerende,
mo.opdracht_uitvoerende_contact,
mo.opdracht_behandelaar,
mo.opdracht_contract,
mo.opdracht_contract_versie,
mo.opdracht_contactpersoon,
mo.opdracht_uren,
mo.opdracht_correctie,
mo.opdracht_materiaal,
mo.opdracht_uurtarief,
mo.opdracht_kosten,
mo.opdracht_verstrektdatum,
mo.opdracht_lev_doorloopuren,
mo.opdracht_lev_doorloopdagen,
(SELECT p.prs_bdl_t_uitvoertijd.tijdsduur
FROM prs_bedrijfdienstlocatie p
WHERE prs_bedrijfdienstlocatie_key =
(SELECT MAX(pb.prs_bedrijfdienstlocatie_key)
FROM mld_melding m, mld_stdmelding sm, prs_dienst pd, prs_bedrijfdienstlocatie pb
WHERE m.mld_melding_key= mo.melding_key
AND sm.mld_stdmelding_key= m.mld_stdmelding_key
AND pd.prs_dienst_key=sm.prs_dienst_key
AND pb.prs_dienst_key = pd.prs_dienst_key
AND pb.prs_bedrijf_key=o.mld_uitvoerende_keys
AND pb.alg_locatie_key=mo.fclt_3d_locatie_key)) tijd,
(SELECT p.prs_bdl_t_uitvoertijd.eenheid
FROM prs_bedrijfdienstlocatie p
WHERE prs_bedrijfdienstlocatie_key =
(SELECT MAX(pb.prs_bedrijfdienstlocatie_key)
FROM mld_melding m, mld_stdmelding sm, prs_dienst pd, prs_bedrijfdienstlocatie pb
WHERE m.mld_melding_key= mo.melding_key
AND sm.mld_stdmelding_key= m.mld_stdmelding_key
AND pd.prs_dienst_key=sm.prs_dienst_key
AND pb.prs_dienst_key = pd.prs_dienst_key
AND pb.prs_bedrijf_key=o.mld_uitvoerende_keys
AND pb.alg_locatie_key=mo.fclt_3d_locatie_key)) eenheid
FROM mld_v_udr_meldingopdracht mo,
mld_opdr o
WHERE o.mld_opdr_key = mo.opdracht_key;
CREATE OR REPLACE PROCEDURE ykpn_export_servicenow (p_applname IN VARCHAR2,
p_applrun IN VARCHAR2,
p_filedir IN VARCHAR2,
@@ -15314,7 +15473,7 @@ AS
AND sm.mld_stdmelding_key = m.mld_stdmelding_key
AND sm.mld_ins_discipline_key = 2881 -- Storing Systemen (was eerst: --1801 -- IT hardware, applicaties en systemen (vakgroeptype Servicenow))
AND m.mld_melding_onderwerp IS NULL
AND o.mld_opdr_bedrijfopdr_volgnr = 1 -- Enkel voor de eerste opdracht, normaal ook altijd maar <20><>n opdracht per melding.
AND o.mld_opdr_bedrijfopdr_volgnr = 1 -- Enkel voor de eerste opdracht, normaal ook altijd maar <20><>n opdracht per melding.
AND o.mld_opdr_key = ko.mld_opdr_key
AND km.mld_kenmerk_key = ko.mld_kenmerk_key
AND skm.mld_srtkenmerk_key = km.mld_srtkenmerk_key
@@ -15792,7 +15951,7 @@ AS
FROM alg_kenmerk ak
WHERE ak.alg_kenmerk_upper='IAM AANMELDING VEREIST')
AND akn.alg_onrgoedkenmerk_waarde='1';
AND res.res_rsv_ruimte_verwijder IS NULL
--AND res.res_rsv_ruimte_verwijder IS NULL
CREATE OR REPLACE VIEW ykpn_v_iam_res