PNBR#60122: Cateringbestellingen, importeren SAP bestelnummers tbv catering aanvragen
svn path=/Customer/trunk/; revision=46080
This commit is contained in:
@@ -5744,7 +5744,7 @@ AS
|
||||
|
||||
NEXT_RECORD c_cursor%ROWTYPE;
|
||||
|
||||
v_newline VARCHAR2 (1000); -- Input line
|
||||
v_newline VARCHAR2 (1000);
|
||||
v_field VARCHAR2 (100);
|
||||
v_fielddelimitor VARCHAR2 (1);
|
||||
v_errormsg VARCHAR (200);
|
||||
@@ -5756,11 +5756,14 @@ AS
|
||||
|
||||
-- de velden uit het importbestand
|
||||
v_leverancier VARCHAR2 (100);
|
||||
v_periode_jaar VARCHAR2 (100);
|
||||
v_naam VARCHAR2 (100);
|
||||
v_jaar VARCHAR2 (100);
|
||||
v_maand VARCHAR2 (100);
|
||||
v_bestelnummer VARCHAR2 (100);
|
||||
v_bestelregel VARCHAR2 (100);
|
||||
v_begrotingspost VARCHAR2 (100);
|
||||
v_budgethouder VARCHAR2 (100);
|
||||
v_budgethouder_naam VARCHAR2 (100);
|
||||
v_budgethouder_key NUMBER (10);
|
||||
v_bestelnummer_omschr VARCHAR2 (100);
|
||||
BEGIN
|
||||
@@ -5777,20 +5780,27 @@ BEGIN
|
||||
|
||||
v_newline := NEXT_RECORD.FAC_IMP_FILE_LINE;
|
||||
fac.imp_getfield (v_newline, v_fielddelimitor, v_leverancier);
|
||||
fac.imp_getfield (v_newline, v_fielddelimitor, v_periode_jaar);
|
||||
fac.imp_getfield (v_newline, v_fielddelimitor, v_naam);
|
||||
fac.imp_getfield (v_newline, v_fielddelimitor, v_jaar);
|
||||
fac.imp_getfield (v_newline, v_fielddelimitor, v_maand);
|
||||
fac.imp_getfield (v_newline, v_fielddelimitor, v_bestelnummer);
|
||||
fac.imp_getfield (v_newline, v_fielddelimitor, v_bestelregel);
|
||||
fac.imp_getfield (v_newline, v_fielddelimitor, v_begrotingspost);
|
||||
fac.imp_getfield (v_newline, v_fielddelimitor, v_budgethouder);
|
||||
fac.imp_getfield (v_newline,
|
||||
v_fielddelimitor,
|
||||
v_budgethouder_naam);
|
||||
|
||||
IF ( header_is_valid = 0
|
||||
AND UPPER (v_leverancier) = 'LEVERANCIER'
|
||||
AND UPPER (v_periode_jaar) =
|
||||
'PERIODE/JAAR AANLEGGEN BESTELLING'
|
||||
AND UPPER (v_leverancier) = 'LEVERANC.'
|
||||
AND UPPER (v_naam) = 'NAAM 1'
|
||||
AND UPPER (v_jaar) = 'JAAR'
|
||||
AND UPPER (v_maand) = 'MAAND'
|
||||
AND UPPER (v_bestelnummer) = 'BESTELNUMMER'
|
||||
AND UPPER (v_bestelregel) = 'BESTELREGEL'
|
||||
AND UPPER (v_bestelregel) = 'BESTELNUMMER REGEL'
|
||||
AND UPPER (v_begrotingspost) = 'BEGROTINGSPOST'
|
||||
AND UPPER (v_budgethouder) = 'BUDGETHOUDER')
|
||||
AND UPPER (v_budgethouder) = 'BUDG.HOUD'
|
||||
AND UPPER (v_budgethouder_naam) = 'NAAM BUDGETHOUDER')
|
||||
THEN
|
||||
header_is_valid := 1;
|
||||
ELSE
|
||||
@@ -5802,11 +5812,7 @@ BEGIN
|
||||
SELECT prs_perslid_key
|
||||
INTO v_budgethouder_key
|
||||
FROM prs_perslid p
|
||||
WHERE UPPER (
|
||||
SUBSTR (v_budgethouder,
|
||||
1,
|
||||
INSTR (v_budgethouder, '/') - 2)) =
|
||||
p.prs_perslid_oslogin;
|
||||
WHERE v_budgethouder = p.prs_perslid_oslogin;
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
@@ -5894,15 +5900,52 @@ EXCEPTION
|
||||
'E',
|
||||
v_errormsg,
|
||||
'');
|
||||
END;
|
||||
END pnbr_import_bestelnr;
|
||||
/
|
||||
|
||||
CREATE OR REPLACE PROCEDURE pnbr_update_bestelnr (p_import_key IN NUMBER)
|
||||
IS
|
||||
AS
|
||||
v_errormsg VARCHAR (200);
|
||||
v_errorhint VARCHAR (200);
|
||||
v_aanduiding VARCHAR (200);
|
||||
oracle_err_mes VARCHAR (200);
|
||||
oracle_err_num NUMBER;
|
||||
|
||||
CURSOR kpn_del IS
|
||||
SELECT *
|
||||
FROM prs_kostenplaats kp
|
||||
WHERE kp.prs_kostenplaats_module = 'PRJ'
|
||||
AND UPPER (kp.prs_kostenplaats_omschrijving) LIKE '%SAP%'
|
||||
AND kp.prs_kostenplaats_upper NOT IN
|
||||
(SELECT UPPER (imp_kp.prs_kostenplaats_nr)
|
||||
FROM fac_imp_kpn imp_kp);
|
||||
|
||||
BEGIN
|
||||
fac_update_kpn (p_import_key);
|
||||
COMMIT;
|
||||
END;
|
||||
|
||||
FOR rec IN kpn_del
|
||||
LOOP
|
||||
BEGIN
|
||||
v_aanduiding := rec.prs_kostenplaats_nr;
|
||||
v_errorhint := 'Bepalen vervallen kostenplaats';
|
||||
|
||||
UPDATE prs_kostenplaats kp
|
||||
SET kp.prs_kostenplaats_verwijder = SYSDATE
|
||||
WHERE kp.prs_kostenplaats_key = rec.prs_kostenplaats_key;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
oracle_err_num := SQLCODE;
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
|
||||
v_errormsg :=
|
||||
'error ' || oracle_err_num || '/' || oracle_err_mes;
|
||||
fac.imp_writelog (p_import_key,
|
||||
'E',
|
||||
v_errormsg,
|
||||
v_errorhint || ' | ' || v_aanduiding);
|
||||
END;
|
||||
END LOOP;
|
||||
END pnbr_update_bestelnr;
|
||||
/
|
||||
|
||||
--- Genereren factuurregels voor catering
|
||||
|
||||
Reference in New Issue
Block a user