PIVP#76168 -- Splitsen van de verschillende grafieken

svn path=/Customer/trunk/; revision=58627
This commit is contained in:
Norbert Wassink
2023-01-11 15:43:20 +00:00
parent 6adfb45d93
commit eb21ec17a8

View File

@@ -2016,7 +2016,7 @@ BEGIN
DELETE FROM fac_imp_kpn;
DELETE FROM fac_imp_organisatie;
DELETE FROM fac_imp_ext_bedrijf;
DELETE FROM fac_imp_csv;
-- DELETE FROM fac_imp_csv;
@@ -2087,7 +2087,7 @@ BEGIN
1);
-- hoeveel ruimtes hebben we in de lijst staan
SELECT (LENGTH(v_ruimte_nrs) - NVL(LENGTH(REPLACE(v_ruimte_nrs,v_ruimteseperator)),0)) / LENGTH(v_ruimteseperator)
/* SELECT (LENGTH(v_ruimte_nrs) - NVL(LENGTH(REPLACE(v_ruimte_nrs,v_ruimteseperator)),0)) / LENGTH(v_ruimteseperator)
INTO v_ruimtecounter
FROM dual;
@@ -2126,7 +2126,7 @@ BEGIN
END LOOP;
END IF;
*/
END LOOP;
@@ -2160,7 +2160,7 @@ BEGIN
fac_update_kpn(p_import_key);
fac_update_organisatie(p_import_key);
fac_update_ext_bedrijf(p_import_key);
FOR rec in huurders
/* FOR rec in huurders
LOOP
v_huurder_key:=-1;
BEGIN
@@ -2217,7 +2217,7 @@ BEGIN
'niet gevonden');
END;
END LOOP;
*/
END;
/
@@ -2336,18 +2336,13 @@ BEGIN
END;
END IF;*/
INSERT INTO fac_imp_onrgoed2 (alg_locatie_code,
alg_gebouw_code,
alg_verdieping_volgnr,
alg_srtruimte_omschrijving,
alg_ruimte_nr,
alg_ruimte_omschrijving,
alg_ruimte_bruto_vloeropp,
prs_afdeling_naam,
prs_ruimteafdeling_bezetting,
alg_ruimte_bruto_vloeropp,
alg_kenmerkwaarde1,
alg_kenmerkwaarde2,
alg_kenmerkwaarde3,
@@ -2358,9 +2353,7 @@ BEGIN
v_srtruimte,
v_ruimte_nr,
v_ruimte_omsc,
v_bvo_nr,
DECODE(v_huurder_code,null, null, v_huurder_code),
DECODE(v_huurder_code,null, null, 100),
v_bvo_nr,
DECODE(v_km_verhuurbaar, NULL, NULL, v_vhrbr_kenm_key||'='||v_km_verhuurbaar),
DECODE(v_km_vvo, NULL, NULL, v_vvo_kenm_key||'='||v_km_vvo),
DECODE(v_km_verhuurtype, NULL, NULL, v_hrTp_kenm_key||'='||v_verhuurtype),
@@ -2384,6 +2377,172 @@ END;
CREATE OR REPLACE PROCEDURE PIVP_IMPORT_EXACT_RUIMTEHUURD(p_import_key NUMBER)
AS
CURSOR c
IS
SELECT *
FROM fac_imp_file
WHERE fac_import_key = p_import_key
ORDER BY fac_imp_file_index;
c_fielddelimitor VARCHAR2 (1) := ';';
v_newline VARCHAR2 (4000); -- Input line
v_errormsg VARCHAR2 (1000);
v_errorhint VARCHAR2 (1000);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
header_is_valid NUMBER;
v_count_import NUMBER;
v_ruimte VARCHAR2(100);
v_debiteur VARCHAR2(100);
BEGIN
DELETE FROM fac_imp_csv WHERE fac_import_key=p_import_key;
header_is_valid:=0;
v_count_import :=0;
FOR rec IN c
LOOP
BEGIN
v_errormsg := 'Fout FETCH te importeren rij';
v_count_import:=v_count_import+1;
v_newline := rec.fac_imp_file_line;
v_errormsg := 'Fout opvragen te importeren rij '||v_count_import;
-- Lees alle veldwaarden
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 1, v_ruimte);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 2, v_debiteur);
IF header_is_valid=0
THEN
IF UPPER(v_ruimte)='RUIMTE' AND UPPER(v_debiteur)='KLANT'
THEN
header_is_valid:=1;
END IF;
ELSE
INSERT INTO FAC_IMP_CSV (fac_import_key,
fac_imp_csv_col01,
fac_imp_csv_col02,
fac_imp_csv_index)
VALUES (p_import_key,
v_ruimte,
v_debiteur,
v_count_import);
END IF;
EXCEPTION
WHEN NO_DATA_FOUND THEN
fac.imp_writelog (p_import_key,
'E',
v_errormsg,
'niet gevonden');
END;
END LOOP;
END;
/
CREATE OR REPLACE PROCEDURE PIVP_UPDATE_EXACT_RUIMTEHUURD(p_import_key NUMBER)
AS
CURSOR csv IS
SELECT *
FROM fac_imp_csv
WHERE fac_import_key=p_import_key;
v_errormsg VARCHAR2 (1000);
v_errorhint VARCHAR2 (1000);
v_ruimte_nr VARCHAR2(100);
v_gebouw_code VARCHAR2(100);
v_debiteur VARCHAR2(100);
v_ruimte_key NUMBER;
v_huurder_key NUMBER;
v_huurder_naam VARCHAR2(60);
v_huidige_huurder_nr VARCHAR2(20);
v_huidige_huurder_naam VARCHAR2(60);
v_tracking_msg VARCHAR2(100);
v_counter NUMBER;
v_insert_counter NUMBER;
BEGIN
v_counter:=0;
v_insert_counter:=0;
FOR rec IN csv
LOOP
v_counter:=v_counter+1;
v_gebouw_code:=SUBSTR(rec.fac_imp_csv_col01,1,INSTR(rec.fac_imp_csv_col01,'-')-1);
v_ruimte_nr := SUBSTR(rec.fac_imp_csv_col01,INSTR(rec.fac_imp_csv_col01,'-')+1,LENGTH(rec.fac_imp_csv_col01));
v_debiteur := rec.fac_imp_csv_col02;
BEGIN
v_errorhint:='Ruimte '||v_ruimte_nr||'in gebouw '||v_gebouw_code||' niet gevonden';
v_errormsg:='Ruimte niet gevonden';
SELECT alg_ruimte_key
INTO v_ruimte_key
FROM alg_v_onroerendgoed_gegevens
WHERE alg_ruimte_nr=v_ruimte_nr
AND alg_gebouw_code=v_gebouw_code;
EXCEPTION WHEN NO_DATA_FOUND THEN
v_ruimte_key:=-1;
fac.imp_writelog (p_import_key,
'W',
v_errorhint ,
v_errormsg);
END;
BEGIN
v_errorhint:='Huurder '||v_debiteur||' niet gevonden';
v_errormsg:='Huurder niet gevonden';
SELECT prs_bedrijf_key , p.prs_bedrijf_naam
INTO v_huurder_key , v_huurder_naam
FROM prs_bedrijf p
WHERE p.prs_leverancier_nr = v_debiteur
AND p.prs_bedrijf_huurder=1
AND p.prs_bedrijf_verwijder IS NULL;
EXCEPTION WHEN NO_DATA_FOUND THEN
v_huurder_key:=-1;
fac.imp_writelog (p_import_key,
'W',
v_errorhint ,
v_errormsg);
END;
BEGIN
SELECT p.prs_leverancier_nr, p.prs_bedrijf_naam
INTO v_huidige_huurder_nr, v_huidige_huurder_naam
FROM alg_v_onroerendgoed_gegevens alg, alg_onrgoedkenmerk aok, prs_bedrijf p
WHERE alg.alg_ruimte_key=519
AND aok.alg_onrgoed_key = alg.alg_ruimte_key
AND aok.alg_kenmerk_key=1021
AND p.prs_bedrijf_key=aok.alg_onrgoedkenmerk_waarde;
IF v_debiteur<>v_huidige_huurder_nr THEN
v_tracking_msg :='IMP: Huurder gewijzigd van '||v_huidige_huurder_naam||'('|| v_huidige_huurder_nr||')'||' naar '||v_huurder_naam||'('||v_debiteur||')';
END IF;
EXCEPTION WHEN NO_DATA_FOUND
THEN
v_tracking_msg :='IMP: Nieuwe huurder '||v_huurder_naam||'('||v_debiteur||')';
END;
IF v_ruimte_key>0 AND v_huurder_key>0 THEN
alg.upsertkenmerk(1021,v_ruimte_key,v_huurder_key);
fac.trackaction ('ALGRUP', v_ruimte_key, 3, SYSDATE,
v_tracking_msg);
v_insert_counter:=v_insert_counter+1;
END IF;
fac.imp_writelog (p_import_key,
'W',
'Regels ingelezen :'||v_counter||' waarvan '||v_insert_counter||' geupdate',
v_errormsg);
END LOOP;
END;
/
CREATE OR REPLACE PROCEDURE PIVP_IMPORT_RELATIES(p_import_key IN NUMBER)
AS
BEGIN
@@ -2943,6 +3102,22 @@ AS
GROUP by ruimte_nr, maand, datum_van;
CREATE OR REPLACE VIEW PIVP_V_RAP_ZAALBEZETTING_ALL
(
ruimte_nr,
maand,
sort_datum,
percentage
)
AS
SELECT ruimte_nr,
maand,
to_char(datum_van,'YYYY-MM'),
SUM(duur)/SUM(beschikbaar)*100 percentage
FROM pivp_v_rap_zaalres
GROUP by ruimte_nr, maand, datum_van;
CREATE OR REPLACE VIEW PIVP_V_HUURDERSRAPPORT
AS
SELECT ok.alg_onrgoedkenmerk_waarde bedrijf_key,
@@ -2983,7 +3158,9 @@ CREATE OR REPLACE VIEW PIVP_V_RUIMTEEXPORT
verhuurbaar,
soort_ruimte,
vvo,
ruimte_type_verhuur
ruimte_type_verhuur,
mutatie_datum,
sync_datum
)
AS
SELECT alg.alg_ruimte_key,
@@ -3028,7 +3205,15 @@ AS
AND aok.alg_kenmerk_key=ak.alg_kenmerk_key
AND UPPER(ak.alg_kenmerk_omschrijving)='VERHUURTYPE'
AND fud.fac_usrdata_key=fac.safe_to_number(aok.alg_onrgoedkenmerk_waarde)
and ak.alg_kenmerk_verwijder IS NULL) ruimte_type_verhuur
and ak.alg_kenmerk_verwijder IS NULL) ruimte_type_verhuur,
(SELECT MAX(fac_tracking_datum)
FROM fac_tracking ft, fac_srtnotificatie fs
WHERE fs.fac_srtnotificatie_code='ALGRUP'
AND ft.fac_srtnotificatie_key = fs.FAC_SRTNOTIFICATIE_KEY
AND ft.FAC_TRACKING_REFKEY=alg.alg_ruimte_key) mut_datum,
(SELECT alg_ruimte_externsyncdate
FROM alg_ruimte ar
WHERE ar.alg_ruimte_key=alg.alg_ruimte_key) sync_datum
FROM alg_v_ruimte_gegevens alg, alg_gebouw agb
WHERE agb.alg_gebouw_key = alg.alg_gebouw_key
AND alg.alg_ruimte_nr NOT LIKE '_000';
@@ -3068,7 +3253,7 @@ AS
AND pp.prs_perslid_key = res.res_rsv_ruimte_host_key
AND pa.prs_afdeling_key = pp.prs_afdeling_key
AND (res.res_rsv_ruimte_verwijder IS NULL OR (res.res_rsv_ruimte_verwijder IS NOT NULL AND res.res_rsv_ruimte_van < res.res_rsv_ruimte_verwijder));
AND res.
@@ -3271,7 +3456,7 @@ BEGIN
pivp.add_xml_element (v_bestand, 'Description', rec_regel.melding_key||' - '||rec_regel.onderwerp);
pivp.add_xml_row (v_bestand, '<Costcenter code="' || xml.char_to_html('003.OPS') || '"/>');
-- pivp.add_xml_row (v_bestand, '<Costunit code="' || xml.char_to_html('999999') || '"/>');
pivp.add_xml_row (v_bestand, '<Debitor number="' || xml.char_to_html(rec_regel.debiteurnr) || '"/>');
pivp.add_xml_row (v_bestand, '<Debtor number="' || xml.char_to_html(rec_regel.debiteurnr) || '"/>');
pivp.add_xml_row (v_bestand, '<Item code=""/>');
pivp.add_xml_row (v_bestand, '<Amount>');
pivp.add_xml_row (v_bestand, '<Currency code="EUR"/>');
@@ -3414,15 +3599,13 @@ BEGIN
END IF;
pivp.add_xml_row (v_bestand, '<FinEntryLine number="' || v_sub_count || '" type="N" subtype="N">');
pivp.add_xml_element (v_bestand, 'Date', TO_CHAR(SYSDATE, 'YYYY-MM-DD') );
pivp.add_xml_row (v_bestand, '<FinYear number="'||TO_CHAR(SYSDATE, 'YYYY')||'"/>' );
pivp.add_xml_row (v_bestand, '<FinPeriod number="'||TO_CHAR(SYSDATE, 'MM')||'"/>' );
pivp.add_xml_row (v_bestand, '<GLAccount code="' || v_dienstencode || '"/>');
pivp.add_xml_element (v_bestand, 'Description', 'Zaal '||rec_regel.ruimte_nr||' op '||TO_CHAR(rec_regel.datum,'DD-MM-YYYY')||' van '||rec_regel.van||' tot '||rec_regel.tot);
pivp.add_xml_row (v_bestand, '<Costcenter code="' || xml.char_to_html('003.OPS') || '"/>');
pivp.add_xml_row (v_bestand, '<Debitor number="' || xml.char_to_html(rec_regel.debiteurnr) || '"/>');
pivp.add_xml_row (v_bestand, '<Debtor number="' || xml.char_to_html(rec_regel.debiteurnr) || '"/>');
-- pivp.add_xml_row (v_bestand, '<Item code=""/>');
pivp.add_xml_row (v_bestand, '<Amount>');
pivp.add_xml_row (v_bestand, '<Currency code="EUR"/>');
@@ -3601,7 +3784,8 @@ AS
CURSOR ruimtes IS
SELECT *
FROM pivp_v_ruimteexport
WHERE verhuurbaar='1' AND ruimte_nr='RE-2218';
WHERE verhuurbaar='1'
AND (sync_datum IS NULL OR sync_datum<mutatie_datum);
v_bestand VARCHAR2(100);
v_counter NUMBER;
@@ -3622,8 +3806,9 @@ BEGIN
FOR rec IN ruimtes
LOOP
v_counter:=v_counter+1;
pivp.add_xml_row (v_bestand, '<Item code="'||rec.ruimte_nr||'" searchcode="'||rec.ruimte_nr||'">');
pivp.add_xml_element (v_bestand, 'Description', rec.gebouw_code);
pivp.add_xml_row (v_bestand, '<Item code="'||rec.ruimte_nr||'" TYPE="S" searchcode="'||rec.ruimte_nr||'">');
pivp.add_xml_element (v_bestand, 'Description', rec.ruimte_nr);
pivp.add_xml_row (v_bestand, '<Assortment number=<3D>4001<30> code=<3D>4001<30>/>');
pivp.add_xml_row (v_bestand, '<FreeFields>');
pivp.add_xml_row (v_bestand, '<FreeNumbers>');
pivp.add_xml_row (v_bestand,'<FreeNumber number="1" label="Oppervlakte WO (m2)">'||rec.wo||'</FreeNumber>');
@@ -3633,6 +3818,10 @@ BEGIN
pivp.add_xml_row (v_bestand, '<FreeYesNo number="1" label="Verhuurbaar">'||rec.verhuurbaar||'</FreeYesNo>');
pivp.add_xml_row (v_bestand, '<FreeYesNo number="2" label="Vergaderruimte">0</FreeYesNo>');
pivp.add_xml_row (v_bestand, '</FreeYesNo>');
pivp.add_xml_row (v_bestand, '<FreeText>');
pivp.add_xml_row (v_bestand, '<FreeText number="1" label="Type">'||rec.ruimte_type_verhuur||'</FreeText>');
pivp.add_xml_row (v_bestand, '</FreeText>');
pivp.add_xml_row (v_bestand, '</FreeFields>');
pivp.add_xml_row (v_bestand, '</Item>');