179 lines
5.4 KiB
SQL
179 lines
5.4 KiB
SQL
-- Script containing customer specific configuration sql statements for Asito Medical
|
|
-- $Revision$
|
|
-- $Id$
|
|
--
|
|
-- Support: +31 53 4800700
|
|
|
|
|
|
SPOOL xasme.lst
|
|
SET ECHO ON
|
|
|
|
CREATE OR REPLACE PACKAGE ASME
|
|
AS
|
|
PROCEDURE mld_postsave (p_melding_key IN NUMBER);
|
|
END;
|
|
/
|
|
|
|
CREATE OR REPLACE PACKAGE BODY ASME
|
|
AS
|
|
PROCEDURE mld_postsave (p_melding_key IN NUMBER)
|
|
AS
|
|
BEGIN
|
|
mld.upsertmeldingkenmerk (101, -- steekproef
|
|
p_melding_key,
|
|
1);
|
|
END;
|
|
END;
|
|
/
|
|
|
|
CREATE OR REPLACE FORCE VIEW asme_v_work_list_cleaner
|
|
(
|
|
hide_f_timestamp,
|
|
mld_opdr_key,
|
|
fclt_3d_user_key,
|
|
mld_opdr_startdatum,
|
|
mld_opdr_einddatum,
|
|
kamernummer,
|
|
omschrijving
|
|
)
|
|
AS
|
|
SELECT TO_CHAR (mld_opdr_einddatum, 'yyyymmddhh24mi'),
|
|
o.mld_opdr_key,
|
|
o.mld_uitvoerende_keys fclt_3d_user_key,
|
|
mld_melding_datum + 1/(24*4), -- kwartier
|
|
mld_opdr_einddatum,
|
|
r.alg_ruimte_nr,
|
|
mld_stdmelding_omschrijving
|
|
|| ' ('
|
|
|| DECODE (o.mld_statusopdr_key, 8, 'gestart', 'nieuw')
|
|
|| ')'
|
|
FROM mld_opdr o,
|
|
mld_melding m,
|
|
alg_v_ruimte_gegevens r,
|
|
mld_stdmelding std
|
|
WHERE o.mld_statusopdr_key IN (5, 8)
|
|
AND o.mld_melding_key = m.mld_melding_key
|
|
AND m.mld_stdmelding_key = std.mld_stdmelding_key
|
|
AND m.mld_alg_onroerendgoed_keys = r.alg_ruimte_key;
|
|
|
|
--
|
|
-- Rapportages
|
|
--
|
|
|
|
CREATE OR REPLACE VIEW asme_v_rap_startwerkzaamheden
|
|
(
|
|
volgorde,
|
|
mld_melding_key,
|
|
starttijd,
|
|
ruimtenr,
|
|
melding,
|
|
schoonmaker,
|
|
marge
|
|
)
|
|
AS
|
|
SELECT TO_CHAR (mld_melding_datum, 'yyyymmddhh24miss') volgorde,
|
|
m.mld_melding_key,
|
|
TO_CHAR (mld_melding_datum, 'dd-mm-yyyy hh24:mi') starttijd,
|
|
alg_ruimte_nr ruimtenr,
|
|
mld_stdmelding_omschrijving melding,
|
|
pf.prs_perslid_naam_friendly,
|
|
15 - ROUND ((SYSDATE - mld_melding_datum) * 24 * 60) marge
|
|
FROM mld_opdr o,
|
|
mld_melding m,
|
|
mld_stdmelding std,
|
|
alg_v_ruimte_gegevens rg,
|
|
prs_v_perslid_fullnames pf
|
|
WHERE o.mld_melding_key(+) = m.mld_melding_key
|
|
AND o.mld_uitvoerende_keys = pf.prs_perslid_key(+)
|
|
AND m.mld_stdmelding_key = std.mld_stdmelding_key
|
|
AND m.mld_alg_onroerendgoed_keys = rg.alg_ruimte_key
|
|
AND (o.mld_statusopdr_key IN (5) OR o.mld_statusopdr_key IS NULL)
|
|
AND m.mld_melding_status NOT IN (1,5,6) -- afgewezen, gereed, verwerkt
|
|
ORDER BY mld_melding_datum;
|
|
|
|
CREATE OR REPLACE VIEW asme_v_rap_eindwerkzaamheden
|
|
(
|
|
volgorde,
|
|
mld_melding_key,
|
|
eindtijd,
|
|
ruimtenr,
|
|
melding,
|
|
schoonmaker,
|
|
marge
|
|
)
|
|
AS
|
|
SELECT TO_CHAR (mld_melding_datum, 'yyyymmddhh24miss') volgorde,
|
|
m.mld_melding_key,
|
|
TO_CHAR (mld_opdr_einddatum, 'dd-mm-yyyy hh24:mi') eindtijd,
|
|
alg_ruimte_nr ruimtenr,
|
|
mld_stdmelding_omschrijving melding,
|
|
pf.prs_perslid_naam_friendly,
|
|
ROUND ( (mld_opdr_einddatum - SYSDATE) * 24 * 60) marge
|
|
FROM mld_opdr o,
|
|
mld_melding m,
|
|
mld_stdmelding std,
|
|
alg_v_ruimte_gegevens rg,
|
|
prs_v_perslid_fullnames pf
|
|
WHERE o.mld_melding_key(+) = m.mld_melding_key
|
|
AND o.mld_uitvoerende_keys = pf.prs_perslid_key(+)
|
|
AND m.mld_stdmelding_key = std.mld_stdmelding_key
|
|
AND m.mld_alg_onroerendgoed_keys = rg.alg_ruimte_key
|
|
AND std.mld_ins_discipline_key NOT IN (42, 61) -- Techniek, Regie
|
|
AND o.mld_statusopdr_key IN (8)
|
|
AND m.mld_melding_status NOT IN (1, 5, 6) -- afgewezen, gereed, verwerkt
|
|
ORDER BY mld_melding_datum;
|
|
|
|
-- rapport van het aantal checkouts die de schoonmaker op zijn naam heeft staan
|
|
-- ten opzichte van het aantal checkouts dat hij per dag (kenmerk_key = 1000) moet halen.
|
|
-- dit ook beschikbaar op weekniveau.
|
|
CREATE OR REPLACE VIEW asme_v_rap_aantal_checkouts
|
|
(
|
|
naam,
|
|
vandaag,
|
|
todo_vandaag,
|
|
week,
|
|
todo_week
|
|
)
|
|
AS
|
|
SELECT pf.prs_perslid_naam_friendly,
|
|
(SELECT COUNT ( * )
|
|
FROM mld_opdr o, mld_melding m
|
|
WHERE o.mld_uitvoerende_keys = p.prs_perslid_key
|
|
AND o.mld_melding_key = m.mld_melding_key
|
|
AND TRUNC (m.mld_melding_datum) = TRUNC (SYSDATE))
|
|
co_today,
|
|
aantal_co,
|
|
(SELECT COUNT ( * )
|
|
FROM mld_opdr o, mld_melding m
|
|
WHERE o.mld_uitvoerende_keys = p.prs_perslid_key
|
|
AND o.mld_melding_key = m.mld_melding_key
|
|
AND TO_CHAR (m.mld_melding_datum, 'YYYYIW') =
|
|
TO_CHAR (SYSDATE, 'YYYYIW'))
|
|
co_week,
|
|
(TO_CHAR (SYSDATE, 'D') - 1) * aantal_co week_co
|
|
FROM (SELECT fac.safe_to_number (prs_kenmerklink_waarde) aantal_co,
|
|
prs_link_key prs_perslid_key
|
|
FROM prs_kenmerklink
|
|
WHERE prs_kenmerk_key = 1000
|
|
AND prs_kenmerklink_verwijder IS NULL) co,
|
|
prs_perslid p,
|
|
prs_v_perslid_fullnames pf
|
|
WHERE p.prs_perslid_key = pf.prs_perslid_key
|
|
AND p.prs_perslid_key = co.prs_perslid_key;
|
|
|
|
|
|
|
|
|
|
BEGIN adm.systrackscriptId('$Id$', 0); END;
|
|
/
|
|
|
|
|
|
BEGIN fac.registercustversion('ASME', 0); END;
|
|
/
|
|
|
|
COMMIT;
|
|
|
|
SPOOL OFF
|
|
|
|
|