diff --git a/WIBC/wibc.sql b/WIBC/wibc.sql index 2e6095f0e..38c22a800 100644 --- a/WIBC/wibc.sql +++ b/WIBC/wibc.sql @@ -7,18 +7,18 @@ set echo on spool xwibc.lst -/* Formatted on 6-9-2010 15:44:44 (QP5 v5.115.810.9015) */ +/* Formatted on 5-6-2013 15:30:45 (QP5 v5.115.810.9015) */ CREATE OR REPLACE PACKAGE WIBC AS -- PACKAGES voor de WIBC specifieke ondersteuning - PROCEDURE freezereserveringen (p_prskey IN NUMBER); + PROCEDURE freezereserveringen (p_prskey IN NUMBER, p_periode IN NUMBER); END; / -/* Formatted on 5-3-2013 11:42:24 (QP5 v5.115.810.9015) */ +/* Formatted on 5-6-2013 15:30:45 (QP5 v5.115.810.9015) */ CREATE OR REPLACE PACKAGE BODY WIBC AS - PROCEDURE freezereserveringen (p_prskey IN NUMBER) + PROCEDURE freezereserveringen (p_prskey IN NUMBER, p_periode IN NUMBER) AS -- Volgende cursors lopen over reserveringen (door personen van bedrijf -- waartoe ook 'p_prskey' behoort) die in de voorgaande maand hebben @@ -27,7 +27,8 @@ AS -- Tevens wordt aan al deze reserveringen het factuurnummer gekoppeld. CURSOR cobj IS - SELECT x.res_rsv_ruimte_key, + SELECT x.periode, + x.res_rsv_ruimte_key, x.res_reservering_key, x.res_rsv_ruimte_volgnr, x.res_rsv_deel_key, @@ -35,6 +36,13 @@ AS FROM (SELECT rr.res_rsv_ruimte_key, rr.res_reservering_key, rr.res_rsv_ruimte_volgnr, + DECODE ( + TO_CHAR (rr.res_rsv_ruimte_tot, 'yyyymm'), + TO_CHAR (SYSDATE, 'yyyymm'), + 0, + 1 + ) + periode, rd.res_rsv_deel_key, rd.res_status_bo_key, rr.res_rsv_ruimte_contact_key, @@ -61,7 +69,7 @@ AS -- '01' || TO_CHAR (SYSDATE, 'mmyyyy'), -- 'ddmmyyyy' -- ) - AND TRUNC (rr.res_rsv_ruimte_tot) < SYSDATE + AND rr.res_rsv_ruimte_tot < SYSDATE + (1 / 24) AND rr.res_rsv_ruimte_contact_key = bedr.prs_link_key(+)) x LEFT JOIN @@ -99,11 +107,13 @@ AS ON c.bedrijf = mc.bedrijf) y ON UPPER (x.bedrijf) = y.bedrijf WHERE COALESCE (y.prs_link_key, x.res_rsv_ruimte_contact_key) = - p_prskey; + p_prskey + AND x.periode = p_periode; CURSOR cart IS - SELECT x.res_rsv_ruimte_key, + SELECT x.periode, + x.res_rsv_ruimte_key, x.res_reservering_key, x.res_rsv_ruimte_volgnr, x.res_rsv_artikel_key, @@ -113,6 +123,13 @@ AS FROM (SELECT rr.res_rsv_ruimte_key, rr.res_reservering_key, rr.res_rsv_ruimte_volgnr, + DECODE ( + TO_CHAR (rr.res_rsv_ruimte_tot, 'yyyymm'), + TO_CHAR (SYSDATE, 'yyyymm'), + 0, + 1 + ) + periode, ra.res_rsv_artikel_key, ra.res_artikel_key, ra.res_status_bo_key, @@ -142,7 +159,7 @@ AS -- '01' || TO_CHAR (SYSDATE, 'mmyyyy'), -- 'ddmmyyyy' -- ) - AND TRUNC (rr.res_rsv_ruimte_tot) < SYSDATE + AND rr.res_rsv_ruimte_tot < SYSDATE + (1 / 24) AND rr.res_rsv_ruimte_contact_key = bedr.prs_link_key(+)) x LEFT JOIN @@ -180,11 +197,13 @@ AS ON c.bedrijf = mc.bedrijf) y ON UPPER (x.bedrijf) = y.bedrijf WHERE COALESCE (y.prs_link_key, x.res_rsv_ruimte_contact_key) = - p_prskey; + p_prskey + AND x.periode = p_periode; CURSOR crui IS - SELECT x.res_rsv_ruimte_key, + SELECT x.periode, + x.res_rsv_ruimte_key, x.res_reservering_key, x.res_rsv_ruimte_volgnr, x.res_status_bo_key, @@ -193,6 +212,13 @@ AS FROM (SELECT rr.res_rsv_ruimte_key, rr.res_reservering_key, rr.res_rsv_ruimte_volgnr, + DECODE ( + TO_CHAR (rr.res_rsv_ruimte_tot, 'yyyymm'), + TO_CHAR (SYSDATE, 'yyyymm'), + 0, + 1 + ) + periode, rr.res_status_bo_key, COALESCE (rr.res_rsv_ruimte_prijs, 0) old_prijs, @@ -246,7 +272,7 @@ AS -- '01' || TO_CHAR (SYSDATE, 'mmyyyy'), -- 'ddmmyyyy' -- ) - AND TRUNC (rr.res_rsv_ruimte_tot) < SYSDATE + AND rr.res_rsv_ruimte_tot < SYSDATE + (1 / 24) AND rr.res_rsv_ruimte_contact_key = bedr.prs_link_key(+)) x LEFT JOIN @@ -284,19 +310,21 @@ AS ON c.bedrijf = mc.bedrijf) y ON UPPER (x.bedrijf) = y.bedrijf WHERE COALESCE (y.prs_link_key, x.res_rsv_ruimte_contact_key) = - p_prskey; + p_prskey + AND x.periode = p_periode; - c_applname VARCHAR2 (50) := 'FREEZE_RES'; - v_errormsg VARCHAR2 (1000); - oracle_err_num NUMBER; - oracle_err_mes VARCHAR2 (200); - v_aanduiding VARCHAR2 (200) := '-'; - v_count NUMBER (10); - v_count_upd NUMBER (10); - v_factuurnr VARCHAR2 (20); - v_prskey NUMBER (10); - v_huurderlid VARCHAR2 (1) := 'N'; - v_prijs NUMBER (9, 2); + c_applname VARCHAR2 (50) := 'FREEZE_RES'; + v_errormsg VARCHAR2 (1000); + oracle_err_num NUMBER; + oracle_err_mes VARCHAR2 (200); + v_aanduiding VARCHAR2 (200) := '-'; + v_count NUMBER (10); + v_count_upd NUMBER (10); + v_factuurnr VARCHAR2 (20); + v_prskey NUMBER (10); + v_huurderlid VARCHAR2 (1) := 'N'; + v_factuurbedrag NUMBER (12, 2); + v_prijs NUMBER (9, 2); BEGIN -- Beginnen met toevoegen Factuur/Debiteur-entry in Eigen tabel met -- key=82; als dat al niet kan, dan weten wij dat gelijk (nog zonder @@ -396,12 +424,11 @@ AS v_huurderlid := 'L'; -- Factuur incl. lidmaatschap én ruimtekorting! END IF; - v_errormsg := 'Fout bij toevoegen meta-factuurgegevens.'; + v_errormsg := 'Fout bij toevoegen meta-factuur.'; INSERT INTO fac_usrdata (fac_usrtab_key, fac_usrdata_code, fac_usrdata_omschr, - --fac_usrdata_volgnr, fac_usrdata_aanmaak, fac_usrdata_vervaldatum) VALUES (82, @@ -412,6 +439,47 @@ AS COMMIT; + v_errormsg := 'Fout bij bepalen factuurbedrag.'; + + SELECT SUM (kosten + btwkosten) + INTO v_factuurbedrag + FROM wibc_v_rap_res_actual + WHERE hide_f_debnr = SUBSTR ('000000' || TO_CHAR (v_prskey), -6); + + -- Toevoegen pseudo-transactie in wibc_bankboek voor facturen met een + -- negatief bedrag (te betalen door WIBC aan klant). + IF (v_factuurbedrag < 0) + THEN + v_errormsg := 'Fout bij toevoegen pseudo-tranactie.'; + + INSERT INTO wibc_bankboek (regel_insert, + afschriftnr, + boekdat_oud, + saldo_oud, + valutadat, + creditdebet, + bedrag, + transactietype, + tegenrekening, + omschrijving, + boekdat_nieuw, + saldo_nieuw) + VALUES (SYSDATE, + 'Geen', + NULL, + NULL, + NULL, + '-', + v_factuurbedrag, + NULL, + NULL, + 'Pseudo-transactie tbv. factuur ' || v_factuurnr, + TO_CHAR (SYSDATE, 'yymmdd'), + NULL); + + COMMIT; + END IF; + v_count_upd := 0; -- Bevriezen RES-objecten! @@ -955,7 +1023,7 @@ EXCEPTION END wibc_import_mt940; / -/* Formatted on 24-5-2013 16:55:05 (QP5 v5.115.810.9015) */ +/* Formatted on 6-6-2013 17:16:18 (QP5 v5.115.810.9015) */ CREATE OR REPLACE PROCEDURE wibc_update_mt940 (p_import_key IN NUMBER) AS v_errormsg VARCHAR2 (1000) := '-'; @@ -988,21 +1056,15 @@ AS mt940_troms FROM wibc_imp_mt940 --WHERE mt940_rcode IN (':28C:', ':60F:', ':61:', ':62F:') -- Rest skippen! - WHERE mt940_rcode IN (':28:', ':60F:', ':61:', ':62F:') -- Rest skippen! + WHERE mt940_rcode IN (':28:', ':60F:', ':61:', ':62F:') + -- Rest skippen! ORDER BY mt940_index; CURSOR c2 IS - SELECT DISTINCT - ud.fac_usrdata_upper f_nummer, - ud.fac_usrdata_prijs f_bedrag, - bb.afschriftnr t_afschriftnr, - bb.omschrijving t_omschrijving, - bb.boekdat_oud t_boekdat_oud, - bb.saldo_oud t_saldo_oud, - DECODE (bb.creditdebet, 'C', bedrag, -1 * bedrag) t_bedrag + SELECT bb.bankboek_key, ud.fac_usrdata_upper factuurnummer FROM wibc_bankboek bb, fac_usrdata ud - WHERE TRUNC (bb.regel_insert) = TRUNC (SYSDATE) + WHERE bankboek_key > COALESCE (v_bankboek_key, 0) AND INSTR (UPPER (COALESCE (bb.omschrijving, 'x')), ud.fac_usrdata_upper) > 0 AND INSTR (UPPER (COALESCE (bb.ref_waarde, 'x')), @@ -1020,15 +1082,7 @@ BEGIN LOOP BEGIN v_aanduiding := - '[' - || TO_CHAR (rec1.mt940_index) - || '|' - || rec1.mt940_rcode - || '|' - || rec1.mt940_rdata - || '|' - || rec1.mt940_troms - || '] '; + '[' || rec1.mt940_rdata || '|' || rec1.mt940_troms || '] '; --IF (rec1.mt940_rcode = ':28C:') IF (rec1.mt940_rcode = ':28:') @@ -1190,29 +1244,48 @@ BEGIN SUBSTR (rec1.mt940_rdata, v_bedrag_begin + v_bedrag_lengte + 4); - INSERT INTO wibc_bankboek (regel_insert, - afschriftnr, - boekdat_oud, - saldo_oud, - valutadat, - creditdebet, - bedrag, - transactietype, - tegenrekening, - omschrijving) - VALUES (SYSDATE, - v_afschriftnr, - v_boekdat_oud, - v_saldo_oud, - v_valutadat, - v_creditdebet, - v_bedrag, - v_transactietype, - v_tegenrekening, - rec1.mt940_troms); + SELECT COUNT ( * ) + INTO v_count + FROM wibc_bankboek + WHERE afschriftnr = v_afschriftnr + AND valutadat = v_valutadat + AND creditdebet = v_creditdebet + AND bedrag = v_bedrag + AND transactietype = v_transactietype + AND tegenrekening = v_tegenrekening + AND omschrijving = rec1.mt940_troms; - COMMIT; - v_count_insert := v_count_insert + 1; + IF (v_count = 0) + THEN + INSERT INTO wibc_bankboek (regel_insert, + afschriftnr, + boekdat_oud, + saldo_oud, + valutadat, + creditdebet, + bedrag, + transactietype, + tegenrekening, + omschrijving) + VALUES (SYSDATE, + v_afschriftnr, + v_boekdat_oud, + v_saldo_oud, + v_valutadat, + v_creditdebet, + v_bedrag, + v_transactietype, + v_tegenrekening, + rec1.mt940_troms); + + COMMIT; + v_count_insert := v_count_insert + 1; + ELSE + fac.imp_writelog (p_import_key, + 'I', + v_aanduiding || 'Transactie bestaat al?', + 'Transactie niet toegevoegd!'); + END IF; ELSIF (rec1.mt940_rcode = ':62F:') THEN v_errormsg := 'Fout bij bepalen saldo nieuw'; @@ -1235,42 +1308,27 @@ BEGIN UPDATE wibc_bankboek SET boekdat_nieuw = v_boekdat_nieuw, saldo_nieuw = v_saldo_nieuw - WHERE bankboek_key > v_bankboek_key + WHERE bankboek_key > COALESCE (v_bankboek_key, 0) AND afschriftnr = v_afschriftnr AND boekdat_oud = v_boekdat_oud AND saldo_oud = v_saldo_oud; COMMIT; ELSE -- Kan niet! - fac.imp_writelog (p_import_key, - 'W', - v_aanduiding || 'Unexpected code', - ''); + fac.imp_writelog ( + p_import_key, + 'W', + v_aanduiding || 'Unexpected code: ' || rec1.mt940_rcode, + '' + ); END IF; - --EXCEPTION - -- WHEN OTHERS - -- THEN - -- oracle_err_num := SQLCODE; - -- oracle_err_mes := SUBSTR (SQLERRM, 1, 200); - -- v_errormsg := - -- v_errormsg - -- || ' ORACLE (error ' - -- || oracle_err_num - -- || '/' - -- || oracle_err_mes - -- || ')'; - -- fac.imp_writelog (p_import_key, - -- 'W', - -- v_aanduiding || v_errormsg, - -- ''); - -- COMMIT; END; END LOOP; SELECT COUNT ( * ) INTO v_count FROM wibc_bankboek - WHERE TRUNC (regel_insert) = TRUNC (SYSDATE) + WHERE bankboek_key > v_bankboek_key AND ( afschriftnr IS NULL OR boekdat_oud IS NULL OR saldo_oud IS NULL @@ -1312,26 +1370,18 @@ BEGIN v_errormsg := 'Fout bij matchen transactie'; v_aanduiding := '[' - || rec1.f_nummer + || TO_CHAR (rec1.bankboek_key) || '|' - || TO_CHAR (rec1.f_bedrag) - || '|' - || rec1.t_afschriftnr - || '|' - || rec1.t_omschrijving - || '|' - || TO_CHAR (rec1.t_bedrag) + || rec1.factuurnummer || '] '; UPDATE wibc_bankboek SET ref_waarde = DECODE (ref_waarde, - NULL, rec1.f_nummer, - ref_waarde || '/' || rec1.f_nummer), + NULL, rec1.factuurnummer, + ref_waarde || '/' || rec1.factuurnummer), ref_update = SYSDATE - WHERE afschriftnr = rec1.t_afschriftnr - AND boekdat_oud = rec1.t_boekdat_oud - AND saldo_oud = rec1.t_saldo_oud; + WHERE bankboek_key = rec1.bankboek_key; COMMIT; EXCEPTION @@ -1377,11 +1427,13 @@ END wibc_update_mt940; / -/* Formatted on 14-5-2013 18:25:18 (QP5 v5.115.810.9015) */ +/* Formatted on 5-6-2013 16:30:45 (QP5 v5.115.810.9015) */ CREATE OR REPLACE VIEW wibc_v_rap_res_actual ( + periode, hide_f_debnr, fclt_f_bedrijf, + per_adres, fclt_f_aanvrager, adres, postcode, @@ -1409,7 +1461,11 @@ CREATE OR REPLACE VIEW wibc_v_rap_res_actual opmerking ) AS - SELECT SUBSTR ( + SELECT DECODE (TO_CHAR (x.tot, 'yyyymm'), + TO_CHAR (SYSDATE, 'yyyymm'), 0, + 1) + periode, + SUBSTR ( '000000' || TO_CHAR (COALESCE (y.prs_link_key, x.prs_perslid_key)), -6 @@ -1418,6 +1474,7 @@ AS COALESCE (x.bedrijf, SUBSTR ('000000' || TO_CHAR (x.prs_perslid_key), -6)) bedrijf, + TRIM (pa.prs_kenmerklink_waarde) pa, COALESCE ( TRIM (tav.prs_kenmerklink_waarde), (SELECT DECODE (prs_perslid_geslacht, @@ -1538,94 +1595,104 @@ AS btw, x.res_rsv_ruimte_omschrijving oms, x.res_rsv_ruimte_opmerking opm - FROM (SELECT rr.res_rsv_ruimte_key, - rr.res_reservering_key, - rr.res_rsv_ruimte_volgnr, - rr.res_rsv_ruimte_van van, - rr.res_rsv_ruimte_tot tot, - rr.res_activiteit_key, - rr.res_rsv_ruimte_bezoekers, - rr.res_rsv_ruimte_omschrijving, - rr.res_rsv_ruimte_opmerking, - p.prs_perslid_key, - TRIM(bedr.prs_kenmerklink_waarde) - bedrijf - FROM res_v_aanwezigrsv_ruimte rr, - prs_perslid p, - (SELECT * - FROM prs_v_aanwezigkenmerklink - WHERE prs_kenmerk_key = - 1000) bedr - WHERE rr.res_rsv_ruimte_ordernr IS NULL - AND rr.res_status_fo_key IN - (1, 2) - AND COALESCE ( - rr.res_status_bo_key, - 2 - ) != 6 -- Nog niet AV - AND rr.res_rsv_ruimte_dirtlevel = - 0 - --AND rr.res_rsv_ruimte_tot < - -- TO_DATE ( - -- '01' - -- || TO_CHAR ( - -- SYSDATE, - -- 'mmyyyy' - -- ), - -- 'ddmmyyyy' - -- ) - AND rr.res_rsv_ruimte_tot < - SYSDATE - AND rr.res_rsv_ruimte_contact_key = - p.prs_perslid_key - AND p.prs_afdeling_key IN - (21, 22) -- Leden/Niet leden - AND p.prs_perslid_key = - bedr.prs_link_key(+)) - x - LEFT JOIN - (SELECT c.bedrijf, - COALESCE ( - mc.prs_link_key, - c.prs_link_key - ) - prs_link_key - FROM ( SELECT UPPER(TRIM(kl.prs_kenmerklink_waarde)) - bedrijf, - MIN(kl.prs_link_key) - prs_link_key - FROM prs_v_aanwezigkenmerklink kl, - prs_perslid p - WHERE kl.prs_kenmerk_key = - 1000 - AND kl.prs_link_key = - p.prs_perslid_key - AND p.prs_afdeling_key IN - (21, - 22) -- Leden/Niet leden - GROUP BY UPPER(TRIM(kl.prs_kenmerklink_waarde))) - c - LEFT JOIN - ( SELECT UPPER(TRIM(kl.prs_kenmerklink_waarde)) - bedrijf, - MIN(kl.prs_link_key) - prs_link_key - FROM prs_v_aanwezigkenmerklink kl, - prs_perslid p - WHERE kl.prs_kenmerk_key = - 1000 - AND kl.prs_link_key = - p.prs_perslid_key - AND p.prs_afdeling_key IN - (21, - 22) -- Leden/Niet leden - AND p.prs_srtperslid_key = - 482 - GROUP BY UPPER(TRIM(kl.prs_kenmerklink_waarde))) - mc - ON c.bedrijf = mc.bedrijf) - y - ON UPPER (x.bedrijf) = y.bedrijf + FROM (SELECT rr.res_rsv_ruimte_key, + rr.res_reservering_key, + rr.res_rsv_ruimte_volgnr, + rr.res_rsv_ruimte_van + van, + rr.res_rsv_ruimte_tot + tot, + rr.res_activiteit_key, + rr.res_rsv_ruimte_bezoekers, + rr.res_rsv_ruimte_omschrijving, + rr.res_rsv_ruimte_opmerking, + p.prs_perslid_key, + TRIM(bedr.prs_kenmerklink_waarde) + bedrijf + FROM res_v_aanwezigrsv_ruimte rr, + prs_perslid p, + (SELECT * + FROM prs_v_aanwezigkenmerklink + WHERE prs_kenmerk_key = + 1000) + bedr + WHERE rr.res_rsv_ruimte_ordernr IS NULL + AND rr.res_status_fo_key IN + (1, 2) + AND COALESCE ( + rr.res_status_bo_key, + 2 + ) != 6 -- Nog niet AV + AND rr.res_rsv_ruimte_dirtlevel = + 0 + --AND rr.res_rsv_ruimte_tot < + -- TO_DATE ( + -- '01' + -- || TO_CHAR ( + -- SYSDATE, + -- 'mmyyyy' + -- ), + -- 'ddmmyyyy' + -- ) + AND rr.res_rsv_ruimte_tot < + SYSDATE + + (1 / 24) + AND rr.res_rsv_ruimte_contact_key = + p.prs_perslid_key + AND p.prs_afdeling_key IN + (21, 22) -- Leden/Niet leden + AND p.prs_perslid_key = + bedr.prs_link_key(+)) + x + LEFT JOIN + (SELECT c.bedrijf, + COALESCE ( + mc.prs_link_key, + c.prs_link_key + ) + prs_link_key + FROM ( SELECT UPPER(TRIM(kl.prs_kenmerklink_waarde)) + bedrijf, + MIN(kl.prs_link_key) + prs_link_key + FROM prs_v_aanwezigkenmerklink kl, + prs_perslid p + WHERE kl.prs_kenmerk_key = + 1000 + AND kl.prs_link_key = + p.prs_perslid_key + AND p.prs_afdeling_key IN + (21, + 22) -- Leden/Niet leden + GROUP BY UPPER(TRIM(kl.prs_kenmerklink_waarde))) + c + LEFT JOIN + ( SELECT UPPER(TRIM(kl.prs_kenmerklink_waarde)) + bedrijf, + MIN(kl.prs_link_key) + prs_link_key + FROM prs_v_aanwezigkenmerklink kl, + prs_perslid p + WHERE kl.prs_kenmerk_key = + 1000 + AND kl.prs_link_key = + p.prs_perslid_key + AND p.prs_afdeling_key IN + (21, + 22) -- Leden/Niet leden + AND p.prs_srtperslid_key = + 482 + GROUP BY UPPER(TRIM(kl.prs_kenmerklink_waarde))) + mc + ON c.bedrijf = + mc.bedrijf) y + ON UPPER (x.bedrijf) = y.bedrijf + LEFT JOIN -- 1060 = Factuur p.a. + prs_v_aanwezigkenmerklink pa + ON COALESCE (y.prs_link_key, + x.prs_perslid_key) = + pa.prs_link_key + AND pa.prs_kenmerk_key = 1060 LEFT JOIN -- 1040 = Factuur t.a.v. prs_v_aanwezigkenmerklink tav ON COALESCE (y.prs_link_key, @@ -1748,7 +1815,8 @@ AS AND rra.res_artikel_key = ra.res_artikel_key) rvc ON x.res_rsv_ruimte_key = rvc.res_rsv_ruimte_key UNION ALL -- Additionele lidmaatschapregels voor leden! - SELECT SUBSTR ( + SELECT 1 periode, + SUBSTR ( '000000' || TO_CHAR (COALESCE (y.prs_link_key, x.prs_perslid_key)), -6 @@ -1757,6 +1825,7 @@ AS COALESCE (x.bedrijf, SUBSTR ('000000' || TO_CHAR (x.prs_perslid_key), -6)) bedrijf, + TRIM (pa.prs_kenmerklink_waarde) pa, COALESCE ( TRIM (tav.prs_kenmerklink_waarde), (SELECT DECODE (prs_perslid_geslacht, @@ -1811,113 +1880,128 @@ AS NULL oms, NULL opm FROM -- Lidmaatschap maandelijks vooruit (VANAF 2013)! - ( SELECT TRIM(bedrijf.prs_kenmerklink_waarde) + ( SELECT TRIM(bedrijf.prs_kenmerklink_waarde) + bedrijf, + MIN (p.prs_perslid_key) + prs_perslid_key, + TRUNC (SYSDATE, 'mm') van, + TO_CHAR (SYSDATE, + 'yyyy-mm') + lidmaatschap + FROM prs_v_aanwezigperslid p, + (SELECT * + FROM prs_v_aanwezigkenmerklink + WHERE prs_kenmerk_key = + 1000) bedrijf, - MIN (p.prs_perslid_key) - prs_perslid_key, - TRUNC (SYSDATE, 'mm') van, - TO_CHAR (SYSDATE, 'yyyy-mm') - lidmaatschap - FROM prs_v_aanwezigperslid p, - (SELECT * - FROM prs_v_aanwezigkenmerklink - WHERE prs_kenmerk_key = - 1000) bedrijf, - (SELECT * - FROM prs_v_aanwezigkenmerklink - WHERE prs_kenmerk_key = - 1024) lidsinds, - (SELECT * - FROM prs_v_aanwezigkenmerklink - WHERE prs_kenmerk_key = - 1025) opgezegd - WHERE p.prs_afdeling_key = 21 -- Leden - AND p.prs_perslid_key = - bedrijf.prs_link_key(+) - AND p.prs_perslid_key = - lidsinds.prs_link_key - AND lidsinds.prs_link_key = - opgezegd.prs_link_key(+) - AND TRUNC (SYSDATE, 'mm') >= - fac.safe_to_date ( - lidsinds.prs_kenmerklink_waarde, - 'dd-mm-yyyy' - ) - AND TRUNC (SYSDATE, 'mm') < - COALESCE ( + (SELECT * + FROM prs_v_aanwezigkenmerklink + WHERE prs_kenmerk_key = + 1024) + lidsinds, + (SELECT * + FROM prs_v_aanwezigkenmerklink + WHERE prs_kenmerk_key = + 1025) + opgezegd + WHERE p.prs_afdeling_key = 21 -- Leden + AND p.prs_perslid_key = + bedrijf.prs_link_key(+) + AND p.prs_perslid_key = + lidsinds.prs_link_key + AND lidsinds.prs_link_key = + opgezegd.prs_link_key(+) + AND TRUNC (SYSDATE, 'mm') >= fac.safe_to_date ( - opgezegd.prs_kenmerklink_waarde, + lidsinds.prs_kenmerklink_waarde, 'dd-mm-yyyy' - ), - SYSDATE - ) - GROUP BY TRIM(bedrijf.prs_kenmerklink_waarde) - UNION ALL -- Lidmaatschap over 2012-12 achteraf (EENMALIG)! - SELECT TRIM(bedrijf.prs_kenmerklink_waarde) + ) + AND TRUNC (SYSDATE, 'mm') < + COALESCE ( + fac.safe_to_date ( + opgezegd.prs_kenmerklink_waarde, + 'dd-mm-yyyy' + ), + SYSDATE + ) + GROUP BY TRIM(bedrijf.prs_kenmerklink_waarde) + UNION ALL -- Lidmaatschap over 2012-12 achteraf (EENMALIG)! + SELECT TRIM(bedrijf.prs_kenmerklink_waarde) + bedrijf, + MIN (p.prs_perslid_key) + prs_perslid_key, + TRUNC (SYSDATE, 'mm') van, + '2012-12' lidmaatschap + FROM prs_v_aanwezigperslid p, + (SELECT * + FROM prs_v_aanwezigkenmerklink + WHERE prs_kenmerk_key = + 1000) bedrijf, - MIN (p.prs_perslid_key) - prs_perslid_key, - TRUNC (SYSDATE, 'mm') van, - '2012-12' lidmaatschap - FROM prs_v_aanwezigperslid p, - (SELECT * - FROM prs_v_aanwezigkenmerklink - WHERE prs_kenmerk_key = - 1000) bedrijf, - (SELECT * - FROM prs_v_aanwezigkenmerklink - WHERE prs_kenmerk_key = - 1024) lidsinds - WHERE p.prs_afdeling_key = 21 -- Leden - AND p.prs_perslid_key = - bedrijf.prs_link_key(+) - AND p.prs_perslid_key = - lidsinds.prs_link_key - AND lidsinds.prs_kenmerklink_waarde LIKE - '%2012' - AND TO_CHAR (SYSDATE, - 'yyyy-mm') = - '2013-01' -- Alleen dan dus! - GROUP BY TRIM(bedrijf.prs_kenmerklink_waarde)) - x - LEFT JOIN - (SELECT c.bedrijf, - COALESCE (mc.prs_link_key, - c.prs_link_key) - prs_link_key - FROM ( SELECT UPPER(TRIM(kl.prs_kenmerklink_waarde)) - bedrijf, - MIN(kl.prs_link_key) - prs_link_key - FROM prs_v_aanwezigkenmerklink kl, - prs_perslid p - WHERE kl.prs_kenmerk_key = - 1000 - AND kl.prs_link_key = - p.prs_perslid_key - AND p.prs_afdeling_key = - 21 -- Leden - GROUP BY UPPER(TRIM(kl.prs_kenmerklink_waarde))) - c - LEFT JOIN - ( SELECT UPPER(TRIM(kl.prs_kenmerklink_waarde)) - bedrijf, - MIN(kl.prs_link_key) - prs_link_key - FROM prs_v_aanwezigkenmerklink kl, - prs_perslid p - WHERE kl.prs_kenmerk_key = - 1000 - AND kl.prs_link_key = - p.prs_perslid_key - AND p.prs_afdeling_key = - 21 -- Leden - AND p.prs_srtperslid_key = - 482 - GROUP BY UPPER(TRIM(kl.prs_kenmerklink_waarde))) - mc - ON c.bedrijf = mc.bedrijf) y - ON UPPER (x.bedrijf) = y.bedrijf + (SELECT * + FROM prs_v_aanwezigkenmerklink + WHERE prs_kenmerk_key = + 1024) + lidsinds + WHERE p.prs_afdeling_key = 21 -- Leden + AND p.prs_perslid_key = + bedrijf.prs_link_key(+) + AND p.prs_perslid_key = + lidsinds.prs_link_key + AND lidsinds.prs_kenmerklink_waarde LIKE + '%2012' + AND TO_CHAR (SYSDATE, + 'yyyy-mm') = + '2013-01' -- Alleen dan dus! + GROUP BY TRIM(bedrijf.prs_kenmerklink_waarde)) + x + LEFT JOIN + (SELECT c.bedrijf, + COALESCE ( + mc.prs_link_key, + c.prs_link_key + ) + prs_link_key + FROM ( SELECT UPPER(TRIM(kl.prs_kenmerklink_waarde)) + bedrijf, + MIN(kl.prs_link_key) + prs_link_key + FROM prs_v_aanwezigkenmerklink kl, + prs_perslid p + WHERE kl.prs_kenmerk_key = + 1000 + AND kl.prs_link_key = + p.prs_perslid_key + AND p.prs_afdeling_key = + 21 -- Leden + GROUP BY UPPER(TRIM(kl.prs_kenmerklink_waarde))) + c + LEFT JOIN + ( SELECT UPPER(TRIM(kl.prs_kenmerklink_waarde)) + bedrijf, + MIN(kl.prs_link_key) + prs_link_key + FROM prs_v_aanwezigkenmerklink kl, + prs_perslid p + WHERE kl.prs_kenmerk_key = + 1000 + AND kl.prs_link_key = + p.prs_perslid_key + AND p.prs_afdeling_key = + 21 -- Leden + AND p.prs_srtperslid_key = + 482 + GROUP BY UPPER(TRIM(kl.prs_kenmerklink_waarde))) + mc + ON c.bedrijf = mc.bedrijf) + y + ON UPPER (x.bedrijf) = y.bedrijf + LEFT JOIN -- 1060 = Factuur p.a. + prs_v_aanwezigkenmerklink pa + ON COALESCE (y.prs_link_key, + x.prs_perslid_key) = + pa.prs_link_key + AND pa.prs_kenmerk_key = 1060 LEFT JOIN -- 1040 = Factuur t.a.v. prs_v_aanwezigkenmerklink tav ON COALESCE (y.prs_link_key, @@ -1975,7 +2059,11 @@ AS )) = COALESCE (y.prs_link_key, x.prs_perslid_key)) UNION ALL -- Additionele kortingregels voor huurders/leden! - SELECT SUBSTR ( + SELECT DECODE (TO_CHAR (x.van, 'yyyymm'), + TO_CHAR (SYSDATE, 'yyyymm'), 0, + 1) + periode, + SUBSTR ( '000000' || TO_CHAR (COALESCE (y.prs_link_key, x.prs_perslid_key)), -6 @@ -1984,6 +2072,7 @@ AS COALESCE (x.bedrijf, SUBSTR ('000000' || TO_CHAR (x.prs_perslid_key), -6)) bedrijf, + TRIM (pa.prs_kenmerklink_waarde) pa, COALESCE ( TRIM (tav.prs_kenmerklink_waarde), (SELECT DECODE (prs_perslid_geslacht, @@ -2055,118 +2144,129 @@ AS btw, NULL oms, NULL opm - FROM (SELECT TRIM (bedrijf.prs_kenmerklink_waarde) bedrijf, - p.prs_perslid_key, - rrr.res_reservering_key, - rrr.res_rsv_ruimte_volgnr, - rr.res_ruimte_nr, - rrr.res_rsv_ruimte_van van, - (rrr.res_rsv_ruimte_tot - rrr.res_rsv_ruimte_van) - * 24 - aantal, - rr.res_ruimte_prijs ps, - rr.res_ruimte_prijs_ochtend po, - rr.res_ruimte_prijs_middag pm - FROM res_v_aanwezigrsv_ruimte rrr, - res_ruimte_opstelling rro, - res_ruimte rr, - prs_perslid p, - (SELECT * - FROM prs_v_aanwezigkenmerklink - WHERE prs_kenmerk_key = 1000) bedrijf, - (SELECT * - FROM prs_v_aanwezigkenmerklink - WHERE prs_kenmerk_key = 1023) huurder, - (SELECT * - FROM prs_v_aanwezigkenmerklink - WHERE prs_kenmerk_key = 1024) lidsinds, - (SELECT * - FROM prs_v_aanwezigkenmerklink - WHERE prs_kenmerk_key = 1025) opgezegd - WHERE rrr.res_rsv_ruimte_ordernr IS NULL - AND rrr.res_status_fo_key IN (1, 2) - AND rrr.res_status_bo_key != 6 -- Nog niet AV - AND rrr.res_rsv_ruimte_dirtlevel = 0 - AND rrr.res_ruimte_opstel_key = - rro.res_ruimte_opstel_key - AND rro.res_ruimte_key = rr.res_ruimte_key - --AND rrr.res_rsv_ruimte_tot < - -- TO_DATE ( - -- '01' || TO_CHAR (SYSDATE, 'mmyyyy'), - -- 'ddmmyyyy' - -- ) - AND rrr.res_rsv_ruimte_tot < SYSDATE - AND rrr.res_rsv_ruimte_contact_key = - p.prs_perslid_key - AND p.prs_afdeling_key IN (21, 22) -- Leden/Niet leden - AND p.prs_perslid_key = bedrijf.prs_link_key(+) - AND p.prs_perslid_key = huurder.prs_link_key(+) - AND p.prs_perslid_key = lidsinds.prs_link_key(+) - AND p.prs_perslid_key = opgezegd.prs_link_key(+) - AND (huurder.prs_kenmerklink_waarde = 1 - OR (TRUNC (rrr.res_rsv_ruimte_van, 'mm') >= - COALESCE ( - fac.safe_to_date ( - lidsinds.prs_kenmerklink_waarde, - 'dd-mm-yyyy' - ), - SYSDATE - ) - AND TRUNC (rrr.res_rsv_ruimte_van, 'mm') < + FROM (SELECT TRIM (bedrijf.prs_kenmerklink_waarde) bedrijf, + p.prs_perslid_key, + rrr.res_reservering_key, + rrr.res_rsv_ruimte_volgnr, + rr.res_ruimte_nr, + rrr.res_rsv_ruimte_van van, + (rrr.res_rsv_ruimte_tot + - rrr.res_rsv_ruimte_van) + * 24 + aantal, + rr.res_ruimte_prijs ps, + rr.res_ruimte_prijs_ochtend po, + rr.res_ruimte_prijs_middag pm + FROM res_v_aanwezigrsv_ruimte rrr, + res_ruimte_opstelling rro, + res_ruimte rr, + prs_perslid p, + (SELECT * + FROM prs_v_aanwezigkenmerklink + WHERE prs_kenmerk_key = 1000) bedrijf, + (SELECT * + FROM prs_v_aanwezigkenmerklink + WHERE prs_kenmerk_key = 1023) huurder, + (SELECT * + FROM prs_v_aanwezigkenmerklink + WHERE prs_kenmerk_key = 1024) lidsinds, + (SELECT * + FROM prs_v_aanwezigkenmerklink + WHERE prs_kenmerk_key = 1025) opgezegd + WHERE rrr.res_rsv_ruimte_ordernr IS NULL + AND rrr.res_status_fo_key IN (1, 2) + AND rrr.res_status_bo_key != 6 -- Nog niet AV + AND rrr.res_rsv_ruimte_dirtlevel = 0 + AND rrr.res_ruimte_opstel_key = + rro.res_ruimte_opstel_key + AND rro.res_ruimte_key = rr.res_ruimte_key + --AND rrr.res_rsv_ruimte_tot < + -- TO_DATE ( + -- '01' || TO_CHAR (SYSDATE, 'mmyyyy'), + -- 'ddmmyyyy' + -- ) + AND rrr.res_rsv_ruimte_tot < + SYSDATE + (1 / 24) + AND rrr.res_rsv_ruimte_contact_key = + p.prs_perslid_key + AND p.prs_afdeling_key IN (21, 22) -- Leden/Niet leden + AND p.prs_perslid_key = + bedrijf.prs_link_key(+) + AND p.prs_perslid_key = + huurder.prs_link_key(+) + AND p.prs_perslid_key = + lidsinds.prs_link_key(+) + AND p.prs_perslid_key = + opgezegd.prs_link_key(+) + AND (huurder.prs_kenmerklink_waarde = 1 + OR (TRUNC (rrr.res_rsv_ruimte_van, 'mm') >= COALESCE ( fac.safe_to_date ( - opgezegd.prs_kenmerklink_waarde, + lidsinds.prs_kenmerklink_waarde, 'dd-mm-yyyy' ), SYSDATE - )))) x - LEFT JOIN - (SELECT c.bedrijf, - COALESCE (mc.prs_link_key, c.prs_link_key) - prs_link_key - FROM ( SELECT UPPER ( - TRIM (kl.prs_kenmerklink_waarde) ) - bedrijf, - MIN (kl.prs_link_key) prs_link_key - FROM prs_v_aanwezigkenmerklink kl, - prs_perslid p - WHERE kl.prs_kenmerk_key = 1000 - AND kl.prs_link_key = - p.prs_perslid_key - AND p.prs_afdeling_key IN (21, 22) -- Leden/Niet leden - GROUP BY UPPER(TRIM ( - kl.prs_kenmerklink_waarde - ))) c - LEFT JOIN - ( SELECT UPPER ( - TRIM (kl.prs_kenmerklink_waarde) - ) - bedrijf, - MIN (kl.prs_link_key) prs_link_key - FROM prs_v_aanwezigkenmerklink kl, - prs_perslid p - WHERE kl.prs_kenmerk_key = 1000 - AND kl.prs_link_key = - p.prs_perslid_key - AND p.prs_afdeling_key IN (21, 22) -- Leden/Niet leden - AND p.prs_srtperslid_key = 482 - GROUP BY UPPER(TRIM ( - kl.prs_kenmerklink_waarde - ))) mc - ON c.bedrijf = mc.bedrijf) y - ON UPPER (x.bedrijf) = y.bedrijf + AND TRUNC (rrr.res_rsv_ruimte_van, + 'mm') < + COALESCE ( + fac.safe_to_date ( + opgezegd.prs_kenmerklink_waarde, + 'dd-mm-yyyy' + ), + SYSDATE + )))) x + LEFT JOIN + (SELECT c.bedrijf, + COALESCE (mc.prs_link_key, c.prs_link_key) + prs_link_key + FROM ( SELECT UPPER(TRIM(kl.prs_kenmerklink_waarde)) + bedrijf, + MIN (kl.prs_link_key) + prs_link_key + FROM prs_v_aanwezigkenmerklink kl, + prs_perslid p + WHERE kl.prs_kenmerk_key = 1000 + AND kl.prs_link_key = + p.prs_perslid_key + AND p.prs_afdeling_key IN + (21, 22) -- Leden/Niet leden + GROUP BY UPPER(TRIM(kl.prs_kenmerklink_waarde))) + c + LEFT JOIN + ( SELECT UPPER(TRIM(kl.prs_kenmerklink_waarde)) + bedrijf, + MIN (kl.prs_link_key) + prs_link_key + FROM prs_v_aanwezigkenmerklink kl, + prs_perslid p + WHERE kl.prs_kenmerk_key = 1000 + AND kl.prs_link_key = + p.prs_perslid_key + AND p.prs_afdeling_key IN + (21, 22) -- Leden/Niet leden + AND p.prs_srtperslid_key = 482 + GROUP BY UPPER(TRIM(kl.prs_kenmerklink_waarde))) + mc + ON c.bedrijf = mc.bedrijf) y + ON UPPER (x.bedrijf) = y.bedrijf + LEFT JOIN -- 1060 = Factuur p.a. + prs_v_aanwezigkenmerklink pa + ON COALESCE (y.prs_link_key, x.prs_perslid_key) = + pa.prs_link_key + AND pa.prs_kenmerk_key = 1060 LEFT JOIN -- 1040 = Factuur t.a.v. prs_v_aanwezigkenmerklink tav ON COALESCE (y.prs_link_key, x.prs_perslid_key) = tav.prs_link_key AND tav.prs_kenmerk_key = 1040; -/* Formatted on 14-5-2013 18:34:36 (QP5 v5.115.810.9015) */ +/* Formatted on 5-6-2013 16:35:45 (QP5 v5.115.810.9015) */ CREATE OR REPLACE VIEW wibc_v_rap_res_frozen ( hide_f_debnr, fclt_f_bedrijf, + per_adres, fclt_f_aanvrager, adres, postcode, @@ -2198,6 +2298,7 @@ AS COALESCE (bedr.prs_kenmerklink_waarde, SUBSTR ('000000' || TO_CHAR (x.prs_perslid_key), -6)) bedrijf, + TRIM (pa.prs_kenmerklink_waarde) pa, COALESCE ( TRIM (tav.prs_kenmerklink_waarde), (SELECT DECODE (prs_perslid_geslacht, @@ -2287,34 +2388,41 @@ AS btw, x.res_rsv_ruimte_omschrijving oms, x.res_rsv_ruimte_opmerking opm - FROM (SELECT rr.res_rsv_ruimte_key, - rr.res_reservering_key, - rr.res_rsv_ruimte_volgnr, - rr.res_rsv_ruimte_van van, - rr.res_rsv_ruimte_tot tot, - rr.res_activiteit_key, - rr.res_rsv_ruimte_bezoekers, - rr.res_rsv_ruimte_omschrijving, - rr.res_rsv_ruimte_opmerking, - fac.safe_to_number(SUBSTR ( - ud.fac_usrdata_omschr, - 1, - LENGTH(ud.fac_usrdata_omschr) - - 1 - )) - prs_perslid_key, - ud.fac_usrdata_code - factuurnummer, - ud.fac_usrdata_aanmaak - factuurdatum, - ud.fac_usrdata_vervaldatum - vervaldatum - FROM res_v_aanwezigrsv_ruimte rr, - fac_v_aanwezigusrdata ud - WHERE rr.res_rsv_ruimte_ordernr = + FROM (SELECT rr.res_rsv_ruimte_key, + rr.res_reservering_key, + rr.res_rsv_ruimte_volgnr, + rr.res_rsv_ruimte_van + van, + rr.res_rsv_ruimte_tot + tot, + rr.res_activiteit_key, + rr.res_rsv_ruimte_bezoekers, + rr.res_rsv_ruimte_omschrijving, + rr.res_rsv_ruimte_opmerking, + fac.safe_to_number(SUBSTR ( + ud.fac_usrdata_omschr, + 1, + LENGTH(ud.fac_usrdata_omschr) + - 1 + )) + prs_perslid_key, ud.fac_usrdata_code - AND ud.fac_usrtab_key = - 82) x + factuurnummer, + ud.fac_usrdata_aanmaak + factuurdatum, + ud.fac_usrdata_vervaldatum + vervaldatum + FROM res_v_aanwezigrsv_ruimte rr, + fac_v_aanwezigusrdata ud + WHERE rr.res_rsv_ruimte_ordernr = + ud.fac_usrdata_code + AND ud.fac_usrtab_key = + 82) x + LEFT JOIN -- 1060 = Factuur p.a. + prs_v_aanwezigkenmerklink pa + ON x.prs_perslid_key = + pa.prs_link_key + AND pa.prs_kenmerk_key = 1060 LEFT JOIN -- 1040 = Factuur t.a.v. prs_v_aanwezigkenmerklink tav ON x.prs_perslid_key = @@ -2428,6 +2536,7 @@ AS COALESCE (bedr.prs_kenmerklink_waarde, SUBSTR ('000000' || TO_CHAR (x.prs_perslid_key), -6)) bedrijf, + TRIM (pa.prs_kenmerklink_waarde) pa, COALESCE ( TRIM (tav.prs_kenmerklink_waarde), (SELECT DECODE (prs_perslid_geslacht, @@ -2482,57 +2591,61 @@ AS ROUND (250 * 21 / 100, 2) btw, NULL oms, NULL opm - FROM (SELECT fac.safe_to_number(SUBSTR ( - fac_usrdata_omschr, - 1, - LENGTH(fac_usrdata_omschr) - - 1 - )) - prs_perslid_key, - fac_usrdata_code - factuurnummer, - fac_usrdata_aanmaak - factuurdatum, - fac_usrdata_vervaldatum - vervaldatum, - TO_CHAR ( - fac_usrdata_aanmaak, - 'yyyy-mm' - ) - lidmaatschap - FROM fac_v_aanwezigusrdata - WHERE fac_usrtab_key = 82 - AND SUBSTR ( - fac_usrdata_omschr, - -1 - ) IN - ('L', 'X') -- Lidmaatschap - UNION ALL - SELECT fac.safe_to_number(SUBSTR ( - fac_usrdata_omschr, - 1, - LENGTH(fac_usrdata_omschr) - - 1 - )) - prs_perslid_key, - fac_usrdata_code - factuurnummer, - fac_usrdata_aanmaak - factuurdatum, - fac_usrdata_vervaldatum - vervaldatum, - '2012-12' lidmaatschap - FROM fac_v_aanwezigusrdata - WHERE fac_usrtab_key = 82 - AND SUBSTR ( - fac_usrdata_omschr, - -1 - ) IN - ('L', 'X') -- Lidmaatschap - AND TO_CHAR ( + FROM (SELECT fac.safe_to_number(SUBSTR ( + fac_usrdata_omschr, + 1, + LENGTH(fac_usrdata_omschr) + - 1 + )) + prs_perslid_key, + fac_usrdata_code + factuurnummer, + fac_usrdata_aanmaak + factuurdatum, + fac_usrdata_vervaldatum + vervaldatum, + TO_CHAR ( fac_usrdata_aanmaak, 'yyyy-mm' - ) = '2013-01') x + ) + lidmaatschap + FROM fac_v_aanwezigusrdata + WHERE fac_usrtab_key = 82 + AND SUBSTR ( + fac_usrdata_omschr, + -1 + ) IN + ('L', 'X') -- Lidmaatschap + UNION ALL + SELECT fac.safe_to_number(SUBSTR ( + fac_usrdata_omschr, + 1, + LENGTH(fac_usrdata_omschr) + - 1 + )) + prs_perslid_key, + fac_usrdata_code + factuurnummer, + fac_usrdata_aanmaak + factuurdatum, + fac_usrdata_vervaldatum + vervaldatum, + '2012-12' lidmaatschap + FROM fac_v_aanwezigusrdata + WHERE fac_usrtab_key = 82 + AND SUBSTR ( + fac_usrdata_omschr, + -1 + ) IN + ('L', 'X') -- Lidmaatschap + AND TO_CHAR ( + fac_usrdata_aanmaak, + 'yyyy-mm' + ) = '2013-01') x + LEFT JOIN -- 1060 = Factuur p.a. + prs_v_aanwezigkenmerklink pa + ON x.prs_perslid_key = pa.prs_link_key + AND pa.prs_kenmerk_key = 1060 LEFT JOIN -- 1040 = Factuur t.a.v. prs_v_aanwezigkenmerklink tav ON x.prs_perslid_key = tav.prs_link_key @@ -2574,6 +2687,7 @@ AS COALESCE (bedr.prs_kenmerklink_waarde, SUBSTR ('000000' || TO_CHAR (x.prs_perslid_key), -6)) bedrijf, + TRIM (pa.prs_kenmerklink_waarde) pa, COALESCE ( TRIM (tav.prs_kenmerklink_waarde), (SELECT DECODE (prs_perslid_geslacht, @@ -2620,34 +2734,40 @@ AS btw, NULL oms, NULL opm - FROM (SELECT fac.safe_to_number(SUBSTR ( - fac_usrdata_omschr, - 1, - LENGTH (fac_usrdata_omschr) - - 1 - )) - prs_perslid_key, - fac_usrdata_code factuurnummer, - fac_usrdata_aanmaak factuurdatum, - fac_usrdata_vervaldatum vervaldatum, - rrr.res_reservering_key, - rrr.res_rsv_ruimte_volgnr, - rr.res_ruimte_nr, - rrr.res_rsv_ruimte_van van, - rrr.res_rsv_ruimte_prijs - FROM fac_v_aanwezigusrdata ud, - res_v_aanwezigrsv_ruimte rrr, - res_ruimte_opstelling rro, - res_ruimte rr - WHERE ud.fac_usrtab_key = 82 - AND SUBSTR (ud.fac_usrdata_omschr, -1) IN - ('H', 'L', 'X') -- Ruimtekorting - AND ud.fac_usrdata_code = - rrr.res_rsv_ruimte_ordernr - AND rrr.res_status_bo_key = 6 -- AV (zou zo moeten zijn) - AND rrr.res_ruimte_opstel_key = - rro.res_ruimte_opstel_key - AND rro.res_ruimte_key = rr.res_ruimte_key) x + FROM (SELECT fac.safe_to_number(SUBSTR ( + fac_usrdata_omschr, + 1, + LENGTH ( + fac_usrdata_omschr + ) + - 1 + )) + prs_perslid_key, + fac_usrdata_code factuurnummer, + fac_usrdata_aanmaak factuurdatum, + fac_usrdata_vervaldatum vervaldatum, + rrr.res_reservering_key, + rrr.res_rsv_ruimte_volgnr, + rr.res_ruimte_nr, + rrr.res_rsv_ruimte_van van, + rrr.res_rsv_ruimte_prijs + FROM fac_v_aanwezigusrdata ud, + res_v_aanwezigrsv_ruimte rrr, + res_ruimte_opstelling rro, + res_ruimte rr + WHERE ud.fac_usrtab_key = 82 + AND SUBSTR (ud.fac_usrdata_omschr, -1) IN + ('H', 'L', 'X') -- Ruimtekorting + AND ud.fac_usrdata_code = + rrr.res_rsv_ruimte_ordernr + AND rrr.res_status_bo_key = 6 -- AV (zou zo moeten zijn) + AND rrr.res_ruimte_opstel_key = + rro.res_ruimte_opstel_key + AND rro.res_ruimte_key = rr.res_ruimte_key) x + LEFT JOIN -- 1060 = Factuur p.a. + prs_v_aanwezigkenmerklink pa + ON x.prs_perslid_key = pa.prs_link_key + AND pa.prs_kenmerk_key = 1060 LEFT JOIN -- 1040 = Factuur t.a.v. prs_v_aanwezigkenmerklink tav ON x.prs_perslid_key = tav.prs_link_key @@ -2657,28 +2777,99 @@ AS ON x.prs_perslid_key = bedr.prs_link_key AND bedr.prs_kenmerk_key = 1000; -/* Formatted on 28-1-2013 15:55:55 (QP5 v5.115.810.9015) */ + +/* Formatted on 5-6-2013 15:05:55 (QP5 v5.115.810.9015) */ CREATE OR REPLACE VIEW wibc_v_rap_freezereserveringen ( hide_f_prskey, hide_f_debnr, fclt_f_bedrijf, fclt_f_aanvrager, - aantal + aantal, + periode +) +AS + SELECT x.hide_f_prskey, + x.hide_f_debnr, + x.fclt_f_bedrijf, + x.fclt_f_aanvrager, + x.aantal, + 1 periode -- Altijd 1! + FROM ( SELECT fac.safe_to_number (v.hide_f_debnr) hide_f_prskey, + v.hide_f_debnr, + v.fclt_f_bedrijf, + v.fclt_f_aanvrager, + COUNT (DISTINCT v.resnr) aantal, + SUM (v.periode) periode + FROM wibc_v_rap_res_actual v + WHERE v.periode > 0 + GROUP BY fac.safe_to_number (v.hide_f_debnr), + v.hide_f_debnr, + v.fclt_f_bedrijf, + v.fclt_f_aanvrager) x + WHERE x.periode > 0 + UNION ALL -- Enkele reservering deze maand (en niets voorgaande maand)! + SELECT x.hide_f_prskey, + x.hide_f_debnr, + x.fclt_f_bedrijf, + x.fclt_f_aanvrager, + x.aantal, + x.periode -- Altijd 0! + FROM ( SELECT fac.safe_to_number (v.hide_f_debnr) hide_f_prskey, + v.hide_f_debnr, + v.fclt_f_bedrijf, + v.fclt_f_aanvrager, + COUNT (DISTINCT v.resnr) aantal, + SUM (v.periode) periode + FROM wibc_v_rap_res_actual v + GROUP BY fac.safe_to_number (v.hide_f_debnr), + v.hide_f_debnr, + v.fclt_f_bedrijf, + v.fclt_f_aanvrager) x + WHERE x.aantal = 1 AND x.periode = 0; +/* +CREATE OR REPLACE VIEW wibc_v_rap_freezereserveringen +( + hide_f_prskey, + hide_f_debnr, + fclt_f_bedrijf, + fclt_f_aanvrager, + aantal, + periode ) AS SELECT fac.safe_to_number (v.hide_f_debnr), v.hide_f_debnr, v.fclt_f_bedrijf, v.fclt_f_aanvrager, - COUNT (DISTINCT v.resnr) aantal + COUNT (DISTINCT v.resnr) aantal, + SUM (v.periode) periode FROM wibc_v_rap_res_actual v GROUP BY fac.safe_to_number (v.hide_f_debnr), v.hide_f_debnr, v.fclt_f_bedrijf, v.fclt_f_aanvrager; +*/ +/* +CREATE OR REPLACE VIEW wibc_v_rap_freezereserveringen +( + fclt_d_datum, + hide_f_prskey, + hide_f_debnr, + fclt_f_bedrijf, + fclt_f_aanvrager +) +AS + SELECT TO_CHAR (TO_DATE (SUBSTR (v.hide_f_datum, 1, 10), 'yyyy-mm-dd'), + 'dd-mm-yyyy'), + fac.safe_to_number (v.hide_f_debnr), + v.hide_f_debnr, + v.fclt_f_bedrijf, + v.fclt_f_aanvrager + FROM wibc_v_rap_res_actual v; +*/ -/* Formatted on 27-5-2013 13:48:12 (QP5 v5.115.810.9015) */ +/* Formatted on 5-6-2013 12:24:42 (QP5 v5.115.810.9015) */ CREATE OR REPLACE VIEW wibc_v_rap_transactielijst ( hide_f_bb_key, @@ -2706,22 +2897,7 @@ AS FROM wibc_v_rap_res_frozen v WHERE INSTR (UPPER (bb.ref_waarde), v.fclt_f_factuur) > 0) ref_bedrag - FROM wibc_bankboek bb - UNION ALL -- Plus facturen met een negatief totaalbedrag??? - SELECT NULL bankboek_key, - 'Te betalen' afschriftnr, - x.factuurdatum boekdatum, - x.fclt_f_factuur omschrijving, - '-' creditdebet, - x.bedrag, - x.fclt_f_factuur ref_waarde, - x.bedrag ref_bedrag - FROM ( SELECT fclt_f_factuur, - MIN (factuurdatum) factuurdatum, - SUM (kosten + btwkosten) bedrag - FROM wibc_v_rap_res_frozen - GROUP BY fclt_f_factuur) x - WHERE x.bedrag < 0; + FROM wibc_bankboek bb; /* Formatted on 25-1-2013 11:50:05 (QP5 v5.115.810.9015) */ CREATE OR REPLACE VIEW wibc_v_rap_charge_register @@ -2987,7 +3163,9 @@ AS - ud.fac_usrdata_aanmaak > 120 GROUP BY ud.fac_usrdata_upper) q GROUP BY q.fac_usrdata_upper) z - ON x.fclt_f_factuur = z.fac_usrdata_upper; + ON x.fclt_f_factuur = z.fac_usrdata_upper + WHERE x.f_bedrag - COALESCE (y.t_bedrag, 0) != 0; + -- Gegevensbron voor het samenstellen van de response op API-requests vanaf -- WTC-website (WW)! @@ -3161,9 +3339,58 @@ CREATE OR REPLACE VIEW WIBC_V_WW_GETAV AS SELECT * FROM WIBC_V_WW_INPUT; +/* Formatted on 5-6-2013 17:55:05 (QP5 v5.115.810.9015) */ +CREATE OR REPLACE VIEW wibc_v_noti_receptie +( + code, + sender, + receiver, + text, + KEY, + par1, + par2, + xkey, + xemail, + xmobile +) +AS + SELECT sn.fac_srtnotificatie_code, + NULL sender, + NULL, --x.receiver, + sn.fac_srtnotificatie_oms, + p.prs_perslid_key, + NULL, + NULL, + NULL, + 'info@businesscenterthehague.com', + NULL + FROM prs_perslid p, fac_srtnotificatie sn + WHERE TRUNC (p.prs_perslid_aanmaak) = TRUNC (SYSDATE + 5 / 1440) + AND TO_NUMBER(TO_CHAR (p.prs_perslid_aanmaak, 'HH24')) + 1 = + TO_NUMBER (TO_CHAR (SYSDATE + 5 / 1440, 'HH24')) + --AND p.prs_afdeling_key = 22 + AND sn.fac_srtnotificatie_code = 'CUST01' + UNION ALL + SELECT sn.fac_srtnotificatie_code, + NULL sender, + NULL, --x.receiver, + sn.fac_srtnotificatie_oms, + t.fac_tracking_refkey, + NULL, + NULL, + NULL, + 'info@businesscenterthehague.com', + NULL + FROM fac_tracking t, fac_srtnotificatie sn + WHERE TRUNC (t.fac_tracking_datum) = TRUNC (SYSDATE + 5 / 1440) + AND TO_NUMBER(TO_CHAR (t.fac_tracking_datum, 'HH24')) + 1 = + TO_NUMBER (TO_CHAR (SYSDATE + 5 / 1440, 'HH24')) + AND t.fac_srtnotificatie_key = 75 -- RESNEW + AND sn.fac_srtnotificatie_code = 'CUST02'; + BEGIN adm.systrackscript('$Workfile: wibc.sql $', '$Revision$', 0); END; / -BEGIN fac.registercustversion('WIBC', 1); END; +BEGIN fac.registercustversion('WIBC', 2); END; / COMMIT; spool off