CSUN#46987 verwijderde locaties doen niet mee bij locatie/gebouw matching

svn path=/Customer/trunk/; revision=35730
This commit is contained in:
Ruud Lipper
2017-10-18 11:08:19 +00:00
parent fca269de9d
commit de4fb156e8

View File

@@ -682,6 +682,7 @@ AS
AND UPPER (trim(aogkk.alg_onrgoedkenmerk_waarde)) =
UPPER (km.mld_kenmerkmelding_waarde)
AND aogkk.alg_onrgoed_key = l.alg_locatie_key
AND l.alg_locatie_verwijder is null
AND aogkk.alg_kenmerk_key = 1203 -- Klant locatiecode
AND fac.safe_to_number (aogkc.alg_onrgoedkenmerk_waarde) = v_client
AND aogkc.alg_onrgoed_key = l.alg_locatie_key
@@ -702,6 +703,7 @@ AS
AND UPPER (trim(aogkk.alg_onrgoedkenmerk_waarde)) =
UPPER (km.mld_kenmerkmelding_waarde)
AND aogkk.alg_onrgoed_key = l.alg_locatie_key
AND l.alg_locatie_verwijder is null
AND aogkk.alg_kenmerk_key = 1203 -- Klant locatiecode
AND fac.safe_to_number (aogkc.alg_onrgoedkenmerk_waarde) = v_client
AND aogkc.alg_onrgoed_key = l.alg_locatie_key
@@ -784,14 +786,14 @@ BEGIN
v_result := p_start
|| ': '
|| SUBSTR (p_text, v_pos_begin, v_pos_eind - v_pos_begin);
-- Soms wordt een tag niet gevonden. Dan wordt de hele body inclusief CSS meegestuurd.
-- Dat willen we natuurlijk niet. Daarom maken we daar maar een lege tag van.
IF LENGTH(v_result) > 1000
THEN
THEN
v_result := p_start || ':';
END IF;
RETURN v_result;
END;
/
@@ -824,7 +826,7 @@ AS
BEGIN
errormsg := '(0x143)';
v_externnr := NULL;
-- Verwijder de Bounce Address Tag Validation
IF pfrom LIKE 'prvs=%'
THEN
@@ -862,25 +864,25 @@ BEGIN
THEN
-- pas de omschrijving van de melding aan. Verwijder onnodige html ballast.
v_body := REPLACE(v_body, ' ', ' '); -- spatie
v_body := REPLACE(v_body, '!', '!');
v_body := REPLACE(v_body, '"', CHR(34)); -- double quote
v_body := REPLACE(v_body, '#', '#');
v_body := REPLACE(v_body, '$', '$');
v_body := REPLACE(v_body, '%', '%');
v_body := REPLACE(v_body, '&', '&');
v_body := REPLACE(v_body, '!', '!');
v_body := REPLACE(v_body, '"', CHR(34)); -- double quote
v_body := REPLACE(v_body, '#', '#');
v_body := REPLACE(v_body, '$', '$');
v_body := REPLACE(v_body, '%', '%');
v_body := REPLACE(v_body, '&', '&');
v_body := REPLACE(v_body, ''', CHR(39)); -- single quote
v_body := REPLACE(v_body, '(', '(');
v_body := REPLACE(v_body, ')', ')');
v_body := REPLACE(v_body, '*', '*');
v_body := REPLACE(v_body, '+', '+');
v_body := REPLACE(v_body, '(', '(');
v_body := REPLACE(v_body, ')', ')');
v_body := REPLACE(v_body, '*', '*');
v_body := REPLACE(v_body, '+', '+');
v_body := REPLACE(v_body, ',', ','); -- komma
v_body := REPLACE(v_body, '-', '-'); -- min teken
v_body := REPLACE(v_body, '-', '-'); -- min teken
v_body := REPLACE(v_body, '.', '.'); -- punt
v_body := REPLACE(v_body, ' ' || CHR (10) || CHR (13), CHR (10) || CHR (13)); -- soms komt er ineens een een spatie achter de tag.
-- gaat het om een normale werkbon, dan is v_pos > 0; anders gaat het om een klacht.
v_pos := INSTR (v_body, '--> Werkbon');
IF v_pos = 0
IF v_pos = 0
THEN
v_omschrijving_ruimte := csun_get_html_valuepair (v_body,
'Omschrijving ruimte',
@@ -1004,7 +1006,7 @@ BEGIN
-- DBMS_OUTPUT.PUT_LINE('mld_stdmelding_key: ' || TO_CHAR(stdmelding));
IF mldkey IS NULL
IF mldkey IS NULL
THEN
BEGIN
-- controleren of we deze melding al eerder ontvangen hebben en dit een update / reminder betreft.
@@ -1020,12 +1022,12 @@ BEGIN
WHERE km.mld_melding_key = m.mld_melding_key
AND km.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = 2
AND psubject LIKE '%' || km.mld_kenmerkmelding_waarde || '%')));
AND psubject LIKE '%' || km.mld_kenmerkmelding_waarde || '%')));
EXCEPTION WHEN OTHERS
THEN
mldkey := NULL;
stdmelding := NULL;
END;
END;
END IF;
BEGIN
SELECT mld_melding_behandelaar_key
@@ -1041,7 +1043,7 @@ BEGIN
behandelaar_key := NULL;
END;
IF stdmelding IS NOT NULL
IF stdmelding IS NOT NULL
AND behandelaar_key IS NOT NULL
AND sender <> 23
THEN -- Bestaande melding en behandelaar is bekend en niet ABN AMRO (23)
@@ -1808,8 +1810,8 @@ AS
v_achternaam VARCHAR2 (255); -- 60
v_bu VARCHAR2 (255);
v_vervallen VARCHAR2 (255);
v_rayonl_persnr VARCHAR2 (255); -- 16
v_rayonl_naam VARCHAR2 (255); -- 60
v_rayonl_persnr VARCHAR2 (255); -- 16
v_rayonl_naam VARCHAR2 (255); -- 60
v_kenmerk1 VARCHAR2 (255);
v_kenmerk2 VARCHAR2 (255);
v_kenmerk3 VARCHAR2 (255);
@@ -1851,23 +1853,23 @@ BEGIN
v_aanduiding := '';
v_error := 0;
-- Lees alle veldwaarden
fac.imp_getfield (v_newline, c_fielddelimitor, v_accountcode); -- FPACCC
fac.imp_getfield (v_newline, c_fielddelimitor, v_accountnaam); -- FPACCO
fac.imp_getfield (v_newline, c_fielddelimitor, v_project); -- FPPRJ#
fac.imp_getfield (v_newline, c_fielddelimitor, v_bu); -- FPREGO
fac.imp_getfield (v_newline, c_fielddelimitor, v_dm); -- FPDISC
fac.imp_getfield (v_newline, c_fielddelimitor, v_voorletters); -- FPDIVL
fac.imp_getfield (v_newline, c_fielddelimitor, v_voornaam); -- FPDIVN
fac.imp_getfield (v_newline, c_fielddelimitor, v_tussenvoegsels); -- FPDIVV
fac.imp_getfield (v_newline, c_fielddelimitor, v_achternaam); -- FPDINM
fac.imp_getfield (v_newline, c_fielddelimitor, v_locatie_omschrijving); -- FPLOCO
fac.imp_getfield (v_newline, c_fielddelimitor, v_locatie_adres); -- FPADBA
fac.imp_getfield (v_newline, c_fielddelimitor, v_locatie_postcode); -- FPPKBA
fac.imp_getfield (v_newline, c_fielddelimitor, v_locatie_plaats); -- FPPLBA
fac.imp_getfield (v_newline, c_fielddelimitor, v_vervallen); -- FPVERV
fac.imp_getfield (v_newline, c_fielddelimitor, v_rayonl_persnr); -- FPGEOK
fac.imp_getfield (v_newline, c_fielddelimitor, v_rayonl_naam); -- FPRLNM
fac.imp_getfield (v_newline, c_fielddelimitor, v_kenmerk1);
fac.imp_getfield (v_newline, c_fielddelimitor, v_accountcode); -- FPACCC
fac.imp_getfield (v_newline, c_fielddelimitor, v_accountnaam); -- FPACCO
fac.imp_getfield (v_newline, c_fielddelimitor, v_project); -- FPPRJ#
fac.imp_getfield (v_newline, c_fielddelimitor, v_bu); -- FPREGO
fac.imp_getfield (v_newline, c_fielddelimitor, v_dm); -- FPDISC
fac.imp_getfield (v_newline, c_fielddelimitor, v_voorletters); -- FPDIVL
fac.imp_getfield (v_newline, c_fielddelimitor, v_voornaam); -- FPDIVN
fac.imp_getfield (v_newline, c_fielddelimitor, v_tussenvoegsels); -- FPDIVV
fac.imp_getfield (v_newline, c_fielddelimitor, v_achternaam); -- FPDINM
fac.imp_getfield (v_newline, c_fielddelimitor, v_locatie_omschrijving); -- FPLOCO
fac.imp_getfield (v_newline, c_fielddelimitor, v_locatie_adres); -- FPADBA
fac.imp_getfield (v_newline, c_fielddelimitor, v_locatie_postcode); -- FPPKBA
fac.imp_getfield (v_newline, c_fielddelimitor, v_locatie_plaats); -- FPPLBA
fac.imp_getfield (v_newline, c_fielddelimitor, v_vervallen); -- FPVERV
fac.imp_getfield (v_newline, c_fielddelimitor, v_rayonl_persnr); -- FPGEOK
fac.imp_getfield (v_newline, c_fielddelimitor, v_rayonl_naam); -- FPRLNM
fac.imp_getfield (v_newline, c_fielddelimitor, v_kenmerk1);
fac.imp_getfield (v_newline, c_fielddelimitor, v_kenmerk2);
fac.imp_getfield (v_newline, c_fielddelimitor, v_kenmerk3);
fac.imp_getfield (v_newline, c_fielddelimitor, v_kenmerk4);
@@ -2171,7 +2173,7 @@ BEGIN
AND alg_locatie_verwijder IS NULL;
IF v_count = 0 THEN
INSERT INTO alg_locatie (alg_district_key, alg_locatie_code, alg_locatie_omschrijving)
VALUES (v_district_key, 'P' || rec.project, SUBSTR(rec.omschrijving,1,50))
RETURNING alg_locatie_key
@@ -2330,7 +2332,7 @@ BEGIN
'Afdeling van Rayonleider kan niet gevonden worden ( Rayonleider:' || rec_ray.voornaam || ' - ' || rec_ray.achternaam || ')',
'');
END;
END LOOP;
END LOOP;
-- Geef de rayonleiders een werkplek als ze deze nog niet hebben.
INSERT INTO prs_perslidwerkplek (prs_perslid_key, prs_perslidwerkplek_bezetting, prs_werkplek_key)
@@ -2349,8 +2351,8 @@ BEGIN
FROM prs_v_perslidwerkplek_gegevens pwpg
WHERE pwpg.prs_perslid_key = p.prs_perslid_key
AND pwpg.alg_locatie_key = l.alg_locatie_key);
-- Verwijder de werkplek van een rayonleider als deze niet meer gekoppeld is.
DELETE prs_perslidwerkplek
WHERE prs_perslidwerkplek_key IN