7287 lines
260 KiB
Plaintext
7287 lines
260 KiB
Plaintext
#ifdef CARE
|
|
/* CARE_VIE.SRC
|
|
* $Revision$
|
|
* $Id$
|
|
*/
|
|
|
|
|
|
CREATE_VIEW( care_v_gemeente, 0)
|
|
AS
|
|
SELECT gemeente.alg_locatie_key,
|
|
gemeente.alg_locatie_code,
|
|
gemeente.alg_locatie_omschrijving,
|
|
gemeente.alg_locatie_adres,
|
|
gemeente.alg_locatie_postcode,
|
|
gemeente.alg_locatie_plaats,
|
|
gemeente.alg_locatie_post_adres,
|
|
gemeente.alg_locatie_post_postcode,
|
|
gemeente.alg_locatie_post_plaats,
|
|
gemeente.alg_locatie_verantw,
|
|
gemeente.alg_locatie_x,
|
|
gemeente.alg_locatie_y,
|
|
coalesce(fac.safe_to_number(K.ALG_ONRGOEDKENMERK_WAARDE),0) as alg_locatie_veiling,
|
|
coalesce(fac.safe_to_number(K2.ALG_ONRGOEDKENMERK_WAARDE),0) as gemeente_budget,
|
|
coalesce(fac.safe_to_number(K3.ALG_ONRGOEDKENMERK_WAARDE),0) as gemeente_ob
|
|
FROM alg_locatie gemeente, alg_onrgoedkenmerk k, alg_onrgoedkenmerk k2, alg_onrgoedkenmerk k3
|
|
WHERE gemeente.alg_locatie_verwijder IS NULL
|
|
AND k.alg_onrgoed_niveau (+) = 'L'
|
|
AND k.alg_kenmerk_key (+) = 1006
|
|
AND k.alg_onrgoed_key (+) = alg_locatie_key
|
|
AND k2.alg_onrgoed_niveau (+) = 'L'
|
|
AND k2.alg_kenmerk_key (+) = 1007
|
|
AND k2.alg_onrgoed_key (+) = alg_locatie_key
|
|
AND k3.alg_onrgoed_niveau (+) = 'L'
|
|
AND k3.alg_kenmerk_key (+) = 1008
|
|
AND k3.alg_onrgoed_key (+) = alg_locatie_key;
|
|
|
|
-- Let op de decode: dit is een mapping van locatie-kenmerk op melding-kenmerk, die elders aan elkaar worden gelinked.
|
|
-- Decode-Mapping: van alg-kenmerk_key 1000 -> fac_usrdata_key 1 (HV1)
|
|
-- Decode-Mapping: van alg-kenmerk_key 1001 -> fac_usrdata_key 2 (HV2)
|
|
-- Decode-Mapping: van alg-kenmerk_key 1002 -> fac_usrdata_key 3 (HV3)
|
|
-- duedatum is datum tot en met (!) het tarief geldig is, de dag erop volgende dus niet meer, dan is het volgende tarief geldig.
|
|
CREATE_VIEW( care_v_gemeente_tarieven, 0)
|
|
(alg_locatie_key, product_code, tarief, duedatum)
|
|
AS
|
|
SELECT alg_onrgoed_key,
|
|
DECODE (alg_kenmerk_key, 1000, 1, 1001, 2, 1002, 3, NULL),
|
|
COALESCE (fac.safe_to_number (alg_onrgoedkenmerk_waarde), 0),
|
|
alg_onrgoedkenmerk_verwijder
|
|
FROM alg_onrgoedkenmerk, alg_locatie l
|
|
WHERE alg_onrgoed_niveau = 'L'
|
|
AND alg_kenmerk_key IN (1000,1001,1002)
|
|
AND alg_onrgoed_key = alg_locatie_key
|
|
AND alg_locatie_verwijder IS NULL;
|
|
|
|
-- View met alle geregistreerde clienten (ongeacht of ze een lopende beschikking hebben).
|
|
-- Let op de afdelings-key 22 (= afdeling waar alle clienten in zitten) in onderstaande view:
|
|
-- Let op de ud.fac_usrdata_key = 48 (= setting mbt expliciet clientnr of impliet (=prs_perslid_key)
|
|
|
|
CREATE_VIEW( care_v_client, 0)
|
|
AS
|
|
SELECT client.prs_perslid_key prs_client_key,
|
|
client.prs_perslid_naam prs_client_naam,
|
|
client.prs_perslid_tussenvoegsel prs_client_tussenvoegsel,
|
|
client.prs_perslid_voorletters prs_client_voorletters,
|
|
client.prs_perslid_voornaam prs_client_voornaam,
|
|
client.fac_profiel_key prs_client_cak_actie,
|
|
DECODE (ud.fac_usrdata_omschr,
|
|
1, client.prs_perslid_nr,
|
|
client.prs_perslid_key)
|
|
prs_client_nr,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1020)
|
|
client_bsn,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1001)
|
|
client_meisjesnaam,
|
|
(SELECT DECODE (kl.prs_kenmerklink_waarde,
|
|
21, 'M',
|
|
22, 'V',
|
|
NULL)
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1061)
|
|
client_mv,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1002)
|
|
client_geboortedatum,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1003)
|
|
client_adres,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1040)
|
|
client_huisnr,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1004)
|
|
client_postcode,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1005)
|
|
client_woonplaats,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1006)
|
|
client_telefoon_thuis,
|
|
client.prs_perslid_telefoonnr client_telefoon_werk,
|
|
client.prs_perslid_mobiel prs_client_mobiel,
|
|
client.prs_perslid_email prs_client_email,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1041)
|
|
client_bijzonderheden,
|
|
client.prs_perslid_verwijder
|
|
FROM prs_perslid client, fac_usrdata ud
|
|
WHERE client.prs_afdeling_key = 22 AND ud.fac_usrdata_key = 48;
|
|
|
|
-- view tbv van het controle rapport FSN#20131 op aanwezige clienten
|
|
CREATE OR REPLACE FORCE VIEW CARE_V_AANWEZIG_CLIENT
|
|
AS
|
|
SELECT prs_client_key,
|
|
prs_client_naam,
|
|
prs_client_tussenvoegsel,
|
|
prs_client_voorletters,
|
|
prs_client_voornaam,
|
|
prs_client_nr,
|
|
prs_client_cak_actie,
|
|
client_bsn,
|
|
client_meisjesnaam,
|
|
client_mv,
|
|
client_geboortedatum,
|
|
client_adres,
|
|
client_huisnr,
|
|
client_postcode,
|
|
client_woonplaats,
|
|
client_telefoon_thuis,
|
|
client_telefoon_werk,
|
|
prs_client_mobiel,
|
|
prs_client_email,
|
|
client_bijzonderheden
|
|
FROM care_v_client
|
|
WHERE prs_perslid_verwijder IS NULL;
|
|
|
|
-- rapport controle cak rapport FSN#20131
|
|
|
|
CREATE_VIEW( care_v_cak_clientcontrole, 0)
|
|
(
|
|
fclt_f_client_naam,
|
|
client_voornaam,
|
|
client_voorletters,
|
|
bsn,
|
|
clientnummer,
|
|
postcode,
|
|
huisnummer,
|
|
fclt_f_foutmelding,
|
|
fout_code
|
|
)
|
|
AS
|
|
WITH XX AS (SELECT * FROM CARE_V_AANWEZIG_CLIENT)
|
|
SELECT prs_client_naam,
|
|
prs_client_voornaam,
|
|
prs_client_voorletters,
|
|
client_bsn,
|
|
prs_client_nr,
|
|
client_postcode,
|
|
client_huisnr,
|
|
'Waarschuwing: Deze client staat gemarkeerd: vorige keer zorguren naar CAK vergeten' foutmelding,
|
|
'W'
|
|
FROM XX
|
|
WHERE prs_client_cak_actie = 1
|
|
UNION ALL
|
|
SELECT prs_client_naam,
|
|
prs_client_voornaam,
|
|
prs_client_voorletters,
|
|
client_bsn,
|
|
prs_client_nr,
|
|
client_postcode,
|
|
client_huisnr,
|
|
'Waarschuwing: Deze client staat gemarkeerd m.b.t. correctie zorguren' foutmelding,
|
|
'W'
|
|
FROM XX
|
|
WHERE prs_client_cak_actie = 2
|
|
UNION ALL
|
|
SELECT prs_client_naam,
|
|
prs_client_voornaam,
|
|
prs_client_voorletters,
|
|
client_bsn,
|
|
prs_client_nr,
|
|
client_postcode,
|
|
client_huisnr,
|
|
'Geen clientnummer ingevuld' foutmelding,
|
|
'E'
|
|
FROM XX
|
|
WHERE prs_client_nr IS NULL
|
|
UNION ALL
|
|
SELECT prs_client_naam,
|
|
prs_client_voornaam,
|
|
prs_client_voorletters,
|
|
client_bsn,
|
|
prs_client_nr,
|
|
client_postcode,
|
|
client_huisnr,
|
|
'Voorletters niet ingevuld' foutmelding,
|
|
'E'
|
|
FROM XX
|
|
WHERE prs_client_voorletters IS NULL
|
|
UNION ALL
|
|
SELECT prs_client_naam,
|
|
prs_client_voornaam,
|
|
prs_client_voorletters,
|
|
client_bsn,
|
|
prs_client_nr,
|
|
client_postcode,
|
|
client_huisnr,
|
|
'Client nummer bevat foutieve tekens' foutmelding,
|
|
'E'
|
|
FROM XX
|
|
WHERE LENGTH (TRIM (TRANSLATE (prs_client_nr, ' 0123456789', ' '))) IS NOT NULL
|
|
UNION ALL
|
|
SELECT prs_client_naam,
|
|
prs_client_voornaam,
|
|
prs_client_voorletters,
|
|
client_bsn,
|
|
prs_client_nr,
|
|
client_postcode,
|
|
client_huisnr,
|
|
'BSN bevat foutieve tekens' foutmelding,
|
|
'E'
|
|
FROM XX
|
|
WHERE LENGTH (TRIM (TRANSLATE (client_bsn, ' 0123456789', ' '))) IS NOT NULL
|
|
UNION ALL
|
|
SELECT prs_client_naam,
|
|
prs_client_voornaam,
|
|
prs_client_voorletters,
|
|
client_bsn,
|
|
prs_client_nr,
|
|
client_postcode,
|
|
client_huisnr,
|
|
'Client nummer is niet uniek' foutmelding,
|
|
'E'
|
|
FROM XX
|
|
WHERE prs_client_nr IN ( SELECT prs_client_nr
|
|
FROM XX
|
|
GROUP BY prs_client_nr
|
|
HAVING (COUNT (prs_client_nr) > 1))
|
|
UNION ALL
|
|
SELECT prs_client_naam,
|
|
prs_client_voornaam,
|
|
prs_client_voorletters,
|
|
client_bsn,
|
|
prs_client_nr,
|
|
client_postcode,
|
|
client_huisnr,
|
|
'BSN nummer is niet uniek' foutmelding,
|
|
'E'
|
|
FROM XX
|
|
WHERE client_bsn IN ( SELECT client_bsn
|
|
FROM XX
|
|
GROUP BY client_bsn
|
|
HAVING (COUNT (client_bsn) > 1))
|
|
UNION ALL
|
|
SELECT prs_client_naam,
|
|
prs_client_voornaam,
|
|
prs_client_voorletters,
|
|
client_bsn,
|
|
prs_client_nr,
|
|
client_postcode,
|
|
client_huisnr,
|
|
'BSN nummer is niet 8 of 9 cijfers' foutmelding,
|
|
'E'
|
|
FROM XX
|
|
WHERE LENGTH(client_bsn) NOT IN (8,9)
|
|
UNION ALL
|
|
SELECT prs_client_naam,
|
|
prs_client_voornaam,
|
|
prs_client_voorletters,
|
|
client_bsn,
|
|
prs_client_nr,
|
|
client_postcode,
|
|
client_huisnr,
|
|
'BSN nummer voldoet niet aan de 11-proef' foutmelding,
|
|
'E'
|
|
FROM XX
|
|
WHERE mod (fac.safe_to_number(SUBSTR(client_bsn,1,1)) * 9 +
|
|
fac.safe_to_number(SUBSTR(client_bsn,2,1)) * 8 +
|
|
fac.safe_to_number(SUBSTR(client_bsn,3,1)) * 7 +
|
|
fac.safe_to_number(SUBSTR(client_bsn,4,1)) * 6 +
|
|
fac.safe_to_number(SUBSTR(client_bsn,5,1)) * 5 +
|
|
fac.safe_to_number(SUBSTR(client_bsn,6,1)) * 4 +
|
|
fac.safe_to_number(SUBSTR(client_bsn,7,1)) * 3 +
|
|
fac.safe_to_number(SUBSTR(client_bsn,8,1)) * 2 +
|
|
fac.safe_to_number(SUBSTR(client_bsn,9,1)) * -1 , 11) <> 0
|
|
UNION ALL
|
|
SELECT prs_client_naam,
|
|
prs_client_voornaam,
|
|
prs_client_voorletters,
|
|
client_bsn,
|
|
prs_client_nr,
|
|
client_postcode,
|
|
client_huisnr,
|
|
'Huisnummer begint niet met een cijfer, bevat een spatie of is leeg' foutmelding,
|
|
'E'
|
|
FROM XX
|
|
WHERE LENGTH(TRIM(TRANSLATE (SUBSTR (client_huisnr, 1, 1),
|
|
' 0123456789',
|
|
' '))) IS NOT NULL
|
|
OR client_huisnr IS NULL
|
|
OR client_huisnr like ('% %')
|
|
UNION ALL
|
|
SELECT prs_client_naam,
|
|
prs_client_voornaam,
|
|
prs_client_voorletters,
|
|
client_bsn,
|
|
prs_client_nr,
|
|
client_postcode,
|
|
client_huisnr,
|
|
'Onjuist formaat van postcode (1234 AA)' foutmelding,
|
|
'E'
|
|
FROM XX
|
|
WHERE NOT REGEXP_LIKE (
|
|
client_postcode,
|
|
'^[1234567890][1234567890][1234567890][1234567890] [ABCDEFGHIJKLMNOPQRSTUVWXYZ][ABCDEFGHIJKLMNOPQRSTUVWXYZ]$')
|
|
ORDER BY 1, 8;
|
|
|
|
|
|
|
|
-- 'De teamleiders obv WEB_ORDBOF'
|
|
|
|
CREATE_VIEW( care_v_teamleider, 0)
|
|
AS
|
|
SELECT p.prs_perslid_key,
|
|
p.prs_perslid_naam,
|
|
p.prs_perslid_voornaam,
|
|
p.prs_perslid_voorletters,
|
|
d.ins_discipline_key,
|
|
d.ins_discipline_omschrijving
|
|
FROM prs_perslid p, mld_discipline d, fac_groeprechten gr, fac_gebruikersgroep gg, fac_functie f
|
|
WHERE p.prs_perslid_key = gg.prs_perslid_key
|
|
AND gr.fac_groep_key = gg.fac_groep_key
|
|
AND gr.ins_discipline_key = d.ins_discipline_key
|
|
AND gr.fac_functie_key = f.fac_functie_key
|
|
AND f.fac_functie_code = 'WEB_ORDBOF'
|
|
AND (gr.fac_gebruiker_prs_level_write < 9 OR gr.fac_gebruiker_alg_level_write < 9);
|
|
|
|
|
|
-- 'De teams incl. teamleden obv WEB_MLDORD'
|
|
|
|
CREATE_VIEW( care_v_teamlid, 0)
|
|
AS
|
|
SELECT p.prs_perslid_key,
|
|
p.prs_perslid_naam,
|
|
p.prs_perslid_voornaam,
|
|
p.prs_perslid_voorletters,
|
|
d.ins_discipline_key,
|
|
d.ins_discipline_omschrijving
|
|
FROM prs_perslid p, mld_discipline d, fac_groeprechten gr, fac_gebruikersgroep gg, fac_functie f
|
|
WHERE p.prs_perslid_key = gg.prs_perslid_key
|
|
AND gr.fac_groep_key = gg.fac_groep_key
|
|
AND gr.ins_discipline_key = d.ins_discipline_key
|
|
AND gr.fac_functie_key = f.fac_functie_key
|
|
AND f.fac_functie_code = 'WEB_MLDORD';
|
|
|
|
|
|
-- Teamlid welke nu (!), op dit moment (!) een (of meer) lopende opdracht(en) heeft.
|
|
|
|
CREATE_VIEW( care_v_actief_teamlid, 0)
|
|
AS
|
|
SELECT p.prs_perslid_key,
|
|
p.prs_perslid_naam,
|
|
p.prs_perslid_voornaam,
|
|
p.prs_perslid_voorletters,
|
|
o.mld_melding_key,
|
|
o.mld_opdr_key
|
|
FROM prs_perslid p, mld_opdr o
|
|
WHERE p.prs_perslid_key = o.mld_uitvoerende_keys AND o.mld_opdr_datumbegin <= TRUNC (SYSDATE)
|
|
AND o.mld_opdr_einddatum >= TRUNC (SYSDATE);
|
|
|
|
|
|
|
|
-- View met alle geregistreerde verzorgers (ongeacht of ze een lopende opdracht hebben) op basis van afdelingskey
|
|
-- Elke perslid die rechten heeft om een zorg-opdracht in een team kan uitvoeren (WEB_MLDORD), is (potentieel) verzorger
|
|
|
|
CREATE_VIEW( care_v_verzorger, 0)
|
|
AS
|
|
SELECT verzorger.prs_perslid_key prs_perslid_key,
|
|
verzorger.prs_perslid_nr prs_verzorger_personeelsnr,
|
|
verzorger.prs_perslid_naam prs_verzorger_naam,
|
|
verzorger.prs_perslid_tussenvoegsel prs_verzorger_tussenvoegsel,
|
|
verzorger.prs_perslid_voorletters prs_verzorger_voorletters,
|
|
verzorger.prs_perslid_voornaam prs_verzorger_voornaam,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1020)
|
|
verzorger_bsn,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1001)
|
|
verzorger_meisjesnaam,
|
|
(SELECT DECODE (kl.prs_kenmerklink_waarde, 21, 'M', 22, 'V', NULL)
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1061)
|
|
verzorger_mv,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1002)
|
|
verzorger_geboortedatum,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1003)
|
|
verzorger_adres,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1040)
|
|
verzorger_huisnr,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1004)
|
|
verzorger_postcode,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1005)
|
|
verzorger_woonplaats,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1006)
|
|
verzorger_telefoon_thuis,
|
|
verzorger.prs_perslid_telefoonnr verzorger_telefoon_werk,
|
|
verzorger.prs_perslid_mobiel prs_verzorger_mobiel,
|
|
verzorger.prs_perslid_email prs_verzorger_email,
|
|
sp.prs_srtperslid_omschrijving prs_verzorger_functie,
|
|
verzorger.prs_perslid_dienstverband prs_verzorger_dienstverband,
|
|
verzorger.prs_perslid_ingangsdatum prs_verzorger_ingangsdatum,
|
|
verzorger.prs_perslid_einddatum prs_verzorger_einddatum,
|
|
verzorger.prs_perslid_verwijder prs_verzorger_verwijder,
|
|
(SELECT DECODE (kl.prs_kenmerklink_waarde, 81, 'J', 82, 'N', NULL)
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1065)
|
|
auto_rijbewijs,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1041)
|
|
verzorger_bijzonderheden
|
|
FROM prs_perslid verzorger, prs_srtperslid sp
|
|
WHERE verzorger.prs_srtperslid_key = sp.prs_srtperslid_key;
|
|
|
|
|
|
CREATE_VIEW( care_v_verzorger_in_teams, 0)
|
|
AS
|
|
SELECT v.prs_perslid_key,
|
|
v.prs_verzorger_naam,
|
|
v.prs_verzorger_tussenvoegsel,
|
|
v.prs_verzorger_voorletters,
|
|
v.prs_verzorger_voornaam,
|
|
v.verzorger_bsn,
|
|
v.verzorger_meisjesnaam,
|
|
v.verzorger_mv,
|
|
v.verzorger_geboortedatum,
|
|
v.verzorger_adres,
|
|
v.verzorger_huisnr,
|
|
v.verzorger_postcode,
|
|
v.verzorger_woonplaats,
|
|
v.verzorger_telefoon_thuis,
|
|
v.verzorger_telefoon_werk,
|
|
v.prs_verzorger_mobiel,
|
|
v.prs_verzorger_email,
|
|
v.prs_verzorger_functie,
|
|
v.prs_verzorger_dienstverband,
|
|
v.prs_verzorger_ingangsdatum,
|
|
v.prs_verzorger_einddatum,
|
|
v.prs_verzorger_verwijder,
|
|
v.verzorger_bijzonderheden,
|
|
tlid.ins_discipline_key team_key,
|
|
tlid.ins_discipline_omschrijving team_naam
|
|
FROM care_v_teamlid tlid, care_v_verzorger v
|
|
WHERE v.prs_perslid_key = tlid.prs_perslid_key;
|
|
|
|
|
|
|
|
-- 'De administratie: Gerda/Anja/Susanne'
|
|
-- De personen voor de intake beschikkingen en de controle-functie hebben dat overeenkomstig de beschikkingen opdrachten
|
|
-- worden uitgegeven.
|
|
-- Deze view wordt gebruikt in de view care_v_noti_urenconflict voor het actief signaleren van conflicten in uren
|
|
-- tussen beschikkigen en uitgegeven opdrachten.
|
|
|
|
CREATE_VIEW( care_v_controller, 0)
|
|
AS
|
|
SELECT p.prs_perslid_key, p.prs_perslid_naam, p.prs_perslid_voornaam, p.prs_perslid_voorletters
|
|
FROM prs_perslid p
|
|
WHERE EXISTS
|
|
(SELECT d.ins_discipline_key
|
|
FROM mld_discipline d, fac_groeprechten gr, fac_gebruikersgroep gg, fac_functie f
|
|
WHERE gg.prs_perslid_key = p.prs_perslid_key
|
|
AND gr.fac_groep_key = gg.fac_groep_key
|
|
AND gr.ins_discipline_key = d.ins_discipline_key
|
|
AND gr.fac_functie_key = f.fac_functie_key
|
|
AND f.fac_functie_code = 'WEB_MLDFOF');
|
|
|
|
|
|
|
|
-- Deze view is de totale view van alle beschikkingen met bijbehorende gegevens
|
|
-- Uitleg: d.ins_srtdiscipline_key = 1 (dit zijn de beschikking-meldingen, van vakgroeptype_key=1)
|
|
|
|
CREATE_VIEW( care_v_beschikking_all, 0)
|
|
(
|
|
mld_melding_key,
|
|
mld_melding_status,
|
|
gemeente_key,
|
|
gemeente_code,
|
|
gemeente_omschrijving,
|
|
gemeente_adres,
|
|
gemeente_postcode,
|
|
gemeente_plaats,
|
|
gemeente_post_adres,
|
|
gemeente_post_postcode,
|
|
gemeente_post_plaats,
|
|
gemeente_contactpersoon,
|
|
gemeente_factnr_infix,
|
|
gemeente_factnr_suffix,
|
|
gemeente_hv1_code,
|
|
gemeente_hv2_code,
|
|
gemeente_veiling,
|
|
gemeente_budget,
|
|
gemeente_ob,
|
|
prs_client_key,
|
|
prs_client_naam,
|
|
prs_client_tussenvoegsel,
|
|
prs_client_voorletters,
|
|
prs_client_voornaam,
|
|
prs_client_nr,
|
|
prs_client_cak_actie,
|
|
client_bsn,
|
|
client_meisjesnaam,
|
|
client_mv,
|
|
client_geboortedatum,
|
|
client_adres,
|
|
client_huisnr,
|
|
client_postcode,
|
|
client_woonplaats,
|
|
client_telefoon_thuis,
|
|
client_telefoon_werk,
|
|
prs_client_mobiel,
|
|
prs_client_email,
|
|
client_bijzonderheden,
|
|
client_contactpersonen,
|
|
beschikking_datum_van,
|
|
beschikking_week_van,
|
|
beschikking_jaar_van,
|
|
beschikking_maandag_van_std,
|
|
beschikking_maandag_van,
|
|
beschikking_datum_tot,
|
|
beschikking_week_tot,
|
|
beschikking_jaar_tot,
|
|
beschikking_maandag_tot_std,
|
|
beschikking_maandag_tot,
|
|
beschikking_afmeld_datum,
|
|
pgb,
|
|
product_code,
|
|
product,
|
|
pgb_tarief,
|
|
uren_beschikking,
|
|
beschikking_nr,
|
|
beschikking_omschr,
|
|
ins_discipline_key,
|
|
ins_discipline_omschrijving,
|
|
alt_hv1,
|
|
alt_hv2,
|
|
alt_hv3,
|
|
alt_hv1_start,
|
|
alt_hv2_start,
|
|
alt_hv3_start
|
|
)
|
|
AS
|
|
SELECT m.mld_melding_key,
|
|
m.mld_melding_status,
|
|
gemeente.alg_locatie_key,
|
|
gemeente.alg_locatie_code,
|
|
gemeente.alg_locatie_omschrijving,
|
|
gemeente.alg_locatie_adres,
|
|
gemeente.alg_locatie_postcode,
|
|
gemeente.alg_locatie_plaats,
|
|
gemeente.alg_locatie_post_adres,
|
|
gemeente.alg_locatie_post_postcode,
|
|
gemeente.alg_locatie_post_plaats,
|
|
gemeente.alg_locatie_verantw,
|
|
(SELECT ok.alg_onrgoedkenmerk_waarde
|
|
FROM alg_onrgoedkenmerk ok
|
|
WHERE ok.alg_onrgoed_key = gemeente.alg_locatie_key
|
|
AND ok.alg_onrgoed_niveau = 'L'
|
|
AND ok.alg_kenmerk_key = 1004
|
|
AND ok.alg_onrgoedkenmerk_verwijder IS NULL),
|
|
(SELECT ok.alg_onrgoedkenmerk_waarde
|
|
FROM alg_onrgoedkenmerk ok
|
|
WHERE ok.alg_onrgoed_key = gemeente.alg_locatie_key
|
|
AND ok.alg_onrgoed_niveau = 'L'
|
|
AND ok.alg_kenmerk_key = 1005
|
|
AND ok.alg_onrgoedkenmerk_verwijder IS NULL),
|
|
gemeente.alg_locatie_x,
|
|
gemeente.alg_locatie_y,
|
|
gemeente.alg_locatie_veiling,
|
|
gemeente.gemeente_budget,
|
|
gemeente.gemeente_ob,
|
|
client.prs_perslid_key prs_client_key,
|
|
client.prs_perslid_naam prs_client_naam,
|
|
client.prs_perslid_tussenvoegsel prs_client_tussenvoegsel,
|
|
client.prs_perslid_voorletters prs_client_voorletters,
|
|
client.prs_perslid_voornaam prs_client_voornaam,
|
|
client.prs_perslid_nr prs_client_nr,
|
|
client.fac_profiel_key prs_client_cak_actie,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1020)
|
|
client_bsn,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1001)
|
|
client_meisjesnaam,
|
|
(SELECT DECODE (kl.prs_kenmerklink_waarde, 21, 'M', 22, 'V', NULL)
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1061)
|
|
client_mv,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1002)
|
|
client_geboortedatum,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1003)
|
|
client_adres,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1040)
|
|
client_huisnr,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1004)
|
|
client_postcode,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1005)
|
|
client_woonplaats,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1006)
|
|
client_telefoon_thuis,
|
|
client.prs_perslid_telefoonnr client_telefoon_werk,
|
|
client.prs_perslid_mobiel prs_client_mobiel,
|
|
client.prs_perslid_email prs_client_email,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1041)
|
|
client_bijzonderheden,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = client.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 2000)
|
|
client_contactpersonen,
|
|
m.mld_melding_datum beschikking_datum_van,
|
|
TO_NUMBER (TO_CHAR (m.mld_melding_datum, 'IW'))
|
|
beschikking_week_van,
|
|
TO_NUMBER (TO_CHAR (m.mld_melding_datum, 'IYYY'))
|
|
beschikking_jaar_van,
|
|
(TRUNC (mld_melding_datum)
|
|
- DECODE (TO_CHAR (mld_melding_datum, 'D'),
|
|
'1', 8,
|
|
TO_CHAR (mld_melding_datum, 'D'))
|
|
+ 2)
|
|
beschikking_maandag_van_std,
|
|
care.goodmonday_start (m.mld_melding_key) beschikking_maandag_van,
|
|
m.mld_melding_einddatum beschikking_datum_tot,
|
|
TO_NUMBER (TO_CHAR (m.mld_melding_einddatum, 'IW'))
|
|
beschikking_week_tot,
|
|
TO_NUMBER (TO_CHAR (m.mld_melding_einddatum, 'IYYY'))
|
|
beschikking_jaar_tot,
|
|
(TRUNC (mld_melding_einddatum) + 7
|
|
- DECODE (TO_CHAR (mld_melding_einddatum, 'D'),
|
|
'1', 8,
|
|
TO_CHAR (mld_melding_einddatum, 'D'))
|
|
+ 2)
|
|
beschikking_maandag_tot_std,
|
|
care.goodmonday_end (m.mld_melding_key) beschikking_maandag_tot,
|
|
fac.gettrackingdate ('MLDAFM', m.mld_melding_key),
|
|
m.prs_kostenplaats_key pgb,
|
|
(SELECT fac.safe_to_number (km.mld_kenmerkmelding_waarde)
|
|
FROM mld_kenmerkmelding km
|
|
WHERE km.mld_melding_key = m.mld_melding_key
|
|
AND km.mld_kenmerkmelding_verwijder IS NULL
|
|
AND mld_kenmerk_key = 2)
|
|
product_code,
|
|
(SELECT ud.fac_usrdata_code
|
|
FROM mld_kenmerkmelding km, fac_usrdata ud
|
|
WHERE km.mld_melding_key = m.mld_melding_key
|
|
AND km.mld_kenmerkmelding_verwijder IS NULL
|
|
AND mld_kenmerk_key = 2
|
|
AND ud.fac_usrdata_key =
|
|
fac.safe_to_number (km.mld_kenmerkmelding_waarde))
|
|
product,
|
|
COALESCE (
|
|
(SELECT fac.safe_to_number (km.mld_kenmerkmelding_waarde)
|
|
FROM mld_kenmerkmelding km
|
|
WHERE km.mld_melding_key = m.mld_melding_key
|
|
AND km.mld_kenmerkmelding_verwijder IS NULL
|
|
AND mld_kenmerk_key = 4),
|
|
0)
|
|
tarief,
|
|
(SELECT fac.safe_to_number (km.mld_kenmerkmelding_waarde)
|
|
FROM mld_kenmerkmelding km
|
|
WHERE km.mld_melding_key = m.mld_melding_key
|
|
AND km.mld_kenmerkmelding_verwijder IS NULL
|
|
AND mld_kenmerk_key = 3)
|
|
uren_beschikking,
|
|
(SELECT km.mld_kenmerkmelding_waarde
|
|
FROM mld_kenmerkmelding km
|
|
WHERE km.mld_melding_key = m.mld_melding_key
|
|
AND km.mld_kenmerkmelding_verwijder IS NULL
|
|
AND mld_kenmerk_key = 1)
|
|
beschikking_nr,
|
|
mld_melding_omschrijving,
|
|
std.mld_ins_discipline_key,
|
|
ins_discipline_omschrijving,
|
|
(SELECT ok.alg_onrgoedkenmerk_waarde
|
|
FROM alg_onrgoedkenmerk ok
|
|
WHERE ok.alg_onrgoed_key = gemeente.alg_locatie_key
|
|
AND ok.alg_onrgoed_niveau = 'L'
|
|
AND ok.alg_kenmerk_key = 2000
|
|
AND ok.alg_onrgoedkenmerk_verwijder IS NULL)
|
|
alt_hv1,
|
|
(SELECT ok.alg_onrgoedkenmerk_waarde
|
|
FROM alg_onrgoedkenmerk ok
|
|
WHERE ok.alg_onrgoed_key = gemeente.alg_locatie_key
|
|
AND ok.alg_onrgoed_niveau = 'L'
|
|
AND ok.alg_kenmerk_key = 2001
|
|
AND ok.alg_onrgoedkenmerk_verwijder IS NULL)
|
|
alt_hv2,
|
|
(SELECT ok.alg_onrgoedkenmerk_waarde
|
|
FROM alg_onrgoedkenmerk ok
|
|
WHERE ok.alg_onrgoed_key = gemeente.alg_locatie_key
|
|
AND ok.alg_onrgoed_niveau = 'L'
|
|
AND ok.alg_kenmerk_key = 2002
|
|
AND ok.alg_onrgoedkenmerk_verwijder IS NULL)
|
|
alt_hv3,
|
|
(SELECT TO_NUMBER(TO_CHAR (
|
|
TO_DATE (ok.alg_onrgoedkenmerk_waarde,
|
|
'DD-MM-YYYY'),
|
|
'IYYY'))
|
|
|| LPAD (
|
|
LEAST (
|
|
FLOOR( (TO_CHAR (
|
|
TO_DATE (ok.alg_onrgoedkenmerk_waarde,
|
|
'DD-MM-YYYY'),
|
|
'IW')
|
|
- 1)
|
|
/ 4)
|
|
+ 1,
|
|
13),
|
|
2,
|
|
'0')
|
|
FROM alg_onrgoedkenmerk ok
|
|
WHERE ok.alg_onrgoed_key = gemeente.alg_locatie_key
|
|
AND ok.alg_onrgoed_niveau = 'L'
|
|
AND ok.alg_kenmerk_key = 2003
|
|
AND ok.alg_onrgoedkenmerk_verwijder IS NULL)
|
|
alt_hv1_start,
|
|
(SELECT TO_NUMBER(TO_CHAR (
|
|
TO_DATE (ok.alg_onrgoedkenmerk_waarde,
|
|
'DD-MM-YYYY'),
|
|
'IYYY'))
|
|
|| LPAD (
|
|
LEAST (
|
|
FLOOR( (TO_CHAR (
|
|
TO_DATE (ok.alg_onrgoedkenmerk_waarde,
|
|
'DD-MM-YYYY'),
|
|
'IW')
|
|
- 1)
|
|
/ 4)
|
|
+ 1,
|
|
13),
|
|
2,
|
|
'0')
|
|
FROM alg_onrgoedkenmerk ok
|
|
WHERE ok.alg_onrgoed_key = gemeente.alg_locatie_key
|
|
AND ok.alg_onrgoed_niveau = 'L'
|
|
AND ok.alg_kenmerk_key = 2004
|
|
AND ok.alg_onrgoedkenmerk_verwijder IS NULL)
|
|
alt_hv2_start,
|
|
(SELECT TO_NUMBER(TO_CHAR (
|
|
TO_DATE (ok.alg_onrgoedkenmerk_waarde,
|
|
'DD-MM-YYYY'),
|
|
'IYYY'))
|
|
|| LPAD (
|
|
LEAST (
|
|
FLOOR( (TO_CHAR (
|
|
TO_DATE (ok.alg_onrgoedkenmerk_waarde,
|
|
'DD-MM-YYYY'),
|
|
'IW')
|
|
- 1)
|
|
/ 4)
|
|
+ 1,
|
|
13),
|
|
2,
|
|
'0')
|
|
FROM alg_onrgoedkenmerk ok
|
|
WHERE ok.alg_onrgoed_key = gemeente.alg_locatie_key
|
|
AND ok.alg_onrgoed_niveau = 'L'
|
|
AND ok.alg_kenmerk_key = 2005
|
|
AND ok.alg_onrgoedkenmerk_verwijder IS NULL)
|
|
alt_hv3_start
|
|
FROM care_v_gemeente gemeente,
|
|
prs_perslid client,
|
|
mld_melding m,
|
|
mld_stdmelding std,
|
|
ins_tab_discipline d
|
|
WHERE m.mld_alg_locatie_key = gemeente.alg_locatie_key
|
|
AND m.mld_stdmelding_key = std.mld_stdmelding_key
|
|
AND m.mld_melding_status <> 1
|
|
AND d.ins_discipline_key = std.mld_ins_discipline_key
|
|
AND d.ins_srtdiscipline_key = 1
|
|
AND m.prs_perslid_key = client.prs_perslid_key;
|
|
|
|
-- Deze view is de totale view van alle productieve, bestede uren op beschikkingen, op welke opdracht, door wie op welk moment
|
|
|
|
CREATE_VIEW( care_v_bestede_uren_all, 0)
|
|
AS
|
|
SELECT o.mld_melding_key,
|
|
o.mld_opdr_key,
|
|
o.mld_opdr_datumbegin,
|
|
TRUNC (o.mld_opdr_einddatum) einddatum,
|
|
o.mld_opdr_uren uren_opdracht,
|
|
verzorger.prs_perslid_key,
|
|
verzorger.prs_perslid_naam,
|
|
verzorger.prs_perslid_tussenvoegsel,
|
|
verzorger.prs_perslid_voorletters,
|
|
verzorger.prs_perslid_voornaam,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1020)
|
|
bsn,
|
|
verzorger.prs_perslid_nr nr_verzorger,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1001)
|
|
meisjesnaam,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1002)
|
|
geboortedatum,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1003)
|
|
adres,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1004)
|
|
postcode,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1006)
|
|
telefoon_thuis,
|
|
verzorger.prs_perslid_telefoonnr telefoon_werk,
|
|
verzorger.prs_perslid_mobiel,
|
|
verzorger.prs_perslid_email,
|
|
verzorger.prs_perslid_dienstverband,
|
|
ou.mld_opdr_uren_key,
|
|
TO_NUMBER (TO_CHAR (ou.mld_opdr_uren_datum, 'IYYY')) jaar,
|
|
TO_NUMBER (TO_CHAR (ou.mld_opdr_uren_datum, 'IW')) weeknr,
|
|
LEAST(FLOOR((TO_CHAR (ou.mld_opdr_uren_datum,'IW') - 1) /4) + 1, 13) periodenr,
|
|
( TRUNC (ou.mld_opdr_uren_datum)
|
|
- DECODE (TO_CHAR (ou.mld_opdr_uren_datum, 'D'), '1', 8, TO_CHAR (ou.mld_opdr_uren_datum, 'D'))
|
|
+ 2)
|
|
maandag_vandeweek,
|
|
ou.mld_opdr_uren_datum datum_gewerkt,
|
|
ou.mld_opdr_uren_besteed uren_besteed,
|
|
ou.mld_opdr_uren_status uren_status
|
|
FROM mld_opdr o, mld_opdr_uren ou, prs_perslid verzorger
|
|
WHERE ou.mld_opdr_key = o.mld_opdr_key AND ou.prs_perslid_key = verzorger.prs_perslid_key;
|
|
|
|
|
|
|
|
-- Deze view is de totale view van alle IMproductieve, bestede uren (verlof, ziekte, arts, werkoverleg) door wie op welk moment
|
|
|
|
CREATE_VIEW( care_v_improductieve_uren_all, 0)
|
|
AS
|
|
SELECT o.mld_impropdr_key,
|
|
o.mld_impropdr_code,
|
|
o.mld_impropdr_omschrijving,
|
|
verzorger.prs_perslid_key,
|
|
verzorger.prs_perslid_naam,
|
|
verzorger.prs_perslid_tussenvoegsel,
|
|
verzorger.prs_perslid_voorletters,
|
|
verzorger.prs_perslid_voornaam,
|
|
verzorger.prs_perslid_nr,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1020)
|
|
bsn,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1001)
|
|
meisjesnaam,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1002)
|
|
geboortedatum,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1003)
|
|
adres,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1004)
|
|
postcode,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1006)
|
|
telefoon_thuis,
|
|
verzorger.prs_perslid_telefoonnr telefoon_werk,
|
|
verzorger.prs_perslid_mobiel,
|
|
verzorger.prs_perslid_email,
|
|
verzorger.prs_perslid_dienstverband,
|
|
ou.mld_opdr_uren_key,
|
|
TO_NUMBER (TO_CHAR (ou.mld_opdr_uren_datum, 'IYYY')) jaar,
|
|
TO_NUMBER (TO_CHAR (ou.mld_opdr_uren_datum, 'IW')) weeknr,
|
|
LEAST(FLOOR((TO_CHAR (ou.mld_opdr_uren_datum,'IW') - 1) /4) + 1, 13) periodenr,
|
|
( TRUNC (ou.mld_opdr_uren_datum)
|
|
- DECODE (TO_CHAR (ou.mld_opdr_uren_datum, 'D'), '1', 8, TO_CHAR (ou.mld_opdr_uren_datum, 'D'))
|
|
+ 2)
|
|
maandag_vandeweek,
|
|
ou.mld_opdr_uren_datum datum_gewerkt,
|
|
ou.mld_opdr_uren_besteed uren_besteed,
|
|
ou.mld_opdr_uren_status uren_status
|
|
FROM mld_impropdr o, mld_opdr_uren ou, prs_perslid verzorger
|
|
WHERE ou.mld_impropdr_key = o.mld_impropdr_key AND ou.prs_perslid_key = verzorger.prs_perslid_key;
|
|
|
|
|
|
|
|
|
|
|
|
-- UNION van de tabellen care_v_bestede_uren_all en care_v_improductieve_uren_all
|
|
-- Dus zowel de productieve als improductieve uren
|
|
|
|
CREATE_VIEW( care_v_totaal_uren_all, 0)
|
|
AS
|
|
SELECT prs_perslid_key,
|
|
mld_melding_key,
|
|
mld_opdr_key AS opdracht_key,
|
|
'P' AS opdracht_type,
|
|
mld_opdr_uren_key,
|
|
jaar,
|
|
periodenr,
|
|
weeknr,
|
|
maandag_vandeweek,
|
|
datum_gewerkt,
|
|
uren_besteed,
|
|
uren_status
|
|
FROM care_v_bestede_uren_all
|
|
UNION ALL
|
|
SELECT prs_perslid_key,
|
|
NULL AS mld_melding_key,
|
|
mld_impropdr_key AS opdracht_key,
|
|
'I' AS opdracht_type,
|
|
mld_opdr_uren_key,
|
|
jaar,
|
|
periodenr,
|
|
weeknr,
|
|
maandag_vandeweek,
|
|
datum_gewerkt,
|
|
uren_besteed,
|
|
uren_status
|
|
FROM care_v_improductieve_uren_all;
|
|
|
|
|
|
|
|
-- Van alle teamleden (of ze nu opdracht hebben of niet) diegene die de weekbrief van deze(!) week niet hebben ingeleverd
|
|
-- Want ieder teamlid moet een weekbrief inleveren, en bij geen gemaakt uren moet 0 worden ingevuld.
|
|
-- Teamleden zonder opdrachten kunnen (in principe) ook niets invullen.
|
|
|
|
CREATE_VIEW( care_v_missing_weekbrief_0, 0)
|
|
AS
|
|
SELECT tlid.prs_perslid_key
|
|
FROM care_v_totaal_uren_all uren, care_v_verzorger tlid
|
|
WHERE (TRUNC (SYSDATE) - DECODE (TO_CHAR (SYSDATE, 'D'), '1', 8, TO_CHAR (SYSDATE, 'D')) + 2) =
|
|
uren.maandag_vandeweek
|
|
AND uren.uren_status < 2
|
|
AND uren.prs_perslid_key = tlid.prs_perslid_key
|
|
UNION
|
|
SELECT tlid.prs_perslid_key
|
|
FROM care_v_verzorger tlid
|
|
WHERE NOT EXISTS
|
|
(SELECT uren.prs_perslid_key
|
|
FROM care_v_totaal_uren_all uren
|
|
WHERE (TRUNC (SYSDATE) - DECODE (TO_CHAR (SYSDATE, 'D'), '1', 8, TO_CHAR (SYSDATE, 'D')) + 2) =
|
|
uren.maandag_vandeweek
|
|
AND uren.prs_perslid_key = tlid.prs_perslid_key)
|
|
-- AND NVL (tlid.prs_verzorger_dienstverband, -1) <> 0
|
|
GROUP BY tlid.prs_perslid_key;
|
|
|
|
|
|
-- Van alle teamleden (of ze nu opdracht hebben of niet) diegene die de weekbrief van vorige(!) week niet hebben ingeleverd
|
|
|
|
CREATE_VIEW( care_v_missing_weekbrief_1, 0)
|
|
AS
|
|
SELECT tlid.prs_perslid_key
|
|
FROM care_v_totaal_uren_all uren, care_v_verzorger tlid
|
|
WHERE (TRUNC (SYSDATE - 7) - DECODE (TO_CHAR (SYSDATE - 7, 'D'), '1', 8, TO_CHAR (SYSDATE - 7, 'D')) + 2) =
|
|
uren.maandag_vandeweek
|
|
AND uren.uren_status < 2
|
|
AND uren.prs_perslid_key = tlid.prs_perslid_key
|
|
UNION
|
|
SELECT tlid.prs_perslid_key
|
|
FROM care_v_verzorger tlid
|
|
WHERE NOT EXISTS
|
|
(SELECT uren.prs_perslid_key
|
|
FROM care_v_totaal_uren_all uren
|
|
WHERE ( TRUNC (SYSDATE - 7)
|
|
- DECODE (TO_CHAR (SYSDATE - 7, 'D'), '1', 8, TO_CHAR (SYSDATE - 7, 'D'))
|
|
+ 2) = uren.maandag_vandeweek
|
|
AND uren.prs_perslid_key = tlid.prs_perslid_key)
|
|
-- AND NVL (tlid.prs_verzorger_dienstverband, -1) <> 0
|
|
GROUP BY tlid.prs_perslid_key;
|
|
|
|
|
|
-- Van alle teamleden (of ze nu opdracht hebben of niet) diegene die de weekbrief van 2(!) week geleden niet hebben ingeleverd
|
|
|
|
CREATE_VIEW( care_v_missing_weekbrief_2, 0)
|
|
AS
|
|
SELECT tlid.prs_perslid_key
|
|
FROM care_v_totaal_uren_all uren, care_v_verzorger tlid
|
|
WHERE (TRUNC (SYSDATE - 14) - DECODE (TO_CHAR (SYSDATE - 14, 'D'), '1', 8, TO_CHAR (SYSDATE - 14, 'D')) + 2) =
|
|
uren.maandag_vandeweek
|
|
AND uren.uren_status < 2
|
|
AND uren.prs_perslid_key = tlid.prs_perslid_key
|
|
UNION
|
|
SELECT tlid.prs_perslid_key
|
|
FROM care_v_verzorger tlid
|
|
WHERE NOT EXISTS
|
|
(SELECT uren.prs_perslid_key
|
|
FROM care_v_totaal_uren_all uren
|
|
WHERE ( TRUNC (SYSDATE - 14)
|
|
- DECODE (TO_CHAR (SYSDATE - 14, 'D'), '1', 8, TO_CHAR (SYSDATE - 14, 'D'))
|
|
+ 2) = uren.maandag_vandeweek
|
|
AND uren.prs_perslid_key = tlid.prs_perslid_key)
|
|
-- AND NVL (tlid.prs_verzorger_dienstverband, -1) <> 0
|
|
GROUP BY tlid.prs_perslid_key;
|
|
|
|
|
|
-- Van alle teamleden (of ze nu opdracht hebben of niet) diegene die de weekbrief van 3(!) week geleden niet hebben ingeleverd
|
|
|
|
CREATE_VIEW( care_v_missing_weekbrief_3, 0)
|
|
AS
|
|
SELECT tlid.prs_perslid_key
|
|
FROM care_v_totaal_uren_all uren, care_v_verzorger tlid
|
|
WHERE (TRUNC (SYSDATE - 21) - DECODE (TO_CHAR (SYSDATE - 21, 'D'), '1', 8, TO_CHAR (SYSDATE - 21, 'D')) + 2) =
|
|
uren.maandag_vandeweek
|
|
AND uren.uren_status < 2
|
|
AND uren.prs_perslid_key = tlid.prs_perslid_key
|
|
UNION
|
|
SELECT tlid.prs_perslid_key
|
|
FROM care_v_verzorger tlid
|
|
WHERE NOT EXISTS
|
|
(SELECT uren.prs_perslid_key
|
|
FROM care_v_totaal_uren_all uren
|
|
WHERE ( TRUNC (SYSDATE - 21)
|
|
- DECODE (TO_CHAR (SYSDATE - 21, 'D'), '1', 8, TO_CHAR (SYSDATE - 21, 'D'))
|
|
+ 2) = uren.maandag_vandeweek
|
|
AND uren.prs_perslid_key = tlid.prs_perslid_key)
|
|
-- AND NVL (tlid.prs_verzorger_dienstverband, -1) <> 0
|
|
GROUP BY tlid.prs_perslid_key;
|
|
|
|
|
|
|
|
-- Van alle teamleden (of ze nu opdracht hebben of niet) diegene die de weekbrief van 4(!) week geleden niet hebben ingeleverd
|
|
|
|
CREATE_VIEW( care_v_missing_weekbrief_4, 0)
|
|
AS
|
|
SELECT tlid.prs_perslid_key
|
|
FROM care_v_totaal_uren_all uren, care_v_verzorger tlid
|
|
WHERE (TRUNC (SYSDATE - 28) - DECODE (TO_CHAR (SYSDATE - 28, 'D'), '1', 8, TO_CHAR (SYSDATE - 28, 'D')) + 2) =
|
|
uren.maandag_vandeweek
|
|
AND uren.uren_status < 2
|
|
AND uren.prs_perslid_key = tlid.prs_perslid_key
|
|
UNION
|
|
SELECT tlid.prs_perslid_key
|
|
FROM care_v_verzorger tlid
|
|
WHERE NOT EXISTS
|
|
(SELECT uren.prs_perslid_key
|
|
FROM care_v_totaal_uren_all uren
|
|
WHERE ( TRUNC (SYSDATE - 28)
|
|
- DECODE (TO_CHAR (SYSDATE - 28, 'D'), '1', 8, TO_CHAR (SYSDATE - 28, 'D'))
|
|
+ 2) = uren.maandag_vandeweek
|
|
AND uren.prs_perslid_key = tlid.prs_perslid_key)
|
|
-- AND NVL (tlid.prs_verzorger_dienstverband, -1) <> 0
|
|
GROUP BY tlid.prs_perslid_key;
|
|
|
|
|
|
-- Van alle teamleden (of ze nu opdracht hebben of niet) diegene die de weekbrief van 5(!) week geleden niet hebben ingeleverd
|
|
|
|
CREATE_VIEW( care_v_missing_weekbrief_5, 0)
|
|
AS
|
|
SELECT tlid.prs_perslid_key
|
|
FROM care_v_totaal_uren_all uren, care_v_verzorger tlid
|
|
WHERE (TRUNC (SYSDATE - 35) - DECODE (TO_CHAR (SYSDATE - 35, 'D'), '1', 8, TO_CHAR (SYSDATE - 35, 'D')) + 2) =
|
|
uren.maandag_vandeweek
|
|
AND uren.uren_status < 2
|
|
AND uren.prs_perslid_key = tlid.prs_perslid_key
|
|
UNION
|
|
SELECT tlid.prs_perslid_key
|
|
FROM care_v_verzorger tlid
|
|
WHERE NOT EXISTS
|
|
(SELECT uren.prs_perslid_key
|
|
FROM care_v_totaal_uren_all uren
|
|
WHERE ( TRUNC (SYSDATE - 35)
|
|
- DECODE (TO_CHAR (SYSDATE - 35, 'D'), '1', 8, TO_CHAR (SYSDATE - 35, 'D'))
|
|
+ 2) = uren.maandag_vandeweek
|
|
AND uren.prs_perslid_key = tlid.prs_perslid_key)
|
|
-- AND NVL (tlid.prs_verzorger_dienstverband, -1) <> 0
|
|
GROUP BY tlid.prs_perslid_key;
|
|
|
|
|
|
-- Van alle teamleden (of ze nu opdracht hebben of niet) diegene die de weekbrief van 6(!) week geleden niet hebben ingeleverd
|
|
|
|
CREATE_VIEW( care_v_missing_weekbrief_6, 0)
|
|
AS
|
|
SELECT tlid.prs_perslid_key
|
|
FROM care_v_totaal_uren_all uren, care_v_verzorger tlid
|
|
WHERE (TRUNC (SYSDATE - 42) - DECODE (TO_CHAR (SYSDATE - 42, 'D'), '1', 8, TO_CHAR (SYSDATE - 42, 'D')) + 2) =
|
|
uren.maandag_vandeweek
|
|
AND uren.uren_status < 2
|
|
AND uren.prs_perslid_key = tlid.prs_perslid_key
|
|
UNION
|
|
SELECT tlid.prs_perslid_key
|
|
FROM care_v_verzorger tlid
|
|
WHERE NOT EXISTS
|
|
(SELECT uren.prs_perslid_key
|
|
FROM care_v_totaal_uren_all uren
|
|
WHERE ( TRUNC (SYSDATE - 42)
|
|
- DECODE (TO_CHAR (SYSDATE - 42, 'D'), '1', 8, TO_CHAR (SYSDATE - 42, 'D'))
|
|
+ 2) = uren.maandag_vandeweek
|
|
AND uren.prs_perslid_key = tlid.prs_perslid_key)
|
|
-- AND NVL (tlid.prs_verzorger_dienstverband, -1) <> 0
|
|
GROUP BY tlid.prs_perslid_key;
|
|
|
|
|
|
-- Van alle teamleden (of ze nu opdracht hebben of niet) diegene die de weekbrief van de vorige periode niet hebben ingeleverd
|
|
|
|
CREATE_VIEW( care_v_missing_weekbrief_all, 0)
|
|
(
|
|
prs_perslid_key,
|
|
jaar,
|
|
weeknr
|
|
)
|
|
AS
|
|
SELECT prs_perslid_key, TO_NUMBER (TO_CHAR (SYSDATE, 'IYYY')), TO_NUMBER (TO_CHAR (SYSDATE, 'IW'))
|
|
FROM care_v_missing_weekbrief_0
|
|
UNION
|
|
SELECT prs_perslid_key, TO_NUMBER (TO_CHAR (SYSDATE - 7, 'IYYY')), TO_NUMBER (TO_CHAR (SYSDATE - 7, 'IW'))
|
|
FROM care_v_missing_weekbrief_1
|
|
UNION
|
|
SELECT prs_perslid_key, TO_NUMBER (TO_CHAR (SYSDATE - 14, 'IYYY')), TO_NUMBER (TO_CHAR (SYSDATE - 14, 'IW'))
|
|
FROM care_v_missing_weekbrief_2
|
|
UNION
|
|
SELECT prs_perslid_key, TO_NUMBER (TO_CHAR (SYSDATE - 21, 'IYYY')), TO_NUMBER (TO_CHAR (SYSDATE - 21, 'IW'))
|
|
FROM care_v_missing_weekbrief_3
|
|
UNION
|
|
SELECT prs_perslid_key, TO_NUMBER (TO_CHAR (SYSDATE - 28, 'IYYY')), TO_NUMBER (TO_CHAR (SYSDATE - 28, 'IW'))
|
|
FROM care_v_missing_weekbrief_4
|
|
UNION
|
|
SELECT prs_perslid_key, TO_NUMBER (TO_CHAR (SYSDATE - 35, 'IYYY')), TO_NUMBER (TO_CHAR (SYSDATE - 35, 'IW'))
|
|
FROM care_v_missing_weekbrief_5
|
|
UNION
|
|
SELECT prs_perslid_key, TO_NUMBER (TO_CHAR (SYSDATE - 42, 'IYYY')), TO_NUMBER (TO_CHAR (SYSDATE - 42, 'IW'))
|
|
FROM care_v_missing_weekbrief_6
|
|
GROUP BY prs_perslid_key;
|
|
|
|
|
|
|
|
CREATE_VIEW( care_v_ingevoerde_uren, 0)
|
|
AS
|
|
SELECT *
|
|
FROM care_v_totaal_uren_all
|
|
WHERE uren_status = 1;
|
|
|
|
|
|
|
|
CREATE_VIEW( care_v_te_fiatteren_uren, 0)
|
|
AS
|
|
SELECT *
|
|
FROM care_v_totaal_uren_all
|
|
WHERE uren_status = 2;
|
|
|
|
|
|
|
|
CREATE_VIEW( care_v_te_factureren_uren, 0)
|
|
AS
|
|
SELECT *
|
|
FROM care_v_bestede_uren_all
|
|
WHERE uren_status = 3;
|
|
|
|
CREATE_VIEW( care_v_first_factuur_uren_ooit, 0)
|
|
AS
|
|
SELECT b.client_bsn, MIN (uur.datum_gewerkt) AS datum_eerste_keer_ooit
|
|
FROM care_v_beschikking_all b, care_v_te_factureren_uren uur
|
|
WHERE uur.mld_melding_key = b.mld_melding_key
|
|
AND b.pgb IS NULL
|
|
GROUP BY client_bsn;
|
|
|
|
|
|
|
|
-- View die hieronder wordt gebruikt ter afsluiting van een periode, en waarvan de laatste uren van de laatste week
|
|
-- moeten worden goedgekeurd danwel dat een gehele periode goedgekeurd dient te worden
|
|
-- Dit zijn alle gemaakte uren die ter fiat zijn aangeboden of reeds zijn goedgekeurd.
|
|
|
|
CREATE_VIEW( care_v_te_fiatfact_uren, 0)
|
|
AS
|
|
SELECT *
|
|
FROM care_v_bestede_uren_all
|
|
WHERE uren_status = 2 OR uren_status = 3;
|
|
|
|
|
|
CREATE_VIEW( care_v_gefactureerde_uren, 0)
|
|
AS
|
|
SELECT *
|
|
FROM care_v_bestede_uren_all
|
|
WHERE uren_status = 4;
|
|
|
|
|
|
|
|
-- View per beschikking met de gemaakte uren (uren die ter goedkeuring zijn aangeboden danwel zijn goedgekeurd)
|
|
-- in deze(!) week
|
|
|
|
CREATE_VIEW( care_v_gemaakte_uren_0, 0)
|
|
(
|
|
mld_melding_key,
|
|
uren_besteed
|
|
)
|
|
AS
|
|
SELECT mld_melding_key, COALESCE (SUM (uren2.uren_besteed), -1)
|
|
FROM care_v_te_fiatfact_uren uren2
|
|
WHERE (TRUNC (SYSDATE) - DECODE (TO_CHAR (SYSDATE, 'D'), '1', 8, TO_CHAR (SYSDATE, 'D')) + 2) =
|
|
uren2.maandag_vandeweek
|
|
--WHERE to_number(to_char (SYSDATE,'IYYY')) = uren2.jaar
|
|
--AND to_number(to_char (SYSDATE,'IW')) = uren2.weeknr
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
-- View per beschikking met de gemaakte uren (uren die ter goedkeuring zijn aangeboden danwel zijn goedgekeurd)
|
|
-- in de vorige(!) week
|
|
|
|
CREATE_VIEW( care_v_gemaakte_uren_1, 0)
|
|
(
|
|
mld_melding_key,
|
|
uren_besteed
|
|
)
|
|
AS
|
|
SELECT mld_melding_key, COALESCE (SUM (uren2.uren_besteed), -1)
|
|
FROM care_v_te_fiatfact_uren uren2
|
|
WHERE (TRUNC (SYSDATE - 7) - DECODE (TO_CHAR (SYSDATE - 7, 'D'), '1', 8, TO_CHAR (SYSDATE - 7, 'D')) + 2) =
|
|
uren2.maandag_vandeweek
|
|
--WHERE to_number(to_char (SYSDATE-7,'IYYY')) = uren2.jaar
|
|
--AND to_number(to_char (SYSDATE-7,'IW')) = uren2.weeknr
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
-- View per beschikking met de gemaakte uren (uren die ter goedkeuring zijn aangeboden danwel zijn goedgekeurd)
|
|
-- van 2(!) weken geleden
|
|
|
|
CREATE_VIEW( care_v_gemaakte_uren_2, 0)
|
|
(
|
|
mld_melding_key,
|
|
uren_besteed
|
|
)
|
|
AS
|
|
SELECT mld_melding_key, COALESCE (SUM (uren2.uren_besteed), -1)
|
|
FROM care_v_te_fiatfact_uren uren2
|
|
WHERE (TRUNC (SYSDATE - 14) - DECODE (TO_CHAR (SYSDATE - 14, 'D'), '1', 8, TO_CHAR (SYSDATE - 14, 'D')) + 2) =
|
|
uren2.maandag_vandeweek
|
|
--WHERE (to_number(to_char (SYSDATE-14,'IYYY')) = uren2.jaar)
|
|
--AND (to_number(to_char (SYSDATE-14,'IW')) = uren2.weeknr)
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
-- View per beschikking met de gemaakte uren (uren die ter goedkeuring zijn aangeboden danwel zijn goedgekeurd)
|
|
-- in de vorige 2(!) weken
|
|
|
|
CREATE_VIEW( care_v_gemaakte_uren_12 (mld_melding_key, uren_besteed), 0)
|
|
AS
|
|
SELECT mld_melding_key, SUM (uren_besteed)
|
|
FROM ( SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_1
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_2)
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
|
|
-- View per beschikking met de gemaakte uren (uren die ter goedkeuring zijn aangeboden danwel zijn goedgekeurd)
|
|
-- van 3(!) weken geleden
|
|
|
|
CREATE_VIEW( care_v_gemaakte_uren_3, 0)
|
|
(
|
|
mld_melding_key,
|
|
uren_besteed
|
|
)
|
|
AS
|
|
SELECT mld_melding_key, COALESCE (SUM (uren2.uren_besteed), -1)
|
|
FROM care_v_te_fiatfact_uren uren2
|
|
WHERE (TRUNC (SYSDATE - 21) - DECODE (TO_CHAR (SYSDATE - 21, 'D'), '1', 8, TO_CHAR (SYSDATE - 21, 'D')) + 2) =
|
|
uren2.maandag_vandeweek
|
|
--WHERE (to_number(to_char (SYSDATE-21,'IYYY')) = uren2.jaar)
|
|
--AND (to_number(to_char (SYSDATE-21,'IW')) = uren2.weeknr)
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
-- View per beschikking met de gemaakte uren (uren die ter goedkeuring zijn aangeboden danwel zijn goedgekeurd)
|
|
-- in de vorige 3(!) weken
|
|
|
|
CREATE_VIEW( care_v_gemaakte_uren_123 (mld_melding_key, uren_besteed), 0)
|
|
AS
|
|
SELECT mld_melding_key, SUM (uren_besteed)
|
|
FROM ( SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_1
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_2
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_3)
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
CREATE_VIEW( care_v_gemaakte_uren_4, 0)
|
|
(
|
|
mld_melding_key,
|
|
uren_besteed
|
|
)
|
|
AS
|
|
SELECT mld_melding_key, COALESCE (SUM (uren2.uren_besteed), -1)
|
|
FROM care_v_te_fiatfact_uren uren2
|
|
WHERE (TRUNC (SYSDATE - 28) - DECODE (TO_CHAR (SYSDATE - 28, 'D'), '1', 8, TO_CHAR (SYSDATE - 28, 'D')) + 2) =
|
|
uren2.maandag_vandeweek
|
|
--WHERE (to_number(to_char (SYSDATE-28,'IYYY')) = uren2.jaar)
|
|
--AND (to_number(to_char (SYSDATE-28,'IW')) = uren2.weeknr)
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
-- View per beschikking met de gemaakte uren (uren die ter goedkeuring zijn aangeboden danwel zijn goedgekeurd)
|
|
-- in de vorige 3(!) weken
|
|
|
|
CREATE_VIEW( care_v_gemaakte_uren_1234 (mld_melding_key, uren_besteed), 0)
|
|
AS
|
|
SELECT mld_melding_key, SUM (uren_besteed)
|
|
FROM ( SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_1
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_2
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_3
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_4)
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
CREATE_VIEW( care_v_gemaakte_uren_5, 0)
|
|
(
|
|
mld_melding_key,
|
|
uren_besteed
|
|
)
|
|
AS
|
|
SELECT mld_melding_key, COALESCE (SUM (uren2.uren_besteed), -1)
|
|
FROM care_v_te_fiatfact_uren uren2
|
|
WHERE (TRUNC (SYSDATE - 35) - DECODE (TO_CHAR (SYSDATE - 35, 'D'), '1', 8, TO_CHAR (SYSDATE - 35, 'D')) + 2) =
|
|
uren2.maandag_vandeweek
|
|
--WHERE (to_number(to_char (SYSDATE-35,'IYYY')) = uren2.jaar)
|
|
--AND (to_number(to_char (SYSDATE-35,'IW')) = uren2.weeknr)
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
CREATE_VIEW( care_v_gemaakte_uren_2345 (mld_melding_key, uren_besteed), 0)
|
|
AS
|
|
SELECT mld_melding_key, SUM (uren_besteed)
|
|
FROM ( SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_2
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_3
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_4
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_5)
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
CREATE_VIEW( care_v_gemaakte_uren_6, 0)
|
|
(
|
|
mld_melding_key,
|
|
uren_besteed
|
|
)
|
|
AS
|
|
SELECT mld_melding_key, COALESCE (SUM (uren2.uren_besteed), -1)
|
|
FROM care_v_te_fiatfact_uren uren2
|
|
WHERE (TRUNC (SYSDATE - 42) - DECODE (TO_CHAR (SYSDATE - 42, 'D'), '1', 8, TO_CHAR (SYSDATE - 42, 'D')) + 2) =
|
|
uren2.maandag_vandeweek
|
|
--WHERE (to_number(to_char (SYSDATE-42,'IYYY')) = uren2.jaar)
|
|
--AND (to_number(to_char (SYSDATE-42,'IW')) = uren2.weeknr)
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
|
|
CREATE_VIEW( care_v_gemaakte_uren_3456 (mld_melding_key, uren_besteed), 0)
|
|
AS
|
|
SELECT mld_melding_key, SUM (uren_besteed)
|
|
FROM ( SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_3
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_4
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_5
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_6)
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
CREATE_VIEW( care_v_gemaakte_uren_7, 0)
|
|
(
|
|
mld_melding_key,
|
|
uren_besteed
|
|
)
|
|
AS
|
|
SELECT mld_melding_key, COALESCE (SUM (uren2.uren_besteed), -1)
|
|
FROM care_v_te_fiatfact_uren uren2
|
|
WHERE (TRUNC (SYSDATE - 49) - DECODE (TO_CHAR (SYSDATE - 49, 'D'), '1', 8, TO_CHAR (SYSDATE - 49, 'D')) + 2) =
|
|
uren2.maandag_vandeweek
|
|
--WHERE (to_number(to_char (SYSDATE-42,'IYYY')) = uren2.jaar)
|
|
--AND (to_number(to_char (SYSDATE-42,'IW')) = uren2.weeknr)
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
CREATE_VIEW( care_v_gemaakte_uren_4567 (mld_melding_key, uren_besteed), 0)
|
|
AS
|
|
SELECT mld_melding_key, SUM (uren_besteed)
|
|
FROM ( SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_4
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_5
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_6
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_besteed FROM care_v_gemaakte_uren_7)
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
|
|
|
|
|
|
-- View met lopende beschikkingen in de vorige 4(!) weken met gesommeerd hun indicatieuren
|
|
|
|
CREATE_VIEW( care_v_indicatie_uren_1234 (mld_melding_key, uren_beschikking), 0)
|
|
AS
|
|
SELECT mld_melding_key, SUM (uren_beschikking)
|
|
FROM(
|
|
WITH XX AS (SELECT b.mld_melding_key, b.uren_beschikking, beschikking_maandag_van, beschikking_maandag_tot FROM care_v_beschikking_all b)
|
|
SELECT mld_melding_key, uren_beschikking
|
|
FROM XX
|
|
WHERE SYSDATE - 7 >= beschikking_maandag_van AND SYSDATE - 7 <= beschikking_maandag_tot
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_beschikking
|
|
FROM XX
|
|
WHERE SYSDATE - 14 >= beschikking_maandag_van AND SYSDATE - 14 <= beschikking_maandag_tot
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_beschikking
|
|
FROM XX
|
|
WHERE SYSDATE - 21 >= beschikking_maandag_van AND SYSDATE - 21 <= beschikking_maandag_tot
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_beschikking
|
|
FROM XX
|
|
WHERE SYSDATE - 28 >= beschikking_maandag_van AND SYSDATE - 28 <= beschikking_maandag_tot
|
|
)
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
CREATE_VIEW( care_v_indicatie_uren_2345 (mld_melding_key, uren_beschikking), 0)
|
|
AS
|
|
SELECT mld_melding_key, SUM (uren_beschikking)
|
|
FROM(
|
|
WITH XX AS (SELECT b.mld_melding_key, b.uren_beschikking, beschikking_maandag_van, beschikking_maandag_tot FROM care_v_beschikking_all b)
|
|
SELECT mld_melding_key, uren_beschikking
|
|
FROM XX
|
|
WHERE SYSDATE - 14 >= beschikking_maandag_van AND SYSDATE - 14 <= beschikking_maandag_tot
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_beschikking
|
|
FROM XX
|
|
WHERE SYSDATE - 21 >= beschikking_maandag_van AND SYSDATE - 21 <= beschikking_maandag_tot
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_beschikking
|
|
FROM XX
|
|
WHERE SYSDATE - 28 >= beschikking_maandag_van AND SYSDATE - 28 <= beschikking_maandag_tot
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_beschikking
|
|
FROM XX
|
|
WHERE SYSDATE - 35 >= beschikking_maandag_van AND SYSDATE - 35 <= beschikking_maandag_tot
|
|
)
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
CREATE_VIEW( care_v_indicatie_uren_3456 (mld_melding_key, uren_beschikking), 0)
|
|
AS
|
|
SELECT mld_melding_key, SUM (uren_beschikking)
|
|
FROM(
|
|
WITH XX AS (SELECT b.mld_melding_key, b.uren_beschikking, beschikking_maandag_van, beschikking_maandag_tot FROM care_v_beschikking_all b)
|
|
SELECT mld_melding_key, uren_beschikking
|
|
FROM XX
|
|
WHERE SYSDATE - 21 >= beschikking_maandag_van AND SYSDATE - 21 <= beschikking_maandag_tot
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_beschikking
|
|
FROM XX
|
|
WHERE SYSDATE - 28 >= beschikking_maandag_van AND SYSDATE - 28 <= beschikking_maandag_tot
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_beschikking
|
|
FROM XX
|
|
WHERE SYSDATE - 35 >= beschikking_maandag_van AND SYSDATE - 35 <= beschikking_maandag_tot
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_beschikking
|
|
FROM XX
|
|
WHERE SYSDATE - 42 >= beschikking_maandag_van AND SYSDATE - 42 <= beschikking_maandag_tot
|
|
)
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
CREATE_VIEW( care_v_indicatie_uren_4567 (mld_melding_key, uren_beschikking), 0)
|
|
AS
|
|
SELECT mld_melding_key, SUM (uren_beschikking)
|
|
FROM(
|
|
WITH XX AS (SELECT b.mld_melding_key, b.uren_beschikking, beschikking_maandag_van, beschikking_maandag_tot FROM care_v_beschikking_all b)
|
|
SELECT mld_melding_key, uren_beschikking
|
|
FROM XX
|
|
WHERE SYSDATE - 28 >= beschikking_maandag_van AND SYSDATE - 28 <= beschikking_maandag_tot
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_beschikking
|
|
FROM XX
|
|
WHERE SYSDATE - 35 >= beschikking_maandag_van AND SYSDATE - 35 <= beschikking_maandag_tot
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_beschikking
|
|
FROM XX
|
|
WHERE SYSDATE - 42 >= beschikking_maandag_van AND SYSDATE - 42 <= beschikking_maandag_tot
|
|
UNION ALL
|
|
SELECT mld_melding_key, uren_beschikking
|
|
FROM XX
|
|
WHERE SYSDATE - 49 >= beschikking_maandag_van AND SYSDATE - 49 <= beschikking_maandag_tot
|
|
)
|
|
GROUP BY mld_melding_key;
|
|
|
|
|
|
-- View met lopende beschikkingen met een verschil tussen indicatie-uren en gemaakte uren van de vorige 4(!) weken
|
|
CREATE_VIEW( care_v_conflict_uren_1234, 0)
|
|
AS
|
|
SELECT iu.mld_melding_key, iu.uren_beschikking, gu.uren_besteed
|
|
FROM care_v_indicatie_uren_1234 iu, care_v_gemaakte_uren_1234 gu
|
|
WHERE iu.mld_melding_key = gu.mld_melding_key;
|
|
|
|
|
|
|
|
-- View met lopende beschikkingen met een verschil tussen indicatie-uren en gemaakte uren van de periode (= 4(!) weken)
|
|
-- vanaf niet vorige week en 3 ervoor, maar vanaf 2 week geleden en 3 week ervoor
|
|
CREATE_VIEW( care_v_conflict_uren_2345, 0)
|
|
AS
|
|
SELECT iu.mld_melding_key, iu.uren_beschikking, gu.uren_besteed
|
|
FROM care_v_indicatie_uren_2345 iu, care_v_gemaakte_uren_2345 gu
|
|
WHERE iu.mld_melding_key = gu.mld_melding_key;
|
|
|
|
|
|
-- View met lopende beschikkingen met een verschil tussen indicatie-uren en gemaakte uren van de periode (= 4(!) weken)
|
|
-- vanaf niet 2 week geleden en 3 ervoor, maar vanaf 3 week geleden en 3 week ervoor
|
|
CREATE_VIEW( care_v_conflict_uren_3456, 0)
|
|
AS
|
|
SELECT iu.mld_melding_key, iu.uren_beschikking, gu.uren_besteed
|
|
FROM care_v_indicatie_uren_3456 iu, care_v_gemaakte_uren_3456 gu
|
|
WHERE iu.mld_melding_key = gu.mld_melding_key;
|
|
|
|
-- View met lopende beschikkingen met een verschil tussen indicatie-uren en gemaakte uren van de periode (= 4(!) weken)
|
|
-- vanaf niet 2 week geleden en 3 ervoor, maar vanaf 4 week geleden en 3 week ervoor
|
|
CREATE_VIEW( care_v_conflict_uren_4567, 0)
|
|
AS
|
|
SELECT iu.mld_melding_key, iu.uren_beschikking, gu.uren_besteed
|
|
FROM care_v_indicatie_uren_4567 iu, care_v_gemaakte_uren_4567 gu
|
|
WHERE iu.mld_melding_key = gu.mld_melding_key;
|
|
|
|
|
|
|
|
|
|
-- Om de conflicten van een periode in detail te kunnen analyseren: wie heeft in welke week de uren gemaakt.
|
|
-- Eerst een hulp-view voor de rapportage, vandaar de infix _tmp_
|
|
|
|
CREATE_VIEW( care_v_tmp_conflict_uren_1234, 0)
|
|
(
|
|
periode,
|
|
melding,
|
|
gemeente,
|
|
beschikkingsnr,
|
|
client,
|
|
uren_totaal,
|
|
uren_besteed,
|
|
indicatie_uren,
|
|
verzorger,
|
|
jaar,
|
|
weeknr,
|
|
datum,
|
|
week_uren_gepland,
|
|
week_uren_besteed
|
|
)
|
|
AS
|
|
SELECT TO_NUMBER (TO_CHAR (SYSDATE - 28, 'IYYY'))
|
|
|| '-'
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 28, 'IW'))
|
|
|| ' t/m '
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 7, 'IYYY'))
|
|
|| '-'
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 7, 'IW')),
|
|
c.mld_melding_key,
|
|
b.gemeente_omschrijving,
|
|
b.beschikking_nr,
|
|
b.prs_client_naam || ',' || b.prs_client_voorletters || ' ' || b.prs_client_tussenvoegsel,
|
|
c.uren_beschikking,
|
|
c.uren_besteed,
|
|
b.uren_beschikking,
|
|
uur.prs_perslid_naam || ',' || uur.prs_perslid_voorletters || ' ' || uur.prs_perslid_tussenvoegsel,
|
|
uur.jaar,
|
|
uur.weeknr,
|
|
uur.datum_gewerkt,
|
|
uur.uren_opdracht,
|
|
uur.uren_besteed
|
|
FROM care_v_conflict_uren_1234 c, care_v_beschikking_all b, care_v_bestede_uren_all uur
|
|
WHERE c.mld_melding_key = b.mld_melding_key AND uur.mld_melding_key = b.mld_melding_key
|
|
AND (TRUNC (SYSDATE - 28) - DECODE (TO_CHAR (SYSDATE - 28, 'D'), '1', 8, TO_CHAR (SYSDATE - 28, 'D')) + 2) <=
|
|
uur.maandag_vandeweek
|
|
AND (TRUNC (SYSDATE - 7) - DECODE (TO_CHAR (SYSDATE - 7, 'D'), '1', 8, TO_CHAR (SYSDATE - 7, 'D')) + 2) >=
|
|
uur.maandag_vandeweek
|
|
AND (uur.uren_status = 2 OR uur.uren_status = 3)
|
|
UNION
|
|
SELECT TO_NUMBER (TO_CHAR (SYSDATE - 28, 'IYYY'))
|
|
|| '-'
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 28, 'IW'))
|
|
|| ' t/m '
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 7, 'IYYY'))
|
|
|| '-'
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 7, 'IW')),
|
|
b.mld_melding_key,
|
|
b.gemeente_omschrijving,
|
|
b.beschikking_nr,
|
|
b.prs_client_naam || ',' || b.prs_client_voorletters || ' ' || b.prs_client_tussenvoegsel,
|
|
iu.uren_beschikking,
|
|
0,
|
|
b.uren_beschikking,
|
|
'-',
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
0
|
|
FROM care_v_indicatie_uren_1234 iu, care_v_beschikking_all b
|
|
WHERE iu.mld_melding_key = b.mld_melding_key
|
|
AND NOT EXISTS (SELECT *
|
|
FROM care_v_gemaakte_uren_1234 gu
|
|
WHERE gu.mld_melding_key = iu.mld_melding_key);
|
|
|
|
|
|
-- Rapportage view A (postfix A): op periode-nivo de conflicten analyseren...
|
|
|
|
CREATE_VIEW( care_v_rap_conflict_uren_1234a, 0)
|
|
(
|
|
periode,
|
|
melding,
|
|
fclt_f_gemeente,
|
|
beschikking,
|
|
fclt_f_client,
|
|
uren_gepland_totaal,
|
|
uren_besteed_totaal
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
TO_CHAR (melding),
|
|
gemeente,
|
|
beschikkingsnr,
|
|
client,
|
|
MIN (uren_totaal),
|
|
MIN (uren_besteed)
|
|
FROM care_v_tmp_conflict_uren_1234
|
|
GROUP BY periode, melding, gemeente, beschikkingsnr, client;
|
|
|
|
|
|
-- Rapportage view B (postfix B): op periode + week-nivo de conflicten analyseren...
|
|
|
|
CREATE_VIEW( care_v_rap_conflict_uren_1234b, 0)
|
|
(
|
|
periode,
|
|
melding,
|
|
fclt_f_gemeente,
|
|
beschikking,
|
|
fclt_f_client,
|
|
uren_gepland_totaal,
|
|
uren_besteed_totaal,
|
|
indicatie_uren,
|
|
fclt_f_jaar_weeknr,
|
|
uren_besteed_week
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
TO_CHAR (melding),
|
|
gemeente,
|
|
beschikkingsnr,
|
|
client,
|
|
MIN (uren_totaal),
|
|
MIN (uren_besteed),
|
|
MIN (indicatie_uren),
|
|
jaar || '-' || TO_CHAR (weeknr, '09'),
|
|
SUM (week_uren_besteed)
|
|
FROM care_v_tmp_conflict_uren_1234
|
|
GROUP BY periode, melding, gemeente, beschikkingsnr, client, jaar, weeknr;
|
|
|
|
|
|
|
|
-- Rapportage view C (postfix C): op periode + week + verzorger -nivo de conflicten analyseren...
|
|
|
|
CREATE_VIEW( care_v_rap_conflict_uren_1234c, 0)
|
|
(
|
|
periode,
|
|
melding,
|
|
fclt_f_gemeente,
|
|
beschikking,
|
|
fclt_f_client,
|
|
uren_gepland_totaal,
|
|
uren_besteed_totaal,
|
|
indicatie_uren,
|
|
fclt_f_jaar_weeknr,
|
|
fclt_f_verzorger,
|
|
uren_gepland_week,
|
|
uren_besteed_week
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
TO_CHAR (melding),
|
|
gemeente,
|
|
beschikkingsnr,
|
|
client,
|
|
MIN (uren_totaal),
|
|
MIN (uren_besteed),
|
|
MIN (indicatie_uren),
|
|
jaar || '-' || TO_CHAR (weeknr, '09'),
|
|
verzorger,
|
|
MIN (week_uren_gepland),
|
|
SUM (week_uren_besteed)
|
|
FROM care_v_tmp_conflict_uren_1234
|
|
GROUP BY periode, melding, gemeente, beschikkingsnr, client, jaar, weeknr, verzorger;
|
|
|
|
|
|
|
|
-- Om de conflicten van een periode in detail te kunnen analyseren: wie heeft in welke week de uren gemaakt.
|
|
-- Eerst een hulp-view voor de rapportage, vandaar de infix _tmp_
|
|
|
|
CREATE_VIEW( care_v_tmp_conflict_uren_2345, 0)
|
|
(
|
|
periode,
|
|
melding,
|
|
gemeente,
|
|
beschikkingsnr,
|
|
client,
|
|
uren_totaal,
|
|
uren_besteed,
|
|
indicatie_uren,
|
|
verzorger,
|
|
jaar,
|
|
weeknr,
|
|
datum,
|
|
week_uren_gepland,
|
|
week_uren_besteed
|
|
)
|
|
AS
|
|
SELECT TO_NUMBER (TO_CHAR (SYSDATE - 35, 'IYYY'))
|
|
|| '-'
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 35, 'IW'))
|
|
|| ' t/m '
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 14, 'IYYY'))
|
|
|| '-'
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 14, 'IW')),
|
|
c.mld_melding_key,
|
|
b.gemeente_omschrijving,
|
|
b.beschikking_nr,
|
|
b.prs_client_naam || ',' || b.prs_client_voorletters || ' ' || b.prs_client_tussenvoegsel,
|
|
c.uren_beschikking,
|
|
c.uren_besteed,
|
|
b.uren_beschikking,
|
|
uur.prs_perslid_naam || ',' || uur.prs_perslid_voorletters || ' ' || uur.prs_perslid_tussenvoegsel,
|
|
uur.jaar,
|
|
uur.weeknr,
|
|
uur.datum_gewerkt,
|
|
uur.uren_opdracht,
|
|
uur.uren_besteed
|
|
FROM care_v_conflict_uren_2345 c, care_v_beschikking_all b, care_v_bestede_uren_all uur
|
|
WHERE c.mld_melding_key = b.mld_melding_key AND uur.mld_melding_key = b.mld_melding_key
|
|
AND (TRUNC (SYSDATE - 35) - DECODE (TO_CHAR (SYSDATE - 35, 'D'), '1', 8, TO_CHAR (SYSDATE - 35, 'D')) + 2) <=
|
|
uur.maandag_vandeweek
|
|
AND (TRUNC (SYSDATE - 14) - DECODE (TO_CHAR (SYSDATE - 14, 'D'), '1', 8, TO_CHAR (SYSDATE - 14, 'D')) + 2) >=
|
|
uur.maandag_vandeweek
|
|
AND (uur.uren_status = 2 OR uur.uren_status = 3)
|
|
UNION
|
|
SELECT TO_NUMBER (TO_CHAR (SYSDATE - 35, 'IYYY'))
|
|
|| '-'
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 35, 'IW'))
|
|
|| ' t/m '
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 14, 'IYYY'))
|
|
|| '-'
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 14, 'IW')),
|
|
b.mld_melding_key,
|
|
b.gemeente_omschrijving,
|
|
b.beschikking_nr,
|
|
b.prs_client_naam || ',' || b.prs_client_voorletters || ' ' || b.prs_client_tussenvoegsel,
|
|
iu.uren_beschikking,
|
|
0,
|
|
b.uren_beschikking,
|
|
'-',
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
0
|
|
FROM care_v_indicatie_uren_2345 iu, care_v_beschikking_all b
|
|
WHERE iu.mld_melding_key = b.mld_melding_key
|
|
AND NOT EXISTS (SELECT *
|
|
FROM care_v_gemaakte_uren_2345 gu
|
|
WHERE gu.mld_melding_key = iu.mld_melding_key);
|
|
|
|
|
|
-- Rapportage view A (postfix A): op periode-nivo de conflicten analyseren...
|
|
|
|
CREATE_VIEW( care_v_rap_conflict_uren_2345a, 0)
|
|
(
|
|
periode,
|
|
melding,
|
|
fclt_f_gemeente,
|
|
beschikking,
|
|
fclt_f_client,
|
|
uren_gepland_totaal,
|
|
uren_besteed_totaal
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
TO_CHAR (melding),
|
|
gemeente,
|
|
beschikkingsnr,
|
|
client,
|
|
MIN (uren_totaal),
|
|
MIN (uren_besteed)
|
|
FROM care_v_tmp_conflict_uren_2345
|
|
GROUP BY periode, melding, gemeente, beschikkingsnr, client;
|
|
|
|
|
|
-- Rapportage view B (postfix B): op periode + week-nivo de conflicten analyseren...
|
|
|
|
CREATE_VIEW( care_v_rap_conflict_uren_2345b, 0)
|
|
(
|
|
periode,
|
|
melding,
|
|
fclt_f_gemeente,
|
|
beschikking,
|
|
fclt_f_client,
|
|
uren_gepland_totaal,
|
|
uren_besteed_totaal,
|
|
indicatie_uren,
|
|
fclt_f_jaar_weeknr,
|
|
uren_besteed_week
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
TO_CHAR (melding),
|
|
gemeente,
|
|
beschikkingsnr,
|
|
client,
|
|
MIN (uren_totaal),
|
|
MIN (uren_besteed),
|
|
MIN (indicatie_uren),
|
|
jaar || '-' || TO_CHAR (weeknr, '09'),
|
|
SUM (week_uren_besteed)
|
|
FROM care_v_tmp_conflict_uren_2345
|
|
GROUP BY periode, melding, gemeente, beschikkingsnr, client, jaar, weeknr;
|
|
|
|
|
|
|
|
-- Rapportage view C (postfix C): op periode + week + verzorger -nivo de conflicten analyseren...
|
|
|
|
CREATE_VIEW( care_v_rap_conflict_uren_2345c, 0)
|
|
(
|
|
periode,
|
|
melding,
|
|
fclt_f_gemeente,
|
|
beschikking,
|
|
fclt_f_client,
|
|
uren_gepland_totaal,
|
|
uren_besteed_totaal,
|
|
indicatie_uren,
|
|
fclt_f_jaar_weeknr,
|
|
fclt_f_verzorger,
|
|
uren_gepland_week,
|
|
uren_besteed_week
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
TO_CHAR (melding),
|
|
gemeente,
|
|
beschikkingsnr,
|
|
client,
|
|
MIN (uren_totaal),
|
|
MIN (uren_besteed),
|
|
MIN (indicatie_uren),
|
|
jaar || '-' || TO_CHAR (weeknr, '09'),
|
|
verzorger,
|
|
MIN (week_uren_gepland),
|
|
SUM (week_uren_besteed)
|
|
FROM care_v_tmp_conflict_uren_2345
|
|
GROUP BY periode, melding, gemeente, beschikkingsnr, client, jaar, weeknr, verzorger;
|
|
|
|
|
|
|
|
-- Om de conflicten van een periode in detail te kunnen analyseren: wie heeft in welke week de uren gemaakt.
|
|
-- Eerst een hulp-view voor de rapportage, vandaar de infix _tmp_
|
|
|
|
CREATE_VIEW( care_v_tmp_conflict_uren_3456, 0)
|
|
(
|
|
periode,
|
|
melding,
|
|
gemeente,
|
|
beschikkingsnr,
|
|
client,
|
|
uren_totaal,
|
|
uren_besteed,
|
|
indicatie_uren,
|
|
verzorger,
|
|
jaar,
|
|
weeknr,
|
|
datum,
|
|
week_uren_gepland,
|
|
week_uren_besteed
|
|
)
|
|
AS
|
|
SELECT TO_NUMBER (TO_CHAR (SYSDATE - 42, 'IYYY'))
|
|
|| '-'
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 42, 'IW'))
|
|
|| ' t/m '
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 21, 'IYYY'))
|
|
|| '-'
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 21, 'IW')),
|
|
c.mld_melding_key,
|
|
b.gemeente_omschrijving,
|
|
b.beschikking_nr,
|
|
b.prs_client_naam || ',' || b.prs_client_voorletters || ' ' || b.prs_client_tussenvoegsel,
|
|
c.uren_beschikking,
|
|
c.uren_besteed,
|
|
b.uren_beschikking,
|
|
uur.prs_perslid_naam || ',' || uur.prs_perslid_voorletters || ' ' || uur.prs_perslid_tussenvoegsel,
|
|
uur.jaar,
|
|
uur.weeknr,
|
|
uur.datum_gewerkt,
|
|
uur.uren_opdracht,
|
|
uur.uren_besteed
|
|
FROM care_v_conflict_uren_3456 c, care_v_beschikking_all b, care_v_bestede_uren_all uur
|
|
WHERE c.mld_melding_key = b.mld_melding_key AND uur.mld_melding_key = b.mld_melding_key
|
|
AND (TRUNC (SYSDATE - 42) - DECODE (TO_CHAR (SYSDATE - 42, 'D'), '1', 8, TO_CHAR (SYSDATE - 42, 'D')) + 2) <=
|
|
uur.maandag_vandeweek
|
|
AND (TRUNC (SYSDATE - 21) - DECODE (TO_CHAR (SYSDATE - 21, 'D'), '1', 8, TO_CHAR (SYSDATE - 21, 'D')) + 2) >=
|
|
uur.maandag_vandeweek
|
|
AND (uur.uren_status = 2 OR uur.uren_status = 3)
|
|
UNION
|
|
SELECT TO_NUMBER (TO_CHAR (SYSDATE - 42, 'IYYY'))
|
|
|| '-'
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 42, 'IW'))
|
|
|| ' t/m '
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 21, 'IYYY'))
|
|
|| '-'
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 21, 'IW')),
|
|
b.mld_melding_key,
|
|
b.gemeente_omschrijving,
|
|
b.beschikking_nr,
|
|
b.prs_client_naam || ',' || b.prs_client_voorletters || ' ' || b.prs_client_tussenvoegsel,
|
|
iu.uren_beschikking,
|
|
0,
|
|
b.uren_beschikking,
|
|
'-',
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
0
|
|
FROM care_v_indicatie_uren_3456 iu, care_v_beschikking_all b
|
|
WHERE iu.mld_melding_key = b.mld_melding_key
|
|
AND NOT EXISTS (SELECT *
|
|
FROM care_v_gemaakte_uren_3456 gu
|
|
WHERE gu.mld_melding_key = iu.mld_melding_key);
|
|
|
|
|
|
|
|
-- Rapportage view A (postfix A): op periode-nivo de conflicten analyseren...
|
|
|
|
CREATE_VIEW( care_v_rap_conflict_uren_3456a, 0)
|
|
(
|
|
periode,
|
|
melding,
|
|
fclt_f_gemeente,
|
|
beschikking,
|
|
fclt_f_client,
|
|
uren_gepland_totaal,
|
|
uren_besteed_totaal
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
TO_CHAR (melding),
|
|
gemeente,
|
|
beschikkingsnr,
|
|
client,
|
|
MIN (uren_totaal),
|
|
MIN (uren_besteed)
|
|
FROM care_v_tmp_conflict_uren_3456
|
|
GROUP BY periode, melding, gemeente, beschikkingsnr, client;
|
|
|
|
|
|
-- Rapportage view B (postfix B): op periode + week-nivo de conflicten analyseren...
|
|
|
|
CREATE_VIEW( care_v_rap_conflict_uren_3456b, 0)
|
|
(
|
|
periode,
|
|
melding,
|
|
fclt_f_gemeente,
|
|
beschikking,
|
|
fclt_f_client,
|
|
uren_gepland_totaal,
|
|
uren_besteed_totaal,
|
|
indicatie_uren,
|
|
fclt_f_jaar_weeknr,
|
|
uren_besteed_week
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
TO_CHAR (melding),
|
|
gemeente,
|
|
beschikkingsnr,
|
|
client,
|
|
MIN (uren_totaal),
|
|
MIN (uren_besteed),
|
|
MIN (indicatie_uren),
|
|
jaar || '-' || TO_CHAR (weeknr, '09'),
|
|
SUM (week_uren_besteed)
|
|
FROM care_v_tmp_conflict_uren_3456
|
|
GROUP BY periode, melding, gemeente, beschikkingsnr, client, jaar, weeknr;
|
|
|
|
|
|
|
|
-- Rapportage view C (postfix C): op periode + week + verzorger -nivo de conflicten analyseren...
|
|
|
|
CREATE_VIEW( care_v_rap_conflict_uren_3456c, 0)
|
|
(
|
|
periode,
|
|
melding,
|
|
fclt_f_gemeente,
|
|
beschikking,
|
|
fclt_f_client,
|
|
uren_gepland_totaal,
|
|
uren_besteed_totaal,
|
|
indicatie_uren,
|
|
fclt_f_jaar_weeknr,
|
|
fclt_f_verzorger,
|
|
uren_gepland_week,
|
|
uren_besteed_week
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
TO_CHAR (melding),
|
|
gemeente,
|
|
beschikkingsnr,
|
|
client,
|
|
MIN (uren_totaal),
|
|
MIN (uren_besteed),
|
|
MIN (indicatie_uren),
|
|
jaar || '-' || TO_CHAR (weeknr, '09'),
|
|
verzorger,
|
|
MIN (week_uren_gepland),
|
|
SUM (week_uren_besteed)
|
|
FROM care_v_tmp_conflict_uren_3456
|
|
GROUP BY periode, melding, gemeente, beschikkingsnr, client, jaar, weeknr, verzorger;
|
|
|
|
|
|
-- Om de conflicten van een periode in detail te kunnen analyseren: wie heeft in welke week de uren gemaakt.
|
|
-- Eerst een hulp-view voor de rapportage, vandaar de infix _tmp_
|
|
|
|
CREATE_VIEW( care_v_tmp_conflict_uren_4567, 0)
|
|
(
|
|
periode,
|
|
melding,
|
|
gemeente,
|
|
beschikkingsnr,
|
|
client,
|
|
uren_totaal,
|
|
uren_besteed,
|
|
indicatie_uren,
|
|
verzorger,
|
|
jaar,
|
|
weeknr,
|
|
datum,
|
|
week_uren_gepland,
|
|
week_uren_besteed
|
|
)
|
|
AS
|
|
SELECT TO_NUMBER (TO_CHAR (SYSDATE - 49, 'IYYY'))
|
|
|| '-'
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 49, 'IW'))
|
|
|| ' t/m '
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 28, 'IYYY'))
|
|
|| '-'
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 28, 'IW')),
|
|
c.mld_melding_key,
|
|
b.gemeente_omschrijving,
|
|
b.beschikking_nr,
|
|
b.prs_client_naam || ',' || b.prs_client_voorletters || ' ' || b.prs_client_tussenvoegsel,
|
|
c.uren_beschikking,
|
|
c.uren_besteed,
|
|
b.uren_beschikking,
|
|
uur.prs_perslid_naam || ',' || uur.prs_perslid_voorletters || ' ' || uur.prs_perslid_tussenvoegsel,
|
|
uur.jaar,
|
|
uur.weeknr,
|
|
uur.datum_gewerkt,
|
|
uur.uren_opdracht,
|
|
uur.uren_besteed
|
|
FROM care_v_conflict_uren_4567 c, care_v_beschikking_all b, care_v_bestede_uren_all uur
|
|
WHERE c.mld_melding_key = b.mld_melding_key AND uur.mld_melding_key = b.mld_melding_key
|
|
AND (TRUNC (SYSDATE - 49) - DECODE (TO_CHAR (SYSDATE - 49, 'D'), '1', 8, TO_CHAR (SYSDATE - 49, 'D')) + 2) <=
|
|
uur.maandag_vandeweek
|
|
AND (TRUNC (SYSDATE - 28) - DECODE (TO_CHAR (SYSDATE - 28, 'D'), '1', 8, TO_CHAR (SYSDATE - 28, 'D')) + 2) >=
|
|
uur.maandag_vandeweek
|
|
AND (uur.uren_status = 2 OR uur.uren_status = 3)
|
|
UNION
|
|
SELECT TO_NUMBER (TO_CHAR (SYSDATE - 49, 'IYYY'))
|
|
|| '-'
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 49, 'IW'))
|
|
|| ' t/m '
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 28, 'IYYY'))
|
|
|| '-'
|
|
|| TO_NUMBER (TO_CHAR (SYSDATE - 28, 'IW')),
|
|
b.mld_melding_key,
|
|
b.gemeente_omschrijving,
|
|
b.beschikking_nr,
|
|
b.prs_client_naam || ',' || b.prs_client_voorletters || ' ' || b.prs_client_tussenvoegsel,
|
|
iu.uren_beschikking,
|
|
0,
|
|
b.uren_beschikking,
|
|
'-',
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
0
|
|
FROM care_v_indicatie_uren_4567 iu, care_v_beschikking_all b
|
|
WHERE iu.mld_melding_key = b.mld_melding_key
|
|
AND NOT EXISTS (SELECT *
|
|
FROM care_v_gemaakte_uren_4567 gu
|
|
WHERE gu.mld_melding_key = iu.mld_melding_key);
|
|
|
|
|
|
-- Rapportage view A (postfix A): op periode-nivo de conflicten analyseren...
|
|
|
|
CREATE_VIEW( care_v_rap_conflict_uren_4567a, 0)
|
|
(
|
|
periode,
|
|
melding,
|
|
fclt_f_gemeente,
|
|
beschikking,
|
|
fclt_f_client,
|
|
uren_gepland_totaal,
|
|
uren_besteed_totaal
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
TO_CHAR (melding),
|
|
gemeente,
|
|
beschikkingsnr,
|
|
client,
|
|
MIN (uren_totaal),
|
|
MIN (uren_besteed)
|
|
FROM care_v_tmp_conflict_uren_4567
|
|
GROUP BY periode, melding, gemeente, beschikkingsnr, client;
|
|
|
|
|
|
-- Rapportage view B (postfix B): op periode + week-nivo de conflicten analyseren...
|
|
|
|
CREATE_VIEW( care_v_rap_conflict_uren_4567b, 0)
|
|
(
|
|
periode,
|
|
melding,
|
|
fclt_f_gemeente,
|
|
beschikking,
|
|
fclt_f_client,
|
|
uren_gepland_totaal,
|
|
uren_besteed_totaal,
|
|
indicatie_uren,
|
|
fclt_f_jaar_weeknr,
|
|
uren_besteed_week
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
TO_CHAR (melding),
|
|
gemeente,
|
|
beschikkingsnr,
|
|
client,
|
|
MIN (uren_totaal),
|
|
MIN (uren_besteed),
|
|
MIN (indicatie_uren),
|
|
jaar || '-' || TO_CHAR (weeknr, '09'),
|
|
SUM (week_uren_besteed)
|
|
FROM care_v_tmp_conflict_uren_4567
|
|
GROUP BY periode, melding, gemeente, beschikkingsnr, client, jaar, weeknr;
|
|
|
|
|
|
|
|
-- Rapportage view C (postfix C): op periode + week + verzorger -nivo de conflicten analyseren...
|
|
|
|
CREATE_VIEW( care_v_rap_conflict_uren_4567c, 0)
|
|
(
|
|
periode,
|
|
melding,
|
|
fclt_f_gemeente,
|
|
beschikking,
|
|
fclt_f_client,
|
|
uren_gepland_totaal,
|
|
uren_besteed_totaal,
|
|
indicatie_uren,
|
|
fclt_f_jaar_weeknr,
|
|
fclt_f_verzorger,
|
|
uren_gepland_week,
|
|
uren_besteed_week
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
TO_CHAR (melding),
|
|
gemeente,
|
|
beschikkingsnr,
|
|
client,
|
|
MIN (uren_totaal),
|
|
MIN (uren_besteed),
|
|
MIN (indicatie_uren),
|
|
jaar || '-' || TO_CHAR (weeknr, '09'),
|
|
verzorger,
|
|
MIN (week_uren_gepland),
|
|
SUM (week_uren_besteed)
|
|
FROM care_v_tmp_conflict_uren_4567
|
|
GROUP BY periode, melding, gemeente, beschikkingsnr, client, jaar, weeknr, verzorger;
|
|
|
|
|
|
|
|
|
|
-- Let op de notificatie-key 21 (=notificatie aan teamleiders/backoffice van team) in onderstaande view
|
|
|
|
CREATE_VIEW( care_v_noti_teamleider, 0)
|
|
(
|
|
code,
|
|
sender,
|
|
receiver,
|
|
text,
|
|
key,
|
|
par1,
|
|
par2,
|
|
xkey
|
|
)
|
|
AS
|
|
SELECT sn.fac_srtnotificatie_code,
|
|
fac.gettrackinguserkey ('MLDNEW', m.mld_melding_key),
|
|
tl.prs_perslid_key,
|
|
sn.fac_srtnotificatie_oms,
|
|
m.mld_melding_key,
|
|
m.mld_stdmelding_key,
|
|
m.mld_melding_omschrijving,
|
|
NULL
|
|
FROM mld_melding m, mld_stdmelding std, prs_perslid client, care_v_teamleider tl, fac_notificatie_job nj, fac_srtnotificatie sn
|
|
WHERE sn.fac_srtnotificatie_code = 'CUST01'
|
|
AND m.mld_melding_status = 2
|
|
AND nj.fac_notificatie_job_key = 21
|
|
AND client.prs_perslid_key = m.prs_perslid_key
|
|
AND m.mld_stdmelding_key = std.mld_stdmelding_key
|
|
AND tl.ins_discipline_key = std.mld_ins_discipline_key
|
|
AND fac.gettrackingdate ('MLDNEW', m.mld_melding_key) >=
|
|
nj.fac_notificatie_job_nextrun - (nj.fac_notificatie_job_interval / 24);
|
|
|
|
|
|
|
|
-- Let op de kenmerk-key 3 (= indicatie-uren van de beschikking) in onderstaande view
|
|
|
|
CREATE_VIEW( care_v_mld_match_opd, 0)
|
|
AS
|
|
SELECT m.mld_melding_key,
|
|
COUNT (o.mld_opdr_key) aant_opdr,
|
|
km.mld_kenmerkmelding_waarde uren_beschikking,
|
|
COALESCE (SUM (o.mld_opdr_uren), 0) uren_opdracht
|
|
FROM mld_melding m, mld_opdr o, mld_kenmerkmelding km
|
|
WHERE m.mld_melding_key = o.mld_melding_key(+)
|
|
AND km.mld_melding_key = m.mld_melding_key
|
|
AND m.mld_melding_status IN (4, 7)
|
|
AND km.mld_kenmerkmelding_verwijder IS NULL
|
|
AND mld_kenmerk_key = 3
|
|
AND o.mld_statusopdr_key(+) <> 1
|
|
AND o.mld_statusopdr_key(+) <> 6
|
|
GROUP BY m.mld_melding_key, km.mld_kenmerkmelding_waarde;
|
|
|
|
|
|
CREATE_VIEW( care_v_mld_urenconflict_opd, 0)
|
|
AS
|
|
SELECT *
|
|
FROM care_v_mld_match_opd mmo
|
|
WHERE mmo.uren_beschikking <> mmo.uren_opdracht;
|
|
|
|
|
|
|
|
CREATE_VIEW( care_v_noti_urenconflict, 0)
|
|
(
|
|
code,
|
|
sender,
|
|
receiver,
|
|
text,
|
|
key,
|
|
par1,
|
|
par2,
|
|
xkey
|
|
)
|
|
AS
|
|
SELECT sn.fac_srtnotificatie_code,
|
|
c.prs_perslid_key,
|
|
c.prs_perslid_key,
|
|
sn.fac_srtnotificatie_oms,
|
|
mmo.mld_melding_key,
|
|
NULL,
|
|
NULL,
|
|
NULL
|
|
FROM care_v_mld_match_opd mmo, fac_srtnotificatie sn, care_v_controller c
|
|
WHERE sn.fac_srtnotificatie_code = 'CUST02'
|
|
AND mmo.mld_melding_key = (SELECT MIN (mld_melding_key) FROM care_v_mld_urenconflict_opd);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- Let op: mld_melding hieronder kan NULL zijn (dan zijn het kosten mbt improductieve uren),
|
|
-- en anders is mld_melding_key gevuld, en zijn de kosten gerelateerd aan beschikking.
|
|
|
|
|
|
CREATE_VIEW( care_v_onkosten_all, 0)
|
|
(
|
|
prs_perslid_key,
|
|
bsn_verzorger,
|
|
verzorger_naam,
|
|
prs_verzorger_voorletters,
|
|
prs_verzorger_tussenvoegsel,
|
|
mld_kosten_key,
|
|
mld_kosten_code,
|
|
mld_kosten_omschrijving,
|
|
mld_opdruren_kosten_besteed,
|
|
mld_kosten_kosten,
|
|
mld_melding_key,
|
|
datum,
|
|
status
|
|
)
|
|
AS
|
|
SELECT v.prs_perslid_key,
|
|
v.verzorger_bsn,
|
|
v.prs_verzorger_naam,
|
|
v.prs_verzorger_voorletters,
|
|
v.prs_verzorger_tussenvoegsel,
|
|
k.mld_kosten_key,
|
|
k.mld_kosten_code,
|
|
k.mld_kosten_omschrijving,
|
|
ouk.mld_opdruren_kosten_besteed,
|
|
k.mld_kosten_kosten,
|
|
uur.mld_melding_key,
|
|
uur.datum_gewerkt,
|
|
uur.uren_status
|
|
FROM care_v_totaal_uren_all uur, care_v_verzorger v, mld_opdruren_kosten ouk, mld_kosten k
|
|
WHERE uur.prs_perslid_key = v.prs_perslid_key
|
|
AND uur.mld_opdr_uren_key = ouk.mld_opdr_uren_key
|
|
AND ouk.mld_kosten_key = k.mld_kosten_key
|
|
AND k.mld_kosten_verwijder IS NULL;
|
|
|
|
|
|
|
|
|
|
|
|
--
|
|
--
|
|
--
|
|
-- Rapportages
|
|
--
|
|
--
|
|
--
|
|
|
|
-- Overzicht van je teamgenoten, die de VERZORGER kan bekijken.
|
|
|
|
CREATE_VIEW( care_v_rap_mijnteamgenoten, 0)
|
|
(
|
|
fclt_3d_discipline_key,
|
|
medewerker,
|
|
mv,
|
|
meisjesnaam,
|
|
adres,
|
|
postcode,
|
|
woonplaats,
|
|
huistelefoon,
|
|
telefoonwerk,
|
|
mobiel,
|
|
email
|
|
)
|
|
AS
|
|
SELECT v.team_key,
|
|
v.prs_verzorger_naam
|
|
|| ','
|
|
|| v.prs_verzorger_voorletters
|
|
|| ' '
|
|
|| v.prs_verzorger_tussenvoegsel
|
|
|| '('
|
|
|| COALESCE (v.prs_verzorger_voornaam, '-')
|
|
|| ')',
|
|
v.verzorger_mv,
|
|
v.verzorger_meisjesnaam,
|
|
v.verzorger_adres || ' ' || v.verzorger_huisnr,
|
|
v.verzorger_postcode,
|
|
v.verzorger_woonplaats,
|
|
v.verzorger_telefoon_thuis,
|
|
v.verzorger_telefoon_werk,
|
|
v.prs_verzorger_mobiel,
|
|
v.prs_verzorger_email
|
|
FROM care_v_verzorger_in_teams v;
|
|
|
|
CREATE_VIEW( care_v_rap_personeel, 0)
|
|
(
|
|
fclt_f_team,
|
|
bsn,
|
|
fclt_f_medewerker,
|
|
fclt_f_mv,
|
|
meisjesnaam,
|
|
geboortedatum,
|
|
leeftijd,
|
|
adres,
|
|
postcode,
|
|
fclt_f_woonplaats,
|
|
huistelefoon,
|
|
telefoonwerk,
|
|
mobiel,
|
|
email,
|
|
contracturen,
|
|
fclt_f_jaar_indienst,
|
|
datum_indienst,
|
|
datum_uitdienst,
|
|
verwijderd
|
|
|
|
)
|
|
AS
|
|
SELECT v.team_naam,
|
|
v.verzorger_bsn,
|
|
v.prs_verzorger_naam
|
|
|| ','
|
|
|| v.prs_verzorger_voorletters
|
|
|| ' '
|
|
|| v.prs_verzorger_tussenvoegsel
|
|
|| '('
|
|
|| COALESCE (v.prs_verzorger_voornaam, '-')
|
|
|| ')',
|
|
v.verzorger_mv,
|
|
v.verzorger_meisjesnaam,
|
|
v.verzorger_geboortedatum,
|
|
decode(verzorger_geboortedatum, null, '', to_number( to_char(sysdate, 'yyyy')) - to_number(substr(verzorger_geboortedatum, 7,4))),
|
|
v.verzorger_adres || ' ' || v.verzorger_huisnr,
|
|
v.verzorger_postcode,
|
|
v.verzorger_woonplaats,
|
|
v.verzorger_telefoon_thuis,
|
|
v.verzorger_telefoon_werk,
|
|
v.prs_verzorger_mobiel,
|
|
v.prs_verzorger_email,
|
|
v.prs_verzorger_dienstverband,
|
|
TO_CHAR(v.prs_verzorger_ingangsdatum,'YYYY'),
|
|
TO_CHAR(v.prs_verzorger_ingangsdatum,'DD-MM-YYYY'),
|
|
TO_CHAR(v.prs_verzorger_einddatum,'DD-MM-YYYY'),
|
|
DECODE(v.prs_verzorger_verwijder, NULL, 'Nee', 'Ja')
|
|
FROM care_v_verzorger_in_teams v;
|
|
|
|
|
|
CREATE_VIEW( care_v_rap_missing_weekbrief, 0)
|
|
(
|
|
fclt_f_weeknr,
|
|
fclt_f_team,
|
|
fclt_3d_discipline_key,
|
|
fclt_f_medewerker,
|
|
indienst,
|
|
uitdienst,
|
|
contracturen,
|
|
meisjesnaam,
|
|
adres,
|
|
postcode,
|
|
woonplaats,
|
|
huistelefoon,
|
|
telefoonwerk,
|
|
mobiel,
|
|
email
|
|
)
|
|
AS
|
|
SELECT TO_CHAR (mw.jaar) || '-' || TO_CHAR (mw.weeknr, '00'),
|
|
v.team_naam,
|
|
v.team_key,
|
|
v.prs_verzorger_naam
|
|
|| ','
|
|
|| v.prs_verzorger_voorletters
|
|
|| ' '
|
|
|| v.prs_verzorger_tussenvoegsel
|
|
|| '('
|
|
|| COALESCE (v.prs_verzorger_voornaam, '-')
|
|
|| ')',
|
|
TO_CHAR(v.prs_verzorger_ingangsdatum, 'dd-mm-yyyy'),
|
|
TO_CHAR(v.prs_verzorger_einddatum,'dd-mm-yyyy'),
|
|
TO_CHAR(prs_verzorger_dienstverband),
|
|
v.verzorger_meisjesnaam,
|
|
v.verzorger_adres || ' ' || v.verzorger_huisnr,
|
|
v.verzorger_postcode,
|
|
v.verzorger_woonplaats,
|
|
v.verzorger_telefoon_thuis,
|
|
v.verzorger_telefoon_werk,
|
|
v.prs_verzorger_mobiel,
|
|
v.prs_verzorger_email
|
|
FROM care_v_verzorger_in_teams v, care_v_missing_weekbrief_all mw
|
|
WHERE v.prs_perslid_key = mw.prs_perslid_key;
|
|
|
|
|
|
CREATE_VIEW( care_v_rap_clienten, 0)
|
|
(
|
|
fclt_f_clientnr,
|
|
fclt_f_bsn,
|
|
fclt_f_naam,
|
|
tussenvoegsel,
|
|
voorletters,
|
|
geboortejaar,
|
|
adres,
|
|
huisnr,
|
|
postcode,
|
|
fclt_f_woonplaats,
|
|
telefoon,
|
|
mobiel,
|
|
bijzonderheden
|
|
)
|
|
AS
|
|
SELECT prs_client_nr, client_bsn, prs_client_naam, prs_client_tussenvoegsel, prs_client_voorletters,
|
|
client_geboortedatum, client_adres, client_huisnr, client_postcode, client_woonplaats,
|
|
client_telefoon_thuis, prs_client_mobiel, client_bijzonderheden
|
|
FROM care_v_client;
|
|
|
|
-- Alle beschikkingen in de toekomst (beschikking_datum_tot >= SYSDATE)
|
|
|
|
CREATE_VIEW( care_v_rap_beschik_aflopend, 0)
|
|
(
|
|
einddatum,
|
|
aantal_dagen_te_gaan,
|
|
looptijd_dagen,
|
|
fclt_f_gemeente,
|
|
melding_nr,
|
|
client,
|
|
bsn,
|
|
product,
|
|
uren_beschikking,
|
|
fclt_3d_discipline_key,
|
|
fclt_f_team
|
|
)
|
|
AS
|
|
SELECT beschikking_datum_tot,
|
|
FLOOR (beschikking_datum_tot - SYSDATE + 1),
|
|
beschikking_datum_tot - beschikking_datum_van + 1,
|
|
gemeente_omschrijving,
|
|
TO_CHAR (mld_melding_key),
|
|
prs_client_naam || ',' || prs_client_voorletters || ' ' || prs_client_tussenvoegsel,
|
|
client_bsn,
|
|
product,
|
|
uren_beschikking,
|
|
ins_discipline_key,
|
|
ins_discipline_omschrijving
|
|
FROM care_v_beschikking_all b1
|
|
WHERE beschikking_datum_tot >= SYSDATE
|
|
AND mld_melding_status NOT IN (1,5,6)
|
|
AND NOT EXISTS (SELECT 'x' FROM care_v_beschikking_all b2
|
|
WHERE b2.prs_client_key = b1.prs_client_key
|
|
AND b2.beschikking_datum_van = b1.beschikking_datum_tot + 1);
|
|
|
|
|
|
|
|
-- Totaliseren van conflict-uren variant A: op periode-nivo de conflicten analyseren...
|
|
|
|
CREATE_VIEW( care_v_rap_conflict_uren_a, 0)
|
|
(
|
|
fclt_f_periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_client,
|
|
beschikking,
|
|
melding,
|
|
uren_periode,
|
|
uren_besteed,
|
|
fclt_f_status
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_client,
|
|
beschikking,
|
|
melding,
|
|
uren_gepland_totaal,
|
|
ROUND(uren_besteed_totaal,2),
|
|
CASE
|
|
WHEN uren_gepland_totaal < ROUND(uren_besteed_totaal,2) THEN 'Te veel uren besteed'
|
|
WHEN uren_gepland_totaal > ROUND(uren_besteed_totaal,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END
|
|
FROM care_v_rap_conflict_uren_1234a
|
|
UNION
|
|
SELECT periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_client,
|
|
beschikking,
|
|
melding,
|
|
uren_gepland_totaal,
|
|
ROUND(uren_besteed_totaal,2),
|
|
CASE
|
|
WHEN uren_gepland_totaal < ROUND(uren_besteed_totaal,2) THEN 'Te veel uren besteed'
|
|
WHEN uren_gepland_totaal > ROUND(uren_besteed_totaal,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END
|
|
FROM care_v_rap_conflict_uren_2345a
|
|
UNION
|
|
SELECT periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_client,
|
|
beschikking,
|
|
melding,
|
|
uren_gepland_totaal,
|
|
ROUND(uren_besteed_totaal,2),
|
|
CASE
|
|
WHEN uren_gepland_totaal < ROUND(uren_besteed_totaal,2) THEN 'Te veel uren besteed'
|
|
WHEN uren_gepland_totaal > ROUND(uren_besteed_totaal,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END
|
|
FROM care_v_rap_conflict_uren_3456a
|
|
UNION
|
|
SELECT periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_client,
|
|
beschikking,
|
|
melding,
|
|
uren_gepland_totaal,
|
|
ROUND(uren_besteed_totaal,2),
|
|
CASE
|
|
WHEN uren_gepland_totaal < ROUND(uren_besteed_totaal,2) THEN 'Te veel uren besteed'
|
|
WHEN uren_gepland_totaal > ROUND(uren_besteed_totaal,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END
|
|
FROM care_v_rap_conflict_uren_4567a;
|
|
|
|
-- Totaliseren van conflict-uren variant B: op periode + week-nivo de conflicten analyseren...
|
|
|
|
CREATE_VIEW( care_v_rap_conflict_uren_b, 0)
|
|
(
|
|
fclt_f_periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_client,
|
|
beschikking,
|
|
melding,
|
|
uren_periode,
|
|
uren_besteed,
|
|
fclt_f_weeknr,
|
|
indicatie,
|
|
bestede_uren_week,
|
|
fclt_f_status,
|
|
fclt_f_weekstatus
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_client,
|
|
beschikking,
|
|
melding,
|
|
uren_gepland_totaal,
|
|
ROUND(uren_besteed_totaal,2),
|
|
fclt_f_jaar_weeknr,
|
|
indicatie_uren,
|
|
ROUND(uren_besteed_week,2),
|
|
CASE
|
|
WHEN uren_gepland_totaal < ROUND(uren_besteed_totaal,2) THEN 'Te veel uren besteed'
|
|
WHEN uren_gepland_totaal > ROUND(uren_besteed_totaal,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END,
|
|
CASE
|
|
WHEN indicatie_uren < ROUND(uren_besteed_week,2) THEN 'Te veel uren besteed'
|
|
WHEN indicatie_uren > ROUND(uren_besteed_week,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END
|
|
FROM care_v_rap_conflict_uren_1234b
|
|
UNION
|
|
SELECT periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_client,
|
|
beschikking,
|
|
melding,
|
|
uren_gepland_totaal,
|
|
ROUND(uren_besteed_totaal,2),
|
|
fclt_f_jaar_weeknr,
|
|
indicatie_uren,
|
|
ROUND(uren_besteed_week,2),
|
|
CASE
|
|
WHEN uren_gepland_totaal < ROUND(uren_besteed_totaal,2) THEN 'Te veel uren besteed'
|
|
WHEN uren_gepland_totaal > ROUND(uren_besteed_totaal,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END,
|
|
CASE
|
|
WHEN indicatie_uren < ROUND(uren_besteed_week,2) THEN 'Te veel uren besteed'
|
|
WHEN indicatie_uren > ROUND(uren_besteed_week,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END
|
|
FROM care_v_rap_conflict_uren_2345b
|
|
UNION
|
|
SELECT periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_client,
|
|
beschikking,
|
|
melding,
|
|
uren_gepland_totaal,
|
|
ROUND(uren_besteed_totaal,2),
|
|
fclt_f_jaar_weeknr,
|
|
indicatie_uren,
|
|
ROUND(uren_besteed_week,2),
|
|
CASE
|
|
WHEN uren_gepland_totaal < ROUND(uren_besteed_totaal,2) THEN 'Te veel uren besteed'
|
|
WHEN uren_gepland_totaal > ROUND(uren_besteed_totaal,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END,
|
|
CASE
|
|
WHEN indicatie_uren < ROUND(uren_besteed_week,2) THEN 'Te veel uren besteed'
|
|
WHEN indicatie_uren > ROUND(uren_besteed_week,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END
|
|
FROM care_v_rap_conflict_uren_3456b
|
|
UNION
|
|
SELECT periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_client,
|
|
beschikking,
|
|
melding,
|
|
uren_gepland_totaal,
|
|
ROUND(uren_besteed_totaal,2),
|
|
fclt_f_jaar_weeknr,
|
|
indicatie_uren,
|
|
ROUND(uren_besteed_week,2),
|
|
CASE
|
|
WHEN uren_gepland_totaal < ROUND(uren_besteed_totaal,2) THEN 'Te veel uren besteed'
|
|
WHEN uren_gepland_totaal > ROUND(uren_besteed_totaal,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END,
|
|
CASE
|
|
WHEN indicatie_uren < ROUND(uren_besteed_week,2) THEN 'Te veel uren besteed'
|
|
WHEN indicatie_uren > ROUND(uren_besteed_week,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END
|
|
FROM care_v_rap_conflict_uren_4567b;
|
|
|
|
|
|
-- Totaliseren van conflict-uren variant C: op periode + week + verzorger -nivo de conflicten analyseren...
|
|
|
|
CREATE_VIEW( care_v_rap_conflict_uren_c, 0)
|
|
(
|
|
fclt_f_periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_client,
|
|
beschikking,
|
|
melding,
|
|
uren_periode,
|
|
uren_besteed,
|
|
fclt_f_weeknr,
|
|
fclt_f_verzorger,
|
|
indicatie,
|
|
bestede_uren_week,
|
|
fclt_f_status,
|
|
fclt_f_weekstatus
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_client,
|
|
beschikking,
|
|
melding,
|
|
uren_gepland_totaal,
|
|
ROUND(uren_besteed_totaal,2),
|
|
fclt_f_jaar_weeknr,
|
|
fclt_f_verzorger,
|
|
indicatie_uren,
|
|
ROUND(uren_besteed_week,2),
|
|
CASE
|
|
WHEN uren_gepland_totaal < ROUND(uren_besteed_totaal,2) THEN 'Te veel uren besteed'
|
|
WHEN uren_gepland_totaal > ROUND(uren_besteed_totaal,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END,
|
|
CASE
|
|
WHEN indicatie_uren < ROUND(uren_besteed_week,2) THEN 'Te veel uren besteed'
|
|
WHEN indicatie_uren > ROUND(uren_besteed_week,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END
|
|
FROM care_v_rap_conflict_uren_1234c
|
|
UNION
|
|
SELECT periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_client,
|
|
beschikking,
|
|
melding,
|
|
uren_gepland_totaal,
|
|
ROUND(uren_besteed_totaal,2),
|
|
fclt_f_jaar_weeknr,
|
|
fclt_f_verzorger,
|
|
indicatie_uren,
|
|
ROUND(uren_besteed_week,2),
|
|
CASE
|
|
WHEN uren_gepland_totaal < ROUND(uren_besteed_totaal,2) THEN 'Te veel uren besteed'
|
|
WHEN uren_gepland_totaal > ROUND(uren_besteed_totaal,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END,
|
|
CASE
|
|
WHEN indicatie_uren < ROUND(uren_besteed_week,2) THEN 'Te veel uren besteed'
|
|
WHEN indicatie_uren > ROUND(uren_besteed_week,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END
|
|
FROM care_v_rap_conflict_uren_2345c
|
|
UNION
|
|
SELECT periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_client,
|
|
beschikking,
|
|
melding,
|
|
uren_gepland_totaal,
|
|
ROUND(uren_besteed_totaal,2),
|
|
fclt_f_jaar_weeknr,
|
|
fclt_f_verzorger,
|
|
indicatie_uren,
|
|
ROUND(uren_besteed_week,2),
|
|
CASE
|
|
WHEN uren_gepland_totaal < ROUND(uren_besteed_totaal,2) THEN 'Te veel uren besteed'
|
|
WHEN uren_gepland_totaal > ROUND(uren_besteed_totaal,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END,
|
|
CASE
|
|
WHEN indicatie_uren < ROUND(uren_besteed_week,2) THEN 'Te veel uren besteed'
|
|
WHEN indicatie_uren > ROUND(uren_besteed_week,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END
|
|
FROM care_v_rap_conflict_uren_3456c
|
|
UNION
|
|
SELECT periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_client,
|
|
beschikking,
|
|
melding,
|
|
uren_gepland_totaal,
|
|
ROUND(uren_besteed_totaal,2),
|
|
fclt_f_jaar_weeknr,
|
|
fclt_f_verzorger,
|
|
indicatie_uren,
|
|
ROUND(uren_besteed_week,2),
|
|
CASE
|
|
WHEN uren_gepland_totaal < ROUND(uren_besteed_totaal,2) THEN 'Te veel uren besteed'
|
|
WHEN uren_gepland_totaal > ROUND(uren_besteed_totaal,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END,
|
|
CASE
|
|
WHEN indicatie_uren < ROUND(uren_besteed_week,2) THEN 'Te veel uren besteed'
|
|
WHEN indicatie_uren > ROUND(uren_besteed_week,2) THEN 'Te weinig uren besteed'
|
|
ELSE 'OKEE'
|
|
END
|
|
FROM care_v_rap_conflict_uren_4567c;
|
|
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
-- factuur ---factuur----factuur-----factuur----factuur----factuur----factuur----factuur----factuur----factuur---factuur---factuur--factuur--factuur------------------------
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
-- Periodetabel van 2 jaar in het verleden t/m heden
|
|
CREATE_VIEW(care_v_periodeweektabel_2jaar, 0)
|
|
(jaar, periode, week, maandag)
|
|
AS
|
|
SELECT
|
|
TO_CHAR (SYSDATE - 7*(LEVEL-1), 'IYYY') jaar,
|
|
LEAST(FLOOR((TO_CHAR (SYSDATE - 7*(LEVEL-1),'IW') - 1) /4) + 1, 13) periode,
|
|
TO_CHAR (SYSDATE - 7*(LEVEL-1), 'IW') week,
|
|
TRUNC (SYSDATE - 7*(LEVEL-1), 'IW') startdatum
|
|
FROM DUAL
|
|
CONNECT BY LEVEL <= 2*52+1;
|
|
|
|
CREATE_VIEW(care_v_periodetabel_2jaar, 0)
|
|
(jaar, periode, jaar_periode, week_van, week_tm, maandag_van, zondag_tm)
|
|
AS
|
|
SELECT DISTINCT jaar, periode, jaar || '-' || LPAD (periode, 2, '0'), MIN(week), MAX(week), MIN(maandag), MAX(maandag)+6
|
|
FROM care_v_periodeweektabel_2jaar
|
|
GROUP BY jaar, periode;
|
|
|
|
|
|
-- Periodetabel van 10 weken in het verleden t/m heden
|
|
CREATE_VIEW(care_v_periodeweektabel, 0)
|
|
(jaar, periode, week, maandag)
|
|
AS
|
|
SELECT
|
|
TO_CHAR (SYSDATE - 7*(LEVEL-1), 'IYYY') jaar,
|
|
LEAST(FLOOR((TO_CHAR (SYSDATE - 7*(LEVEL-1),'IW') - 1) /4) + 1, 13) periode,
|
|
TO_CHAR (SYSDATE - 7*(LEVEL-1), 'IW') week,
|
|
TRUNC (SYSDATE - 7*(LEVEL-1), 'IW') startdatum
|
|
FROM DUAL
|
|
CONNECT BY LEVEL <= 1*10+1;
|
|
|
|
|
|
CREATE_VIEW(care_v_periodetabel, 0)
|
|
(jaar, periode, jaar_periode, week_van, week_tm, maandag_van, zondag_tm)
|
|
AS
|
|
SELECT DISTINCT jaar, periode, jaar || '-' || LPAD (periode, 2, '0'), MIN(week), MAX(week), MIN(maandag), MAX(maandag)+6
|
|
FROM care_v_periodeweektabel
|
|
GROUP BY jaar, periode;
|
|
|
|
|
|
|
|
|
|
--- View die van doen hebben met facturatie en salariering
|
|
--- pb.prs_bedrijf_key=2 is het interne bedrijf 'ATC' (WZA-code is hier geregistreerd in lev. nr)
|
|
-- ud.fac_usrdata_key = 48 is het record/instelling voor clientnr: prs_perslid_key of prs_perslid_nr.
|
|
|
|
CREATE_VIEW( care_v_tmp2_factuur_uren, 0)
|
|
(
|
|
periode,
|
|
periode_nr,
|
|
wzacode,
|
|
prs_bedrijf_naam,
|
|
prs_bedrijf_post_adres,
|
|
prs_bedrijf_post_postcode,
|
|
prs_bedrijf_post_plaats,
|
|
prs_bedrijf_kvk,
|
|
prs_bedrijf_bankrekeningnr,
|
|
prs_bedrijf_contact_persoon,
|
|
prs_bedrijf_contact_telefoon,
|
|
prs_bedrijf_contact_fax,
|
|
prs_bedrijf_email,
|
|
prs_bedrijf_factnr_infix,
|
|
melding,
|
|
gemeente,
|
|
gemeente_code,
|
|
gemeente_post_adres,
|
|
gemeente_post_postcode,
|
|
gemeente_post_plaats,
|
|
gemeente_contactpersoon,
|
|
gemeente_factnr_infix,
|
|
gemeente_factnr_suffix,
|
|
gemeente_hv1_code,
|
|
gemeente_hv2_code,
|
|
gemeente_veiling,
|
|
gemeente_budget,
|
|
gemeente_ob,
|
|
beschikkingsnr,
|
|
beschikking_datum_van,
|
|
beschikking_datum_tot,
|
|
bsn_client,
|
|
client_nr,
|
|
client,
|
|
client2,
|
|
client_voorletters,
|
|
client_tussenvoegsel,
|
|
client_naam,
|
|
client_meisjesnaam,
|
|
client_mv,
|
|
prs_client_email,
|
|
client_contactpersonen,
|
|
prs_client_cak_actie,
|
|
client_geboortedatum,
|
|
client_adres,
|
|
client_huisnr,
|
|
client_postcode,
|
|
client_woonplaats,
|
|
client_telefoon_thuis,
|
|
prs_client_mobiel,
|
|
client_bijzonderheden,
|
|
indicatie_uren,
|
|
pgb,
|
|
product,
|
|
tarief,
|
|
beschikking_omschr,
|
|
alt_hv1,
|
|
alt_hv2,
|
|
alt_hv3,
|
|
verzorger_key,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
prs_perslid_dienstverband,
|
|
jaar,
|
|
weeknr,
|
|
datum,
|
|
week_uren_gepland,
|
|
week_uren_besteed
|
|
)
|
|
AS
|
|
SELECT uur.jaar || '-' || LPAD (uur.periodenr, 2, '0'),
|
|
uur.periodenr,
|
|
pb.prs_leverancier_nr,
|
|
pb.prs_bedrijf_naam,
|
|
pb.prs_bedrijf_post_adres,
|
|
pb.prs_bedrijf_post_postcode,
|
|
pb.prs_bedrijf_post_plaats,
|
|
pb.prs_overeenkomst_nr,
|
|
pb.prs_bedrijf_opmerking,
|
|
pb.prs_bedrijf_contact_persoon,
|
|
pb.prs_bedrijf_contact_telefoon,
|
|
pb.prs_bedrijf_contact_fax,
|
|
pb.prs_bedrijf_email,
|
|
pb.prs_bedrijf_telefoon2,
|
|
b.mld_melding_key,
|
|
b.gemeente_omschrijving,
|
|
b.gemeente_code,
|
|
b.gemeente_post_adres,
|
|
b.gemeente_post_postcode,
|
|
b.gemeente_post_plaats,
|
|
b.gemeente_contactpersoon,
|
|
b.gemeente_factnr_infix,
|
|
b.gemeente_factnr_suffix,
|
|
b.gemeente_hv1_code,
|
|
b.gemeente_hv2_code,
|
|
b.gemeente_veiling,
|
|
b.gemeente_budget,
|
|
b.gemeente_ob,
|
|
b.beschikking_nr,
|
|
b.beschikking_datum_van,
|
|
b.beschikking_datum_tot,
|
|
b.client_bsn,
|
|
DECODE (ud.fac_usrdata_omschr,
|
|
1, b.prs_client_nr,
|
|
b.prs_client_key),
|
|
b.prs_client_naam
|
|
|| ','
|
|
|| b.prs_client_voorletters
|
|
|| ' '
|
|
|| b.prs_client_tussenvoegsel,
|
|
b.prs_client_voorletters
|
|
|| ' '
|
|
|| b.prs_client_tussenvoegsel
|
|
|| ' '
|
|
|| b.prs_client_naam,
|
|
b.prs_client_voorletters,
|
|
b.prs_client_tussenvoegsel,
|
|
b.prs_client_naam,
|
|
b.client_meisjesnaam,
|
|
b.client_mv,
|
|
b.prs_client_email,
|
|
b.client_contactpersonen,
|
|
b.prs_client_cak_actie,
|
|
b.client_geboortedatum,
|
|
b.client_adres,
|
|
b.client_huisnr,
|
|
b.client_postcode,
|
|
b.client_woonplaats,
|
|
b.client_telefoon_thuis,
|
|
b.prs_client_mobiel,
|
|
b.client_bijzonderheden,
|
|
b.uren_beschikking,
|
|
b.pgb,
|
|
b.product,
|
|
CASE
|
|
WHEN b.pgb = 1 THEN b.pgb_tarief
|
|
WHEN b.gemeente_veiling = 1 THEN b.pgb_tarief
|
|
ELSE gt.tarief
|
|
END,
|
|
b.beschikking_omschr,
|
|
CASE
|
|
WHEN b.alt_hv1_start <=
|
|
(uur.jaar || LPAD (uur.periodenr, 2, '0'))
|
|
THEN
|
|
b.alt_hv1
|
|
ELSE
|
|
NULL
|
|
END
|
|
alt_hv1,
|
|
CASE
|
|
WHEN b.alt_hv2_start <=
|
|
(uur.jaar || LPAD (uur.periodenr, 2, '0'))
|
|
THEN
|
|
b.alt_hv2
|
|
ELSE
|
|
NULL
|
|
END
|
|
alt_hv2,
|
|
CASE
|
|
WHEN b.alt_hv3_start <=
|
|
(uur.jaar || LPAD (uur.periodenr, 2, '0'))
|
|
THEN
|
|
b.alt_hv3
|
|
ELSE
|
|
NULL
|
|
END
|
|
alt_hv3,
|
|
uur.prs_perslid_key,
|
|
uur.bsn,
|
|
uur.nr_verzorger,
|
|
uur.prs_perslid_naam
|
|
|| ','
|
|
|| uur.prs_perslid_voorletters
|
|
|| ' '
|
|
|| uur.prs_perslid_tussenvoegsel,
|
|
uur.prs_perslid_dienstverband,
|
|
uur.jaar,
|
|
uur.weeknr,
|
|
uur.datum_gewerkt,
|
|
uur.uren_opdracht,
|
|
uur.uren_besteed
|
|
FROM care_v_beschikking_all b,
|
|
care_v_bestede_uren_all uur,
|
|
prs_bedrijf pb,
|
|
fac_usrdata ud,
|
|
care_v_gemeente_tarieven gt
|
|
WHERE uur.mld_melding_key = b.mld_melding_key
|
|
AND uur.uren_status = 3
|
|
AND pb.prs_bedrijf_key = 2
|
|
AND ud.fac_usrdata_key = 48
|
|
AND gt.alg_locatie_key = b.gemeente_key
|
|
AND gt.product_code = b.product_code
|
|
AND COALESCE (gt.duedatum, SYSDATE) =
|
|
(SELECT COALESCE (MIN (gt2.duedatum), SYSDATE)
|
|
FROM care_v_gemeente_tarieven gt2
|
|
WHERE COALESCE (gt2.duedatum, SYSDATE + 999) >=
|
|
uur.datum_gewerkt
|
|
AND gt2.alg_locatie_key = b.gemeente_key
|
|
AND gt2.product_code = b.product_code);
|
|
|
|
CREATE_VIEW(care_v_gemeente_fact2_uren, 0)
|
|
AS
|
|
SELECT * FROM care_v_tmp2_factuur_uren
|
|
WHERE pgb IS NULL;
|
|
|
|
CREATE_VIEW(care_v_pgb_fact2_uren, 0)
|
|
AS
|
|
SELECT * FROM care_v_tmp2_factuur_uren
|
|
WHERE pgb = 1;
|
|
|
|
|
|
|
|
CREATE_VIEW( care_v_rap2_factuur_voorblad_a, 0)
|
|
(
|
|
fclt_f_periode,
|
|
periode_nr,
|
|
factuurnr,
|
|
factuurdatum,
|
|
wzacode,
|
|
prs_bedrijf_post_adres,
|
|
prs_bedrijf_post_postcode,
|
|
prs_bedrijf_post_plaats,
|
|
prs_bedrijf_kvk,
|
|
prs_bedrijf_bankrekeningnr,
|
|
prs_bedrijf_contact_persoon,
|
|
prs_bedrijf_contact_telefoon,
|
|
prs_bedrijf_contact_fax,
|
|
prs_bedrijf_email,
|
|
prs_bedrijf_factnr_infix,
|
|
fclt_f_gemeente,
|
|
gemeente_code,
|
|
gemeente_post_adres,
|
|
gemeente_post_postcode,
|
|
gemeente_post_plaats,
|
|
gemeente_contactpersoon,
|
|
gemeente_factnr_infix,
|
|
gemeente_factnr_suffix,
|
|
product,
|
|
tarief,
|
|
jaar,
|
|
week_uren_besteed,
|
|
subtotaal
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
MIN(periode_nr),
|
|
MIN(jaar) || COALESCE(MIN(TO_CHAR(gemeente_factnr_infix)), MIN(prs_bedrijf_factnr_infix)) || MIN(periode_nr) || COALESCE(MIN(TO_CHAR(gemeente_factnr_suffix)), MIN(gemeente_code)),
|
|
TO_CHAR (SYSDATE, 'DD-MM-YYYY'),
|
|
MIN(wzacode),
|
|
MIN(prs_bedrijf_post_adres),
|
|
MIN(prs_bedrijf_post_postcode),
|
|
MIN(prs_bedrijf_post_plaats),
|
|
MIN(prs_bedrijf_kvk),
|
|
MIN(prs_bedrijf_bankrekeningnr),
|
|
MIN(prs_bedrijf_contact_persoon),
|
|
MIN(prs_bedrijf_contact_telefoon),
|
|
MIN(prs_bedrijf_contact_fax),
|
|
MIN(prs_bedrijf_email),
|
|
MIN(prs_bedrijf_factnr_infix),
|
|
gemeente,
|
|
MIN(gemeente_code),
|
|
MIN(gemeente_post_adres),
|
|
MIN(gemeente_post_postcode),
|
|
MIN(gemeente_post_plaats),
|
|
MIN(gemeente_contactpersoon),
|
|
MIN(gemeente_factnr_infix),
|
|
MIN(gemeente_factnr_suffix),
|
|
product,
|
|
MIN(tarief),
|
|
MIN(jaar),
|
|
ROUND(SUM(week_uren_besteed),2),
|
|
ROUND (MIN (tarief) * SUM (week_uren_besteed), 2)
|
|
FROM care_v_gemeente_fact2_uren
|
|
GROUP BY periode, gemeente, product;
|
|
|
|
|
|
-- Factuur voor PGB clienten, zonder 6 weken berperking
|
|
CREATE_VIEW( care_v_rap2_factuur_pgb_a, 0)
|
|
(
|
|
fclt_f_periode,
|
|
periode_nr,
|
|
factuurdatum,
|
|
wzacode,
|
|
prs_bedrijf_post_adres,
|
|
prs_bedrijf_post_postcode,
|
|
prs_bedrijf_post_plaats,
|
|
prs_bedrijf_kvk,
|
|
prs_bedrijf_bankrekeningnr,
|
|
prs_bedrijf_contact_persoon,
|
|
prs_bedrijf_contact_telefoon,
|
|
prs_bedrijf_contact_fax,
|
|
prs_bedrijf_email,
|
|
prs_bedrijf_factnr_infix,
|
|
gemeente_factnr_infix,
|
|
gemeente_factnr_suffix,
|
|
melding,
|
|
beschikkingsnr,
|
|
bsn_client,
|
|
client_nr,
|
|
client,
|
|
client_adres,
|
|
client_huisnr,
|
|
client_postcode,
|
|
client_woonplaats,
|
|
product,
|
|
tarief,
|
|
beschikking_omschr,
|
|
jaar,
|
|
week_uren_besteed,
|
|
subtotaal
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
MIN(periode_nr),
|
|
TO_CHAR (SYSDATE, 'DD-MM-YYYY'),
|
|
MIN(wzacode),
|
|
MIN(prs_bedrijf_post_adres),
|
|
MIN(prs_bedrijf_post_postcode),
|
|
MIN(prs_bedrijf_post_plaats),
|
|
MIN(prs_bedrijf_kvk),
|
|
MIN(prs_bedrijf_bankrekeningnr),
|
|
MIN(prs_bedrijf_contact_persoon),
|
|
MIN(prs_bedrijf_contact_telefoon),
|
|
MIN(prs_bedrijf_contact_fax),
|
|
MIN(prs_bedrijf_email),
|
|
MIN(prs_bedrijf_factnr_infix),
|
|
MIN(gemeente_factnr_infix),
|
|
MIN(gemeente_factnr_suffix),
|
|
melding,
|
|
MIN(beschikkingsnr),
|
|
bsn_client,
|
|
MIN(client_nr),
|
|
MIN(client2),
|
|
MIN(client_adres),
|
|
MIN(client_huisnr),
|
|
MIN(client_postcode),
|
|
MIN(client_woonplaats),
|
|
MIN(product),
|
|
MIN(tarief),
|
|
MIN(beschikking_omschr),
|
|
MIN(jaar),
|
|
ROUND(SUM(week_uren_besteed),2),
|
|
ROUND (MIN (tarief) * SUM (week_uren_besteed), 2)
|
|
FROM care_v_pgb_fact2_uren
|
|
GROUP BY periode, bsn_client, melding;
|
|
|
|
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_a, 0)
|
|
(
|
|
fclt_f_periode,
|
|
factuurdatum,
|
|
wzacode,
|
|
fclt_f_gemeente,
|
|
beschikkingsnr,
|
|
bsn_client,
|
|
client,
|
|
geboortedatum,
|
|
uren_periode,
|
|
indicatie_uren,
|
|
product,
|
|
tarief,
|
|
uren,
|
|
minuten,
|
|
bedrag_euro,
|
|
bedrag_centen
|
|
)
|
|
AS
|
|
SELECT fu.periode,
|
|
TO_CHAR (SYSDATE, 'DD-MM-YYYY'),
|
|
MIN (wzacode),
|
|
fu.gemeente,
|
|
fu.beschikkingsnr,
|
|
fu.bsn_client,
|
|
MIN (fu.client),
|
|
MIN (fu.client_geboortedatum),
|
|
MIN(bp.uren_beschikking),
|
|
decode(MIN(indicatie_uren)-MAX(indicatie_uren),0, to_char(MIN(indicatie_uren)), MIN(indicatie_uren) || ' tot ' || MAX(indicatie_uren)),
|
|
fu.product,
|
|
MIN (fu.tarief),
|
|
ROUND(SUM(fu.week_uren_besteed),2),
|
|
ROUND (60 * SUM(fu.week_uren_besteed)),
|
|
ROUND (MIN (fu.tarief) * SUM(fu.week_uren_besteed), 2),
|
|
ROUND (100 * MIN (fu.tarief) * SUM(fu.week_uren_besteed))
|
|
FROM care_t_beschikk_x_periodetabel bp,
|
|
care_v_gemeente_fact2_uren fu
|
|
WHERE bp.jaar = fu.jaar
|
|
AND bp.periode = fu.periode_nr
|
|
AND bp.product= fu.product
|
|
AND bp.bsn = fu.bsn_client
|
|
GROUP BY fu.periode, fu.gemeente, fu.beschikkingsnr, fu.bsn_client, fu.product;
|
|
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_a2, 0)
|
|
(
|
|
fclt_f_periode,
|
|
factuurdatum,
|
|
wzacode,
|
|
fclt_f_gemeente,
|
|
beschikkingsnr,
|
|
bsn_client,
|
|
client,
|
|
geboortedatum,
|
|
indicatie_uren,
|
|
product,
|
|
tarief,
|
|
uren,
|
|
minuten,
|
|
bedrag_euro,
|
|
bedrag_centen
|
|
)
|
|
AS
|
|
SELECT fu.periode,
|
|
TO_CHAR (SYSDATE, 'DD-MM-YYYY'),
|
|
MIN (wzacode),
|
|
fu.gemeente,
|
|
fu.beschikkingsnr,
|
|
fu.bsn_client,
|
|
MIN (fu.client),
|
|
MIN (fu.client_geboortedatum),
|
|
decode(MIN(indicatie_uren)-MAX(indicatie_uren),0, to_char(MIN(indicatie_uren)), MIN(indicatie_uren) || ' tot ' || MAX(indicatie_uren)),
|
|
fu.product,
|
|
MIN (fu.tarief),
|
|
ROUND(SUM(fu.week_uren_besteed),2),
|
|
ROUND (60 * SUM(fu.week_uren_besteed)),
|
|
ROUND (MIN (fu.tarief) * SUM(fu.week_uren_besteed), 2),
|
|
ROUND (100 * MIN (fu.tarief) * SUM(fu.week_uren_besteed))
|
|
FROM care_v_gemeente_fact2_uren fu
|
|
GROUP BY fu.periode, fu.gemeente, fu.beschikkingsnr, fu.bsn_client, fu.product;
|
|
|
|
|
|
|
|
-- FactuurRapportage view B (postfix B): op per gemeente, op periode/week-nivo de gemaakte uren per beschikking totaliseren...
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_b, 0)
|
|
(
|
|
fclt_f_periode,
|
|
factuurdatum,
|
|
wzacode,
|
|
fclt_f_gemeente,
|
|
beschikkingsnr,
|
|
bsn_client,
|
|
client,
|
|
geboortedatum,
|
|
indicatie_uren,
|
|
product,
|
|
tarief,
|
|
jaar,
|
|
weeknr,
|
|
uren,
|
|
minuten,
|
|
bedrag_euro,
|
|
bedrag_centen
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
TO_CHAR (SYSDATE, 'DD-MM-YYYY'),
|
|
MIN (wzacode),
|
|
gemeente,
|
|
beschikkingsnr,
|
|
f.bsn_client,
|
|
MIN (client),
|
|
MIN (client_geboortedatum),
|
|
MIN(indicatie_uren),
|
|
product,
|
|
MIN (tarief),
|
|
jaar,
|
|
weeknr,
|
|
ROUND(SUM(week_uren_besteed),2),
|
|
ROUND (60 * SUM (week_uren_besteed)),
|
|
ROUND (MIN (tarief) * SUM (week_uren_besteed), 2),
|
|
ROUND (100 * MIN (tarief) * SUM (week_uren_besteed))
|
|
FROM care_v_gemeente_fact2_uren f
|
|
GROUP BY periode, gemeente, beschikkingsnr, f.bsn_client, product, jaar, weeknr;
|
|
|
|
|
|
-- FactuurRapportage view C (postfix C): op per gemeente, op periode/week-nivo/datum de gemaakte uren per beschikking totaliseren...
|
|
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_c, 0)
|
|
(
|
|
fclt_f_periode,
|
|
factuurdatum,
|
|
wzacode,
|
|
fclt_f_gemeente,
|
|
beschikkingsnr,
|
|
bsn_client,
|
|
client,
|
|
geboortedatum,
|
|
indicatie_uren,
|
|
product,
|
|
tarief,
|
|
jaar,
|
|
weeknr,
|
|
datum,
|
|
uren,
|
|
minuten,
|
|
bedrag_euro,
|
|
bedrag_centen
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
TO_CHAR (SYSDATE, 'DD-MM-YYYY'),
|
|
MIN (wzacode),
|
|
gemeente,
|
|
beschikkingsnr,
|
|
f.bsn_client,
|
|
MIN (client),
|
|
MIN (client_geboortedatum),
|
|
MIN (indicatie_uren),
|
|
product,
|
|
MIN (tarief),
|
|
jaar,
|
|
weeknr,
|
|
datum,
|
|
ROUND(SUM(week_uren_besteed),2),
|
|
ROUND (60 * SUM (week_uren_besteed)),
|
|
ROUND (MIN (tarief) * SUM (week_uren_besteed), 2),
|
|
ROUND (100 * MIN (tarief) * SUM (week_uren_besteed))
|
|
FROM care_v_gemeente_fact2_uren f
|
|
GROUP BY periode, gemeente, beschikkingsnr, f.bsn_client, product, jaar, weeknr, datum;
|
|
|
|
|
|
|
|
-- FactuurRapportage view D: op per gemeente per dag, op periode/week/datum-nivo de gemaakte uren per beschikking totaliseren.
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_d, 0)
|
|
(
|
|
fclt_x_periode,
|
|
factuurnummer,
|
|
factuurjaar,
|
|
factuurperiode,
|
|
wzacode,
|
|
fclt_f_gemeente,
|
|
naam_en_voorletters,
|
|
geboortedatum,
|
|
bsn,
|
|
indicatie_startdatum,
|
|
indicatie_einddatum,
|
|
indicatie_uren,
|
|
productcode,
|
|
op_datum,
|
|
weeknr,
|
|
aantal,
|
|
bedrag
|
|
)
|
|
AS
|
|
SELECT f.periode,
|
|
MIN(f.jaar) || COALESCE(MIN(TO_CHAR(gemeente_factnr_infix)), MIN(prs_bedrijf_factnr_infix)) || SUBSTR(f.periode,6,2) || COALESCE(MIN(TO_CHAR(gemeente_factnr_suffix)), MIN(gemeente_code)),
|
|
SUBSTR(f.periode,1,4),
|
|
SUBSTR(f.periode,1,4) || '-' || MIN(pt.week_van) || ' t/m ' || MAX(pt.week_tm),
|
|
MIN (wzacode),
|
|
gemeente,
|
|
MIN (client),
|
|
MIN (client_geboortedatum),
|
|
f.bsn_client,
|
|
MIN(beschikking_datum_van),
|
|
MAX(beschikking_datum_tot),
|
|
MIN(indicatie_uren),
|
|
product,
|
|
datum,
|
|
weeknr,
|
|
ROUND(SUM(week_uren_besteed),2),
|
|
ROUND (MIN (tarief) * SUM (week_uren_besteed), 2)
|
|
FROM care_v_gemeente_fact2_uren f, care_v_periodetabel_2jaar pt
|
|
WHERE f.periode = pt.jaar_periode
|
|
GROUP BY f.periode, gemeente, beschikkingsnr, f.bsn_client, product, f.jaar, weeknr, datum;
|
|
|
|
-- FactuurRapportage view E: per gemeente, op periode-nivo de gemaakte uren per beschikking totaliseren.
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_e, 0)
|
|
(
|
|
fclt_x_periode,
|
|
periode,
|
|
weeknrs,
|
|
factuurnummer,
|
|
wzacode,
|
|
fclt_f_gemeente,
|
|
bsn_client,
|
|
client,
|
|
geboortedatum,
|
|
uren_periode,
|
|
indicatie_uren,
|
|
product,
|
|
tarief,
|
|
uren,
|
|
bedrag_euro
|
|
)
|
|
AS
|
|
SELECT fu.periode,
|
|
SUBSTR(fu.periode,6,2) || '.' || SUBSTR(fu.periode,1,4),
|
|
SUBSTR(fu.periode,1,4) || '-' || MIN(bp.week_van) || ' t/m ' || MAX(bp.week_tm),
|
|
MIN(fu.jaar) || COALESCE(MIN(TO_CHAR(gemeente_factnr_infix)), MIN(prs_bedrijf_factnr_infix)) || SUBSTR(fu.periode,6,2) || COALESCE(MIN(TO_CHAR(gemeente_factnr_suffix)), MIN(gemeente_code)),
|
|
MIN (wzacode),
|
|
fu.gemeente,
|
|
fu.bsn_client,
|
|
MIN (fu.client),
|
|
MIN (fu.client_geboortedatum),
|
|
MIN(bp.uren_beschikking),
|
|
decode(MIN(indicatie_uren)-MAX(indicatie_uren),0, to_char(MIN(indicatie_uren)), MIN(indicatie_uren) || ' tot ' || MAX(indicatie_uren)),
|
|
fu.product,
|
|
MIN (fu.tarief),
|
|
ROUND(SUM(fu.week_uren_besteed),2),
|
|
ROUND (MIN (fu.tarief) * SUM(fu.week_uren_besteed), 2)
|
|
FROM CARE_T_BESCHIKK_X_PERIODETABEL bp,
|
|
care_v_gemeente_fact2_uren fu
|
|
WHERE bp.jaar = fu.jaar
|
|
AND bp.periode = fu.periode_nr
|
|
AND bp.product= fu.product
|
|
AND bp.bsn = fu.bsn_client
|
|
GROUP BY fu.periode, fu.gemeente, fu.beschikkingsnr, fu.bsn_client, fu.product;
|
|
|
|
-- FactuurRapportage view F: op per gemeente per dag, op periode/week/datum-nivo de gemaakte uren per beschikking totaliseren.
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_f, 0)
|
|
(
|
|
fclt_x_periode,
|
|
fclt_x_gemeente,
|
|
periode,
|
|
weeknr,
|
|
product,
|
|
client,
|
|
adres,
|
|
woonplaats,
|
|
geboortedatum,
|
|
bsn,
|
|
datum,
|
|
tijdsduur,
|
|
tijdseenheid,
|
|
totaal_bedrag
|
|
)
|
|
AS
|
|
SELECT f.periode,
|
|
f.gemeente,
|
|
SUBSTR(f.periode,1,4) || '.' || SUBSTR(f.periode,6,2),
|
|
weeknr,
|
|
product,
|
|
MIN (client),
|
|
MIN (client_adres) || ' ' || MIN(client_huisnr),
|
|
MIN (client_woonplaats),
|
|
MIN (client_geboortedatum),
|
|
f.bsn_client,
|
|
datum,
|
|
ROUND(SUM(week_uren_besteed),2),
|
|
'uur',
|
|
ROUND (MIN (tarief) * SUM (week_uren_besteed), 2)
|
|
FROM care_v_gemeente_fact2_uren f
|
|
GROUP BY f.periode, gemeente, beschikkingsnr, f.bsn_client, product, weeknr, datum;
|
|
|
|
|
|
-- FactuurRapportage view G: op per gemeente per dag, op periode-nivo de gemaakte uren per beschikking totaliseren.
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_g, 0)
|
|
(
|
|
fclt_x_periode,
|
|
fclt_x_gemeente,
|
|
hide_f_nr,
|
|
record_start,
|
|
wzacode,
|
|
factuurnummer,
|
|
code,
|
|
bsn,
|
|
geboortedatum,
|
|
van,
|
|
tot,
|
|
product,
|
|
productcode,
|
|
minuten,
|
|
centen,
|
|
btw,
|
|
subtotaal,
|
|
record_einde
|
|
)
|
|
AS
|
|
|
|
SELECT f.periode,
|
|
f.gemeente,
|
|
1,
|
|
'V',
|
|
MIN (wzacode),
|
|
COALESCE(MIN(TO_CHAR(gemeente_factnr_infix)), MIN(prs_bedrijf_factnr_infix)),
|
|
'F',
|
|
SUBSTR(f.periode,1,4) || SUBSTR(f.periode,6,2),
|
|
MIN(f.jaar) || COALESCE(MIN(TO_CHAR(gemeente_factnr_infix)), MIN(prs_bedrijf_factnr_infix)) || SUBSTR(f.periode,6,2) || COALESCE(MIN(TO_CHAR(gemeente_factnr_suffix)), MIN(gemeente_code)),
|
|
'',
|
|
'',
|
|
'',
|
|
'',
|
|
'',
|
|
'',
|
|
'',
|
|
'',
|
|
''
|
|
FROM care_v_gemeente_fact2_uren f
|
|
GROUP BY f.periode, f.gemeente
|
|
UNION ALL
|
|
SELECT f.periode,
|
|
f.gemeente,
|
|
2,
|
|
'D',
|
|
MIN (wzacode),
|
|
MIN(f.jaar) || COALESCE(MIN(TO_CHAR(gemeente_factnr_infix)), MIN(prs_bedrijf_factnr_infix)) || SUBSTR(f.periode,6,2) || COALESCE(MIN(TO_CHAR(gemeente_factnr_suffix)), MIN(gemeente_code)),
|
|
CASE
|
|
WHEN MIN(pt.maandag_van) <= MIN(beschikking_datum_van) THEN 'S'
|
|
WHEN MIN(pt.zondag_tm) >= MIN(beschikking_datum_tot) THEN 'E'
|
|
ELSE 'P'
|
|
END,
|
|
f.bsn_client,
|
|
MIN (client_geboortedatum),
|
|
TO_CHAR(GREATEST(MIN(pt.maandag_van), MIN(beschikking_datum_van)),'DD-MM-YYYY'),
|
|
TO_CHAR(LEAST(MIN(pt.zondag_tm), MIN(beschikking_datum_tot)),'DD-MM-YYYY'),
|
|
'HV',
|
|
DECODE(product, 'HV1', TO_CHAR(COALESCE(MIN(gemeente_hv1_code), 1)), 'HV2', TO_CHAR(COALESCE(MIN(gemeente_hv2_code),2)), 'HV3', TO_CHAR(COALESCE(MIN(gemeente_hv2_code),2)+1), ''),
|
|
TO_CHAR(ROUND (60 * SUM (week_uren_besteed))),
|
|
TO_CHAR(ROUND (100 * MIN (tarief) * SUM (week_uren_besteed))),
|
|
'0',
|
|
TO_CHAR(ROUND (100 * MIN (tarief) * SUM (week_uren_besteed))),
|
|
'D'
|
|
FROM care_v_gemeente_fact2_uren f, care_v_periodetabel_2jaar pt
|
|
WHERE f.periode = pt.jaar_periode
|
|
GROUP BY f.periode, gemeente, beschikkingsnr, f.bsn_client, product
|
|
UNION ALL
|
|
SELECT f.periode,
|
|
f.gemeente,
|
|
3,
|
|
'S',
|
|
MIN (wzacode),
|
|
COALESCE(MIN(TO_CHAR(gemeente_factnr_infix)), MIN(prs_bedrijf_factnr_infix)),
|
|
'F',
|
|
SUBSTR(f.periode,1,4) || SUBSTR(f.periode,6,2),
|
|
MIN(f.jaar) || COALESCE(MIN(TO_CHAR(gemeente_factnr_infix)), MIN(prs_bedrijf_factnr_infix)) || SUBSTR(f.periode,6,2) || COALESCE(MIN(TO_CHAR(gemeente_factnr_suffix)), MIN(gemeente_code)),
|
|
'',
|
|
'',
|
|
'',
|
|
'',
|
|
'',
|
|
'',
|
|
'',
|
|
'',
|
|
'D'
|
|
FROM care_v_gemeente_fact2_uren f
|
|
GROUP BY f.periode, f.gemeente;
|
|
|
|
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_i, 0)
|
|
( fclt_x_periode,
|
|
fclt_x_gemeente,
|
|
num_bsn,
|
|
num_pers,
|
|
naa_rel_ac,
|
|
naa_rel_vl,
|
|
dat_geb,
|
|
num_klant,
|
|
cod_agb,
|
|
num_contr,
|
|
num_fact,
|
|
srt_voorz,
|
|
num_voorz,
|
|
cod_voorz,
|
|
dat_begin,
|
|
dat_eind,
|
|
bed_huur,
|
|
num_art,
|
|
oms_merk,
|
|
dat_van,
|
|
dat_tot,
|
|
cod_per,
|
|
dat_reg,
|
|
aant_u,
|
|
bed_face,
|
|
srt_btw,
|
|
bed_btw,
|
|
bed_faci,
|
|
srt_bed,
|
|
cod_stakl,
|
|
cod_stabt,
|
|
bed_bet,
|
|
cod_bet)
|
|
AS
|
|
SELECT f.periode,
|
|
f.gemeente,
|
|
f.bsn_client,
|
|
'',
|
|
MIN(f.client_naam) || ',' || MIN(f.client_tussenvoegsel),
|
|
MIN(f.client_voorletters),
|
|
MIN (client_geboortedatum),
|
|
'',
|
|
MIN (wzacode),
|
|
'',
|
|
MIN(f.jaar) || COALESCE(MIN(TO_CHAR(gemeente_factnr_infix)), MIN(prs_bedrijf_factnr_infix)) || SUBSTR(f.periode,6,2) || COALESCE(MIN(TO_CHAR(gemeente_factnr_suffix)), MIN(gemeente_code)),
|
|
'',
|
|
'',
|
|
product,
|
|
TO_CHAR(MIN(beschikking_datum_van),'DD-MM-YYYY'),
|
|
TO_CHAR(MIN(beschikking_datum_tot),'DD-MM-YYYY'),
|
|
'',
|
|
'',
|
|
'',
|
|
TO_CHAR(MIN(pt.maandag_van),'DD-MM-YYYY'),
|
|
TO_CHAR(MIN(pt.zondag_tm),'DD-MM-YYYY'),
|
|
'',
|
|
'',
|
|
ROUND(SUM(f.week_uren_besteed),2),
|
|
'',
|
|
'0',
|
|
'',
|
|
ROUND (MIN (f.tarief) * SUM(f.week_uren_besteed), 2),
|
|
'',
|
|
'',
|
|
'',
|
|
'',
|
|
''
|
|
FROM care_v_gemeente_fact2_uren f, care_v_periodetabel_2jaar pt
|
|
WHERE f.periode = pt.jaar_periode
|
|
GROUP BY f.periode, gemeente, beschikkingsnr, f.bsn_client, product;
|
|
|
|
|
|
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_j, 0)
|
|
(
|
|
fclt_x_periode,
|
|
fclt_x_gemeente,
|
|
factuurnr,
|
|
periode_nr,
|
|
periode_jaar,
|
|
achternaam,
|
|
initialen,
|
|
geboortedatum,
|
|
clientnummer,
|
|
bsn,
|
|
straat,
|
|
huisnummer,
|
|
postcode,
|
|
plaats,
|
|
soort_hh,
|
|
ind_startdatum,
|
|
ind_einddatum,
|
|
uren,
|
|
tarief,
|
|
totaal
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
gemeente,
|
|
MIN(jaar) || COALESCE(MIN(TO_CHAR(gemeente_factnr_infix)), MIN(prs_bedrijf_factnr_infix)) || SUBSTR(periode,6,2) || COALESCE(MIN(TO_CHAR(gemeente_factnr_suffix)), MIN(gemeente_code)),
|
|
SUBSTR(periode,6,2),
|
|
SUBSTR(periode,1,4),
|
|
MIN(client_naam) || ',' || MIN(client_tussenvoegsel),
|
|
MIN(client_voorletters),
|
|
MIN (client_geboortedatum),
|
|
'',
|
|
bsn_client,
|
|
MIN (client_adres),
|
|
MIN(client_huisnr),
|
|
MIN (client_postcode),
|
|
MIN (client_woonplaats),
|
|
product,
|
|
TO_CHAR(MIN(beschikking_datum_van),'DD-MM-YYYY'),
|
|
TO_CHAR(MIN(beschikking_datum_tot),'DD-MM-YYYY'),
|
|
ROUND(SUM(week_uren_besteed),2),
|
|
MIN (tarief),
|
|
ROUND (MIN (tarief) * SUM(week_uren_besteed), 2)
|
|
FROM care_v_gemeente_fact2_uren fu
|
|
GROUP BY fu.periode, fu.gemeente, fu.beschikkingsnr, fu.bsn_client, fu.product;
|
|
|
|
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_k, 0)
|
|
(
|
|
fclt_x_periode,
|
|
fclt_x_gemeente,
|
|
dossiernr,
|
|
voorz,
|
|
begindatum_1,
|
|
einddatum_1,
|
|
bedrag,
|
|
soort_hulp,
|
|
gelev_uren,
|
|
begindatum,
|
|
einddatum,
|
|
indicatie_pw_in_min,
|
|
begindatum_2,
|
|
einddatum_2,
|
|
bsn,
|
|
clientnr,
|
|
naam,
|
|
geb_datum,
|
|
aanbieder,
|
|
begin_voorz,
|
|
eind_voorz
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
gemeente,
|
|
beschikkingsnr,
|
|
DECODE(product, 'HV1', TO_CHAR(COALESCE(MIN(gemeente_hv1_code), 1)), 'HV2', TO_CHAR(COALESCE(MIN(gemeente_hv2_code),2)), 'HV3', TO_CHAR(COALESCE(MIN(gemeente_hv2_code),2)+1), ''),
|
|
'',
|
|
'',
|
|
ROUND (MIN (tarief) * SUM(week_uren_besteed), 2),
|
|
product,
|
|
ROUND(SUM(week_uren_besteed),2),
|
|
TO_CHAR(MIN(beschikking_datum_van),'DD-MM-YYYY'),
|
|
TO_CHAR(MIN(beschikking_datum_tot),'DD-MM-YYYY'),
|
|
decode(MIN(indicatie_uren)-MAX(indicatie_uren),0, to_char(60*MIN(indicatie_uren)), 60 * MIN(indicatie_uren) || ' tot ' || 60 * MAX(indicatie_uren)),
|
|
TO_CHAR(MIN(beschikking_datum_van),'DD-MM-YYYY'),
|
|
TO_CHAR(MIN(beschikking_datum_tot),'DD-MM-YYYY'),
|
|
bsn_client,
|
|
'',
|
|
MIN(client),
|
|
MIN (client_geboortedatum),
|
|
'',
|
|
'',
|
|
''
|
|
FROM care_v_gemeente_fact2_uren fu
|
|
GROUP BY fu.periode, fu.gemeente, fu.beschikkingsnr, fu.bsn_client, fu.product;
|
|
|
|
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_l, 0)
|
|
(
|
|
fclt_x_periode,
|
|
fclt_x_gemeente,
|
|
naam,
|
|
bsn,
|
|
clientnummer,
|
|
geboortedatum,
|
|
adres,
|
|
pc,
|
|
woonplaats,
|
|
product,
|
|
uren_per_periode,
|
|
totaal_bedrag,
|
|
periode,
|
|
factuurnummer
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
gemeente,
|
|
MIN(client),
|
|
bsn_client,
|
|
'',
|
|
MIN (client_geboortedatum),
|
|
MIN (client_adres) || ' ' || MIN(client_huisnr),
|
|
MIN (client_postcode),
|
|
MIN (client_woonplaats),
|
|
DECODE(product, 'HV1', 'HH1','HV2', 'HH2', 'HV3', 'HH3', ''),
|
|
ROUND(SUM(week_uren_besteed),2),
|
|
ROUND (MIN (tarief) * SUM(week_uren_besteed), 2),
|
|
periode,
|
|
MIN(jaar) || COALESCE(MIN(TO_CHAR(gemeente_factnr_infix)), MIN(prs_bedrijf_factnr_infix)) || SUBSTR(periode,6,2) || COALESCE(MIN(TO_CHAR(gemeente_factnr_suffix)), MIN(gemeente_code))
|
|
FROM care_v_gemeente_fact2_uren fu
|
|
GROUP BY fu.periode, fu.gemeente, fu.beschikkingsnr, fu.bsn_client, fu.product;
|
|
|
|
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_m, 0)
|
|
(
|
|
fclt_x_periode,
|
|
fclt_x_gemeente,
|
|
clientnummer,
|
|
bsn,
|
|
achternaam,
|
|
voorvoegsels,
|
|
voorletters,
|
|
geboortedatum,
|
|
geslacht,
|
|
postcode,
|
|
huisnummer,
|
|
huisnummertoevoeging,
|
|
jaar,
|
|
week,
|
|
product,
|
|
minuten,
|
|
medewerker,
|
|
personeelsnummer_mdw
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
gemeente,
|
|
MIN(client_nr),
|
|
bsn_client,
|
|
MIN(client_naam),
|
|
MIN(client_tussenvoegsel),
|
|
MIN(client_voorletters),
|
|
MIN(client_geboortedatum),
|
|
MIN(client_mv),
|
|
MIN (client_postcode),
|
|
SUBSTR (
|
|
MIN(client_huisnr),
|
|
1,
|
|
DECODE (REGEXP_INSTR (MIN(client_huisnr), '[[:alpha:]]|[-]'),
|
|
0, LENGTH (MIN(client_huisnr)),
|
|
REGEXP_INSTR (MIN(client_huisnr), '[[:alpha:]]|[-]') - 1
|
|
)
|
|
),
|
|
SUBSTR (
|
|
MIN(client_huisnr),
|
|
DECODE (REGEXP_INSTR (MIN(client_huisnr), '[[:alpha:]]|[-]'),
|
|
0, LENGTH (MIN(client_huisnr)) + 1,
|
|
REGEXP_INSTR (MIN(client_huisnr), '[[:alpha:]]|[-]')
|
|
)
|
|
),
|
|
jaar,
|
|
weeknr,
|
|
DECODE(product, 'HV1', TO_CHAR(COALESCE(MIN(gemeente_hv1_code), 1)), 'HV2', TO_CHAR(COALESCE(MIN(gemeente_hv2_code),2)), 'HV3', TO_CHAR(COALESCE(MIN(gemeente_hv2_code),2)+1), ''),
|
|
ROUND (60 * SUM (week_uren_besteed)),
|
|
verzorger,
|
|
nr_verzorger
|
|
FROM care_v_gemeente_fact2_uren f
|
|
GROUP BY periode, gemeente, beschikkingsnr, f.bsn_client, product, jaar, weeknr, verzorger, nr_verzorger;
|
|
|
|
|
|
-- BONS#22915: FactuurRapportage view N (Woudenberg): op per gemeente per dag, op periode-nivo de gemaakte uren per beschikking totaliseren.
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_n, 0)
|
|
(
|
|
fclt_x_periode,
|
|
fclt_x_gemeente,
|
|
hide_f_nr,
|
|
record_start,
|
|
wzacode,
|
|
factuurnummer,
|
|
code,
|
|
bsn,
|
|
geboortedatum,
|
|
van,
|
|
tot,
|
|
product,
|
|
productcode,
|
|
minuten,
|
|
centen,
|
|
btw,
|
|
subtotaal,
|
|
record_einde,
|
|
uurtarief,
|
|
achternaam,
|
|
voorvoegsels,
|
|
voorletters,
|
|
datum_eerstkeerzorg,
|
|
gemeente_code
|
|
)
|
|
AS
|
|
SELECT f.periode,
|
|
f.gemeente,
|
|
2,
|
|
'D',
|
|
MIN (wzacode),
|
|
MIN(f.jaar) || COALESCE(MIN(TO_CHAR(gemeente_factnr_infix)), MIN(prs_bedrijf_factnr_infix)) || SUBSTR(f.periode,6,2) || COALESCE(MIN(TO_CHAR(gemeente_factnr_suffix)), MIN(gemeente_code)),
|
|
CASE
|
|
WHEN MIN(pt.maandag_van) <= MIN(beschikking_datum_van) THEN 'S'
|
|
WHEN MIN(pt.zondag_tm) >= MIN(beschikking_datum_tot) THEN 'E'
|
|
ELSE 'P'
|
|
END,
|
|
f.bsn_client,
|
|
MIN (client_geboortedatum),
|
|
TO_CHAR(GREATEST(MIN(pt.maandag_van), MIN(beschikking_datum_van)),'DD-MM-YYYY'),
|
|
TO_CHAR(LEAST(MIN(pt.zondag_tm), MIN(beschikking_datum_tot)),'DD-MM-YYYY'),
|
|
'HH',
|
|
'HH' || DECODE(product, 'HV1', TO_CHAR(COALESCE(MIN(gemeente_hv1_code), 1)), 'HV2', TO_CHAR(COALESCE(MIN(gemeente_hv2_code),2)), 'HV3', TO_CHAR(COALESCE(MIN(gemeente_hv2_code),2)+1), ''),
|
|
TO_CHAR(ROUND (60 * SUM (week_uren_besteed))),
|
|
TO_CHAR(ROUND (100 * MIN (tarief) * SUM (week_uren_besteed))),
|
|
'0',
|
|
TO_CHAR(ROUND (100 * MIN (tarief) * SUM (week_uren_besteed))),
|
|
'D',
|
|
MIN(f.tarief),
|
|
MIN(client_naam),
|
|
MIN(client_tussenvoegsel),
|
|
MIN(client_voorletters),
|
|
MIN(ffu.datum_eerste_keer_ooit),
|
|
MIN(gemeente_code)
|
|
FROM care_v_gemeente_fact2_uren f, care_v_periodetabel_2jaar pt, care_v_first_factuur_uren_ooit ffu
|
|
WHERE f.periode = pt.jaar_periode
|
|
AND f.bsn_client = ffu.client_bsn
|
|
GROUP BY f.periode, gemeente, beschikkingsnr, f.bsn_client, product;
|
|
|
|
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_o, 0)
|
|
(
|
|
fclt_x_periode,
|
|
fclt_x_gemeente,
|
|
bsn,
|
|
naam,
|
|
straat,
|
|
postcode,
|
|
woonplaats,
|
|
geboortedatum,
|
|
product,
|
|
uren,
|
|
periodenr,
|
|
uurtarief,
|
|
bedrag
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
gemeente,
|
|
bsn_client,
|
|
MIN(client),
|
|
MIN (client_adres) || ' ' || MIN(client_huisnr),
|
|
MIN (client_postcode),
|
|
MIN (client_woonplaats),
|
|
MIN (client_geboortedatum),
|
|
DECODE(product, 'HV1', 'HH1','HV2', 'HH2', 'HV3', 'HH3', ''),
|
|
ROUND(SUM(week_uren_besteed),2),
|
|
SUBSTR(periode,6,2),
|
|
MIN(fu.tarief),
|
|
ROUND (MIN (tarief) * SUM(week_uren_besteed), 2)
|
|
FROM care_v_gemeente_fact2_uren fu
|
|
GROUP BY fu.periode, fu.gemeente, fu.beschikkingsnr, fu.bsn_client, fu.product;
|
|
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_p, 0)
|
|
(
|
|
fclt_x_periode,
|
|
fclt_x_gemeente,
|
|
factuurnummer,
|
|
bsn,
|
|
naam,
|
|
straat,
|
|
huisnummer,
|
|
postcode,
|
|
woonplaats,
|
|
geboortedatum,
|
|
geleverde_uren,
|
|
vorm,
|
|
weeknummer,
|
|
factuurbedrag
|
|
)
|
|
AS
|
|
SELECT
|
|
periode,
|
|
gemeente,
|
|
MIN(jaar) || COALESCE(MIN(TO_CHAR(gemeente_factnr_infix)), MIN(prs_bedrijf_factnr_infix)) || SUBSTR(periode,6,2) || COALESCE(MIN(TO_CHAR(gemeente_factnr_suffix)), MIN(gemeente_code)),
|
|
bsn_client,
|
|
MIN(client),
|
|
MIN (client_adres),
|
|
MIN(client_huisnr),
|
|
MIN (client_postcode),
|
|
MIN (client_woonplaats),
|
|
MIN (client_geboortedatum),
|
|
ROUND(SUM(week_uren_besteed),2),
|
|
DECODE(product, 'HV1', 'CHT basis','HV2', 'CHT plus', 'HV3', '', ''),
|
|
weeknr,
|
|
ROUND (MIN (tarief) * SUM(week_uren_besteed), 2)
|
|
FROM care_v_gemeente_fact2_uren fu
|
|
GROUP BY fu.periode, fu.gemeente, fu.beschikkingsnr, fu.bsn_client, fu.product, fu.jaar, fu.weeknr;
|
|
|
|
-- BONS#33906 variant R
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_r, 0)
|
|
(
|
|
fclt_x_periode,
|
|
fclt_x_gemeente,
|
|
factuurnummer,
|
|
bsn,
|
|
voorletters,
|
|
tussenvoegsel,
|
|
naam,
|
|
meisjes_naam,
|
|
naam2,
|
|
geboortedatum,
|
|
geslacht,
|
|
straat,
|
|
huisnummer,
|
|
postcode,
|
|
woonplaats,
|
|
telefoonnummer,
|
|
mobielnummer,
|
|
contactpersoon,
|
|
email,
|
|
opmerking,
|
|
bijzonderheden,
|
|
beschikkingsnummer,
|
|
start_indicatie,
|
|
eind_indicatie,
|
|
soort_hv,
|
|
indicatie_uren,
|
|
uren_besteed
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
gemeente,
|
|
MIN (jaar)
|
|
|| COALESCE (MIN (TO_CHAR (gemeente_factnr_infix)),
|
|
MIN (prs_bedrijf_factnr_infix))
|
|
|| SUBSTR (periode, 6, 2)
|
|
|| COALESCE (MIN (TO_CHAR (gemeente_factnr_suffix)),
|
|
MIN (gemeente_code))
|
|
factuurnr,
|
|
bsn_client,
|
|
MIN (client_voorletters),
|
|
MIN (client_tussenvoegsel),
|
|
MIN (client_naam),
|
|
MIN (client_meisjesnaam),
|
|
MIN (client2),
|
|
MIN (client_geboortedatum),
|
|
MIN (client_mv),
|
|
MIN (client_adres),
|
|
MIN (client_huisnr),
|
|
MIN (client_postcode),
|
|
MIN (client_woonplaats),
|
|
MIN (client_telefoon_thuis),
|
|
MIN (prs_client_mobiel),
|
|
MIN (client_contactpersonen),
|
|
MIN (prs_client_email),
|
|
MIN (beschikking_omschr),
|
|
MIN (client_bijzonderheden),
|
|
beschikkingsnr,
|
|
TRUNC (beschikking_datum_van),
|
|
TRUNC (beschikking_datum_tot),
|
|
product,
|
|
indicatie_uren,
|
|
SUM (week_uren_besteed)
|
|
FROM care_v_tmp2_factuur_uren
|
|
WHERE pgb IS NULL
|
|
GROUP BY periode,
|
|
gemeente,
|
|
bsn_client,
|
|
beschikkingsnr,
|
|
beschikking_datum_van,
|
|
beschikking_datum_tot,
|
|
product,
|
|
indicatie_uren;
|
|
|
|
CREATE_VIEW( care_v_rap_tot_clientzorg, 0)
|
|
(
|
|
fclt_f_periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_status,
|
|
bsn,
|
|
voorletters,
|
|
tussenvoegsel,
|
|
naam,
|
|
meisjes_naam,
|
|
naam2,
|
|
geboortedatum,
|
|
geslacht,
|
|
straat,
|
|
huisnummer,
|
|
postcode,
|
|
woonplaats,
|
|
telefoonnummer,
|
|
mobielnummer,
|
|
contactpersoon,
|
|
email,
|
|
opmerking,
|
|
bijzonderheden,
|
|
beschikkingsnummer,
|
|
fclt_f_start_indicatie,
|
|
eind_indicatie,
|
|
soort_hv,
|
|
indicatie_uren,
|
|
uren_besteed
|
|
)
|
|
AS
|
|
SELECT COALESCE (periode, 'nvt'),
|
|
gemeente_omschrijving,
|
|
DECODE (mld_melding_status, 5, 'Afgemeld', 6, 'Afgemeld', 'Open')
|
|
status,
|
|
MIN (client_bsn),
|
|
prs_client_voorletters,
|
|
prs_client_tussenvoegsel,
|
|
prs_client_naam,
|
|
MIN (client_meisjesnaam),
|
|
b.prs_client_naam
|
|
|| ','
|
|
|| b.prs_client_voorletters
|
|
|| ' '
|
|
|| b.prs_client_tussenvoegsel,
|
|
MIN (client_geboortedatum),
|
|
MIN (client_mv),
|
|
MIN (client_adres),
|
|
MIN (client_huisnr),
|
|
MIN (client_postcode),
|
|
MIN (client_woonplaats),
|
|
MIN (client_telefoon_thuis),
|
|
MIN (prs_client_mobiel),
|
|
MIN (client_contactpersonen),
|
|
MIN (prs_client_email),
|
|
MIN (beschikking_omschr),
|
|
MIN (client_bijzonderheden),
|
|
beschikking_nr,
|
|
beschikking_datum_van,
|
|
beschikking_datum_tot,
|
|
product,
|
|
uren_beschikking,
|
|
SUM (uur.uren_besteed) besteed
|
|
FROM care_v_beschikking_all b,
|
|
(SELECT mld_melding_key,
|
|
jaar || '-' || LPAD (periodenr, 2, '0') periode,
|
|
uren_besteed
|
|
FROM care_v_bestede_uren_all
|
|
WHERE uren_status = 3) uur
|
|
WHERE mld_melding_status != 1
|
|
AND pgb IS NULL
|
|
AND uur.mld_melding_key(+) = b.mld_melding_key
|
|
GROUP BY periode,
|
|
gemeente_omschrijving,
|
|
mld_melding_status,
|
|
prs_client_naam,
|
|
prs_client_voorletters,
|
|
prs_client_tussenvoegsel,
|
|
beschikking_nr,
|
|
beschikking_datum_van,
|
|
beschikking_datum_tot,
|
|
beschikking_nr,
|
|
beschikking_datum_van,
|
|
beschikking_datum_tot,
|
|
product,
|
|
uren_beschikking;
|
|
|
|
-- view die ook de gekoppelde medewerker per opdracht laat zien
|
|
CREATE_VIEW( care_v_rap_tot_clientzorg_mdw, 0)
|
|
(
|
|
fclt_f_periode,
|
|
fclt_f_gemeente,
|
|
fclt_f_status,
|
|
bsn,
|
|
voorletters,
|
|
tussenvoegsel,
|
|
naam,
|
|
meisjes_naam,
|
|
naam2,
|
|
geboortedatum,
|
|
geslacht,
|
|
straat,
|
|
huisnummer,
|
|
postcode,
|
|
woonplaats,
|
|
telefoonnummer,
|
|
mobielnummer,
|
|
contactpersoon,
|
|
email,
|
|
opmerking,
|
|
bijzonderheden,
|
|
beschikkingsnummer,
|
|
fclt_f_start_indicatie,
|
|
eind_indicatie,
|
|
soort_hv,
|
|
indicatie_uren,
|
|
uren_besteed,
|
|
fclt_f_medewerker,
|
|
personeelsnummer
|
|
)
|
|
AS
|
|
SELECT COALESCE (periode, 'nvt'),
|
|
gemeente_omschrijving,
|
|
DECODE (mld_melding_status, 5, 'Afgemeld', 6, 'Afgemeld', 'Open')
|
|
status,
|
|
MIN (client_bsn),
|
|
prs_client_voorletters,
|
|
prs_client_tussenvoegsel,
|
|
prs_client_naam,
|
|
MIN (client_meisjesnaam),
|
|
b.prs_client_naam
|
|
|| ','
|
|
|| b.prs_client_voorletters
|
|
|| ' '
|
|
|| b.prs_client_tussenvoegsel,
|
|
MIN (client_geboortedatum),
|
|
MIN (client_mv),
|
|
MIN (client_adres),
|
|
MIN (client_huisnr),
|
|
MIN (client_postcode),
|
|
MIN (client_woonplaats),
|
|
MIN (client_telefoon_thuis),
|
|
MIN (prs_client_mobiel),
|
|
MIN (client_contactpersonen),
|
|
MIN (prs_client_email),
|
|
MIN (beschikking_omschr),
|
|
MIN (client_bijzonderheden),
|
|
beschikking_nr,
|
|
beschikking_datum_van,
|
|
beschikking_datum_tot,
|
|
product,
|
|
uren_beschikking,
|
|
SUM (uur.uren_besteed) besteed,
|
|
p.prs_perslid_naam_full,
|
|
p.prs_perslid_nr
|
|
FROM care_v_beschikking_all b,
|
|
(SELECT mld_melding_key,
|
|
mld_opdr_key,
|
|
jaar || '-' || LPAD (periodenr, 2, '0') periode,
|
|
uren_besteed
|
|
FROM care_v_bestede_uren_all
|
|
WHERE uren_status = 3) uur,
|
|
mld_opdr o,
|
|
(SELECT p.prs_perslid_key, p.prs_perslid_nr, pf.prs_perslid_naam_full
|
|
FROM prs_perslid p, prs_v_perslid_fullnames_all pf
|
|
WHERE pf.prs_perslid_key = p.prs_perslid_key) p
|
|
WHERE mld_melding_status != 1
|
|
AND pgb IS NULL
|
|
AND uur.mld_melding_key(+) = b.mld_melding_key
|
|
AND o.mld_opdr_key(+) = uur.mld_opdr_key
|
|
AND o.mld_uitvoerende_keys = p.prs_perslid_key(+)
|
|
GROUP BY periode,
|
|
gemeente_omschrijving,
|
|
mld_melding_status,
|
|
prs_client_naam,
|
|
prs_client_voorletters,
|
|
prs_client_tussenvoegsel,
|
|
beschikking_nr,
|
|
beschikking_datum_van,
|
|
beschikking_datum_tot,
|
|
product,
|
|
uren_beschikking,
|
|
p.prs_perslid_naam_full,
|
|
p.prs_perslid_nr;
|
|
|
|
CREATE_VIEW( care_v_rap_tot_clientzorg_all, 0)
|
|
(
|
|
mld_melding_key,
|
|
fclt_f_gemeente,
|
|
fclt_f_status,
|
|
bsn,
|
|
voorletters,
|
|
tussenvoegsel,
|
|
naam,
|
|
meisjes_naam,
|
|
naam2,
|
|
geboortedatum,
|
|
geslacht,
|
|
straat,
|
|
huisnummer,
|
|
postcode,
|
|
woonplaats,
|
|
telefoonnummer,
|
|
mobielnummer,
|
|
contactpersoon,
|
|
email,
|
|
opmerking,
|
|
bijzonderheden,
|
|
beschikkingsnummer,
|
|
fclt_f_start_indicatie,
|
|
fclt_f_eind_indicatie,
|
|
soort_hv,
|
|
indicatie_uren,
|
|
fclt_f_medewerker,
|
|
personeelsnummer
|
|
)
|
|
AS
|
|
SELECT b.mld_melding_key,
|
|
gemeente_omschrijving,
|
|
DECODE (mld_melding_status, 5, 'Afgemeld', 6, 'Afgemeld', 'Open')
|
|
status,
|
|
client_bsn,
|
|
prs_client_voorletters,
|
|
prs_client_tussenvoegsel,
|
|
prs_client_naam,
|
|
client_meisjesnaam,
|
|
b.prs_client_naam
|
|
|| ','
|
|
|| b.prs_client_voorletters
|
|
|| ' '
|
|
|| b.prs_client_tussenvoegsel,
|
|
client_geboortedatum,
|
|
client_mv,
|
|
client_adres,
|
|
client_huisnr,
|
|
client_postcode,
|
|
client_woonplaats,
|
|
client_telefoon_thuis,
|
|
prs_client_mobiel,
|
|
client_contactpersonen,
|
|
prs_client_email,
|
|
beschikking_omschr,
|
|
client_bijzonderheden,
|
|
beschikking_nr,
|
|
beschikking_datum_van,
|
|
beschikking_datum_tot,
|
|
product,
|
|
uren_beschikking,
|
|
p.prs_perslid_naam_full,
|
|
p.prs_perslid_nr
|
|
FROM care_v_beschikking_all b,
|
|
mld_opdr o,
|
|
(SELECT p.prs_perslid_key,
|
|
p.prs_perslid_nr,
|
|
pf.prs_perslid_naam_full
|
|
FROM prs_perslid p, prs_v_perslid_fullnames_all pf
|
|
WHERE pf.prs_perslid_key = p.prs_perslid_key) p
|
|
WHERE b.mld_melding_key = o.mld_melding_key
|
|
AND o.mld_uitvoerende_keys = p.prs_perslid_key(+);
|
|
|
|
-- mbmb
|
|
-- Rapport Q) FACTUURrapport voor de gemaakte uren per datum - variant Q (Bernisse):
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_q, 0)
|
|
(
|
|
fclt_x_periode,
|
|
fclt_x_gemeente,
|
|
aanbieder,
|
|
dossiernr,
|
|
tussenv_partner,
|
|
partner,
|
|
tussenv,
|
|
achternaam_klant,
|
|
geboortedatum,
|
|
veilingnr,
|
|
ingangsdatum_contract,
|
|
werkelijke_startdatum,
|
|
einddatum_contract,
|
|
gemeente,
|
|
clientnr_ZA,
|
|
annuleringsdatum,
|
|
cancel_reden,
|
|
korting,
|
|
status,
|
|
minuten,
|
|
bsn,
|
|
omzet,
|
|
soort_indicatie,
|
|
indicatie_minuten,
|
|
prijs_inc_korting,
|
|
datum,
|
|
geleverde_minuten,
|
|
factuur,
|
|
medewerker,
|
|
personeelsnummer_mdw
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
gemeente,
|
|
MIN(prs_bedrijf_naam),
|
|
'',
|
|
'',
|
|
'',
|
|
MIN (client_tussenvoegsel),
|
|
MIN (client_naam),
|
|
MIN (client_geboortedatum),
|
|
beschikkingsnr,
|
|
MIN(beschikking_datum_van),
|
|
MIN(ffu.datum_eerste_keer_ooit),
|
|
MIN(beschikking_datum_tot),
|
|
gemeente,
|
|
MIN(client_nr),
|
|
'',
|
|
'',
|
|
'',
|
|
'',
|
|
'',
|
|
f.bsn_client,
|
|
'',
|
|
DECODE(product, 'HV1', 'HH','HV2', 'HH', 'HV3', 'HH', 'HH'),
|
|
60*MIN (indicatie_uren),
|
|
MIN (tarief),
|
|
datum,
|
|
ROUND (60 * SUM (week_uren_besteed)),
|
|
ROUND (MIN (tarief) * SUM (week_uren_besteed), 2),
|
|
verzorger,
|
|
nr_verzorger
|
|
FROM care_v_gemeente_fact2_uren f, care_v_first_factuur_uren_ooit ffu
|
|
WHERE f.bsn_client = ffu.client_bsn
|
|
GROUP BY periode, gemeente, beschikkingsnr, f.bsn_client, product, jaar, weeknr, datum, verzorger, nr_verzorger;
|
|
|
|
|
|
|
|
|
|
|
|
-- FactuurRapportage view Iwmo
|
|
CREATE_VIEW( care_v_rap2_factuur_uren_iwmo, 0)
|
|
(
|
|
fclt_x_periode,
|
|
fclt_x_gemeente,
|
|
bsn,
|
|
geboortedatum,
|
|
geslacht,
|
|
geboortenaam,
|
|
voorvoegsel,
|
|
naamcode1,
|
|
achternaampartner,
|
|
voorvoegselpartner,
|
|
voorletters,
|
|
naamcode2,
|
|
postcode,
|
|
huisnummer,
|
|
huisnummertoevoeging,
|
|
indicatieoverleden,
|
|
beschikkingsnummer,
|
|
productcategorie,
|
|
begindatumproduct,
|
|
einddatumproduct,
|
|
productcode,
|
|
aantaluitgevoerdeproduct,
|
|
tijdseenheidzorgperiode,
|
|
declaratiebedrag,
|
|
debetcredit,
|
|
referentienummercredit
|
|
)
|
|
AS
|
|
SELECT f.periode,
|
|
f.gemeente,
|
|
f.bsn_client, -- kolom A
|
|
SUBSTR(MIN (client_geboortedatum),7,4)||SUBSTR(MIN (client_geboortedatum),4,2)||SUBSTR(MIN (client_geboortedatum),1,2), --kolom B
|
|
DECODE(MIN(client_mv),'M',1,'V',2,''), -- kolom C
|
|
COALESCE(MIN(client_meisjesnaam), MIN (client_naam)), -- kolom D
|
|
'', -- kolom E
|
|
'1', -- kolom F
|
|
'', -- kolom G
|
|
'', -- kolom H
|
|
REPLACE(REPLACE (MIN (client_voorletters), ' ', ''),'.',''), --kolom I
|
|
'0', -- kolom J
|
|
REPLACE(MIN (client_postcode), ' ', ''), --kolom K
|
|
SUBSTR (
|
|
MIN(client_huisnr),
|
|
1,
|
|
DECODE (REGEXP_INSTR (MIN(client_huisnr), '[[:alpha:]]|[-]'),
|
|
0, LENGTH (MIN(client_huisnr)),
|
|
REGEXP_INSTR (MIN(client_huisnr), '[[:alpha:]]|[-]') - 1
|
|
)
|
|
), --Kolom L
|
|
SUBSTR (
|
|
MIN(client_huisnr),
|
|
DECODE (REGEXP_INSTR (MIN(client_huisnr), '[[:alpha:]]|[-]'),
|
|
0, LENGTH (MIN(client_huisnr)) + 1,
|
|
REGEXP_INSTR (MIN(client_huisnr), '[[:alpha:]]|[-]')
|
|
)
|
|
), --Kolom M
|
|
'2', -- kolom N
|
|
beschikkingsnr, -- Kolom O
|
|
'01', -- Kolom P
|
|
TO_CHAR(GREATEST(MIN(pt.maandag_van), MIN(beschikking_datum_van)),'YYYYMMDD'), -- Kolom Q
|
|
TO_CHAR(LEAST(MIN(pt.zondag_tm), MIN(beschikking_datum_tot)),'YYYYMMDD'), -- Kolom R
|
|
LPAD(DECODE(product, 'HV1', TO_CHAR(COALESCE(MIN(gemeente_hv1_code), 1)), 'HV2', TO_CHAR(COALESCE(MIN(gemeente_hv2_code),2)), 'HV3', TO_CHAR(COALESCE(MIN(gemeente_hv2_code),2)+1), ''),5,'0') , -- Kolom S
|
|
CASE
|
|
WHEN MIN(gemeente_budget)=0 THEN TO_CHAR(ROUND (60 * SUM (week_uren_besteed)))
|
|
ELSE '0001'
|
|
END, -- Kolom T
|
|
CASE
|
|
WHEN MIN(gemeente_budget)=0 THEN '01'
|
|
ELSE '81'
|
|
END, -- Kolom U
|
|
CASE
|
|
WHEN MIN(gemeente_budget)=0 THEN LPAD(TO_CHAR(ROUND (100 * MIN (tarief) * SUM (week_uren_besteed))), 8, '0')
|
|
ELSE LPAD(TO_CHAR(ROUND (100 * MIN (tarief))), 8, '0')
|
|
END, -- Kolom V
|
|
'D', -- Kolom W
|
|
'' --Kolom X
|
|
FROM care_v_gemeente_fact2_uren f, care_v_periodetabel_2jaar pt
|
|
WHERE f.periode = pt.jaar_periode
|
|
GROUP BY f.periode, gemeente, beschikkingsnr, f.bsn_client, product;
|
|
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
-- salaris ---salaris----salaris-----salaris----salaris----salaris----salaris----salaris----salaris----salaris---salaris---salaris--salaris--salaris------------------------
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
CREATE_VIEW( care_v_onkosten2_all, 0)
|
|
(
|
|
periode,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
prs_perslid_dienstverband,
|
|
mld_kosten_key,
|
|
mld_kosten_code,
|
|
mld_kosten_omschrijving,
|
|
mld_opdruren_kosten_besteed,
|
|
mld_kosten_kosten,
|
|
datum
|
|
)
|
|
AS
|
|
SELECT uur.jaar || '-' || LPAD (uur.periodenr, 2, '0'),
|
|
v.verzorger_bsn,
|
|
v.prs_verzorger_personeelsnr,
|
|
v.prs_verzorger_naam || ',' || v.prs_verzorger_voorletters || ' ' || v.prs_verzorger_tussenvoegsel,
|
|
v.prs_verzorger_dienstverband,
|
|
k.mld_kosten_key,
|
|
k.mld_kosten_code,
|
|
k.mld_kosten_omschrijving,
|
|
ouk.mld_opdruren_kosten_besteed,
|
|
k.mld_kosten_kosten,
|
|
uur.datum_gewerkt
|
|
FROM care_v_totaal_uren_all uur, care_v_verzorger v, mld_opdruren_kosten ouk, mld_kosten k
|
|
WHERE uur.prs_perslid_key = v.prs_perslid_key
|
|
AND uur.mld_opdr_uren_key = ouk.mld_opdr_uren_key
|
|
AND ouk.mld_kosten_key = k.mld_kosten_key
|
|
AND k.mld_kosten_verwijder IS NULL
|
|
AND uur.uren_status = 3
|
|
UNION ALL
|
|
SELECT periode,
|
|
bsn,
|
|
nr_verzorger,
|
|
prs_perslid_naam
|
|
|| ','
|
|
|| prs_perslid_voorletters
|
|
|| ' '
|
|
|| prs_perslid_tussenvoegsel verzorger,
|
|
prs_perslid_dienstverband,
|
|
NULL mld_kosten_key,
|
|
kosten_code,
|
|
kosten_omschrijving,
|
|
rt.interkm,
|
|
NULL,
|
|
datum_gewerkt
|
|
FROM care_v_reistijden_all rt;
|
|
|
|
|
|
|
|
CREATE_VIEW( care_v_tmp2_auto (periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, woonwerk_km, rest_km, datum), 0)
|
|
AS
|
|
SELECT periode,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
MIN(prs_perslid_dienstverband),
|
|
LEAST (SUM (mld_opdruren_kosten_besteed), 10),
|
|
SUM (mld_opdruren_kosten_besteed) - LEAST (SUM (mld_opdruren_kosten_besteed), 10),
|
|
datum
|
|
FROM care_v_onkosten2_all
|
|
WHERE mld_kosten_code = 'A'
|
|
GROUP BY periode, bsn_verzorger, nr_verzorger, verzorger, datum;
|
|
|
|
CREATE_VIEW( care_v_rap2_auto (periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, woonwerk_km, rest_km), 0)
|
|
AS
|
|
SELECT periode,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
MIN(prs_perslid_dienstverband),
|
|
SUM (woonwerk_km),
|
|
SUM (rest_km)
|
|
FROM care_v_tmp2_auto
|
|
GROUP BY periode, bsn_verzorger, nr_verzorger, verzorger;
|
|
|
|
CREATE_VIEW (care_v_rap2_reistijd (periode, bsn_verzorger,nr_verzorger,verzorger,prs_perslid_dienstverband,reistijd ), 0)
|
|
AS
|
|
SELECT periode,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
MIN (prs_perslid_dienstverband),
|
|
SUM (mld_opdruren_kosten_besteed)
|
|
FROM care_v_onkosten2_all
|
|
WHERE mld_kosten_code = 'T'
|
|
GROUP BY periode,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger;
|
|
|
|
-- mld_kosten_code = 'F', Dit zijn de onkosten voor FIETS gebruik: elke dag dat er gefietst is, telt als 1 (meerdere keren op 1 dag telt ook als 1)
|
|
|
|
CREATE_VIEW( care_v_rap2_fiets (periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, mld_opdruren_kosten_besteed), 0)
|
|
AS
|
|
SELECT periode, bsn_verzorger, nr_verzorger, verzorger, MIN(prs_perslid_dienstverband), COUNT (DISTINCT datum)
|
|
FROM care_v_onkosten2_all
|
|
WHERE mld_kosten_code = 'F'
|
|
GROUP BY periode, bsn_verzorger, nr_verzorger, verzorger;
|
|
|
|
-- mld_kosten_code = 'B', Dit zijn de onkosten voor BROMFIETS gebruik: elke dag dat er gebromt is, telt als 1 (meerdere keren op 1 dag telt ook als 1)
|
|
|
|
CREATE_VIEW( care_v_rap2_bromfiets (periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, mld_opdruren_kosten_besteed), 0)
|
|
AS
|
|
SELECT periode, bsn_verzorger, nr_verzorger, verzorger, MIN(prs_perslid_dienstverband), COUNT (DISTINCT datum)
|
|
FROM care_v_onkosten2_all
|
|
WHERE mld_kosten_code = 'B'
|
|
GROUP BY periode, bsn_verzorger, nr_verzorger, verzorger;
|
|
|
|
|
|
|
|
CREATE_VIEW( care_v_tmp2_impr_uren, 0)
|
|
(
|
|
mld_impropdr_key,
|
|
mld_impropdr_code,
|
|
jaar,
|
|
periode,
|
|
periode_nr,
|
|
weeknr,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
prs_perslid_dienstverband,
|
|
week_uren_besteed,
|
|
datum
|
|
)
|
|
AS
|
|
SELECT uur.mld_impropdr_key,
|
|
uur.mld_impropdr_code,
|
|
uur.jaar,
|
|
uur.jaar || '-' || LPAD (uur.periodenr, 2, '0'),
|
|
uur.periodenr,
|
|
uur.weeknr,
|
|
uur.bsn,
|
|
uur.prs_perslid_nr,
|
|
uur.prs_perslid_naam || ',' || uur.prs_perslid_voorletters || ' ' || uur.prs_perslid_tussenvoegsel,
|
|
prs_perslid_dienstverband,
|
|
uur.uren_besteed,
|
|
uur.datum_gewerkt
|
|
FROM care_v_improductieve_uren_all uur
|
|
WHERE uur.uren_status = 3;
|
|
|
|
--- Hieronder het totaal aan goedgekeurde niet-productieve uren (werkoverleg) over de periode 1234,
|
|
--- waarbij de verlof-uren (mld_impropdr_key = 1) en ziekte-uren (mld_impropdr_key = 2) worden uitgesloten.
|
|
|
|
CREATE_VIEW( care_v_gewerkte_impr2_uren (periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, mld_impropdr_key, week_uren_besteed, datum), 0)
|
|
AS
|
|
SELECT periode,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
prs_perslid_dienstverband,
|
|
mld_impropdr_key,
|
|
week_uren_besteed,
|
|
datum
|
|
FROM care_v_tmp2_impr_uren
|
|
WHERE mld_impropdr_key <> 1 AND mld_impropdr_key <> 2;
|
|
|
|
--- Hieronder het totaal aan goedgekeurde niet-productieve ziekte uren over de periode 1234,
|
|
--- Voor ziekte-uren geldt: mld_impropdr_key = 2
|
|
|
|
CREATE_VIEW( care_v_gekeurde_ziek2_uren (periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, ziekte_uren, dagen), 0)
|
|
AS
|
|
SELECT periode, bsn_verzorger, nr_verzorger, verzorger, MIN(prs_perslid_dienstverband), ROUND(SUM (week_uren_besteed),2), COUNT(distinct datum)
|
|
FROM care_v_tmp2_impr_uren
|
|
WHERE mld_impropdr_key = 2
|
|
GROUP BY periode, bsn_verzorger, nr_verzorger, verzorger;
|
|
|
|
--- Hieronder het totaal aan goedgekeurde niet-productieve verlof uren over de periode 1234,
|
|
--- Voor verlof-uren geldt: mld_impropdr_key = 1
|
|
|
|
CREATE_VIEW( care_v_gekeurde_vrij2_uren (periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, verlof_uren, dagen), 0)
|
|
AS
|
|
SELECT periode, bsn_verzorger, nr_verzorger, verzorger, MIN(prs_perslid_dienstverband), ROUND(SUM (week_uren_besteed),2), COUNT(distinct datum)
|
|
FROM care_v_tmp2_impr_uren
|
|
WHERE mld_impropdr_key = 1
|
|
GROUP BY periode, bsn_verzorger,nr_verzorger,verzorger;
|
|
|
|
|
|
|
|
CREATE_VIEW( care_v_rap2_salaris (periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, week_uren_besteed, datum), 0)
|
|
AS
|
|
SELECT periode,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
prs_perslid_dienstverband,
|
|
week_uren_besteed,
|
|
datum
|
|
FROM care_v_tmp2_factuur_uren
|
|
UNION ALL
|
|
SELECT periode,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
prs_perslid_dienstverband,
|
|
week_uren_besteed,
|
|
datum
|
|
FROM care_v_gewerkte_impr2_uren;
|
|
|
|
|
|
|
|
CREATE_VIEW( care_v_periode_x_salaris, 0)
|
|
(periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, periode_uren_besteed, dagen, bsn_periode)
|
|
AS
|
|
SELECT jaar_periode, bsn_verzorger, MIN(nr_verzorger), MIN(verzorger), MIN(prs_perslid_dienstverband), ROUND(SUM (week_uren_besteed),2), COUNT(DISTINCT datum), bsn_verzorger ||'_'|| jaar_periode
|
|
FROM care_v_periodetabel_2jaar pt, care_v_rap2_salaris x
|
|
WHERE pt.jaar_periode = x.periode
|
|
GROUP BY jaar_periode, bsn_verzorger;
|
|
|
|
|
|
CREATE_VIEW( care_v_periode_x_ziek, 0)
|
|
(periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, ziekte_uren, dagen, bsn_periode)
|
|
AS
|
|
SELECT jaar_periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, ziekte_uren, dagen, bsn_verzorger ||'_'|| jaar_periode
|
|
FROM care_v_periodetabel_2jaar pt, care_v_gekeurde_ziek2_uren x
|
|
WHERE pt.jaar_periode = x.periode;
|
|
|
|
CREATE_VIEW( care_v_periode_x_vrij, 0)
|
|
(periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, verlof_uren, dagen, bsn_periode)
|
|
AS
|
|
SELECT jaar_periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, verlof_uren, dagen, bsn_verzorger ||'_'|| jaar_periode
|
|
FROM care_v_periodetabel_2jaar pt, care_v_gekeurde_vrij2_uren x
|
|
WHERE pt.jaar_periode = x.periode;
|
|
|
|
CREATE_VIEW( care_v_periode_x_auto, 0)
|
|
(periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, woonwerk_km, rest_km, bsn_periode)
|
|
AS
|
|
SELECT jaar_periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, woonwerk_km, rest_km, bsn_verzorger ||'_'|| jaar_periode
|
|
FROM care_v_periodetabel_2jaar pt, care_v_rap2_auto x
|
|
WHERE pt.jaar_periode = x.periode;
|
|
|
|
CREATE_VIEW( care_v_periode_x_fiets, 0)
|
|
(periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, mld_opdruren_kosten_besteed, bsn_periode)
|
|
AS
|
|
SELECT jaar_periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, mld_opdruren_kosten_besteed, bsn_verzorger ||'_'|| jaar_periode
|
|
FROM care_v_periodetabel_2jaar pt, care_v_rap2_fiets x
|
|
WHERE pt.jaar_periode = x.periode;
|
|
|
|
CREATE_VIEW( care_v_periode_x_bromfiets, 0)
|
|
(periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, mld_opdruren_kosten_besteed, bsn_periode)
|
|
AS
|
|
SELECT jaar_periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, mld_opdruren_kosten_besteed, bsn_verzorger ||'_'|| jaar_periode
|
|
FROM care_v_periodetabel_2jaar pt, care_v_rap2_bromfiets x
|
|
WHERE pt.jaar_periode = x.periode;
|
|
|
|
CREATE_VIEW (care_v_periode_x_reistijd, 0)
|
|
(periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, mld_opdruren_kosten_besteed,bsn_periode)
|
|
AS
|
|
SELECT jaar_periode,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
prs_perslid_dienstverband,
|
|
reistijd,
|
|
bsn_verzorger || '_' || jaar_periode
|
|
FROM care_v_periodetabel_2jaar pt, care_v_rap2_reistijd x
|
|
WHERE pt.jaar_periode = x.periode;
|
|
|
|
CREATE_VIEW( care_v_salaris_all, 0)
|
|
(periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, periode_uren_besteed, werkdagen,ziekte_uren, ziekdagen, verlof_uren, verlofdagen, woonwerk_km, rest_km, fietsdagen, bromfietsdagen)
|
|
AS
|
|
SELECT periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, periode_uren_besteed, dagen, 0, 0, 0, 0, 0, 0, 0, 0
|
|
FROM care_v_periode_x_salaris s
|
|
UNION ALL
|
|
SELECT periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, 0, 0, ziekte_uren, dagen, 0, 0, 0, 0, 0, 0
|
|
FROM care_v_periode_x_ziek z
|
|
UNION ALL
|
|
SELECT periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, 0, 0, 0, 0, verlof_uren, dagen, 0, 0, 0, 0
|
|
FROM care_v_periode_x_vrij v
|
|
UNION ALL
|
|
SELECT periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, 0, 0, 0, 0, 0, 0 , woonwerk_km, rest_km, 0, 0
|
|
FROM care_v_periode_x_auto a
|
|
UNION ALL
|
|
SELECT periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, 0, 0, 0, 0, 0, 0, 0, 0, mld_opdruren_kosten_besteed, 0
|
|
FROM care_v_periode_x_fiets f
|
|
UNION ALL
|
|
SELECT periode, bsn_verzorger, nr_verzorger, verzorger, prs_perslid_dienstverband, 0, 0, 0, 0, 0, 0, 0, 0, 0, mld_opdruren_kosten_besteed
|
|
FROM care_v_periode_x_bromfiets b;
|
|
|
|
|
|
|
|
|
|
CREATE_VIEW( care_v_rap2_salaris_a, 0)
|
|
(
|
|
fclt_f_periode,
|
|
bsn,
|
|
verzorger,
|
|
contract_uren,
|
|
uren_gewerkt,
|
|
uren_ziek,
|
|
uren_verlof,
|
|
svdagen,
|
|
fietsvergoeding,
|
|
bromfietsvergoeding,
|
|
km_woonwerk,
|
|
km_plus
|
|
)
|
|
AS
|
|
select periode, bsn_verzorger, verzorger, MIN(prs_perslid_dienstverband), SUM(periode_uren_besteed), SUM(ziekte_uren), SUM(verlof_uren), SUM(werkdagen), SUM(fietsdagen), SUM(bromfietsdagen), SUM(woonwerk_km), SUM(rest_km)
|
|
from care_v_salaris_all s
|
|
group by periode, bsn_verzorger, verzorger;
|
|
|
|
|
|
|
|
---
|
|
-- Salarisrapport type B: per medewerker elke uren/declaratiepost op aparte regel, dus meer regels voor 1 medewerker
|
|
-- Identificatie van medewerker: personeelsnummer (clientnummer)
|
|
-- NB: Dit rapport is voor Unit 4 Salaris administratie geschikt
|
|
--
|
|
|
|
|
|
-- Periode berekening iets als: LPAD (FLOOR (SUBSTR (ud1.fac_usrdata_omschr, 6, 2) / 4) + 1, 3, '0')
|
|
--- looncode = GEWERKT / ZIEK / VERLOF / FIETS / BROMF / KM_WW / KM_PLUS
|
|
---
|
|
|
|
|
|
CREATE_VIEW(care_v_rap2_salaris_b, 0)
|
|
(
|
|
FCLT_F_PERIODE,
|
|
BOEKDATUM,
|
|
BSN,
|
|
NR_VERZORGER,
|
|
VERZORGER,
|
|
UUR_SOORT,
|
|
UREN,
|
|
SVDAGEN,
|
|
KOSTEN_SOORT,
|
|
KOSTEN
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
SYSDATE,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
'GEWERKT',
|
|
periode_uren_besteed,
|
|
dagen,
|
|
NULL,
|
|
NULL
|
|
FROM care_v_periode_x_salaris
|
|
UNION
|
|
SELECT periode,
|
|
SYSDATE,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
'ZIEK',
|
|
ziekte_uren,
|
|
dagen,
|
|
NULL,
|
|
NULL
|
|
FROM care_v_periode_x_ziek
|
|
UNION
|
|
SELECT periode,
|
|
SYSDATE,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
'VERLOF',
|
|
verlof_uren,
|
|
dagen,
|
|
NULL,
|
|
NULL
|
|
FROM care_v_periode_x_vrij
|
|
UNION
|
|
SELECT periode,
|
|
SYSDATE,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
'KM_WW',
|
|
woonwerk_km
|
|
FROM care_v_periode_x_auto
|
|
WHERE woonwerk_km != 0
|
|
UNION
|
|
SELECT periode,
|
|
SYSDATE,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
'KM_PLUS',
|
|
rest_km
|
|
FROM care_v_periode_x_auto
|
|
WHERE rest_km != 0
|
|
UNION
|
|
SELECT periode,
|
|
SYSDATE,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
'FIETS',
|
|
mld_opdruren_kosten_besteed
|
|
FROM care_v_periode_x_fiets
|
|
WHERE mld_opdruren_kosten_besteed != 0
|
|
UNION
|
|
SELECT periode,
|
|
SYSDATE,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
'BROMF',
|
|
mld_opdruren_kosten_besteed
|
|
FROM care_v_periode_x_bromfiets
|
|
WHERE mld_opdruren_kosten_besteed != 0
|
|
UNION
|
|
SELECT periode,
|
|
SYSDATE,
|
|
bsn_verzorger,
|
|
nr_verzorger,
|
|
verzorger,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
'REISTIJD',
|
|
ROUND(mld_opdruren_kosten_besteed)
|
|
FROM care_v_periode_x_reistijd
|
|
WHERE mld_opdruren_kosten_besteed != 0;
|
|
|
|
-- Herdefinietie van oorspronkelijk 'care_v_rap_salaris_b' die nog op 6 weken is gebaseerd,
|
|
-- !!Let op: care_v_rap_salaris_b komt in de cust/atch.sql en bons.sql terug!!!
|
|
|
|
CREATE_VIEW(care_v_rap_salaris_b, 0)
|
|
AS
|
|
SELECT * FROM care_v_rap2_salaris_b;
|
|
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------
|
|
-- CAK rapportage --
|
|
-- CAK rapportage --
|
|
-- CAK rapportage --
|
|
-- CAK rapportage --
|
|
----------------------------------------------------------------------------------------------------
|
|
|
|
|
|
CREATE_VIEW( care_v_cak2_factuur_uren_b, 0)
|
|
(
|
|
fclt_f_periode,
|
|
eerste_datum_periode_gewerkt,
|
|
factuurdatum,
|
|
wzacode,
|
|
fclt_f_gemeente,
|
|
gemeente_ob,
|
|
alt_hv1,
|
|
alt_hv2,
|
|
alt_hv3,
|
|
beschikkingsnr,
|
|
bsn_client,
|
|
client_nr,
|
|
client,
|
|
prs_client_cak_actie,
|
|
geboortedatum,
|
|
indicatie_uren,
|
|
product,
|
|
tarief,
|
|
jaar,
|
|
weeknr,
|
|
verzorger_key,
|
|
uren,
|
|
minuten,
|
|
bedrag_euro,
|
|
bedrag_centen
|
|
)
|
|
AS
|
|
SELECT periode,
|
|
MIN (datum),
|
|
TO_CHAR (SYSDATE, 'DD-MM-YYYY'),
|
|
MIN (wzacode),
|
|
gemeente,
|
|
MIN (gemeente_ob),
|
|
MIN (alt_hv1),
|
|
MIN (alt_hv2),
|
|
MIN (alt_hv3),
|
|
beschikkingsnr,
|
|
bsn_client,
|
|
MIN (client_nr),
|
|
MIN (client),
|
|
MIN (prs_client_cak_actie),
|
|
MIN (client_geboortedatum),
|
|
MIN (indicatie_uren),
|
|
product,
|
|
MIN (tarief),
|
|
jaar,
|
|
weeknr,
|
|
verzorger_key,
|
|
ROUND (SUM (week_uren_besteed), 2),
|
|
ROUND (60 * SUM (week_uren_besteed)),
|
|
ROUND (MIN (tarief) * SUM (week_uren_besteed), 2),
|
|
ROUND (100 * MIN (tarief) * SUM (week_uren_besteed))
|
|
FROM care_v_gemeente_fact2_uren
|
|
WHERE gemeente_veiling = 0 AND gemeente_budget = 0
|
|
GROUP BY periode, gemeente, beschikkingsnr, bsn_client, product, jaar, weeknr, verzorger_key;
|
|
|
|
CREATE_VIEW( care_v_cak_choose_periode, 0)
|
|
(
|
|
fclt_f_periode
|
|
)
|
|
AS
|
|
SELECT distinct periode
|
|
FROM care_v_gemeente_fact2_uren;
|
|
|
|
|
|
|
|
|
|
-- Key 41 = SLEUTEL van waarde-code 'BESTANDSNUMMER' van eigen tabel '$SYSTEM-CAK' :: DEZE WORDT NIET MEER GEBRUIKT!!
|
|
-- Key 47 = SLEUTEL van waarde-code 'PERIODE' van eigen tabel '$SYSTEM-CAK' (geeft de gekozen periode waarover CAK rapport wordt gemaakt aan)
|
|
--> Deze constructie met FLOOR(SUBSTR(ud1.fac_usrdata_omschr,6,2)/4) .... wordt ook in cak_tzi_2_zip.js gebruikt,
|
|
--> Deze 2 moeten overeenkomen, vandaar!!!
|
|
-- Key 42 = SLEUTEL van waarde-code 'OMGEVING' van eigen tabel '$SYSTEM-CAK' (P of T)
|
|
-- Key 43 = SLEUTEL van waarde-code 'VERSIENUMMER' van eigen tabel '$SYSTEM-CAK' (=20)
|
|
|
|
CREATE_VIEW( care_v_cak_hoofd_record, 0)
|
|
(
|
|
fclt_f_periode,
|
|
txt
|
|
)
|
|
AS
|
|
SELECT cp.fclt_f_periode,
|
|
'01'
|
|
|| pb.prs_leverancier_nr
|
|
|| SUBSTR(cp.fclt_f_periode,1,4)
|
|
|| LPAD (SUBSTR(cp.fclt_f_periode,6,2), 3, '0')
|
|
|| TO_CHAR (SYSDATE, 'YYYYMMDD')
|
|
|| UPPER (ud2.fac_usrdata_omschr)
|
|
|| ud3.fac_usrdata_omschr
|
|
|| RPAD (' ', 54, ' ')
|
|
FROM prs_bedrijf pb, fac_usrdata ud2, fac_usrdata ud3, care_v_cak_choose_periode cp
|
|
WHERE ud2.fac_usrdata_key = 42 AND ud3.fac_usrdata_key = 43;
|
|
|
|
|
|
|
|
|
|
CREATE_VIEW( care_v_cak_zorg_pre_record, 0)
|
|
(
|
|
fclt_f_periode,
|
|
eerste_datum_periode_gewerkt,
|
|
bsn_client,
|
|
client_nr,
|
|
prs_client_cak_actie,
|
|
hele_uren,
|
|
minuten,
|
|
txt
|
|
)
|
|
AS
|
|
SELECT fclt_f_periode,
|
|
eerste_datum_periode_gewerkt,
|
|
f.bsn_client,
|
|
f.client_nr,
|
|
f.prs_client_cak_actie,
|
|
FLOOR (f.uren),
|
|
ROUND (60 * (f.uren - FLOOR (f.uren))),
|
|
jaar
|
|
|| LPAD (weeknr, 2, '0')
|
|
|| LPAD (COALESCE (client_nr, ' '), 10, '0')
|
|
|| DECODE (
|
|
product,
|
|
'HV1',
|
|
DECODE (gemeente_ob,
|
|
1, '428',
|
|
COALESCE (alt_hv1, ud1.fac_usrdata_omschr)),
|
|
'HV2',
|
|
DECODE (gemeente_ob,
|
|
1, '429',
|
|
COALESCE (alt_hv2, ud2.fac_usrdata_omschr)),
|
|
'HV3',
|
|
DECODE (gemeente_ob,
|
|
1, '430',
|
|
COALESCE (alt_hv3, ud4.fac_usrdata_omschr)),
|
|
'000')
|
|
|| ud3.fac_usrdata_omschr
|
|
|| LPAD (FLOOR (f.uren), 3, '0')
|
|
|| LPAD (ROUND (60 * (f.uren - FLOOR (f.uren))), 2, '0')
|
|
|| LPAD (verzorger_key, 10, '0')
|
|
|| RPAD (' ', 2, ' ')
|
|
|| RPAD (' ', 39, ' ')
|
|
FROM care_v_cak2_factuur_uren_b f,
|
|
fac_usrdata ud1,
|
|
fac_usrdata ud2,
|
|
fac_usrdata ud3,
|
|
fac_usrdata ud4
|
|
WHERE ud1.fac_usrdata_key = 44
|
|
AND ud2.fac_usrdata_key = 45
|
|
AND ud3.fac_usrdata_key = 46
|
|
AND ud4.fac_usrdata_key = 49;
|
|
|
|
|
|
|
|
-- Key 44 bij ud1 = SLEUTEL van waarde-code 'HV1' van eigen tabel '$SYSTEM-CAK' (007)
|
|
-- Key 45 bij ud2 = SLEUTEL van waarde-code 'HV2' van eigen tabel '$SYSTEM-CAK' (006)
|
|
-- Key 46 bij ud3 = SLEUTEL van waarde-code 'FINANCIERINGSSTROOM' van eigen tabel '$SYSTEM-CAK' (=08)
|
|
-- Key 49 bij ud4 = SLEUTEL van waarde-code 'HV3' van eigen tabel '$SYSTEM-CAK' (100)
|
|
|
|
CREATE_VIEW( care_v_cak_client_zorg_record, 0)
|
|
(
|
|
fclt_f_periode,
|
|
eerste_datum_periode_gewerkt,
|
|
bsn_client,
|
|
client_nr,
|
|
prs_client_cak_actie,
|
|
hele_uren,
|
|
minuten,
|
|
txt
|
|
)
|
|
AS
|
|
SELECT fclt_f_periode,
|
|
eerste_datum_periode_gewerkt,
|
|
bsn_client,
|
|
client_nr,
|
|
prs_client_cak_actie,
|
|
hele_uren,
|
|
minuten,
|
|
'51' || '1' || txt
|
|
FROM care_v_cak_zorg_pre_record;
|
|
|
|
|
|
--- Gewijzigde cq. correctie zorguren die naar CAK moeten.
|
|
--- KEY(prs_client_cak_actie) = 2 betekent "Correctie zorguren voor CAK"
|
|
CREATE_VIEW(care_v_cak_changed_zorg_record, 0)
|
|
(
|
|
fclt_f_periode,
|
|
eerste_datum_periode_gewerkt,
|
|
bsn_client,
|
|
client_nr,
|
|
prs_client_cak_actie,
|
|
hele_uren,
|
|
minuten,
|
|
txt
|
|
)
|
|
AS
|
|
SELECT fclt_f_periode,
|
|
eerste_datum_periode_gewerkt,
|
|
bsn_client,
|
|
client_nr,
|
|
prs_client_cak_actie,
|
|
hele_uren,
|
|
minuten,
|
|
'51' || prs_client_cak_actie || txt
|
|
FROM care_v_cak_zorg_pre_record
|
|
WHERE prs_client_cak_actie = 1 OR prs_client_cak_actie = 2;
|
|
|
|
|
|
-- MB: let wel: een beetje tricky, maar wel ok!
|
|
-- Er mogen alleen clienten in bestand die nog niet eerder zijn aangeleverd (dus alleen de nieuwe clienten van dezer periode)
|
|
-- Opgelost via view care_v_first_factuur_uren_ooit en veld datum_eerste_keer_ooit, de allereerste keer dat client zorguren
|
|
-- heeft gekregen. Als die gelijk is aan de eerste keer dat zorg in deze periode is gekregen, dan conclusie: nieuwe client.
|
|
-- (NB: Niet via persoon-aanmaak datum vergeleken met periode, want dat zegt niet over ontvangen zorguren!!!)
|
|
|
|
-- Verder accepteert CAK niet dat 1,2 en 3 jan 2010 wordt weergegeven met 2010-week 53, dus in die gevallen wordt dat weeknr 01
|
|
-- Dit wordt ook enigszins tricky gedaan, maar wel ok, met verschil tussen beschikking_datum_van 'WW' en 'IW'...
|
|
|
|
-- Tenslotte de voorletters van client, die moeten zonder puntjes (de replace zorgt ervoor dat puntjes eruit worden gehaald).
|
|
|
|
-- Usrdata-Key 48 = SLEUTEL van waarde-code 'CLIENTNR' van eigen tabel '$SYSTEM-CAK'
|
|
-- (=1 indien gebruikt van expliciet clientnr, anders perslid_key als impliciet nr)
|
|
-- Prs_client_cak_actie = 1 betekent: client opnieuw aanmelden bij het CAK.
|
|
|
|
CREATE_VIEW( care_v_cak_clientstam_record, 0)
|
|
(
|
|
fclt_f_periode,
|
|
client_bsn,
|
|
txt
|
|
)
|
|
AS
|
|
SELECT cz.fclt_f_periode,
|
|
b.client_bsn,
|
|
'10' || TO_NUMBER (TO_CHAR (MIN (b.beschikking_datum_van), 'IYYY'))
|
|
|| LPAD (TO_NUMBER (TO_CHAR (MIN (b.beschikking_datum_van), 'IW')), 2,'0')
|
|
|| LPAD (COALESCE (MIN(client_nr), ' '), 10, '0')
|
|
|| '1'
|
|
|| LPAD (COALESCE (MIN (b.prs_client_naam), ' '), 25, ' ')
|
|
|| LPAD (COALESCE (MIN (b.prs_client_tussenvoegsel), ' '), 8, ' ')
|
|
|| LPAD (REPLACE (COALESCE (MIN (b.prs_client_voorletters), ' '), '.', ''), 5, ' ')
|
|
|| LPAD (COALESCE (SUBSTR (MIN (b.client_geboortedatum), 7, 4), ' '), 4)
|
|
|| LPAD (COALESCE (SUBSTR (MIN (b.client_geboortedatum), 4, 2), ' '), 2)
|
|
|| LPAD (COALESCE (SUBSTR (MIN (b.client_geboortedatum), 1, 2), ' '), 2)
|
|
|| LPAD (COALESCE (b.client_bsn, ' '), 9, ' ')
|
|
|| RPAD (' ', 6, ' ')
|
|
FROM care_v_beschikking_all b, care_v_cak_client_zorg_record cz
|
|
WHERE cz.bsn_client = b.client_bsn
|
|
AND b.pgb IS NULL
|
|
GROUP BY cz.fclt_f_periode, b.client_bsn;
|
|
|
|
|
|
-- Usrdata-Key 48 = SLEUTEL van waarde-code 'CLIENTNR' van eigen tabel '$SYSTEM-CAK'
|
|
-- (=1 indien gebruikt van expliciet clientnr, anders perslid_key als impliciet nr)
|
|
-- Prs_client_cak_actie = 1 betekent: client opnieuw aanmelden bij het CAK.
|
|
|
|
-- Bijzonderheid: gebruik van REGEXP_INSTR om dat vervelende huisnr toevoeging gedoe uit elkaar te trekken.
|
|
-- CAK rapport eist dat huisnr ALLEEN numerieke waarden heeft (dus 12A en 20-3 zijn ongeldig en moeten in huisnr toevoeging zitten)
|
|
|
|
-- Het veld Huisnr (1 in facilitor) verworden in CAK rapport 2 velden 'huisnr' en 'huisnrtoevoeging'
|
|
-- Voorbeelden:
|
|
-- Facilitor-> CAK
|
|
-- huisnr -> huisnr | huisnr toevoeging
|
|
-- 12A -> 12 | A
|
|
-- 20-3 -> 20 | 3
|
|
-- 123 -> 123 |
|
|
|
|
CREATE_VIEW( care_v_cak_clientaanv_record, 0)
|
|
(
|
|
fclt_f_periode,
|
|
client_bsn,
|
|
txt
|
|
)
|
|
AS
|
|
SELECT cz.fclt_f_periode,
|
|
b.client_bsn,
|
|
'12' || TO_NUMBER (TO_CHAR (MIN (b.beschikking_datum_van), 'IYYY'))
|
|
|| LPAD (TO_NUMBER (TO_CHAR (MIN (b.beschikking_datum_van), 'IW')), 2,'0')
|
|
|| LPAD (COALESCE (MIN(client_nr), ' '), 10, '0')
|
|
|| '1'
|
|
|| LPAD (COALESCE (MIN (client_mv), ' '), 1, ' ')
|
|
|| UPPER (LPAD (COALESCE (REPLACE (MIN (client_postcode), ' ', ''), ' '), 6, ' '))
|
|
|| LPAD (
|
|
COALESCE (
|
|
MIN(SUBSTR (
|
|
client_huisnr,
|
|
1,
|
|
DECODE (REGEXP_INSTR (client_huisnr, '[[:alpha:]]|[-]'),
|
|
0, LENGTH (client_huisnr),
|
|
REGEXP_INSTR (client_huisnr, '[[:alpha:]]|[-]') - 1
|
|
)
|
|
)),
|
|
' '
|
|
),
|
|
5,
|
|
' '
|
|
)
|
|
|| LPAD (
|
|
COALESCE (
|
|
MIN(SUBSTR (
|
|
client_huisnr,
|
|
DECODE (REGEXP_INSTR (client_huisnr, '[[:alpha:]]|[-]'),
|
|
0, LENGTH (client_huisnr) + 1,
|
|
REGEXP_INSTR (client_huisnr, '[[:alpha:]]|[-]')
|
|
)
|
|
)),
|
|
' '
|
|
),
|
|
4,
|
|
' '
|
|
)
|
|
|| RPAD (' ', 45, ' ')
|
|
FROM care_v_beschikking_all b, care_v_cak_client_zorg_record cz
|
|
WHERE cz.bsn_client = b.client_bsn
|
|
AND b.pgb IS NULL
|
|
GROUP BY cz.fclt_f_periode, b.client_bsn;
|
|
|
|
CREATE_VIEW( care_v_cak_c_clientstam_record, 0)
|
|
(
|
|
fclt_f_periode,
|
|
client_bsn,
|
|
txt
|
|
)
|
|
AS
|
|
SELECT cz.fclt_f_periode,
|
|
b.client_bsn,
|
|
'10' || TO_NUMBER (TO_CHAR (MIN (b.beschikking_datum_van), 'IYYY'))
|
|
|| LPAD (TO_NUMBER (TO_CHAR (MIN (b.beschikking_datum_van), 'IW')), 2,'0')
|
|
|| LPAD (COALESCE (MIN(client_nr), ' '), 10, '0')
|
|
|| '1'
|
|
|| LPAD (COALESCE (MIN (b.prs_client_naam), ' '), 25, ' ')
|
|
|| LPAD (COALESCE (MIN (b.prs_client_tussenvoegsel), ' '), 8, ' ')
|
|
|| LPAD (REPLACE (COALESCE (MIN (b.prs_client_voorletters), ' '), '.', ''), 5, ' ')
|
|
|| LPAD (COALESCE (SUBSTR (MIN (b.client_geboortedatum), 7, 4), ' '), 4)
|
|
|| LPAD (COALESCE (SUBSTR (MIN (b.client_geboortedatum), 4, 2), ' '), 2)
|
|
|| LPAD (COALESCE (SUBSTR (MIN (b.client_geboortedatum), 1, 2), ' '), 2)
|
|
|| LPAD (COALESCE (b.client_bsn, ' '), 9, ' ')
|
|
|| RPAD (' ', 6, ' ')
|
|
FROM care_v_beschikking_all b, care_v_cak_changed_zorg_record cz
|
|
WHERE cz.bsn_client = b.client_bsn
|
|
AND b.pgb IS NULL
|
|
GROUP BY cz.fclt_f_periode, b.client_bsn;
|
|
|
|
|
|
-- Usrdata-Key 48 = SLEUTEL van waarde-code 'CLIENTNR' van eigen tabel '$SYSTEM-CAK'
|
|
-- (=1 indien gebruikt van expliciet clientnr, anders perslid_key als impliciet nr)
|
|
-- Prs_client_cak_actie = 1 betekent: client opnieuw aanmelden bij het CAK.
|
|
|
|
-- Bijzonderheid: gebruik van REGEXP_INSTR om dat vervelende huisnr toevoeging gedoe uit elkaar te trekken.
|
|
-- CAK rapport eist dat huisnr ALLEEN numerieke waarden heeft (dus 12A en 20-3 zijn ongeldig en moeten in huisnr toevoeging zitten)
|
|
|
|
-- Het veld Huisnr (1 in facilitor) verworden in CAK rapport 2 velden 'huisnr' en 'huisnrtoevoeging'
|
|
-- Voorbeelden:
|
|
-- Facilitor-> CAK
|
|
-- huisnr -> huisnr | huisnr toevoeging
|
|
-- 12A -> 12 | A
|
|
-- 20-3 -> 20 | 3
|
|
-- 123 -> 123 |
|
|
|
|
CREATE_VIEW( care_v_cak_c_clientaanv_record, 0)
|
|
(
|
|
fclt_f_periode,
|
|
client_bsn,
|
|
txt
|
|
)
|
|
AS
|
|
SELECT cz.fclt_f_periode,
|
|
b.client_bsn,
|
|
'12' || TO_NUMBER (TO_CHAR (MIN (b.beschikking_datum_van), 'IYYY'))
|
|
|| LPAD (TO_NUMBER (TO_CHAR (MIN (b.beschikking_datum_van), 'IW')), 2,'0')
|
|
|| LPAD (COALESCE (MIN(client_nr), ' '), 10, '0')
|
|
|| '1'
|
|
|| LPAD (COALESCE (MIN (client_mv), ' '), 1, ' ')
|
|
|| UPPER (LPAD (COALESCE (REPLACE (MIN (client_postcode), ' ', ''), ' '), 6, ' '))
|
|
|| LPAD (
|
|
COALESCE (
|
|
MIN(SUBSTR (
|
|
client_huisnr,
|
|
1,
|
|
DECODE (REGEXP_INSTR (client_huisnr, '[[:alpha:]]|[-]'),
|
|
0, LENGTH (client_huisnr),
|
|
REGEXP_INSTR (client_huisnr, '[[:alpha:]]|[-]') - 1
|
|
)
|
|
)),
|
|
' '
|
|
),
|
|
5,
|
|
' '
|
|
)
|
|
|| LPAD (
|
|
COALESCE (
|
|
MIN(SUBSTR (
|
|
client_huisnr,
|
|
DECODE (REGEXP_INSTR (client_huisnr, '[[:alpha:]]|[-]'),
|
|
0, LENGTH (client_huisnr) + 1,
|
|
REGEXP_INSTR (client_huisnr, '[[:alpha:]]|[-]')
|
|
)
|
|
)),
|
|
' '
|
|
),
|
|
4,
|
|
' '
|
|
)
|
|
|| RPAD (' ', 45, ' ')
|
|
FROM care_v_beschikking_all b, care_v_cak_changed_zorg_record cz
|
|
WHERE cz.bsn_client = b.client_bsn
|
|
AND b.pgb IS NULL
|
|
GROUP BY cz.fclt_f_periode, b.client_bsn;
|
|
|
|
|
|
|
|
CREATE_VIEW( care_v_cak_body (fclt_f_periode, hele_uren, minuten, txt), 0)
|
|
AS
|
|
SELECT fclt_f_periode, 0, 0, txt
|
|
FROM care_v_cak_clientstam_record cs
|
|
UNION ALL
|
|
SELECT fclt_f_periode, 0, 0, txt
|
|
FROM care_v_cak_clientaanv_record ca
|
|
UNION ALL
|
|
SELECT fclt_f_periode, hele_uren, minuten, txt
|
|
FROM care_v_cak_client_zorg_record cz;
|
|
|
|
CREATE_VIEW( care_v_cak_changed_body (fclt_f_periode, hele_uren, minuten, txt), 0)
|
|
AS
|
|
SELECT fclt_f_periode, 0, 0, txt
|
|
FROM care_v_cak_c_clientstam_record cs
|
|
UNION ALL
|
|
SELECT fclt_f_periode, 0, 0, txt
|
|
FROM care_v_cak_c_clientaanv_record ca
|
|
UNION ALL
|
|
SELECT fclt_f_periode, hele_uren, minuten, txt
|
|
FROM care_v_cak_changed_zorg_record cz;
|
|
|
|
|
|
CREATE_VIEW( care_v_cak_sluit_record, 0)
|
|
(
|
|
fclt_f_periode,
|
|
txt
|
|
)
|
|
AS
|
|
SELECT fclt_f_periode,
|
|
'90'
|
|
|| LPAD (COUNT ( * ), 7, '0')
|
|
|| LPAD (SUM (hele_uren) + FLOOR (SUM (minuten) / 60), 10, '0')
|
|
|| LPAD (SUM (minuten) - (60 * FLOOR (SUM (minuten) / 60)), 2, '0')
|
|
|| RPAD (' ', 59, ' ')
|
|
FROM care_v_cak_body b
|
|
GROUP BY fclt_f_periode;
|
|
|
|
CREATE_VIEW( care_v_cak_sluit2_record, 0)
|
|
(
|
|
fclt_f_periode,
|
|
txt
|
|
)
|
|
AS
|
|
SELECT fclt_f_periode,
|
|
'90'
|
|
|| LPAD (COUNT ( * ), 7, '0')
|
|
|| LPAD (SUM (hele_uren) + FLOOR (SUM (minuten) / 60), 10, '0')
|
|
|| LPAD (SUM (minuten) - (60 * FLOOR (SUM (minuten) / 60)), 2, '0')
|
|
|| RPAD (' ', 59, ' ')
|
|
FROM care_v_cak_changed_body b
|
|
GROUP BY fclt_f_periode;
|
|
|
|
|
|
CREATE_VIEW( care_v_cak_rapport (fclt_f_periode, fclt_f_record, txt), 0)
|
|
AS
|
|
SELECT h.fclt_f_periode, SUBSTR (h.txt, 1, 2), h.txt
|
|
FROM care_v_cak_hoofd_record h
|
|
UNION ALL
|
|
SELECT b.fclt_f_periode, SUBSTR (b.txt, 1, 2), b.txt
|
|
FROM care_v_cak_body b
|
|
UNION ALL
|
|
SELECT s.fclt_f_periode, SUBSTR (s.txt, 1, 2), s.txt
|
|
FROM care_v_cak_sluit_record s;
|
|
|
|
CREATE_VIEW( care_v_cak_changed_rapport (fclt_f_periode, fclt_f_record, txt), 0)
|
|
AS
|
|
SELECT h.fclt_f_periode, SUBSTR (h.txt, 1, 2), h.txt
|
|
FROM care_v_cak_hoofd_record h
|
|
UNION ALL
|
|
SELECT b.fclt_f_periode, SUBSTR (b.txt, 1, 2), b.txt
|
|
FROM care_v_cak_changed_body b
|
|
UNION ALL
|
|
SELECT s.fclt_f_periode, SUBSTR (s.txt, 1, 2), s.txt
|
|
FROM care_v_cak_sluit2_record s;
|
|
|
|
|
|
-- Key 47 = SLEUTEL van waarde-code 'PERIODE' van eigen tabel '$SYSTEM-CAK' (formaat = yyyy-ww t/m yyyy-ww)
|
|
-- Gekozen: 0 = optie
|
|
-- 1 = gekozen
|
|
-- 2 = laatste export datum
|
|
-- 3 = export datum gezet
|
|
|
|
|
|
CREATE_VIEW( care_v_rap_cak (periode, gekozen), 0)
|
|
AS
|
|
SELECT fclt_f_periode, 0
|
|
FROM care_v_cak_choose_periode
|
|
GROUP BY fclt_f_periode
|
|
UNION
|
|
SELECT ud1.fac_usrdata_omschr, 1
|
|
FROM fac_usrdata ud1
|
|
WHERE ud1.fac_usrdata_key = 47
|
|
UNION
|
|
SELECT TO_CHAR (MAX (imp_schedule_done), 'DD-MM-YYYY HH24:MI'), 2
|
|
FROM imp_schedule
|
|
WHERE imp_schedule_name = 'CAK' AND imp_schedule_done IS NOT NULL AND imp_schedule_aanmaak IS NOT NULL
|
|
UNION
|
|
SELECT TO_CHAR (imp_schedule_aanmaak, 'DD-MM-YYYY HH24:MI'), 3
|
|
FROM imp_schedule
|
|
WHERE imp_schedule_name = 'CAK' AND imp_schedule_done IS NULL AND imp_schedule_aanmaak IS NOT NULL
|
|
UNION
|
|
SELECT to_char(count(*)), 4
|
|
FROM care_v_cak_clientcontrole
|
|
WHERE fout_code ='E';
|
|
|
|
CREATE_VIEW( care_v_rap_cak_chg (periode, gekozen), 0)
|
|
AS
|
|
SELECT fclt_f_periode, 0
|
|
FROM care_v_cak_choose_periode
|
|
GROUP BY fclt_f_periode
|
|
UNION
|
|
SELECT ud1.fac_usrdata_omschr, 1
|
|
FROM fac_usrdata ud1
|
|
WHERE ud1.fac_usrdata_key = 47
|
|
UNION
|
|
SELECT TO_CHAR (MAX (imp_schedule_done), 'DD-MM-YYYY HH24:MI'), 2
|
|
FROM imp_schedule
|
|
WHERE imp_schedule_name = 'CAK_CHG' AND imp_schedule_done IS NOT NULL AND imp_schedule_aanmaak IS NOT NULL
|
|
UNION
|
|
SELECT TO_CHAR (imp_schedule_aanmaak, 'DD-MM-YYYY HH24:MI'), 3
|
|
FROM imp_schedule
|
|
WHERE imp_schedule_name = 'CAK_CHG' AND imp_schedule_done IS NULL AND imp_schedule_aanmaak IS NOT NULL
|
|
UNION
|
|
SELECT to_char(count(*)), 4
|
|
FROM care_v_cak_clientcontrole
|
|
WHERE fout_code ='E';
|
|
|
|
|
|
-- Menutaak Export CAK bestand: appl/fac/fac_usrrap.asp?rap_name=care_v_rap_cak
|
|
-- Key 47 = SLEUTEL van waarde-code 'PERIODE' van eigen tabel '$SYSTEM-CAK' (formaat = yyyy-ww t/m yyyy-ww)
|
|
-- Gekozen: 0 = optie
|
|
-- 1 = gekozen
|
|
-- 2 = laatste export datum
|
|
-- 3 = export datum gezet
|
|
|
|
CREATE_VIEW( care_v_export_cak (result, result_order), 0)
|
|
AS
|
|
SELECT txt, ROWNUM
|
|
FROM care_v_cak_rapport
|
|
WHERE fclt_f_periode = (SELECT ud1.fac_usrdata_omschr
|
|
FROM fac_usrdata ud1
|
|
WHERE ud1.fac_usrdata_key = 47)
|
|
ORDER BY TO_NUMBER (SUBSTR (txt, 1, 2));
|
|
|
|
CREATE_VIEW( care_v_export_cak_chg (result, result_order), 0)
|
|
AS
|
|
SELECT txt, ROWNUM
|
|
FROM care_v_cak_changed_rapport
|
|
WHERE fclt_f_periode = (SELECT ud1.fac_usrdata_omschr
|
|
FROM fac_usrdata ud1
|
|
WHERE ud1.fac_usrdata_key = 47)
|
|
ORDER BY TO_NUMBER (SUBSTR (txt, 1, 2));
|
|
|
|
|
|
-- QlikView/Analyze views
|
|
--
|
|
-- NOTE: Analyzer (Qlikview) is vervallen per 1-1-2023. Onderstaande views worden dus niet
|
|
-- meer voor hun oorspronkelijke doel gebruikt. De info/opzet kan nog ergens handig voor zijn
|
|
-- bv voor UDR-alternatieven, mocht dat ter sprake komen (wat ik niet verwacht)
|
|
-- Tevens zullen er geen nieuwe CARE-klanten komen dus is er geen noodzaak om hier
|
|
-- aandacht aan te besteden. Keuze is om dit gewoon as-is te laten (en alleen statements
|
|
-- die tot errors leiden te verwijderen)
|
|
|
|
-- Periodetabel van 10 jaar in het verleden t/m 10 jaar in toekomst
|
|
CREATE_VIEW(care_v_qvw_periodeweektabel, 0)
|
|
(jaar, periode, week, maandag)
|
|
AS
|
|
SELECT
|
|
TO_CHAR (SYSDATE - 7*(LEVEL-1), 'IYYY') jaar,
|
|
LEAST(FLOOR((TO_CHAR (SYSDATE - 7*(LEVEL-1),'IW') - 1) /4) + 1, 13) periode,
|
|
TO_CHAR (SYSDATE - 7*(LEVEL-1), 'IW') week,
|
|
TRUNC (SYSDATE - 7*(LEVEL-1), 'IW') startdatum
|
|
FROM DUAL
|
|
CONNECT BY LEVEL <= 5*52+1
|
|
UNION
|
|
SELECT
|
|
TO_CHAR (SYSDATE + 7*(LEVEL), 'IYYY') jaar,
|
|
LEAST(FLOOR((TO_CHAR (SYSDATE + 7*(LEVEL),'IW') - 1) /4) + 1, 13) periode,
|
|
TO_CHAR (SYSDATE + 7*(LEVEL), 'IW') week,
|
|
TRUNC (SYSDATE + 7*(LEVEL), 'IW') startdatum
|
|
FROM DUAL
|
|
CONNECT BY LEVEL <= 5*52+1;
|
|
|
|
|
|
-- Eerst maar eens een hulp-view voor de view care_v_qvw_beschikk
|
|
-- In deze hulp-view: per melding-key de eerste datum waarop er zorg is verleend (en is goedgekeurd).
|
|
|
|
CREATE_VIEW( care_v_qvw_first_gewerkte_uren, 0)
|
|
AS
|
|
SELECT b.mld_melding_key, MIN (uur.datum_gewerkt) AS datum_eerste_keer_ooit
|
|
FROM care_v_beschikking_all b, care_v_te_factureren_uren uur
|
|
WHERE b.mld_melding_key = uur.mld_melding_key(+)
|
|
GROUP BY b.mld_melding_key;
|
|
|
|
|
|
CREATE_VIEW( care_v_qvw_beschikk, 0)
|
|
AS
|
|
SELECT b.mld_melding_key,
|
|
b.gemeente_key,
|
|
b.gemeente_code,
|
|
b.gemeente_omschrijving,
|
|
b.gemeente_veiling,
|
|
b.prs_client_naam || ',' || prs_client_tussenvoegsel || ',' || prs_client_voorletters AS prs_client_naam,
|
|
b.client_bsn,
|
|
b.client_mv,
|
|
TO_DATE(b.client_geboortedatum, 'DD-MM-YYYY') client_geboortedatum,
|
|
b.client_woonplaats,
|
|
b.beschikking_datum_van,
|
|
DECODE (
|
|
ABS(TO_NUMBER (TO_CHAR (b.beschikking_datum_van, 'IW'))
|
|
- TO_NUMBER (TO_CHAR (b.beschikking_datum_van, 'WW'))),
|
|
0,
|
|
TO_NUMBER (TO_CHAR (b.beschikking_datum_van, 'IW')),
|
|
1,
|
|
TO_NUMBER (TO_CHAR (b.beschikking_datum_van, 'IW')),
|
|
TO_NUMBER (TO_CHAR (b.beschikking_datum_van, 'WW'))
|
|
)
|
|
AS beschikking_week_van,
|
|
b.beschikking_jaar_van,
|
|
b.beschikking_maandag_van_std,
|
|
b.beschikking_maandag_van,
|
|
b.beschikking_maandag_tot_std,
|
|
b.beschikking_datum_tot,
|
|
coalesce(least(b.beschikking_maandag_tot,b.beschikking_afmeld_datum),b.beschikking_maandag_tot) beschikking_maandag_tot,
|
|
b.beschikking_afmeld_datum,
|
|
u.datum_eerste_keer_ooit,
|
|
b.product_code,
|
|
b.product,
|
|
COALESCE(b.pgb,0) pgb,
|
|
b.pgb_tarief,
|
|
b.uren_beschikking,
|
|
b.beschikking_nr,
|
|
b.ins_discipline_omschrijving
|
|
FROM care_v_beschikking_all b, care_v_qvw_first_gewerkte_uren u
|
|
WHERE b.mld_melding_key = u.mld_melding_key;
|
|
|
|
|
|
CREATE_VIEW( care_v_qvw_gemeente_tarieven, 0)
|
|
(alg_locatie_key, product_code, tarief, vandatum, tmdatum)
|
|
AS
|
|
SELECT alg_locatie_key, product_code, tarief,
|
|
COALESCE(LAG(duedatum+1, 1, TO_DATE('01-01-2010','DD-MM-YYYY')) OVER (ORDER BY alg_locatie_key, product_code, duedatum), TO_DATE('01-01-2010','DD-MM-YYYY')) AS vandatum,
|
|
COALESCE(duedatum,TO_DATE('31-12-2099','DD-MM-YYYY')) AS tmdatum
|
|
FROM care_v_gemeente_tarieven;
|
|
|
|
|
|
-- FSN#25608: CARE_V_QVW_BESCHIKK_PER_WEEK te complex voor Ora11, dus bovenstaande care_v_qvw_tarieven_per_week nu op statische tabel gebaseerd.
|
|
CREATE_VIEW( care_v_qvw_tarieven_per_week, 0)
|
|
(alg_locatie_key, product_code, tarief, jaar, periode, week, maandag)
|
|
AS
|
|
SELECT alg_locatie_key, product_code, tarief, jaar, periode, week, maandag
|
|
FROM care_v_qvw_gemeente_tarieven gt, care_t_qvw_periodeweektabel pw
|
|
WHERE pw.maandag >= vandatum AND pw.maandag <= tmdatum;
|
|
|
|
|
|
//Hier de 1e filtering op maandag_std (anders krijgen we veel te veel records), maar wel -7 en + 7 om extra ruim te zitten...
|
|
//in qlikview (qvs) gaan we nauwkeuriger op de "good_monday" filereren (anders hier een performance-probleem ivm functie goodmay en vooral fac_tracking: >> 10 min)
|
|
CREATE_VIEW( care_v_qvw_beschikk_per_week, 0)
|
|
(mld_melding_key, beschikking_maandag_van, beschikking_maandag_tot, uren_beschikking, tarief, jaar, periode, week, maandag_vande_week)
|
|
AS
|
|
SELECT mld_melding_key, beschikking_maandag_van, beschikking_maandag_tot, uren_beschikking,
|
|
CASE
|
|
WHEN b.pgb = 1 THEN b.pgb_tarief
|
|
WHEN b.gemeente_veiling = 1 THEN b.pgb_tarief
|
|
ELSE t.tarief
|
|
END,
|
|
jaar, periode, week, t.maandag
|
|
FROM care_v_qvw_beschikk b, care_v_qvw_tarieven_per_week t
|
|
WHERE t.maandag >= b.beschikking_maandag_van_std - 7 AND t.maandag < b.beschikking_maandag_tot_std + 7
|
|
AND b.gemeente_key = alg_locatie_key
|
|
AND b.product_code = t.product_code;
|
|
|
|
|
|
|
|
|
|
CREATE_VIEW( care_v_qvw_zorguren, 0)
|
|
AS
|
|
SELECT u.mld_melding_key,
|
|
u.jaar,
|
|
DECODE (ABS (TO_NUMBER (TO_CHAR (u.datum_gewerkt, 'IW')) - TO_NUMBER (TO_CHAR (u.datum_gewerkt, 'WW'))),
|
|
0, TO_NUMBER (TO_CHAR (u.datum_gewerkt, 'IW')),
|
|
1, TO_NUMBER (TO_CHAR (u.datum_gewerkt, 'IW')),
|
|
TO_NUMBER (TO_CHAR (u.datum_gewerkt, 'WW'))
|
|
)
|
|
weeknr,
|
|
u.datum_gewerkt,
|
|
u.uren_besteed,
|
|
z.prs_verzorger_naam || ',' || z.prs_verzorger_tussenvoegsel || ',' || z.prs_verzorger_voorletters
|
|
AS prs_verzorger_naam,
|
|
z.verzorger_bsn,
|
|
z.verzorger_mv,
|
|
TO_DATE(z.verzorger_geboortedatum, 'DD-MM-YYYY') verzorger_geboortedatum,
|
|
z.verzorger_woonplaats,
|
|
z.prs_verzorger_dienstverband
|
|
FROM care_v_bestede_uren_all u, care_v_verzorger z
|
|
WHERE z.prs_perslid_key = u.prs_perslid_key(+) AND uren_status >= 3;
|
|
|
|
CREATE_VIEW( care_v_qvw_impr_uren, 0)
|
|
AS
|
|
SELECT u.mld_impropdr_key,
|
|
u.mld_impropdr_code,
|
|
u.mld_impropdr_omschrijving,
|
|
u.jaar,
|
|
DECODE (ABS (TO_NUMBER (TO_CHAR (u.datum_gewerkt, 'IW')) - TO_NUMBER (TO_CHAR (u.datum_gewerkt, 'WW'))),
|
|
0, TO_NUMBER (TO_CHAR (u.datum_gewerkt, 'IW')),
|
|
1, TO_NUMBER (TO_CHAR (u.datum_gewerkt, 'IW')),
|
|
TO_NUMBER (TO_CHAR (u.datum_gewerkt, 'WW'))
|
|
)
|
|
weeknr,
|
|
u.datum_gewerkt,
|
|
u.uren_besteed AS impr_uren,
|
|
z.prs_verzorger_naam || ',' || z.prs_verzorger_tussenvoegsel || ',' || z.prs_verzorger_voorletters
|
|
AS prs_verzorger_naam,
|
|
z.verzorger_bsn
|
|
FROM care_v_improductieve_uren_all u, care_v_verzorger z
|
|
WHERE z.prs_perslid_key = u.prs_perslid_key(+) AND uren_status >= 3;
|
|
|
|
|
|
CREATE_VIEW( care_v_qvw_kosten, 0)
|
|
AS
|
|
SELECT mld_kosten_code,
|
|
mld_kosten_omschrijving,
|
|
mld_opdruren_kosten_besteed,
|
|
mld_kosten_kosten,
|
|
k.mld_melding_key,
|
|
TO_CHAR (k.datum, 'IYYY') jaar,
|
|
TO_NUMBER (TO_CHAR (k.datum, 'IW')) weeknr,
|
|
k.datum AS datum_gewerkt,
|
|
z.prs_verzorger_naam || ',' || z.prs_verzorger_tussenvoegsel || ',' || z.prs_verzorger_voorletters
|
|
AS prs_verzorger_naam,
|
|
z.verzorger_bsn
|
|
FROM care_v_onkosten_all k, care_v_verzorger z
|
|
WHERE z.prs_perslid_key = k.prs_perslid_key(+) AND status >= 3;
|
|
|
|
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
-- Google kilometer berekening --
|
|
-- Google kilometer berekening --
|
|
-- Google kilometer berekening --
|
|
-- Google kilometer berekening --
|
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
-- ATCH#21595: Google km berekening
|
|
-- Kilometers van de medewerkers op datum, alleen van auto (vandaar k.mld_kosten_code = 'A') en de Productieve uren (vandaar opdracht_type = 'P').
|
|
-- De improductieve kilometers worden buiten beschouwing gelaten, aangezien we daarvan geen adresgegevens hebben, en met de Google-vergelijking niet mee moeten nemen.
|
|
|
|
CREATE_VIEW( care_v_km_weekbrief, 0)
|
|
(
|
|
prs_perslid_key,
|
|
periode,
|
|
bsn,
|
|
nr,
|
|
verzorger,
|
|
adres,
|
|
huisnr,
|
|
postcode,
|
|
woonplaats,
|
|
telefoon,
|
|
mobiel,
|
|
email,
|
|
auto_rijbewijs,
|
|
kilometers,
|
|
datum,
|
|
jaar,
|
|
week,
|
|
status,
|
|
mld_opdr_uren_key,
|
|
prs_client_naam,
|
|
prs_client_tussenvoegsel,
|
|
prs_client_voorletters,
|
|
client_bsn,
|
|
client_meisjesnaam,
|
|
client_adres,
|
|
client_huisnr,
|
|
client_postcode,
|
|
client_woonplaats,
|
|
client_telefoon_thuis,
|
|
client_telefoon_werk,
|
|
client_mobiel
|
|
)
|
|
AS
|
|
SELECT v.prs_perslid_key,
|
|
uur.jaar || '-' || LPAD (uur.periodenr, 2, '0'),
|
|
v.verzorger_bsn,
|
|
v.prs_verzorger_personeelsnr,
|
|
v.prs_verzorger_naam || ',' || v.prs_verzorger_voorletters || ' ' || v.prs_verzorger_tussenvoegsel,
|
|
v.verzorger_adres,
|
|
v.verzorger_huisnr,
|
|
v.verzorger_postcode,
|
|
v.verzorger_woonplaats,
|
|
v.verzorger_telefoon_werk,
|
|
v.prs_verzorger_mobiel,
|
|
v.prs_verzorger_email,
|
|
v.auto_rijbewijs,
|
|
ouk.mld_opdruren_kosten_besteed,
|
|
uur.datum_gewerkt,
|
|
uur.jaar,
|
|
uur.weeknr,
|
|
uur.uren_status,
|
|
uur.mld_opdr_uren_key,
|
|
c.prs_client_naam,
|
|
c.prs_client_tussenvoegsel,
|
|
c.prs_client_voorletters,
|
|
c.client_bsn,
|
|
c.client_meisjesnaam,
|
|
c.client_adres,
|
|
c.client_huisnr,
|
|
c.client_postcode,
|
|
c.client_woonplaats,
|
|
c.client_telefoon_thuis,
|
|
c.client_telefoon_werk,
|
|
c.prs_client_mobiel
|
|
FROM care_v_totaal_uren_all uur, care_v_verzorger v, mld_opdruren_kosten ouk, mld_kosten k, mld_opdr o, mld_melding m, care_v_client c
|
|
WHERE uur.prs_perslid_key = v.prs_perslid_key
|
|
AND uur.mld_opdr_uren_key = ouk.mld_opdr_uren_key
|
|
AND ouk.mld_kosten_key = k.mld_kosten_key
|
|
AND k.mld_kosten_verwijder IS NULL
|
|
AND k.mld_kosten_code = 'A'
|
|
AND opdracht_type = 'P'
|
|
AND uur.opdracht_key=o.mld_opdr_key
|
|
AND o.mld_melding_key = m.mld_melding_key
|
|
AND m.prs_perslid_key = c.prs_client_key;
|
|
|
|
|
|
CREATE_VIEW( care_v_verzorger_km_per_dag, 0)
|
|
(
|
|
prs_perslid_key,
|
|
datum,
|
|
jaar,
|
|
periode,
|
|
week,
|
|
bsn,
|
|
verzorger,
|
|
adres,
|
|
huisnr,
|
|
postcode,
|
|
woonplaats,
|
|
telefoon,
|
|
mobiel,
|
|
email,
|
|
auto_rijbewijs,
|
|
kilometers,
|
|
mld_opdr_uren_key
|
|
)
|
|
AS
|
|
SELECT prs_perslid_key,
|
|
datum,
|
|
MIN(jaar),
|
|
MIN(periode),
|
|
MIN(week),
|
|
MIN(bsn),
|
|
MIN(verzorger),
|
|
MIN(adres),
|
|
MIN(huisnr),
|
|
MIN(postcode),
|
|
MIN(woonplaats),
|
|
MIN(telefoon),
|
|
MIN(mobiel),
|
|
MIN(email),
|
|
MIN(auto_rijbewijs),
|
|
SUM(kilometers),
|
|
MIN(mld_opdr_uren_key)
|
|
FROM care_v_km_weekbrief
|
|
GROUP BY prs_perslid_key, datum;
|
|
|
|
|
|
// De inter-client kilometers slaan we emt een '#' op achteraan de url van mld_opdruren_dagkosten_opm
|
|
// Deze view decodeert dat en moet gebruikt worden in plaats van mld_opdruren_dagkosten
|
|
// Als mld_opdruren_dagkosten een eigen veld mld_opdruren_dag_interkm heeft kan
|
|
// deze view weer veel simpelere (of zelfs opgedoekt worden)
|
|
CREATE_VIEW(care_v_opdruren_dagkosten, 0)
|
|
AS SELECT
|
|
mld_opdruren_dagkosten_key,
|
|
prs_perslid_key,
|
|
mld_opdruren_dagkosten_datum,
|
|
mld_opdruren_dagkosten_aantal,
|
|
mld_opdruren_dagkosten_totaal,
|
|
CASE
|
|
WHEN INSTR (mld_opdruren_dagkosten_opm, '#') > 0
|
|
THEN
|
|
SUBSTR (mld_opdruren_dagkosten_opm, 1, INSTR (mld_opdruren_dagkosten_opm, '#') - 1)
|
|
ELSE
|
|
mld_opdruren_dagkosten_opm
|
|
END mld_opdruren_dagkosten_opm,
|
|
mld_opdruren_dagkosten_aanmaak,
|
|
CASE
|
|
WHEN INSTR (mld_opdruren_dagkosten_opm, '#') > 0
|
|
THEN
|
|
fac.safe_to_number (SUBSTR (mld_opdruren_dagkosten_opm, INSTR (mld_opdruren_dagkosten_opm, '#') + 1))
|
|
ELSE
|
|
0
|
|
END interkm
|
|
FROM mld_opdruren_dagkosten;
|
|
|
|
CREATE_VIEW( care_v_rap_km_per_periode, 0)
|
|
(
|
|
hide_f_prs_perslid_key,
|
|
fclt_f_jaar,
|
|
fclt_f_periode,
|
|
fclt_f_verzorger,
|
|
woonplaats,
|
|
fclt_f_auto,
|
|
km,
|
|
norm_km,
|
|
verschil,
|
|
perc
|
|
)
|
|
AS
|
|
SELECT km.prs_perslid_key,
|
|
to_char(km.jaar),
|
|
km.periode,
|
|
MIN(km.verzorger),
|
|
MIN(km.woonplaats),
|
|
COALESCE(MIN(km.auto_rijbewijs),'?'),
|
|
SUM(km.kilometers),
|
|
ROUND((SUM(cd.mld_opdruren_dagkosten_totaal+500))/1000),
|
|
SUM(km.kilometers) - ROUND((SUM(cd.mld_opdruren_dagkosten_totaal+500))/1000),
|
|
CASE
|
|
WHEN
|
|
SUM(cd.mld_opdruren_dagkosten_totaal) > 0 THEN
|
|
ROUND((SUM(km.kilometers) - ROUND((SUM(cd.mld_opdruren_dagkosten_totaal+500))/1000))/ROUND((SUM(cd.mld_opdruren_dagkosten_totaal+500))/1000)*100) || ' %'
|
|
ELSE 'Onbekend'
|
|
END
|
|
FROM care_v_verzorger_km_per_dag km, care_v_opdruren_dagkosten cd
|
|
WHERE km.prs_perslid_key = cd.prs_perslid_key (+)
|
|
AND km.datum = cd.mld_opdruren_dagkosten_datum (+)
|
|
GROUP BY km.prs_perslid_key, km.jaar, km.periode;
|
|
|
|
|
|
CREATE_VIEW( care_v_rap_km_per_week, 0)
|
|
(
|
|
hide_f_prs_perslid_key,
|
|
fclt_f_jaar,
|
|
fclt_f_periode,
|
|
fclt_f_week,
|
|
fclt_f_verzorger,
|
|
woonplaats,
|
|
fclt_f_auto,
|
|
km,
|
|
norm_km,
|
|
verschil,
|
|
perc
|
|
)
|
|
AS
|
|
SELECT km.prs_perslid_key,
|
|
to_char(km.jaar),
|
|
km.periode,
|
|
to_char(km.week),
|
|
MIN(km.verzorger),
|
|
MIN(km.woonplaats),
|
|
COALESCE(MIN(km.auto_rijbewijs),'?'),
|
|
SUM(km.kilometers),
|
|
ROUND((SUM(cd.mld_opdruren_dagkosten_totaal+500))/1000),
|
|
SUM(km.kilometers) - ROUND((SUM(cd.mld_opdruren_dagkosten_totaal+500))/1000),
|
|
CASE
|
|
WHEN
|
|
SUM(cd.mld_opdruren_dagkosten_totaal) > 0 THEN
|
|
ROUND((SUM(km.kilometers) - ROUND((SUM(cd.mld_opdruren_dagkosten_totaal+500))/1000))/ROUND((SUM(cd.mld_opdruren_dagkosten_totaal+500))/1000)*100) || ' %'
|
|
ELSE 'Onbekend'
|
|
END
|
|
FROM care_v_verzorger_km_per_dag km, care_v_opdruren_dagkosten cd
|
|
WHERE km.prs_perslid_key = cd.prs_perslid_key (+)
|
|
AND km.datum = cd.mld_opdruren_dagkosten_datum (+)
|
|
GROUP BY km.prs_perslid_key, km.jaar, km.periode, km.week;
|
|
|
|
|
|
|
|
|
|
CREATE_VIEW( care_v_rap_km_per_dag, 0)
|
|
(
|
|
hide_f_prs_perslid_key,
|
|
urole,
|
|
hide_f_datum,
|
|
datum,
|
|
hide_maandag,
|
|
fclt_f_jaar,
|
|
fclt_f_periode,
|
|
fclt_f_week,
|
|
fclt_f_verzorger,
|
|
adres,
|
|
huisnr,
|
|
postcode,
|
|
woonplaats,
|
|
telefoonnr,
|
|
mobiel,
|
|
fclt_f_auto,
|
|
clienten,
|
|
km,
|
|
norm_m,
|
|
norm_km,
|
|
verschil,
|
|
fclt_f_staffel,
|
|
perc,
|
|
fclt_f_percentage,
|
|
url,
|
|
html_berekening,
|
|
mld_opdr_uren_key
|
|
)
|
|
AS
|
|
SELECT km.prs_perslid_key,
|
|
'bo',
|
|
km.datum,
|
|
to_char(km.datum,'yyyy-mm-dd'),
|
|
to_char(TRUNC (km.datum, 'IW'), 'yyyy-mm-dd'),
|
|
to_char(km.jaar),
|
|
km.periode,
|
|
to_char(km.week),
|
|
km.verzorger,
|
|
km.adres,
|
|
km.huisnr,
|
|
km.postcode,
|
|
km.woonplaats,
|
|
km.telefoon,
|
|
km.mobiel,
|
|
COALESCE(km.auto_rijbewijs,'?'),
|
|
to_char(cd.mld_opdruren_dagkosten_aantal),
|
|
km.kilometers,
|
|
COALESCE(cd.mld_opdruren_dagkosten_totaal,0),
|
|
ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000),
|
|
CASE
|
|
WHEN cd.mld_opdruren_dagkosten_totaal > 0
|
|
THEN km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000)
|
|
ELSE 0
|
|
END,
|
|
CASE
|
|
WHEN
|
|
cd.mld_opdruren_dagkosten_totaal > 0 THEN
|
|
CASE
|
|
WHEN km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000) <= -2
|
|
THEN 'A. < (Minder dan NORM geschreven)'
|
|
WHEN km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000) >= -1 AND km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000) <= 1
|
|
THEN 'B. = (Volgens NORM geschreven)'
|
|
WHEN km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000) >= 2 AND km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000) <= 5
|
|
THEN 'C. 2 - 5 km (Boven NORM geschreven)'
|
|
WHEN km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000) >= 6 AND km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000) <= 10
|
|
THEN 'D. 6 - 10 km (Boven NORM geschreven)'
|
|
WHEN km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000) >= 11 AND km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000) <= 20
|
|
THEN 'E. 11 - 20 km (Boven NORM geschreven)'
|
|
WHEN km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000) >= 21 AND km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000) <= 50
|
|
THEN 'F. 21 - 50 km (Boven NORM geschreven)'
|
|
WHEN km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000) >= 51 AND km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000) <= 100
|
|
THEN 'G. 51 - 100 km (Boven NORM geschreven)'
|
|
ELSE 'H. > 100 km (Boven NORM geschreven)'
|
|
END
|
|
ELSE 'Onbekend'
|
|
END,
|
|
CASE
|
|
WHEN
|
|
cd.mld_opdruren_dagkosten_totaal > 0 THEN
|
|
ROUND((km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000))/ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000)*100) || ' %'
|
|
ELSE 'Onbekend'
|
|
END,
|
|
CASE
|
|
WHEN
|
|
cd.mld_opdruren_dagkosten_totaal > 0 THEN
|
|
CASE
|
|
WHEN ROUND((km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000))/ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000)*100) < 0
|
|
THEN 'A. < % (Minder dan NORM geschreven)'
|
|
WHEN ROUND((km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000))/ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000)*100) = 0
|
|
THEN 'B. = (Volgens NORM geschreven)'
|
|
WHEN ROUND((km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000))/ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000)*100) > 0
|
|
AND
|
|
ROUND((km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000))/ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000)*100) <= 10
|
|
THEN 'C. 0 - 10% (Boven NORM geschreven)'
|
|
WHEN ROUND((km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000))/ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000)*100) > 10
|
|
AND
|
|
ROUND((km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000))/ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000)*100) <= 20
|
|
THEN 'D. 11 - 20% (Boven NORM geschreven)'
|
|
WHEN ROUND((km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000))/ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000)*100) > 20
|
|
AND
|
|
ROUND((km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000))/ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000)*100) <= 50
|
|
THEN 'E. 21 - 50% (Boven NORM geschreven)'
|
|
WHEN ROUND((km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000))/ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000)*100) > 51
|
|
AND
|
|
ROUND((km.kilometers - ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000))/ROUND((cd.mld_opdruren_dagkosten_totaal+500)/1000)*100) <= 100
|
|
THEN 'F. 51 - 100% (Boven NORM geschreven)'
|
|
ELSE 'G. > 100 % (Boven NORM geschreven)'
|
|
END
|
|
ELSE 'Onbekend'
|
|
END,
|
|
mld_opdruren_dagkosten_opm,
|
|
CASE
|
|
WHEN cd.mld_opdruren_dagkosten_totaal IS NULL THEN '<a href="..\..\appl\care\care_calc_dist.asp?mld_opdr_uren_key=' || km.mld_opdr_uren_key || '"><img src="..\..\appl\care\images\vraagje.png"></a>'
|
|
WHEN cd.mld_opdruren_dagkosten_totaal < 0 THEN '<a href="..\..\appl\care\care_calc_dist.asp?mld_opdr_uren_key=' || km.mld_opdr_uren_key || '"><img src="..\..\appl\care\images\foutje.png"></a>'
|
|
ELSE '<a href="' || cd.mld_opdruren_dagkosten_opm || '" target="_blank"><img src="..\..\appl\care\images\googlemaps.png"></a>'
|
|
END,
|
|
km.mld_opdr_uren_key
|
|
FROM care_v_verzorger_km_per_dag km, care_v_opdruren_dagkosten cd
|
|
WHERE km.prs_perslid_key = cd.prs_perslid_key (+)
|
|
AND km.datum = cd.mld_opdruren_dagkosten_datum (+);
|
|
|
|
|
|
|
|
-- Rapport "Ondersteuning/check t.b.v. ingevulde kilometers op de weekbrief" voor de verzorger
|
|
-- Dit rapport gaat max. 2 periodes, feitelijk 2x4=8 weken terug in de historie (tov nu)
|
|
CREATE_VIEW( care_v_rap_my_km_per_dag, 0)
|
|
(
|
|
fclt_3d_user_key,
|
|
urole,
|
|
datum,
|
|
hide_maandag,
|
|
fclt_f_jaar,
|
|
fclt_f_periode,
|
|
fclt_f_week,
|
|
clienten,
|
|
km,
|
|
norm_m,
|
|
norm_km,
|
|
verschil,
|
|
hide_f_staffel,
|
|
perc,
|
|
hide_f_percentage,
|
|
url,
|
|
html_berekening,
|
|
mld_opdr_uren_key
|
|
)
|
|
AS
|
|
SELECT hide_f_prs_perslid_key,
|
|
'fe',
|
|
datum,
|
|
hide_maandag,
|
|
fclt_f_jaar,
|
|
fclt_f_periode,
|
|
fclt_f_week,
|
|
clienten,
|
|
km,
|
|
norm_m,
|
|
norm_km,
|
|
verschil,
|
|
fclt_f_staffel,
|
|
perc,
|
|
fclt_f_percentage,
|
|
url,
|
|
html_berekening,
|
|
mld_opdr_uren_key
|
|
FROM care_v_rap_km_per_dag
|
|
WHERE hide_f_datum >= SYSDATE - 2*4*7;
|
|
|
|
------------------------------------------------------
|
|
-- Kilometers met de auto gereden bij improductieve uren, zoals coordinatie en werkoverleg
|
|
|
|
CREATE_VIEW( care_v_km_improd_dag, 0)
|
|
(
|
|
prs_perslid_key,
|
|
periode,
|
|
bsn,
|
|
nr,
|
|
verzorger,
|
|
adres,
|
|
huisnr,
|
|
postcode,
|
|
woonplaats,
|
|
telefoon,
|
|
mobiel,
|
|
email,
|
|
auto_rijbewijs,
|
|
kilometers,
|
|
datum,
|
|
jaar,
|
|
week,
|
|
status,
|
|
mld_opdr_uren_key,
|
|
improductief
|
|
)
|
|
AS
|
|
SELECT v.prs_perslid_key,
|
|
uur.jaar || '-' || LPAD (uur.periodenr, 2, '0'),
|
|
v.verzorger_bsn,
|
|
v.prs_verzorger_personeelsnr,
|
|
v.prs_verzorger_naam || ',' || v.prs_verzorger_voorletters || ' ' || v.prs_verzorger_tussenvoegsel,
|
|
v.verzorger_adres,
|
|
v.verzorger_huisnr,
|
|
v.verzorger_postcode,
|
|
v.verzorger_woonplaats,
|
|
v.verzorger_telefoon_werk,
|
|
v.prs_verzorger_mobiel,
|
|
v.prs_verzorger_email,
|
|
v.auto_rijbewijs,
|
|
ouk.mld_opdruren_kosten_besteed,
|
|
uur.datum_gewerkt,
|
|
uur.jaar,
|
|
uur.weeknr,
|
|
uur.uren_status,
|
|
uur.mld_opdr_uren_key,
|
|
io.mld_impropdr_omschrijving
|
|
FROM care_v_totaal_uren_all uur, care_v_verzorger v, mld_opdruren_kosten ouk, mld_kosten k, mld_impropdr io
|
|
WHERE uur.prs_perslid_key = v.prs_perslid_key
|
|
AND uur.mld_opdr_uren_key = ouk.mld_opdr_uren_key
|
|
AND ouk.mld_kosten_key = k.mld_kosten_key
|
|
AND k.mld_kosten_verwijder IS NULL
|
|
AND k.mld_kosten_code = 'A'
|
|
AND opdracht_type = 'I'
|
|
AND io.mld_impropdr_key = uur.opdracht_key;
|
|
|
|
|
|
CREATE_VIEW( care_v_rap_km_impr_periode, 0)
|
|
(
|
|
hide_f_prs_perslid_key,
|
|
fclt_f_jaar,
|
|
fclt_f_periode,
|
|
fclt_f_verzorger,
|
|
woonplaats,
|
|
fclt_f_auto,
|
|
km
|
|
)
|
|
AS
|
|
SELECT km.prs_perslid_key,
|
|
to_char(km.jaar),
|
|
km.periode,
|
|
MIN(km.verzorger),
|
|
MIN(km.woonplaats),
|
|
COALESCE(MIN(km.auto_rijbewijs),'?'),
|
|
SUM(km.kilometers)
|
|
FROM care_v_km_improd_dag km
|
|
GROUP BY km.prs_perslid_key, km.jaar, km.periode;
|
|
|
|
|
|
-- matchtype = A (mAtch tussen medewerker werktijden en opdrachttijd),
|
|
-- = B (medewerker is Beschikbaar, en heeft hier geen opdracht,
|
|
-- = C (de opdrachttijd Conflicteert met de medewerker's werktijden).
|
|
|
|
-- Deel A: uitvoeringsplan valt geheel of gedeeltelijk binnen de inzetbaarheid van een persoon, opgesplits in A1 en A2:
|
|
-- A1:goede => mvan en mtot vallen binnen werktijd
|
|
-- A2:foute => mvan en/of mtot vallen/valt buiten werktijd
|
|
-- Deel B: Persoon is beschikbaar, maar er is geen uitvoeringsplan binnen zijn tijd ingepland
|
|
-- Deel C: Persoon is niet beschikbaar, maar er is wel een uitvoeringsplan op die tijd voor hem ingepland
|
|
-- Deel D: Persoon is niet ingepland en persoon heeft geen uitvoeringsplan op deze dag.
|
|
|
|
CREATE_VIEW( care_v_capaciteitsplan, 0)
|
|
(
|
|
prs_perslid_inzetbaar_key,
|
|
mld_opdr_uitvoeren_key,
|
|
prs_perslid_key,
|
|
opdr_van,
|
|
opdr_tot,
|
|
pvan,
|
|
ptot,
|
|
opdr_vantijd,
|
|
opdr_tottijd,
|
|
pvantijd,
|
|
ptottijd,
|
|
firstvan,
|
|
dag,
|
|
verzorger_naam,
|
|
client_naam,
|
|
mld_opdr_key,
|
|
mld_melding_key,
|
|
mld_opdr_startdatum,
|
|
mld_opdr_einddatum,
|
|
mld_opdr_uitvoeren_infrequent,
|
|
matchtype
|
|
)
|
|
AS
|
|
SELECT DISTINCT pi.prs_perslid_inzetbaar_key inzetbaar_key,
|
|
mu.mld_opdr_uitvoeren_key uitvoeren_key,
|
|
p.prs_perslid_key prs_key,
|
|
mu.mld_opdr_uitvoeren_van mvan,
|
|
mu.mld_opdr_uitvoeren_tot mtot,
|
|
pi.prs_perslid_inzetbaar_van pvan,
|
|
pi.prs_perslid_inzetbaar_tot ptot,
|
|
(CASE WHEN FLOOR(mu.mld_opdr_uitvoeren_van/60) < 10 THEN '0' ELSE '' END) || FLOOR(mu.mld_opdr_uitvoeren_van/60) || ':' || (CASE WHEN MOD(mu.mld_opdr_uitvoeren_van, 60) < 10 THEN '0' ELSE '' END) || MOD(mu.mld_opdr_uitvoeren_van, 60) mvantijd,
|
|
(CASE WHEN FLOOR(mu.mld_opdr_uitvoeren_tot/60) < 10 THEN '0' ELSE '' END) || FLOOR(mu.mld_opdr_uitvoeren_tot/60) || ':' || (CASE WHEN MOD(mu.mld_opdr_uitvoeren_tot, 60) < 10 THEN '0' ELSE '' END) || MOD(mu.mld_opdr_uitvoeren_tot, 60) mtottijd,
|
|
(CASE WHEN FLOOR(pi.prs_perslid_inzetbaar_van/60) < 10 THEN '0' ELSE '' END) || FLOOR(pi.prs_perslid_inzetbaar_van/60) || ':' || (CASE WHEN MOD(pi.prs_perslid_inzetbaar_van, 60) < 10 THEN '0' ELSE '' END) || MOD(pi.prs_perslid_inzetbaar_van, 60) pvantijd,
|
|
(CASE WHEN FLOOR(pi.prs_perslid_inzetbaar_tot/60) < 10 THEN '0' ELSE '' END) || FLOOR(pi.prs_perslid_inzetbaar_tot/60) || ':' || (CASE WHEN MOD(pi.prs_perslid_inzetbaar_tot, 60) < 10 THEN '0' ELSE '' END) || MOD(pi.prs_perslid_inzetbaar_tot, 60) ptottijd,
|
|
CASE
|
|
WHEN pi.prs_perslid_inzetbaar_van < mu.mld_opdr_uitvoeren_van
|
|
THEN pi.prs_perslid_inzetbaar_van
|
|
ELSE mu.mld_opdr_uitvoeren_van
|
|
END firstvan,
|
|
CASE
|
|
WHEN mu.mld_opdr_uitvoeren_dag = 0
|
|
THEN 7
|
|
ELSE mu.mld_opdr_uitvoeren_dag
|
|
END dag,
|
|
(SELECT pf.prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key = p.prs_perslid_key)
|
|
prs_naam,
|
|
(SELECT pf.prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key = p1.prs_perslid_key)
|
|
prs_client,
|
|
o.mld_opdr_key opdr_key,
|
|
m.mld_melding_key mld_key,
|
|
o.mld_opdr_datumbegin startdatum,
|
|
o.mld_opdr_einddatum einddatum,
|
|
mu.mld_opdr_uitvoeren_infrequent infrequent,
|
|
'A1' part
|
|
FROM prs_perslid_inzetbaar pi,
|
|
prs_perslid p,
|
|
mld_opdr o,
|
|
mld_melding m,
|
|
prs_perslid p1,
|
|
mld_opdr_uitvoeren mu
|
|
WHERE pi.prs_perslid_key = p.prs_perslid_key
|
|
AND p.prs_perslid_key = o.mld_uitvoerende_keys
|
|
AND p.prs_afdeling_key = 21 -- LET OP: Dit is de klantspecifieke afdeling "HV-medewrk"
|
|
AND o.mld_melding_key = m.mld_melding_key
|
|
AND m.prs_perslid_key_voor = p1.prs_perslid_key
|
|
AND o.mld_opdr_key = mu.mld_opdr_key
|
|
AND pi.prs_perslid_inzetbaar_dag = mu.mld_opdr_uitvoeren_dag
|
|
AND o.mld_opdr_einddatum >= TRUNC(SYSDATE)
|
|
AND (pi.prs_perslid_inzetbaar_van <= mu.mld_opdr_uitvoeren_van
|
|
AND pi.prs_perslid_inzetbaar_tot >= mu.mld_opdr_uitvoeren_tot)
|
|
UNION ALL
|
|
SELECT DISTINCT pi.prs_perslid_inzetbaar_key inzetbaar_key,
|
|
mu.mld_opdr_uitvoeren_key uitvoeren_key,
|
|
p.prs_perslid_key prs_key,
|
|
mu.mld_opdr_uitvoeren_van mvan,
|
|
mu.mld_opdr_uitvoeren_tot mtot,
|
|
pi.prs_perslid_inzetbaar_van pvan,
|
|
pi.prs_perslid_inzetbaar_tot ptot,
|
|
(CASE WHEN FLOOR(mu.mld_opdr_uitvoeren_van/60) < 10 THEN '0' ELSE '' END) || FLOOR(mu.mld_opdr_uitvoeren_van/60) || ':' || (CASE WHEN MOD(mu.mld_opdr_uitvoeren_van, 60) < 10 THEN '0' ELSE '' END) || MOD(mu.mld_opdr_uitvoeren_van, 60) mvantijd,
|
|
(CASE WHEN FLOOR(mu.mld_opdr_uitvoeren_tot/60) < 10 THEN '0' ELSE '' END) || FLOOR(mu.mld_opdr_uitvoeren_tot/60) || ':' || (CASE WHEN MOD(mu.mld_opdr_uitvoeren_tot, 60) < 10 THEN '0' ELSE '' END) || MOD(mu.mld_opdr_uitvoeren_tot, 60) mtottijd,
|
|
(CASE WHEN FLOOR(pi.prs_perslid_inzetbaar_van/60) < 10 THEN '0' ELSE '' END) || FLOOR(pi.prs_perslid_inzetbaar_van/60) || ':' || (CASE WHEN MOD(pi.prs_perslid_inzetbaar_van, 60) < 10 THEN '0' ELSE '' END) || MOD(pi.prs_perslid_inzetbaar_van, 60) pvantijd,
|
|
(CASE WHEN FLOOR(pi.prs_perslid_inzetbaar_tot/60) < 10 THEN '0' ELSE '' END) || FLOOR(pi.prs_perslid_inzetbaar_tot/60) || ':' || (CASE WHEN MOD(pi.prs_perslid_inzetbaar_tot, 60) < 10 THEN '0' ELSE '' END) || MOD(pi.prs_perslid_inzetbaar_tot, 60) ptottijd,
|
|
CASE
|
|
WHEN pi.prs_perslid_inzetbaar_van < mu.mld_opdr_uitvoeren_van
|
|
THEN pi.prs_perslid_inzetbaar_van
|
|
ELSE mu.mld_opdr_uitvoeren_van
|
|
END firstvan,
|
|
CASE
|
|
WHEN mu.mld_opdr_uitvoeren_dag = 0
|
|
THEN 7
|
|
ELSE mu.mld_opdr_uitvoeren_dag
|
|
END dag,
|
|
(SELECT pf.prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key = p.prs_perslid_key)
|
|
prs_naam,
|
|
(SELECT pf.prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key = p1.prs_perslid_key)
|
|
prs_client,
|
|
o.mld_opdr_key opdr_key,
|
|
m.mld_melding_key mld_key,
|
|
o.mld_opdr_datumbegin startdatum,
|
|
o.mld_opdr_einddatum einddatum,
|
|
mu.mld_opdr_uitvoeren_infrequent infrequent,
|
|
'A2' part
|
|
FROM prs_perslid_inzetbaar pi,
|
|
prs_perslid p,
|
|
mld_opdr o,
|
|
mld_melding m,
|
|
prs_perslid p1,
|
|
mld_opdr_uitvoeren mu
|
|
WHERE pi.prs_perslid_key = p.prs_perslid_key
|
|
AND p.prs_perslid_key = o.mld_uitvoerende_keys
|
|
AND p.prs_afdeling_key = 21 -- LET OP: Dit is de klantspecifieke afdeling "HV-medewrk"
|
|
AND o.mld_melding_key = m.mld_melding_key
|
|
AND m.prs_perslid_key_voor = p1.prs_perslid_key
|
|
AND o.mld_opdr_key = mu.mld_opdr_key
|
|
AND pi.prs_perslid_inzetbaar_dag = mu.mld_opdr_uitvoeren_dag
|
|
AND o.mld_opdr_einddatum >= TRUNC(SYSDATE)
|
|
AND ((pi.prs_perslid_inzetbaar_van > mu.mld_opdr_uitvoeren_van
|
|
AND pi.prs_perslid_inzetbaar_van < mu.mld_opdr_uitvoeren_tot)
|
|
OR (pi.prs_perslid_inzetbaar_tot > mu.mld_opdr_uitvoeren_van
|
|
AND pi.prs_perslid_inzetbaar_tot < mu.mld_opdr_uitvoeren_tot))
|
|
UNION ALL
|
|
SELECT pi.prs_perslid_inzetbaar_key inzetbaar_key,
|
|
NULL uitvoeren_key,
|
|
p.prs_perslid_key prs_key,
|
|
NULL mvan,
|
|
NULL mtot,
|
|
pi.prs_perslid_inzetbaar_van pvan,
|
|
pi.prs_perslid_inzetbaar_tot ptot,
|
|
NULL mvantijd,
|
|
NULL mtottijd,
|
|
(CASE WHEN FLOOR(pi.prs_perslid_inzetbaar_van/60) < 10 THEN '0' ELSE '' END) || FLOOR(pi.prs_perslid_inzetbaar_van/60) || ':' || (CASE WHEN MOD(pi.prs_perslid_inzetbaar_van, 60) < 10 THEN '0' ELSE '' END) || MOD(pi.prs_perslid_inzetbaar_van, 60) pvantijd,
|
|
(CASE WHEN FLOOR(pi.prs_perslid_inzetbaar_tot/60) < 10 THEN '0' ELSE '' END) || FLOOR(pi.prs_perslid_inzetbaar_tot/60) || ':' || (CASE WHEN MOD(pi.prs_perslid_inzetbaar_tot, 60) < 10 THEN '0' ELSE '' END) || MOD(pi.prs_perslid_inzetbaar_tot, 60) ptottijd,
|
|
pi.prs_perslid_inzetbaar_van firstvan,
|
|
CASE
|
|
WHEN pi.prs_perslid_inzetbaar_dag = 0
|
|
THEN 7
|
|
ELSE pi.prs_perslid_inzetbaar_dag
|
|
END dag,
|
|
(SELECT pf.prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key = p.prs_perslid_key)
|
|
prs_naam,
|
|
NULL prs_client,
|
|
NULL opdr_key,
|
|
NULL mld_key,
|
|
NULL startdatum,
|
|
NULL einddatum,
|
|
NULL infrequent,
|
|
'B' part
|
|
FROM prs_perslid_inzetbaar pi,
|
|
prs_perslid p
|
|
WHERE pi.prs_perslid_key = p.prs_perslid_key
|
|
AND p.prs_afdeling_key = 21 -- LET OP: Dit is de klantspecifieke afdeling "HV-medewrk"
|
|
AND pi.prs_perslid_inzetbaar_key NOT IN
|
|
(SELECT pi1.prs_perslid_inzetbaar_key
|
|
FROM prs_perslid_inzetbaar pi1,
|
|
mld_opdr o,
|
|
mld_opdr_uitvoeren mu
|
|
WHERE pi1.prs_perslid_key = o.mld_uitvoerende_keys
|
|
AND o.mld_opdr_key = mu.mld_opdr_key
|
|
AND pi1.prs_perslid_inzetbaar_dag = mu.mld_opdr_uitvoeren_dag
|
|
AND o.mld_opdr_einddatum >= TRUNC(SYSDATE)
|
|
AND (pi.prs_perslid_inzetbaar_van < mu.mld_opdr_uitvoeren_tot
|
|
AND pi.prs_perslid_inzetbaar_tot > mu.mld_opdr_uitvoeren_van) -- Alle overlap van A1 + A2
|
|
)
|
|
UNION ALL
|
|
SELECT DISTINCT NULL inzetbaar_key,
|
|
mu.mld_opdr_uitvoeren_key uitvoeren_key,
|
|
p.prs_perslid_key prs_key,
|
|
mu.mld_opdr_uitvoeren_van mvan,
|
|
mu.mld_opdr_uitvoeren_tot mtot,
|
|
NULL pvan,
|
|
NULL ptot,
|
|
(CASE WHEN FLOOR(mu.mld_opdr_uitvoeren_van/60) < 10 THEN '0' ELSE '' END) || FLOOR(mu.mld_opdr_uitvoeren_van/60) || ':' || (CASE WHEN MOD(mu.mld_opdr_uitvoeren_van, 60) < 10 THEN '0' ELSE '' END) || MOD(mu.mld_opdr_uitvoeren_van, 60) mvantijd,
|
|
(CASE WHEN FLOOR(mu.mld_opdr_uitvoeren_tot/60) < 10 THEN '0' ELSE '' END) || FLOOR(mu.mld_opdr_uitvoeren_tot/60) || ':' || (CASE WHEN MOD(mu.mld_opdr_uitvoeren_tot, 60) < 10 THEN '0' ELSE '' END) || MOD(mu.mld_opdr_uitvoeren_tot, 60) mtottijd,
|
|
NULL pvantijd,
|
|
NULL ptottijd,
|
|
mu.mld_opdr_uitvoeren_van firstvan,
|
|
CASE
|
|
WHEN mu.mld_opdr_uitvoeren_dag = 0
|
|
THEN 7
|
|
ELSE mu.mld_opdr_uitvoeren_dag
|
|
END dag,
|
|
(SELECT pf.prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key = p.prs_perslid_key)
|
|
prs_naam,
|
|
(SELECT pf.prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key = p1.prs_perslid_key)
|
|
prs_client,
|
|
o.mld_opdr_key opdr_key,
|
|
m.mld_melding_key mld_key,
|
|
o.mld_opdr_datumbegin startdatum,
|
|
o.mld_opdr_einddatum einddatum,
|
|
mu.mld_opdr_uitvoeren_infrequent infrequent,
|
|
'C' part
|
|
FROM prs_perslid_inzetbaar pi,
|
|
prs_perslid p,
|
|
mld_opdr o,
|
|
mld_melding m,
|
|
prs_perslid p1,
|
|
mld_opdr_uitvoeren mu
|
|
WHERE pi.prs_perslid_key(+) = p.prs_perslid_key
|
|
AND p.prs_perslid_key = o.mld_uitvoerende_keys
|
|
AND p.prs_afdeling_key = 21 -- LET OP: Dit is de klantspecifieke afdeling "HV-medewrk"
|
|
AND o.mld_melding_key = m.mld_melding_key
|
|
AND m.prs_perslid_key_voor = p1.prs_perslid_key
|
|
AND o.mld_opdr_key = mu.mld_opdr_key
|
|
AND o.mld_opdr_einddatum >= TRUNC(SYSDATE)
|
|
AND mu.mld_opdr_uitvoeren_key NOT IN
|
|
(SELECT DISTINCT mu1.mld_opdr_uitvoeren_key
|
|
FROM prs_perslid_inzetbaar pi,
|
|
mld_opdr o,
|
|
mld_opdr_uitvoeren mu1
|
|
WHERE pi.prs_perslid_key = o.mld_uitvoerende_keys
|
|
AND o.mld_opdr_key = mu1.mld_opdr_key
|
|
AND pi.prs_perslid_inzetbaar_dag = mu1.mld_opdr_uitvoeren_dag
|
|
AND o.mld_opdr_einddatum >= TRUNC(SYSDATE)
|
|
AND (pi.prs_perslid_inzetbaar_van < mu.mld_opdr_uitvoeren_tot
|
|
AND pi.prs_perslid_inzetbaar_tot > mu.mld_opdr_uitvoeren_van) -- Alle overlap van A1 + A2
|
|
)
|
|
UNION ALL
|
|
SELECT NULL inzetbaar_key,
|
|
NULL uitvoeren_key,
|
|
p.prs_perslid_key prs_key,
|
|
NULL mvan,
|
|
NULL mtot,
|
|
NULL pvan,
|
|
NULL ptot,
|
|
NULL mvantijd,
|
|
NULL mtottijd,
|
|
NULL pvantijd,
|
|
NULL ptottijd,
|
|
NULL firstvan,
|
|
CASE
|
|
WHEN weekdagen.dag = 0
|
|
THEN 7
|
|
ELSE weekdagen.dag
|
|
END dag,
|
|
(SELECT pf.prs_perslid_naam_full
|
|
FROM prs_v_perslid_fullnames pf
|
|
WHERE pf.prs_perslid_key = p.prs_perslid_key)
|
|
prs_naam,
|
|
NULL prs_client,
|
|
NULL opdr_key,
|
|
NULL mld_key,
|
|
NULL startdatum,
|
|
NULL einddatum,
|
|
NULL infrequent,
|
|
'D' part
|
|
FROM prs_perslid p,
|
|
(SELECT 0 dag FROM DUAL UNION ALL
|
|
SELECT 1 dag FROM DUAL UNION ALL
|
|
SELECT 2 dag FROM DUAL UNION ALL
|
|
SELECT 3 dag FROM DUAL UNION ALL
|
|
SELECT 4 dag FROM DUAL UNION ALL
|
|
SELECT 5 dag FROM DUAL UNION ALL
|
|
SELECT 6 dag FROM DUAL) weekdagen
|
|
WHERE p.prs_perslid_key NOT IN (SELECT pi.prs_perslid_key
|
|
FROM prs_perslid_inzetbaar pi
|
|
WHERE pi.prs_perslid_inzetbaar_dag = weekdagen.dag
|
|
UNION
|
|
SELECT o.mld_uitvoerende_keys
|
|
FROM mld_opdr o,
|
|
mld_opdr_uitvoeren mu
|
|
WHERE o.mld_opdr_key = mu.mld_opdr_key
|
|
AND o.mld_opdr_einddatum >= TRUNC(SYSDATE)
|
|
AND mu.mld_opdr_uitvoeren_dag = weekdagen.dag)
|
|
AND p.prs_afdeling_key = 21;
|
|
|
|
|
|
CREATE_VIEW ( care_v_prs_opdrachturen, 0)
|
|
(prs_perslid_key,
|
|
prs_verzorger_tot_opdr_uren
|
|
)
|
|
AS
|
|
SELECT v.prs_perslid_key, SUM (mld_opdr_uren)
|
|
FROM care_v_verzorger v, mld_opdr o
|
|
WHERE v.prs_perslid_key = o.mld_uitvoerende_keys
|
|
AND o.mld_opdr_einddatum >= TRUNC(SYSDATE)
|
|
GROUP BY v.prs_perslid_key;
|
|
|
|
|
|
CREATE_VIEW( care_v_rap_prs_planbord, 0)
|
|
(
|
|
prs_perslid_inzetbaar_key,
|
|
mld_opdr_uitvoeren_key,
|
|
prs_perslid_key,
|
|
opdr_van,
|
|
opdr_tot,
|
|
pvan,
|
|
ptot,
|
|
opdr_vantijd,
|
|
opdr_tottijd,
|
|
pvantijd,
|
|
ptottijd,
|
|
firstvan,
|
|
dag,
|
|
--fclt_f_maandag,
|
|
--fclt_f_dinsdag,
|
|
--fclt_f_woensdag,
|
|
--fclt_f_donderdag,
|
|
--fclt_f_vrijdag,
|
|
--fclt_f_zaterdag,
|
|
--fclt_f_zondag,
|
|
verzorger_naam,
|
|
fclt_f_functie,
|
|
verzorger_dienstverband,
|
|
verzorger_opdr_uren,
|
|
fclt_f_besteedbaar,
|
|
dienstverband_tot,
|
|
fclt_f_woonplaats,
|
|
client_naam,
|
|
mld_opdr_key,
|
|
mld_melding_key,
|
|
mld_opdr_startdatum,
|
|
mld_opdr_einddatum,
|
|
mld_opdr_uitvoeren_infrequent,
|
|
matchtype
|
|
)
|
|
AS
|
|
SELECT
|
|
prs_perslid_inzetbaar_key,
|
|
mld_opdr_uitvoeren_key,
|
|
c.prs_perslid_key,
|
|
opdr_van,
|
|
opdr_tot,
|
|
pvan,
|
|
ptot,
|
|
opdr_vantijd,
|
|
opdr_tottijd,
|
|
pvantijd,
|
|
ptottijd,
|
|
firstvan,
|
|
dag,
|
|
--decode(dag,1,'Ja','Nee'),
|
|
--decode(dag,2,'Ja','Nee'),
|
|
--decode(dag,3,'Ja','Nee'),
|
|
--decode(dag,4,'Ja','Nee'),
|
|
--decode(dag,5,'Ja','Nee'),
|
|
--decode(dag,6,'Ja','Nee'),
|
|
--decode(dag,7,'Ja','Nee'),
|
|
verzorger_naam,
|
|
prs_verzorger_functie,
|
|
prs_verzorger_dienstverband,
|
|
prs_verzorger_tot_opdr_uren,
|
|
CASE
|
|
WHEN prs_verzorger_dienstverband - prs_verzorger_tot_opdr_uren < 0
|
|
THEN 'A. Overpland'
|
|
WHEN prs_verzorger_dienstverband - prs_verzorger_tot_opdr_uren = 0
|
|
THEN 'B. Geen uren'
|
|
WHEN prs_verzorger_dienstverband - prs_verzorger_tot_opdr_uren <= 1
|
|
THEN 'C. Max 1 uur'
|
|
WHEN prs_verzorger_dienstverband - prs_verzorger_tot_opdr_uren <= 2
|
|
THEN 'D. Max 2 uur'
|
|
WHEN prs_verzorger_dienstverband - prs_verzorger_tot_opdr_uren <= 3
|
|
THEN 'E. Max 3 uur'
|
|
WHEN prs_verzorger_dienstverband - prs_verzorger_tot_opdr_uren <= 5
|
|
THEN 'F. Max 5 uur'
|
|
WHEN prs_verzorger_dienstverband - prs_verzorger_tot_opdr_uren <= 10
|
|
THEN 'G. Max 10 uur'
|
|
WHEN prs_verzorger_dienstverband - prs_verzorger_tot_opdr_uren <= 20
|
|
THEN 'H. Max 20 uur'
|
|
ELSE 'I. Meer dan 20 uur'
|
|
END,
|
|
prs_verzorger_einddatum,
|
|
UPPER(verzorger_woonplaats),
|
|
client_naam,
|
|
mld_opdr_key,
|
|
mld_melding_key,
|
|
mld_opdr_startdatum,
|
|
mld_opdr_einddatum,
|
|
mld_opdr_uitvoeren_infrequent,
|
|
matchtype
|
|
FROM care_v_capaciteitsplan c, care_v_verzorger v, care_v_prs_opdrachturen u
|
|
WHERE c.prs_perslid_key=v.prs_perslid_key
|
|
AND c.prs_perslid_key = u.prs_perslid_key(+) ;
|
|
|
|
|
|
CREATE_VIEW( care_v_rap_prs_team_planbord, 0)
|
|
AS
|
|
SELECT
|
|
prs_perslid_inzetbaar_key,
|
|
mld_opdr_uitvoeren_key,
|
|
pb.prs_perslid_key,
|
|
opdr_van,
|
|
opdr_tot,
|
|
pvan,
|
|
ptot,
|
|
opdr_vantijd,
|
|
opdr_tottijd,
|
|
pvantijd,
|
|
ptottijd,
|
|
firstvan,
|
|
dag,
|
|
--fclt_f_maandag,
|
|
--fclt_f_dinsdag,
|
|
--fclt_f_woensdag,
|
|
--fclt_f_donderdag,
|
|
--fclt_f_vrijdag,
|
|
--fclt_f_zaterdag,
|
|
--fclt_f_zondag,
|
|
tl.ins_discipline_omschrijving as fclt_f_team,
|
|
verzorger_naam,
|
|
fclt_f_functie,
|
|
verzorger_dienstverband,
|
|
verzorger_opdr_uren,
|
|
fclt_f_besteedbaar,
|
|
dienstverband_tot,
|
|
fclt_f_woonplaats,
|
|
client_naam,
|
|
mld_opdr_key,
|
|
mld_melding_key,
|
|
mld_opdr_startdatum,
|
|
mld_opdr_einddatum,
|
|
mld_opdr_uitvoeren_infrequent,
|
|
matchtype
|
|
FROM care_v_rap_prs_planbord pb, care_v_teamlid tl
|
|
WHERE pb.prs_perslid_key = tl.prs_perslid_key;
|
|
|
|
CREATE_VIEW( care_v_maxprs_afgemeld, 0)
|
|
AS
|
|
SELECT m.prs_perslid_key, MAX (fac_tracking_datum) datum_uitstroom
|
|
FROM mld_melding m,
|
|
mld_stdmelding std,
|
|
mld_discipline d,
|
|
fac_tracking ft
|
|
WHERE m.mld_stdmelding_key = std.mld_stdmelding_key
|
|
AND std.mld_ins_discipline_key = d.ins_discipline_key
|
|
AND d.ins_srtdiscipline_key = 1 --- zorg
|
|
AND mld_melding_status IN (5, 6)
|
|
AND fac_activiteit_key IS NULL
|
|
AND ft.fac_tracking_refkey = m.mld_melding_key
|
|
AND fac_srtnotificatie_key =
|
|
(SELECT fac_srtnotificatie_key
|
|
FROM fac_srtnotificatie
|
|
WHERE fac_srtnotificatie_code = 'MLDAFM')
|
|
AND m.prs_perslid_key NOT IN
|
|
(SELECT prs_perslid_key
|
|
FROM mld_melding
|
|
WHERE m.mld_stdmelding_key = std.mld_stdmelding_key
|
|
AND std.mld_ins_discipline_key =
|
|
d.ins_discipline_key
|
|
AND d.ins_srtdiscipline_key = 1 --- zorg
|
|
AND mld_melding_status IN (2, 3, 4, 7))
|
|
GROUP BY m.prs_perslid_key;
|
|
|
|
CREATE_VIEW( care_v_uitstroom, 0)
|
|
AS
|
|
SELECT m.prs_perslid_key, fac_tracking_datum, reden_beeindiging
|
|
FROM mld_melding m,
|
|
mld_stdmelding std,
|
|
mld_discipline d,
|
|
fac_tracking ft,
|
|
(SELECT fac_usrdata_omschr reden_beeindiging, mld_melding_key
|
|
FROM mld_kenmerkmelding km, fac_usrdata ud
|
|
WHERE km.mld_kenmerk_key = 21
|
|
AND ud.fac_usrtab_key = 61
|
|
AND TO_CHAR (fac_usrdata_key) = mld_kenmerkmelding_waarde)
|
|
krb
|
|
WHERE m.mld_stdmelding_key = std.mld_stdmelding_key
|
|
AND std.mld_ins_discipline_key = d.ins_discipline_key
|
|
AND d.ins_srtdiscipline_key = 1 --- zorg
|
|
AND mld_melding_status IN (5, 6)
|
|
AND fac_activiteit_key IS NULL
|
|
AND ft.fac_tracking_refkey = m.mld_melding_key
|
|
AND fac_srtnotificatie_key =
|
|
(SELECT fac_srtnotificatie_key
|
|
FROM fac_srtnotificatie
|
|
WHERE fac_srtnotificatie_code = 'MLDAFM')
|
|
AND krb.mld_melding_key(+) = m.mld_melding_key
|
|
AND m.prs_perslid_key NOT IN
|
|
(SELECT prs_perslid_key
|
|
FROM mld_melding
|
|
WHERE m.mld_stdmelding_key = std.mld_stdmelding_key
|
|
AND std.mld_ins_discipline_key =
|
|
d.ins_discipline_key
|
|
AND d.ins_srtdiscipline_key = 1 --- zorg
|
|
AND mld_melding_status IN (2, 3, 4, 7))
|
|
GROUP BY m.prs_perslid_key, fac_tracking_datum, reden_beeindiging;
|
|
|
|
CREATE_VIEW ( care_v_rap_in_uitstroom, 0)
|
|
(
|
|
Type,
|
|
Naam,
|
|
Datum,
|
|
Reden_beeindiging
|
|
)
|
|
AS
|
|
SELECT 'Uitstroom',
|
|
prs_perslid_naam_full cu,
|
|
fac_tracking_datum,
|
|
cu.reden_beeindiging
|
|
FROM care_v_uitstroom cu,
|
|
care_v_maxprs_afgemeld mpmax,
|
|
prs_v_perslid_fullnames_all pf
|
|
WHERE mpmax.prs_perslid_key = cu.prs_perslid_key
|
|
AND mpmax.datum_uitstroom = cu.fac_tracking_datum
|
|
AND cu.prs_perslid_key = pf.prs_perslid_key
|
|
UNION ALL
|
|
SELECT 'Instroom',
|
|
pf.prs_perslid_naam_full,
|
|
prs_perslid_aanmaak,
|
|
NULL reden_uitstroom
|
|
FROM prs_perslid p, prs_v_perslid_fullnames_all pf
|
|
WHERE p.prs_perslid_key = pf.prs_perslid_key
|
|
AND prs_srtperslid_key = (SELECT prs_srtperslid_key
|
|
FROM prs_srtperslid
|
|
WHERE prs_srtperslid_upper = 'CLIENT');
|
|
|
|
|
|
CREATE_VIEW (CARE_V_FACTUUR_UREN_MND, 0)
|
|
(
|
|
FCLT_X_PERIODE,
|
|
PERIODE,
|
|
VAN,
|
|
TOT,
|
|
FACTUURNUMMER,
|
|
WZACODE,
|
|
FCLT_F_GEMEENTE,
|
|
BSN_CLIENT,
|
|
CLIENT_VOORLETTERS,
|
|
CLIENT_TUSSENVOEGSEL,
|
|
CLIENT_NAAM,
|
|
CLIENT_MEISJESNAAM,
|
|
NAAM2,
|
|
GEBOORTEDATUM,
|
|
CLIENT_GESLACHT,
|
|
CLIENT_ADRES,
|
|
CLIENT_HUISNR,
|
|
CLIENT_POSTCODE,
|
|
CLIENT_WOONPLAATS,
|
|
CLIENT_TELEFOON,
|
|
CLIENT_MOBIEL,
|
|
CLIENT_CONTACTPERS,
|
|
CLIENT_EMAIL,
|
|
BIJZONDERHEDEN,
|
|
BESCHIKKING_OMSCHR,
|
|
BESCHIKKINGNR,
|
|
BESCHIKKING_VAN,
|
|
BESCHIKKING_TOT,
|
|
INDICATIE_WEEK,
|
|
PRODUCT,
|
|
TARIEF,
|
|
UREN,
|
|
MINUTEN,
|
|
BEDRAG_EURO
|
|
)
|
|
AS
|
|
SELECT u.periode,
|
|
SUBSTR (u.periode, 6, 2) || '.' || SUBSTR (u.periode, 1, 4),
|
|
TRUNC (u.start_periode),
|
|
TRUNC (u.einde_periode),
|
|
SUBSTR (u.periode, 1, 4)
|
|
|| COALESCE (TO_CHAR (u.gemeente_factnr_infix),
|
|
u.prs_bedrijf_factnr_infix)
|
|
|| SUBSTR (u.periode, 6, 2)
|
|
|| COALESCE (TO_CHAR (u.gemeente_factnr_suffix), u.gemeente_code)
|
|
factuurnr,
|
|
u.wzacode,
|
|
u.gemeente,
|
|
u.client_bsn,
|
|
u.prs_client_voorletters
|
|
client_voorletters,
|
|
u.prs_client_tussenvoegsel
|
|
client_tussenvoegsel,
|
|
u.prs_client_naam
|
|
client_naam,
|
|
u.client_meisjesnaam,
|
|
u.naam2,
|
|
u.client_geboortedatum,
|
|
u.client_geslacht,
|
|
u.client_adres,
|
|
u.client_huisnr,
|
|
u.client_postcode,
|
|
u.client_woonplaats,
|
|
u.client_telefoon_thuis,
|
|
u.prs_client_mobiel,
|
|
u.client_contactpersonen,
|
|
u.prs_client_email,
|
|
u.client_bijzonderheden,
|
|
u.beschikking_omschr,
|
|
u.beschikking_nr,
|
|
u.beschikking_van,
|
|
u.beschikking_tot,
|
|
u.uren_beschikking
|
|
ind_uren_week,
|
|
u.product,
|
|
u.tarief,
|
|
SUM (u.uren_besteed)
|
|
totaal_periode,
|
|
(SUM (u.uren_besteed)) * 60,
|
|
SUM (u.uren_besteed) * u.tarief
|
|
bedrag_euro
|
|
FROM (SELECT EXTRACT (YEAR FROM uur.start_periode)
|
|
|| '-'
|
|
|| LPAD (EXTRACT (MONTH FROM uur.start_periode), 2, '0')
|
|
periode,
|
|
uur.start_periode,
|
|
uur.einde_periode,
|
|
pb.prs_leverancier_nr
|
|
wzacode,
|
|
pb.prs_bedrijf_telefoon2
|
|
prs_bedrijf_factnr_infix,
|
|
b.gemeente_omschrijving
|
|
gemeente,
|
|
b.gemeente_code,
|
|
b.gemeente_factnr_infix,
|
|
b.gemeente_factnr_suffix,
|
|
b.client_bsn,
|
|
DECODE (ud.fac_usrdata_omschr,
|
|
1, b.prs_client_nr,
|
|
b.prs_client_key),
|
|
b.prs_client_voorletters,
|
|
b.prs_client_tussenvoegsel,
|
|
b.prs_client_naam,
|
|
b.client_meisjesnaam,
|
|
b.prs_client_voorletters
|
|
|| ' '
|
|
|| b.prs_client_tussenvoegsel
|
|
|| ' '
|
|
|| b.prs_client_naam
|
|
naam2,
|
|
b.client_mv
|
|
client_geslacht,
|
|
b.client_geboortedatum,
|
|
b.client_adres,
|
|
b.client_huisnr,
|
|
b.client_postcode,
|
|
b.client_woonplaats,
|
|
b.client_telefoon_thuis,
|
|
b.prs_client_mobiel,
|
|
b.client_contactpersonen,
|
|
b.prs_client_email,
|
|
b.client_bijzonderheden,
|
|
b.beschikking_omschr,
|
|
b.beschikking_nr,
|
|
TRUNC (b.beschikking_datum_van)
|
|
beschikking_van,
|
|
TRUNC (b.beschikking_datum_tot)
|
|
beschikking_tot,
|
|
b.uren_beschikking,
|
|
b.product,
|
|
CASE
|
|
WHEN b.pgb = 1 THEN b.pgb_tarief
|
|
WHEN b.gemeente_veiling = 1 THEN b.pgb_tarief
|
|
ELSE gt.tarief
|
|
END
|
|
tarief,
|
|
uur.datum_gewerkt,
|
|
uur.uren_besteed
|
|
FROM care_v_beschikking_all b,
|
|
(SELECT o.mld_melding_key,
|
|
o.mld_opdr_key,
|
|
o.mld_opdr_datumbegin,
|
|
TRUNC (o.mld_opdr_einddatum)
|
|
einddatum,
|
|
o.mld_opdr_uren
|
|
uren_opdracht,
|
|
ou.mld_opdr_uren_datum
|
|
datum_gewerkt,
|
|
ou.mld_opdr_uren_besteed
|
|
uren_besteed,
|
|
TRUNC (ou.mld_opdr_uren_datum, 'Month')
|
|
start_periode,
|
|
LAST_DAY (TRUNC (ou.mld_opdr_uren_datum, 'Month'))
|
|
einde_periode
|
|
FROM mld_opdr o, mld_opdr_uren ou
|
|
WHERE ou.mld_opdr_key = o.mld_opdr_key
|
|
AND ou.mld_opdr_uren_status = 3) uur,
|
|
prs_bedrijf pb,
|
|
fac_usrdata ud,
|
|
care_v_gemeente_tarieven gt
|
|
WHERE uur.mld_melding_key = b.mld_melding_key
|
|
AND pb.prs_bedrijf_key = 2
|
|
AND ud.fac_usrdata_key = 48
|
|
AND gt.alg_locatie_key = b.gemeente_key
|
|
AND gt.product_code = b.product_code
|
|
AND b.pgb IS NULL
|
|
AND COALESCE (gt.duedatum, SYSDATE) =
|
|
(SELECT COALESCE (MIN (gt2.duedatum), SYSDATE)
|
|
FROM care_v_gemeente_tarieven gt2
|
|
WHERE COALESCE (gt2.duedatum, SYSDATE + 999) >=
|
|
uur.datum_gewerkt
|
|
AND gt2.alg_locatie_key = b.gemeente_key
|
|
AND gt2.product_code = b.product_code)) u,
|
|
( SELECT (TO_CHAR (
|
|
TO_DATE (
|
|
TRUNC (
|
|
TRUNC (ADD_MONTHS (SYSDATE, LEVEL * -1)),
|
|
'Month')),
|
|
'YYYY'))
|
|
|| '-'
|
|
|| (TO_CHAR (
|
|
TO_DATE (
|
|
TRUNC (
|
|
TRUNC (ADD_MONTHS (SYSDATE, LEVEL * -1)),
|
|
'MM')),
|
|
'MM')) periode
|
|
FROM DUAL
|
|
CONNECT BY LEVEL <= 1 * 12) p
|
|
WHERE u.PERIODE = p.periode
|
|
GROUP BY u.periode,
|
|
u.start_periode,
|
|
u.einde_periode,
|
|
u.gemeente_factnr_infix,
|
|
u.prs_bedrijf_factnr_infix,
|
|
u.gemeente_factnr_suffix,
|
|
u.gemeente_code,
|
|
u.wzacode,
|
|
u.gemeente,
|
|
u.client_bsn,
|
|
u.prs_client_voorletters,
|
|
u.prs_client_tussenvoegsel,
|
|
u.prs_client_naam,
|
|
u.client_meisjesnaam,
|
|
u.naam2,
|
|
u.client_geboortedatum,
|
|
u.client_geslacht,
|
|
u.client_adres,
|
|
u.client_huisnr,
|
|
u.client_postcode,
|
|
u.client_woonplaats,
|
|
u.client_telefoon_thuis,
|
|
u.prs_client_mobiel,
|
|
u.client_contactpersonen,
|
|
u.prs_client_email,
|
|
u.client_bijzonderheden,
|
|
u.beschikking_omschr,
|
|
u.beschikking_nr,
|
|
u.beschikking_van,
|
|
u.beschikking_tot,
|
|
u.uren_beschikking,
|
|
u.product,
|
|
u.tarief
|
|
ORDER BY u.gemeente, u.periode DESC;
|
|
|
|
CREATE OR REPLACE VIEW CARE_V_REISTIJDEN_ALL
|
|
(
|
|
PRS_PERSLID_KEY,
|
|
PRS_PERSLID_NAAM,
|
|
PRS_PERSLID_TUSSENVOEGSEL,
|
|
PRS_PERSLID_VOORLETTERS,
|
|
PRS_PERSLID_VOORNAAM,
|
|
BSN,
|
|
NR_VERZORGER,
|
|
MEISJESNAAM,
|
|
GEBOORTEDATUM,
|
|
ADRES,
|
|
POSTCODE,
|
|
TELEFOON_THUIS,
|
|
TELEFOON_WERK,
|
|
PRS_PERSLID_MOBIEL,
|
|
PRS_PERSLID_EMAIL,
|
|
PRS_PERSLID_DIENSTVERBAND,
|
|
JAAR,
|
|
WEEKNR,
|
|
PERIODENR,
|
|
PERIODE,
|
|
MAANDAG_VANDEWEEK,
|
|
DATUM_GEWERKT,
|
|
INTERKM,
|
|
INTERM,
|
|
KOSTEN_CODE,
|
|
KOSTEN_OMSCHRIJVING,
|
|
UREN_STATUS
|
|
)
|
|
AS
|
|
SELECT DISTINCT
|
|
verzorger.prs_perslid_key,
|
|
verzorger.prs_perslid_naam,
|
|
verzorger.prs_perslid_tussenvoegsel,
|
|
verzorger.prs_perslid_voorletters,
|
|
verzorger.prs_perslid_voornaam,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1020)
|
|
bsn,
|
|
verzorger.prs_perslid_nr
|
|
nr_verzorger,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1001)
|
|
meisjesnaam,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1002)
|
|
geboortedatum,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1003)
|
|
adres,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1004)
|
|
postcode,
|
|
(SELECT kl.prs_kenmerklink_waarde
|
|
FROM prs_kenmerklink kl
|
|
WHERE kl.prs_link_key = verzorger.prs_perslid_key
|
|
AND kl.prs_kenmerklink_niveau = 'P'
|
|
AND kl.prs_kenmerklink_verwijder IS NULL
|
|
AND prs_kenmerk_key = 1006)
|
|
telefoon_thuis,
|
|
verzorger.prs_perslid_telefoonnr
|
|
telefoon_werk,
|
|
verzorger.prs_perslid_mobiel,
|
|
verzorger.prs_perslid_email,
|
|
verzorger.prs_perslid_dienstverband,
|
|
TO_NUMBER (
|
|
TO_CHAR (dk.mld_opdruren_dagkosten_datum, 'IYYY'))
|
|
jaar,
|
|
TO_NUMBER (TO_CHAR (dk.mld_opdruren_dagkosten_datum, 'IW'))
|
|
weeknr,
|
|
LEAST (
|
|
FLOOR (
|
|
(TO_CHAR (dk.mld_opdruren_dagkosten_datum, 'IW') - 1)
|
|
/ 4)
|
|
+ 1,
|
|
13)
|
|
periodenr,
|
|
TO_NUMBER (TO_CHAR (dk.mld_opdruren_dagkosten_datum, 'IYYY'))
|
|
|| '-'
|
|
|| LPAD (
|
|
LEAST (
|
|
FLOOR (
|
|
( TO_CHAR (dk.mld_opdruren_dagkosten_datum,
|
|
'IW')
|
|
- 1)
|
|
/ 4)
|
|
+ 1,
|
|
13),
|
|
2,
|
|
'0')
|
|
periode,
|
|
( TRUNC (dk.mld_opdruren_dagkosten_datum)
|
|
- DECODE (TO_CHAR (dk.mld_opdruren_dagkosten_datum, 'D'),
|
|
'1', 8,
|
|
TO_CHAR (dk.mld_opdruren_dagkosten_datum, 'D'))
|
|
+ 2)
|
|
maandag_vandeweek,
|
|
dk.mld_opdruren_dagkosten_datum
|
|
datum_gewerkt,
|
|
dk.interkm/1000,
|
|
dk.interkm,
|
|
'T'
|
|
kosten_code,
|
|
'Reistijd'
|
|
kosten_omschrijving,
|
|
ou.mld_opdr_uren_status
|
|
uren_status
|
|
FROM prs_perslid verzorger,
|
|
care_v_opdruren_dagkosten dk,
|
|
mld_opdr_uren ou,
|
|
mld_opdruren_kosten ok
|
|
WHERE dk.prs_perslid_key = verzorger.prs_perslid_key
|
|
AND ou.prs_perslid_key = dk.prs_perslid_key
|
|
AND ou.mld_opdr_uren_datum = dk.mld_opdruren_dagkosten_datum
|
|
AND ok.mld_opdr_uren_key = ou.mld_opdr_uren_key
|
|
AND dk.interkm > 0;
|
|
|
|
REGISTERRUN('$Id$')
|
|
|
|
#endif // CARE |