
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-----------------------
-----------------------
-----------------------  Aansluiten van een nieuwe leverancier/aannemer
-----------------------
-----------------------
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

SPOOL mareon_ini_nieuwe_aannemer.lst

--ONDERSTAANDE HANDMATIG AANMAKEN VOOR NIEUWE LEVERANCIER....

-- !!EERST CHECKEN OF LEVERANCIER AL BESTAAT, OBV IBAN, WANT DAN MOET LEVERANCIER NIET NOGMAALS WORDEN TOEGVOEGD!!
-- !!DAN MOET DIT SCRIPT WORDEN OVERGESLAGEN!!

SET HEADING OFF
SET FEEDBACK OFF

PROMPT [VERPLICHT] Vul de naam van de leverancier in: 
PROMPT &&Aannemer_bedrijfs_naam
PROMPT [VERPLICHT] Vul IBAN rekeningnummer van leverancier in: 
PROMPT &&IBAN
PROMPT [VERPLICHT] Vul het AX supplier ID in van de leverancier in zoals geregistreerd in Tobias(AX):
PROMPT &&AX_supplier_id
PROMPT [VERPLICHT] Vul een bestaande Woningbouwcorporatie in bij deze leverancier:
PROMPT  &&Geef_woco_naam_van_leverancier

PROMPT [OPTIONEEL] Vul indien bekend het GLN/GS1 nummer van leverancier in:
PROMPT &&GLN_of_GS1_nummer
PROMPT [OPTIONEEL] Vul IBAN van de G rekening van leverancier in:
PROMPT &&IBAN_G_rekening


PROMPT
SELECT 'Aantal leveranciers met het IBAN nummer = ' || (select count(*) from prs_bedrijf b, mar_v_bedrijf_bankrek_nr bb
																												where bb.prs_bedrijf_bankreknr = '&&IBAN'
																												and b.prs_bedrijf_key = bb.prs_bedrijf_key
																												and b.prs_bedrijf_verwijder is null)
FROM DUAL;

SELECT prs_bedrijf_naam_upper
FROM prs_bedrijf
WHERE prs_bedrijf_naam_upper = UPPER('&&Geef_woco_naam_van_leverancier')
AND prs_bedrijf_intern = 1
AND prs_bedrijf_verwijder IS NULL;


PROMPT Press Enter als het een nieuwe leverancier is die aangemaakt moet worden...

SET DEFINE ON
PROMPT &&NIEUWE_LEVERANCIER
PROMPT
PROMPT Vanaf hier wordt een nieuwe leverancier toegevoegd...
PROMPT
SET FEEDBACK ON
SET ECHO ON


-- Stap om als leverancier/aannemer gebruik te kunnen maken van Aannemersportaal, altijd leverancier toevoegen, m.n. het prs_leverancier_nr vullen met supplier-id uit AX.

INSERT INTO prs_bedrijf (prs_bedrijf_naam, prs_leverancier_nr, prs_bedrijf_uitvoerende) VALUES ('&&Aannemer_bedrijfs_naam', '&&GLN_of_GS1_nummer', 1);
PROMPT Vul de andere (NAW)leveranciergegevens eventueel in via relatiebeheer....

-- Stap om IBAN van leverancier te registreren

INSERT INTO prs_kenmerklink (prs_link_key, prs_kenmerklink_niveau, prs_kenmerk_key, prs_kenmerklink_waarde)
SELECT MAX(prs_bedrijf_key),'B', 1, '&&IBAN' FROM prs_bedrijf;

-- Stap om IBAN G-rekening van leverancier te registreren
INSERT INTO prs_kenmerklink (prs_link_key, prs_kenmerklink_niveau, prs_kenmerk_key, prs_kenmerklink_waarde)
SELECT MAX(prs_bedrijf_key),'B', 2, '&&IBAN_G_rekening' FROM prs_bedrijf;


-- Stap om als leverancier/aannemer gebruik te kunnen maken om digitaal facturen (e-invoice) te kunnen insturen.

INSERT INTO prs_perslid(prs_perslid_module, prs_srtperslid_key, prs_afdeling_key, prs_perslid_naam, prs_perslid_oslogin, prs_perslid_apikey)
SELECT 'PRS', 1, 1, prs_bedrijf_naam, SUBSTR(prs_bedrijf_naam,1,30), dbms_random.STRING('x',32)
FROM prs_bedrijf
WHERE prs_bedrijf_key = (SELECT MAX(prs_bedrijf_key) FROM prs_bedrijf);

PROMPT Api-key:
SELECT prs_perslid_apikey FROM prs_perslid
WHERE prs_perslid_key = (SELECT MAX(prs_perslid_key) FROM prs_perslid);

INSERT INTO prs_contactpersoon (prs_contactpersoon_naam, prs_bedrijf_key, prs_perslid_key)
SELECT 
    (SELECT SUBSTR(prs_bedrijf_naam,1,30) FROM prs_bedrijf WHERE prs_bedrijf_key = (SELECT MAX(prs_bedrijf_key) FROM prs_bedrijf)),
    (SELECT MAX(prs_bedrijf_key) FROM prs_bedrijf),
    (SELECT MAX(prs_perslid_key) FROM prs_perslid)
FROM DUAL;


-- Geef de woco aan voor deze leverancier (moet er minimaal 1 hebben)...
INSERT INTO fac_usrdata(fac_usrtab_key,fac_usrdata_code, fac_usrdata_omschr)
SELECT 3, '$WOCO_' || prs_bedrijf_key || '_LEV_' || (SELECT MAX(prs_bedrijf_key) FROM prs_bedrijf), '&&AX_supplier_id'
FROM prs_bedrijf
WHERE prs_bedrijf_naam_upper = UPPER('&&Geef_woco_naam_van_leverancier')
AND prs_bedrijf_intern = 1
AND prs_bedrijf_verwijder IS NULL;


-- fac_groep_key 4 is gereserveerd voor aannemer/leverancier
INSERT INTO fac_gebruikersgroep (fac_groep_key, prs_perslid_key)
SELECT 4, MAX(prs_perslid_key) FROM prs_perslid;



COMMIT;

SPOOL OFF