AAIT#67042 -- Factuurverwerking via Mareonplatform - Inrichting koppeling
svn path=/Customer/; revision=53004
This commit is contained in:
218
onces/AA/AAXX/AAXX#67042.sql
Normal file
218
onces/AA/AAXX/AAXX#67042.sql
Normal file
@@ -0,0 +1,218 @@
|
||||
--
|
||||
-- $Id$
|
||||
--
|
||||
-- ONCESCRIPT om de MAREON-Factuur-koppeling voor ALLE HeyDay-omgeving goed in te richten:
|
||||
---- 1. Aanmaken API-USER + Autorisatiegroep + Autorisatierecht + API-user toekennen aan groep
|
||||
---- 2. Aanmaken Importfunctie + API-list
|
||||
---- 3. Aanmaken factuurkenmerk - type bestand
|
||||
---- Na dit oncescript nog draaien de 'aaxx.sql' ivm 'aaxx_update_fin_factuur_marx' + foldermap 'Mareon' op server per cust nog aanmaken (../import/mareon)
|
||||
|
||||
DEFINE thisfile = 'AAXX#67042.SQL'
|
||||
DEFINE dbuser = 'AAXX'
|
||||
|
||||
SET ECHO ON
|
||||
SET DEFINE ON
|
||||
COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT;
|
||||
COLUMN fcltcusterr NEW_VALUE fcltcusterr NOPRINT;
|
||||
WHENEVER SQLERROR CONTINUE;
|
||||
SELECT adm.getscriptspoolfile('&thisfile') AS fcltlogfile FROM DUAL;
|
||||
SPOOL &fcltlogfile
|
||||
WHENEVER SQLERROR EXIT;
|
||||
SELECT adm.checkscriptcust('&dbuser') AS fcltcusterr FROM DUAL;
|
||||
WHENEVER SQLERROR CONTINUE;
|
||||
PROMPT &fcltcusterr
|
||||
SET DEFINE OFF
|
||||
|
||||
------ payload begin ------
|
||||
|
||||
DECLARE
|
||||
v_errormsg VARCHAR (200);
|
||||
v_errorhint VARCHAR (200);
|
||||
oracle_err_num NUMBER;
|
||||
oracle_err_mes VARCHAR2 (150);
|
||||
currentversion fac_module.fac_module_version%TYPE;
|
||||
v_aanduiding VARCHAR (100);
|
||||
v_count NUMBER;
|
||||
|
||||
-- Per klantomgeving te vullen
|
||||
v_cust_code VARCHAR2 (100) := 'xxxx' ;
|
||||
-- v_api_key VARCHAR2 (1000) := 'L4PbaQBA0DT6fn-yay7HePzWTn23eGZx' ; -- DBMS_RANDOM.string('a', 32)
|
||||
v_api_user VARCHAR2 (1000) := 'API-user MAREON-koppeling' ;
|
||||
v_inlognaam VARCHAR2 (1000) := '_API-USER MAREON-KOPPELING' ;
|
||||
v_folderpad_1 VARCHAR2 (1000) := 'd:\Apps\Facilitor\AAFM_A\CUST' || CHR(92) ;
|
||||
v_folderpad_2 VARCHAR2 (1000) := '\import\Mareon' ;
|
||||
|
||||
|
||||
--- Overige
|
||||
v_afdeling_key NUMBER (10);
|
||||
v_functie_key NUMBER (10);
|
||||
v_facilitor_key NUMBER (10);
|
||||
v_prs_perslid_key NUMBER (10);
|
||||
v_fac_groep_key NUMBER (10);
|
||||
v_fac_functie_key NUMBER (10);
|
||||
v_fac_import_app_key NUMBER (10);
|
||||
|
||||
BEGIN
|
||||
|
||||
-- klantcode
|
||||
SELECT upper(fac_version_cust)
|
||||
INTO v_cust_code
|
||||
FROM fac_version;
|
||||
|
||||
-- Toelichting
|
||||
---- AAGN: Doen we HANDMATIG via voorkant want deze heeft al een Mareon-koppeling (voor Opdrachtverstrekking)
|
||||
---- In Acceptatie al gedaan: AADS, RABO, AAES, SMKA
|
||||
---- Nog doen:'AAAR', 'EXPO', 'INLO', 'AAGN', 'AAVG', 'NMMS', 'AADO', 'AAAH' +
|
||||
---- 'AAIT', 'AASA' (week 37 als omgevingen vervangen zijn
|
||||
|
||||
IF v_cust_code IN ('AAAR', 'EXPO', 'INLO', 'AAGN', 'AAVG', 'NMMS', 'AADO', 'AAAH') THEN
|
||||
|
||||
-- 1. Aanmaken API-USER + Autorisatiegroep + Autorisatierecht + API-user toekennen aan groep
|
||||
-- Aanmaken API-USER
|
||||
SELECT prs_afdeling_key
|
||||
INTO v_afdeling_key
|
||||
FROM prs_afdeling
|
||||
WHERE prs_afdeling_upper = 'HEYDAY' AND prs_afdeling_parentkey IS NULL AND prs_afdeling_verwijder IS NULL;
|
||||
|
||||
SELECT prs_srtperslid_key
|
||||
INTO v_functie_key
|
||||
FROM prs_srtperslid
|
||||
WHERE prs_srtperslid_upper = 'ONBEKEND';
|
||||
|
||||
SELECT prs_perslid_key
|
||||
INTO v_facilitor_key
|
||||
FROM prs_perslid
|
||||
WHERE prs_perslid_oslogin = '_FACILITOR';
|
||||
|
||||
IF v_afdeling_key IS NOT NULL AND v_functie_key IS NOT NULL AND v_facilitor_key IS NOT NULL
|
||||
THEN
|
||||
|
||||
INSERT INTO prs_perslid(
|
||||
prs_srtperslid_key,
|
||||
prs_afdeling_key,
|
||||
prs_perslid_naam,
|
||||
prs_perslid_visibility,
|
||||
prs_perslid_oslogin,
|
||||
prs_perslid_ingids,
|
||||
prs_perslid_apikey,
|
||||
prs_perslid_flags,
|
||||
prs_perslid_loglevel)
|
||||
VALUES (v_functie_key,
|
||||
v_afdeling_key,
|
||||
v_api_user, -- 'API-user MAREON-koppeling',
|
||||
0,
|
||||
v_inlognaam, -- '_API-USER MAREON-KOPPELING',
|
||||
NULL,
|
||||
DBMS_RANDOM.string('a', 32), -- v_api_key, -- DBMS_RANDOM.string('a', 32)
|
||||
4,
|
||||
0)
|
||||
RETURN prs_perslid_key
|
||||
INTO v_prs_perslid_key;
|
||||
|
||||
-- Logging
|
||||
BEGIN fac.trackaction('PRSNEW', v_prs_perslid_key, v_facilitor_key, NULL, NULL); END;
|
||||
|
||||
END IF;
|
||||
|
||||
-- Autorisatiegroep aanmaken
|
||||
INSERT INTO fac_groep (fac_groep_omschrijving,
|
||||
fac_groep_opmerking,
|
||||
fac_groep_collega,
|
||||
fac_groep_externid)
|
||||
VALUES ('_Mareon',
|
||||
'voor de koppeling met Mareon (factuurverwerking)',
|
||||
0,
|
||||
NULL)
|
||||
RETURN fac_groep_key
|
||||
INTO v_fac_groep_key;
|
||||
|
||||
-- API-user toekennen aan de groep
|
||||
INSERT INTO fac_gebruikersgroep (fac_groep_key,
|
||||
prs_perslid_key)
|
||||
VALUES (v_fac_groep_key, v_prs_perslid_key) ;
|
||||
|
||||
-- Recht WEB_FINFOF toekennen aan de groep
|
||||
SELECT fac_functie_key
|
||||
INTO v_fac_functie_key
|
||||
FROM fac_functie
|
||||
WHERE fac_functie_code = 'WEB_FINFOF';
|
||||
|
||||
INSERT INTO fac_groeprechten (fac_gebruiker_prs_level_read,
|
||||
fac_gebruiker_prs_level_write,
|
||||
fac_gebruiker_alg_level_read,
|
||||
fac_gebruiker_alg_level_write,
|
||||
fac_functie_key,
|
||||
fac_groep_key,
|
||||
ins_discipline_key)
|
||||
VALUES (-1,
|
||||
-1,
|
||||
-1,
|
||||
-1,
|
||||
v_fac_functie_key,
|
||||
v_fac_groep_key,
|
||||
NULL) ;
|
||||
|
||||
-- 2. Aanmaken Importfunctie + API-list
|
||||
-- Aanmaken importfunctie
|
||||
INSERT INTO fac_import_app (fac_import_app_oms,
|
||||
fac_functie_key,
|
||||
fac_import_app_code,
|
||||
fac_import_app_folder,
|
||||
fac_import_app_charset,
|
||||
fac_import_app_prefix,
|
||||
fac_import_app_action)
|
||||
SELECT 'Mareon import van facturenbestand van leverancier(s)',
|
||||
fac_functie_key,
|
||||
'FIN_FACTUUR_MARX',
|
||||
v_folderpad_1 || v_cust_code || v_folderpad_2 ,
|
||||
'UTF-8',
|
||||
'AAXX',
|
||||
'ORACLE'
|
||||
FROM fac_functie
|
||||
WHERE fac_functie_code = 'WEB_PRSSYS' ;
|
||||
|
||||
-- Aanmaken API
|
||||
INSERT INTO fac_api(fac_api_name, fac_api_omschrijving, fac_api_filepath, fac_api_stylesheet, fac_import_app_key, fac_api_options_json)
|
||||
SELECT 'MARX_FIN_FACTUUR',
|
||||
'Webservice voor facturen vanuit Mareon',
|
||||
'appl/API/api_gen_import.asp',
|
||||
'../../appl/MARX/F_PutFactuurFCLT.xsl',
|
||||
fac_import_app_key,
|
||||
'{"import_app_key":' || fac_import_app_key || '}'
|
||||
FROM fac_import_app
|
||||
WHERE fac_import_app_code = 'FIN_FACTUUR_MARX';
|
||||
|
||||
-- 3. Aanmaken factuurkenmerk - type bestand
|
||||
INSERT INTO fin_kenmerk (fin_kenmerk_volgnr,
|
||||
fin_kenmerk_omschrijving,
|
||||
fin_kenmerk_kenmerktype,
|
||||
fin_kenmerk_type,
|
||||
fin_kenmerk_verplicht,
|
||||
fin_kenmerk_groep,
|
||||
fin_kenmerk_toonbaar,
|
||||
fin_kenmerk_systeem)
|
||||
VALUES (101,
|
||||
'Factuur (vanuit Mareon-import)',
|
||||
'F',
|
||||
'F',
|
||||
NULL,
|
||||
0,
|
||||
1,
|
||||
0);
|
||||
|
||||
END IF;
|
||||
|
||||
END;
|
||||
/
|
||||
|
||||
------ payload end ------
|
||||
|
||||
SET DEFINE OFF
|
||||
BEGIN adm.systrackscriptId ('$Id$', 1); END;
|
||||
/
|
||||
|
||||
COMMIT;
|
||||
SET ECHO OFF
|
||||
SPOOL OFF
|
||||
SET DEFINE ON
|
||||
PROMPT Logfile of this upgrade is: &fcltlogfile
|
||||
Reference in New Issue
Block a user