Export EON_CRM_BP DU: packages uniorg.eon.crm.bp, uniorg.eon.crm.bp.metadata, uniorg.eon.crm.bp.v1

This commit is contained in:
Thorsten Schmitz
2026-07-08 23:03:56 +02:00
commit 926dd739c0
4 changed files with 1653 additions and 0 deletions
@@ -0,0 +1,124 @@
CREATE COLUMN TABLE "INTEGRATION_DATA"."BANKS" ("COUNTRYCODE" VARCHAR(3) NOT NULL ,
"BANKCODE" VARCHAR(20),
"BANKNAME" VARCHAR(100),
"SWIFTNO" VARCHAR(20),
"CITY" VARCHAR(100)) UNLOAD PRIORITY 5 AUTO MERGE ;
/* BANKS_SCHEMA */
DROP TABLE "INTEGRATION_DATA"."BANKS_SCHEMA";
create column table "INTEGRATION_DATA"."BANKS_SCHEMA"( "COUNTRY" VARCHAR (3) null,
"LENGTH" SMALLINT null,
"START" SMALLINT null,
"FULLLENGHTH" SMALLINT null);
truncate table "INTEGRATION_DATA"."BANKS_SCHEMA" ;
insert into "INTEGRATION_DATA"."BANKS_SCHEMA" values('GB',6,9,22);
insert into "INTEGRATION_DATA"."BANKS_SCHEMA" values('DE',8,5,22);
insert into "INTEGRATION_DATA"."BANKS_SCHEMA" values('AT',5,5,20);
insert into "INTEGRATION_DATA"."BANKS_SCHEMA" values('FR',10,5,27);
insert into "INTEGRATION_DATA"."BANKS_SCHEMA" values('IT',10,6,27);
insert into "INTEGRATION_DATA"."BANKS_SCHEMA" values('CH',5,5,21);
insert into "INTEGRATION_DATA"."BANKS_SCHEMA" values('DK',5,4,18);
insert into "INTEGRATION_DATA"."BANKS_SCHEMA" values('NL',4,5, 18);
insert into "INTEGRATION_DATA"."BANKS_SCHEMA" values('BE',3,5,16);
insert into "INTEGRATION_DATA"."BANKS_SCHEMA" values('LU',4,5,20);
insert into "INTEGRATION_DATA"."BANKS_SCHEMA" values('CZ',4,5,24);
insert into "INTEGRATION_DATA"."BANKS_SCHEMA" values('SE',4,5,24);
insert into "INTEGRATION_DATA"."BANKS_SCHEMA" values('PL',8,5,28);
insert into "INTEGRATION_DATA"."BANKS_SCHEMA" values('LT',5,5,20);
ALTER FUNCTION "INTEGRATION_DATA".EON_BP_GETBANKDETAILS (IBAN NVARCHAR(100))
RETURNS TABLE
(
IBAN NVARCHAR(100),
COUNTRY NVARCHAR(2),
BANKCODE NVARCHAR(10),
BANKNAME NVARCHAR(250),
SWIFTNO NVARCHAR(100),
ACCOUNT NVARCHAR(100)
)
LANGUAGE SQLSCRIPT
SQL SECURITY INVOKER
AS
BEGIN
-- USING SQLSCRIPT_PRINT as LIB;
DECLARE IBAN_BANKCODE VARCHAR(10) ;
DECLARE IBAN_COUNTRY VARCHAR(2) ;
DECLARE STARTPARAM SMALLINT = 1;
DECLARE LENGTHPARAM SMALLINT = 1;
DECLARE BANKNAMEPARAM NVARCHAR(250);
DECLARE SWIFTNOPARAM NVARCHAR(100) = '';
DECLARE ACCOUNT_PARAM NVARCHAR(100);
IBAN := REPLACE(:IBAN,' ','');
IBAN_COUNTRY := SUBSTRING (:IBAN, 1, 2);
SELECT "START" into STARTPARAM DEFAULT 1 FROM "INTEGRATION_DATA"."BANKS_SCHEMA" WHERE COUNTRY = :IBAN_COUNTRY;
SELECT "LENGTH" into LENGTHPARAM DEFAULT 1 FROM "INTEGRATION_DATA"."BANKS_SCHEMA" WHERE COUNTRY = :IBAN_COUNTRY;
IBAN_BANKCODE := SUBSTRING (:IBAN, :STARTPARAM, :LENGTHPARAM);
ACCOUNT_PARAM := SUBSTRING(:IBAN, :STARTPARAM + :LENGTHPARAM);
SELECT TOP 1 "BANKNAME" into BANKNAMEPARAM DEFAULT ''
FROM "INTEGRATION_DATA"."BANKS"
WHERE COUNTRYCODE = :IBAN_COUNTRY AND BANKCODE = :IBAN_BANKCODE
ORDER BY SWIFTNO DESC ;
SELECT TOP 1 "SWIFTNO" into SWIFTNOPARAM DEFAULT ''
FROM "INTEGRATION_DATA"."BANKS"
WHERE COUNTRYCODE = :IBAN_COUNTRY AND BANKCODE = :IBAN_BANKCODE
ORDER BY SWIFTNO DESC ;
RETURN
SELECT :IBAN as IBAN, :IBAN_COUNTRY as COUNTRY, :IBAN_BANKCODE AS BANKCODE, LEFT(:BANKNAMEPARAM, 250) as BANKNAME, :SWIFTNOPARAM as SWIFTNO,
:ACCOUNT_PARAM as ACCOUNT
FROM DUMMY;
END;
/*
--SELECT * FROM "INTEGRATION_DATA".EON_BP_GETBANKDETAILS('GB19 REVO 00997000245823');
-- select * FROM "A19753_EON_P01".ODSC WHERE "CountryCod" = 'AT'-- "BankCode" = '60000';
SELECT * FROM "INTEGRATION_DATA".EON_BP_GETBANKDETAILS('AT026000000001349870');
https://de.wikipedia.org/wiki/Internationale_Bankkontonummer#IBAN-Struktur_in_verschiedenen_L%C3%A4ndern
Depp bbbb bbbb kkkk kkkk kk
Osterreich ATpp bbbb bkkk kkkk kkkk
Schweiz CHpp bbbb bkkk kkkk kkkk k
Danemark DKpp bbbb kkkk kkkk kK
Niederlande NLpp bbbb kkkk kkkk kk
Belgien BEpp bbbk kkkk kkKK
Italien ITpp Kbbb bbss sssk kkkk kkkk kkk
Luxemburg LUpp bbbk kkkk kkkk kkkk
Tschechien CZpp bbbb kkkk kkkk kkkk kkkk
Polen PLpp bbbs sssK kkkk kkkk kkkk kkkk
Schweden SEpp bbbk kkkk kkkk kkkk kkkK
Frankreich FRpp bbbb bsss sskk kkkk kkkk kKK
LT Litauen 20 LTpp bbbb bkkk kkkk kkkk
Vereinigtes Konigreich (GB) GBpp bbbb ssss sskk kkkk kk
*/
@@ -0,0 +1,38 @@
CREATE SCHEMA NICEPORTAL;
CREATE SEQUENCE "NICEPORTAL"."SEQ_CRMBP_ID";
CREATE SEQUENCE "NICEPORTAL"."SEQ_MAND_ID";
--DROP TABLE "NICEPORTAL"."UO_CRM_DATA_BP";
CREATE COLUMN TABLE "NICEPORTAL"."UO_CRM_DATA_BP" ("ID" BIGINT CS_FIXED NOT NULL ,
"ID_MSD" VARCHAR(50) NOT NULL ,
"ID_CRM" VARCHAR(30) NOT NULL ,
"TYPE" VARCHAR(1) NOT NULL ,
"BPGROUP" VARCHAR(10) NOT NULL ,
"SALUTATION" VARCHAR(20),
"TITLE" VARCHAR(20),
"NAME" VARCHAR(50) NOT NULL ,
"SURNAME" VARCHAR(50),
"PHONE" VARCHAR(30),
"MOBILE_PHONE" VARCHAR(30),
"EMAIL" VARCHAR(100),
"ADDRESS_JSON" NCLOB MEMORY THRESHOLD 1000,
"IBAN" VARCHAR(40),
"BIC" VARCHAR(10),
"SEPA_MANDATE_ID" VARCHAR(30),
"SIGNATURE_DATE" VARCHAR(30),
"ACCOUNT_OWNER" VARCHAR(50),
"STREET" VARCHAR(50),
"STREET_NO" VARCHAR(10),
"ZIP_CODE" VARCHAR(10),
"CITY" VARCHAR(30),
"JSONRAW" NCLOB MEMORY THRESHOLD 1000,
"B1_CARDCODE" VARCHAR(50),
"RESPONSE_STATUS" VARCHAR(50),
"RESPONSE_MESSAGE" NCLOB MEMORY THRESHOLD 1000,
"CREATE_TS" LONGDATE CS_LONGDATE DEFAULT CURRENT_TIMESTAMP NOT NULL ,
"UPDATE_TS" LONGDATE CS_LONGDATE NOT NULL ,
"ERROR_MESSAGE" VARCHAR(500),
PRIMARY KEY ("ID")) UNLOAD PRIORITY 5 AUTO MERGE;