MARX#88249 Foutmelding bij productie inlezen WXL Mareon bestand

svn path=/Mareon/trunk/; revision=68893
This commit is contained in:
Marcel Bourseau
2025-04-30 13:59:45 +00:00
parent 6c88aa2d8c
commit 3257b61909

View File

@@ -15622,7 +15622,9 @@ SET DEFINE OFF
SELECT MAX (prs_bedrijf_key)
INTO v_prs_bedrijf_woco_key
FROM prs_bedrijf
WHERE prs_bedrijf_naam_upper =
WHERE prs_bedrijf_intern = 1
AND prs_bedrijf_verwijder IS NULL
AND prs_bedrijf_naam_upper =
(SELECT UPPER (ud.fac_usrdata_omschr)
FROM fac_usrdata ud
WHERE ud.fac_usrtab_key = 1
@@ -15899,11 +15901,11 @@ SET DEFINE OFF
|| ' is niet uniek en bestaat al bij een (ander) bedrijf, mag niet!',
'Bedrijf wordt overgeslagen!');
ELSE
-- Nog ff checken of het bedrijf qua naam al bestaat, want dan kunnen we deze sowiso niet toevoegen, en willen we wel een Premium alert (MARX#39748).
-- Nog ff checken of het bedrijf qua naam al bestaat, want dan kunnen we deze sowieso niet toevoegen, en willen we wel een Premium alert (MARX#39748).
SELECT MAX (prs_bedrijf_key)
INTO v_bedrijf_key
FROM prs_bedrijf
WHERE prs_bedrijf_naam_upper = UPPER (rec.prs_bedrijf_naam) AND prs_bedrijf_verwijder IS NULL;
WHERE prs_bedrijf_naam_upper = UPPER (rec.prs_bedrijf_naam) AND prs_bedrijf_intern IS NULL AND prs_bedrijf_verwijder IS NULL;
IF v_bedrijf_key IS NOT NULL
THEN
@@ -16085,7 +16087,9 @@ SET DEFINE OFF
SELECT MAX (prs_bedrijf_naam_upper), MAX (prs_bedrijf_key)
INTO v_woco_bedrijf_naam, v_woco_bedrijf_key
FROM prs_bedrijf
WHERE prs_bedrijf_naam_upper =
WHERE prs_bedrijf_intern = 1
AND prs_bedrijf_verwijder IS NULL
AND prs_bedrijf_naam_upper =
(SELECT UPPER (ud.fac_usrdata_omschr)
FROM fac_usrdata ud
WHERE ud.fac_usrtab_key = 1
@@ -16225,7 +16229,7 @@ SET DEFINE OFF
SELECT MAX (prs_bedrijf_key)
INTO v_prs_bedrijf_key
FROM prs_bedrijf
WHERE prs_bedrijf_naam_upper = UPPER (rec.prs_bedrijf_naam) AND prs_bedrijf_verwijder IS NULL;
WHERE prs_bedrijf_naam_upper = UPPER (rec.prs_bedrijf_naam) AND prs_bedrijf_intern IS NULL AND prs_bedrijf_verwijder IS NULL;
IF v_prs_bedrijf_key IS NOT NULL
@@ -16621,9 +16625,18 @@ SET DEFINE OFF
CREATE OR REPLACE PROCEDURE marx_update_leveranciers (p_import_key IN NUMBER)
AS
v_aant_fouten NUMBER (10);
BEGIN
fac_update_bedrijf_body (p_import_key, 0);
marx_post_update_leveranciers (p_import_key, 'MLD');
SELECT count(*)
INTO v_aant_fouten
FROM imp_log
WHERE fac_import_key = p_import_key
AND imp_log_status = 'E';
IF v_aant_fouten = 0
THEN
marx_post_update_leveranciers (p_import_key, 'MLD');
END IF;
END;
/
@@ -16720,7 +16733,9 @@ SET DEFINE OFF
SELECT MAX (prs_bedrijf_naam_upper), MAX (prs_bedrijf_key)
INTO v_woco_bedrijf_naam, v_woco_bedrijf_key
FROM prs_bedrijf
WHERE prs_bedrijf_naam_upper =
WHERE prs_bedrijf_intern = 1
AND prs_bedrijf_verwijder IS NULL
AND prs_bedrijf_naam_upper =
(SELECT UPPER (ud.fac_usrdata_omschr)
FROM fac_usrdata ud
WHERE ud.fac_usrtab_key = 1
@@ -16833,15 +16848,27 @@ SET DEFINE OFF
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
v_max_prs_bedrijf_key NUMBER (10);
v_aant_fouten NUMBER(10);
BEGIN
-- Bepaal eerst de max. bedrijfskey, deze wordt gebruikt in de functie marx_post_update_vvebeheerders, alle bedrijven (vve-beheerders) met een hogere key (die dus zijn toegevoegd door deze import) krijgen een post-actie...
SELECT MAX (prs_bedrijf_key) INTO v_max_prs_bedrijf_key FROM prs_bedrijf;
fac_update_bedrijf_body (p_import_key, 0);
marx_post_update_leveranciers (p_import_key, 'VVE');
marx_post_update_vvebeheerders (p_import_key, v_max_prs_bedrijf_key);
SELECT count(*)
INTO v_aant_fouten
FROM imp_log
WHERE fac_import_key = p_import_key
AND imp_log_status = 'E';
IF v_aant_fouten = 0
THEN
marx_post_update_leveranciers (p_import_key, 'VVE');
marx_post_update_vvebeheerders (p_import_key, v_max_prs_bedrijf_key);
END IF;
-- Reset van de instelling '$MAR_BEDRIJFSNAAM_TBV_VVEBEHEER_IMPORT', oftewel leeg maken voor de volgende keer dat je expliciet, dus nagedacht, de instelling weer moet zetten.
UPDATE fac_usrdata ud
SET ud.fac_usrdata_omschr = ''
@@ -16887,7 +16914,9 @@ SET DEFINE OFF
SELECT MAX (prs_bedrijf_naam_upper)
INTO v_woco_bedrijf_naam
FROM prs_bedrijf
WHERE prs_bedrijf_naam_upper =
WHERE prs_bedrijf_intern = 1
AND prs_bedrijf_verwijder IS NULL
AND prs_bedrijf_naam_upper =
(SELECT UPPER (ud.fac_usrdata_omschr)
FROM fac_usrdata ud
WHERE ud.fac_usrtab_key = 1
@@ -16943,13 +16972,25 @@ SET DEFINE OFF
v_errormsg VARCHAR2 (1000);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
v_aant_fouten NUMBER(10);
BEGIN
-- Parameter p_sync = 0 of 1:
-- 0 = er wordt niet gesynchroniseerd (op leveranciersnummer), maar gewoon (ala FIP) aangevuld. Elke leverancier wordt toegevoegd.
-- 1 = er wel wel gesynchroniseerd (op leveranciernummer), dus add + update + delete
fac_update_bedrijf_body (p_import_key, 0);
marx_post_update_leveranciers (p_import_key, 'CNT');
SELECT count(*)
INTO v_aant_fouten
FROM imp_log
WHERE fac_import_key = p_import_key
AND imp_log_status = 'E';
IF v_aant_fouten = 0
THEN
marx_post_update_leveranciers (p_import_key, 'CNT');
END IF;
-- Reset van de instelling '$MAR_BEDRIJFSNAAM_TBV_CONTRACTANT_IMPORT', oftewel leeg maken voor de volgende keer dat je expliciet, dus nagedacht, de instelling weer moet zetten.
UPDATE fac_usrdata ud
@@ -17244,7 +17285,9 @@ SET DEFINE OFF
SELECT MAX (prs_bedrijf_naam_upper)
INTO v_woco_bedrijf_naam
FROM prs_bedrijf
WHERE prs_bedrijf_naam_upper =
WHERE prs_bedrijf_intern = 1
AND prs_bedrijf_verwijder IS NULL
AND prs_bedrijf_naam_upper =
(SELECT UPPER (ud.fac_usrdata_omschr)
FROM fac_usrdata ud
WHERE ud.fac_usrtab_key = 1
@@ -17326,7 +17369,7 @@ SET DEFINE OFF
SELECT MAX (prs_bedrijf_key)
INTO v_prs_bedrijf_key
FROM prs_bedrijf
WHERE prs_bedrijf_naam_upper = UPPER (rec.prs_bedrijf_naam) AND prs_bedrijf_verwijder IS NULL;
WHERE prs_bedrijf_naam_upper = UPPER (rec.prs_bedrijf_naam) AND prs_bedrijf_intern IS NULL AND prs_bedrijf_verwijder IS NULL;
v_errorhint := 'Instellen loginnaam en email';
v_loginnaam := SUBSTR (rec.oslogin, 1, 30);
@@ -17494,6 +17537,7 @@ SET DEFINE OFF
FOR rec IN c1
LOOP
BEGIN
-- MARX#88249 Foutmelding bij productie inlezen WXL Mareon bestand: hier geen prs_bedrijf_intern = 1 in de conditie! Want woco heeft initieel hier NULL value staan.
SELECT MAX (prs_bedrijf_key)
INTO v_prs_bedrijf_key
FROM prs_bedrijf
@@ -17893,12 +17937,22 @@ SET DEFINE OFF
CREATE OR REPLACE PROCEDURE marx_update_woco (p_import_key IN NUMBER)
AS
v_aant_fouten NUMBER(10);
BEGIN
-- Parameter p_sync = 0 of 1:
-- 0 = er wordt niet gesynchroniseerd (op leveranciersnummer), maar gewoon (ala FIP) aangevuld. Elke leverancier wordt toegevoegd.
-- 1 = er wel wel gesynchroniseerd (op leveranciernummer), dus add + update + delete
fac_update_bedrijf_body (p_import_key, 0);
marx_post_update_woco (p_import_key);
SELECT count(*)
INTO v_aant_fouten
FROM imp_log
WHERE fac_import_key = p_import_key
AND imp_log_status = 'E';
IF v_aant_fouten = 0
THEN
marx_post_update_woco (p_import_key);
END IF;
END;
/
@@ -18160,14 +18214,14 @@ SET DEFINE OFF
SELECT prs_bedrijf_key
INTO v_prs_bedrijf_woco_key
FROM prs_bedrijf
WHERE prs_bedrijf_naam_upper = UPPER (rc.prs_bedrijf_woco_naam) AND prs_bedrijf_verwijder IS NULL;
WHERE prs_bedrijf_naam_upper = UPPER (rc.prs_bedrijf_woco_naam) AND prs_bedrijf_intern = 1 AND prs_bedrijf_verwijder IS NULL;
v_errorhint := 'Fout bij bepalen woco [' || rc.prs_bedrijf_lev_naam || ']';
v_errorhint := 'Fout bij bepalen lev. [' || rc.prs_bedrijf_lev_naam || ']';
SELECT prs_bedrijf_key
INTO v_prs_bedrijf_lev_key
FROM prs_bedrijf
WHERE prs_bedrijf_naam_upper = UPPER (rc.prs_bedrijf_lev_naam) AND prs_bedrijf_verwijder IS NULL;
WHERE prs_bedrijf_naam_upper = UPPER (rc.prs_bedrijf_lev_naam) AND prs_bedrijf_intern IS NULL AND prs_bedrijf_verwijder IS NULL;
-- Check of btwcode wel bestaat