67 lines
1.8 KiB
MySQL
67 lines
1.8 KiB
MySQL
-- Once script tbv care.
|
|
--
|
|
-- (c) 2011 SG|facilitor bv
|
|
-- $Revision$
|
|
-- $Id$
|
|
--
|
|
-- Support: +31 53 4800700
|
|
SET ECHO ON
|
|
SPOOL xcare16_17.lst
|
|
SET DEFINE OFF
|
|
|
|
|
|
CREATE TABLE care_periode
|
|
(jaar NUMBER(4) NOT NULL,
|
|
periode NUMBER(2) NOT NULL,
|
|
week NUMBER(2) NOT NULL,
|
|
maandag DATE NOT NULL
|
|
);
|
|
|
|
CREATE INDEX care_i_periode ON care_periode(jaar, periode, week, maandag);
|
|
|
|
INSERT INTO care_periode (jaar, periode, week, maandag)
|
|
SELECT
|
|
TO_CHAR (SYSDATE - 7*(LEVEL-1), 'IYYY') jaar,
|
|
FLOOR((TO_CHAR (SYSDATE - 7*(LEVEL-1),'IW') - 1) /4) + 1 periode,
|
|
TO_CHAR (SYSDATE - 7*(LEVEL-1), 'IW') week,
|
|
TRUNC (SYSDATE - 7*(LEVEL-1), 'IW') startdatum
|
|
FROM DUAL
|
|
CONNECT BY LEVEL <= 1*52+1;
|
|
|
|
|
|
CREATE TABLE CARE_T_BESCHIKK_X_PERIODETABEL
|
|
(
|
|
JAAR NUMBER(4),
|
|
PERIODE NUMBER(2),
|
|
WEEK_VAN NUMBER(2),
|
|
WEEK_TM NUMBER(2),
|
|
BSN VARCHAR2(20),
|
|
PRODUCT VARCHAR2(20),
|
|
UREN_BESCHIKKING NUMBER (10)
|
|
);
|
|
|
|
-- Initialisatie van deze tabel
|
|
INSERT INTO CARE_T_BESCHIKK_X_PERIODETABEL(JAAR, PERIODE,WEEK_VAN,WEEK_TM,BSN,PRODUCT,UREN_BESCHIKKING)
|
|
SELECT pw.jaar, pw.periode, MIN(week), MAX(week), b.client_bsn, b.product, SUM(b.uren_beschikking)
|
|
FROM care_periode pw, care_v_beschikking_all b
|
|
WHERE pw.maandag >= B.BESCHIKKING_MAANDAG_VAN
|
|
AND pw.maandag < B.BESCHIKKING_MAANDAG_TOT
|
|
GROUP BY pw.jaar, pw.periode, b.client_bsn, b.product;
|
|
|
|
|
|
|
|
UPDATE fac_usrrap
|
|
SET fac_usrrap_functie=2, FAC_USRRAP_VIEW_NAME = 'care.care_v_rap2_factuur_uren_A'
|
|
WHERE FAC_USRRAP_VIEW_NAME = 'care_v_rap2_factuur_uren_A';
|
|
|
|
UPDATE fac_usrrap
|
|
SET fac_usrrap_functie=2, FAC_USRRAP_VIEW_NAME = 'care.care_v_rap2_factuur_uren_E'
|
|
WHERE FAC_USRRAP_VIEW_NAME = 'care_v_rap2_factuur_uren_E';
|
|
|
|
COMMIT;
|
|
|
|
SPOOL OFF
|
|
|
|
START RECAR17.sql;
|
|
|