STCH#62831 -- Notificatie bij technische leveranciers
STCH#61702 -- Fiatteren en kostentechnisch gereedmelden via Strukton koppeling svn path=/Customer/trunk/; revision=47253
This commit is contained in:
107
STCH/stch.sql
107
STCH/stch.sql
@@ -501,7 +501,9 @@ AS
|
||||
AND o.mld_statusopdr_key IN (5) -- Toegekend, dus nog geen reactie ontvangen
|
||||
AND o.mld_uitvoerende_keys = 50422
|
||||
AND o.mld_typeopdr_key = mo.mld_typeopdr_key;
|
||||
|
||||
|
||||
-- Wijzigingen in Strukton koppeling nog even niet naar PROD
|
||||
/*
|
||||
--Strukton koppeling
|
||||
CREATE OR REPLACE PROCEDURE stch_import_opdrstat_strukton (
|
||||
p_import_key IN NUMBER)
|
||||
@@ -529,6 +531,8 @@ AS
|
||||
v_datumtijd DATE;
|
||||
v_datumtijd_tekst VARCHAR2 (100);
|
||||
v_opmerking VARCHAR2 (3000);
|
||||
v_totaal NUMBER (8,2);
|
||||
v_totaal_str VARCHAR2 (100);
|
||||
|
||||
-- Overige velden:
|
||||
CURSOR c1
|
||||
@@ -570,6 +574,9 @@ BEGIN
|
||||
|| '|'
|
||||
|| v_opmerking
|
||||
|| '] ';
|
||||
v_totaal := fac.safe_to_number(v_totaal_str);
|
||||
|
||||
fac.imp_writelog (p_import_key, 'I', 'v_totaal_str:' || v_totaal_str || ' v_totaal:' || v_totaal || ' fac.safe_to_number(v_totaal_str):' || fac.safe_to_number(v_totaal_str),'');
|
||||
|
||||
-- Ik controleer of ik een geldige header heb, dat is: in de juiste kolommen
|
||||
-- de juiste kolomkop. Ik controleer daarbij ALLE kolommen!
|
||||
@@ -581,6 +588,7 @@ BEGIN
|
||||
AND UPPER (TRIM (v_status_code)) = 'TYPEID'
|
||||
AND UPPER (TRIM (v_datumtijd_tekst)) = 'DATETIME'
|
||||
AND UPPER (TRIM (v_opmerking)) = 'REMARKS'
|
||||
AND UPPER (TRIM (v_totaal_str)) = 'TOTAL'
|
||||
THEN
|
||||
header_is_valid := 1;
|
||||
END IF;
|
||||
@@ -641,10 +649,9 @@ BEGIN
|
||||
WHEN v_status_code = '30' -- technisch gereed
|
||||
THEN
|
||||
v_status := 6; -- afgemeld
|
||||
-- For future use
|
||||
-- WHEN v_status_code = '40' -- uitgeprijst
|
||||
-- THEN
|
||||
-- v_status := 6; -- afgemeld
|
||||
WHEN v_status_code = '45' -- uitgeprijst
|
||||
THEN
|
||||
v_status := 9; -- afgerond
|
||||
WHEN v_status_code = '70'
|
||||
THEN
|
||||
v_status := 1; -- geannuleerd
|
||||
@@ -719,12 +726,14 @@ BEGIN
|
||||
extern_nummer,
|
||||
status,
|
||||
datumtijd,
|
||||
opmerking)
|
||||
opmerking,
|
||||
totaal)
|
||||
VALUES (v_mld_opdr_key,
|
||||
v_extern_nummer,
|
||||
v_status,
|
||||
v_datumtijd,
|
||||
v_opmerking);
|
||||
v_opmerking,
|
||||
v_totaal);
|
||||
|
||||
v_count_import := v_count_import + 1;
|
||||
EXCEPTION
|
||||
@@ -795,7 +804,8 @@ AS
|
||||
extern_nummer,
|
||||
datumtijd,
|
||||
status,
|
||||
opmerking
|
||||
opmerking,
|
||||
totaal
|
||||
FROM stch_imp_opdrstat_strukton
|
||||
ORDER BY 1, 3;
|
||||
|
||||
@@ -813,6 +823,10 @@ AS
|
||||
v_mld_kenmerk_key NUMBER (10);
|
||||
v_mld_kenmerkopdr_key NUMBER (10);
|
||||
v_mld_srtkenmerk_key NUMBER (10);
|
||||
v_goedgekeurd NUMBER (10);
|
||||
v_opdrgoed_key NUMBER (10);
|
||||
v_opdrkosten NUMBER (12,2);
|
||||
|
||||
BEGIN
|
||||
-- Loop door alle geimporteerde opdrachtstatusberichten en verwerk deze.
|
||||
v_count_tot := 0;
|
||||
@@ -835,6 +849,7 @@ BEGIN
|
||||
|| '] ';
|
||||
v_count_tot := v_count_tot + 1;
|
||||
v_count := 0;
|
||||
v_opdrkosten := rec.totaal;
|
||||
|
||||
-- Key van melding/opdracht bepalen en externnr bij opdracht opslaan.
|
||||
IF (rec.mld_opdr_key IS NOT NULL)
|
||||
@@ -858,7 +873,21 @@ BEGIN
|
||||
INTO v_mld_kenmerkopdr_key
|
||||
FROM mld_kenmerkopdr ko
|
||||
WHERE ko.mld_opdr_key = v_opdr_key
|
||||
AND v_mld_kenmerk_key = ko.mld_kenmerk_key;
|
||||
AND v_mld_kenmerk_key = ko.mld_kenmerk_key;
|
||||
|
||||
v_errormsg := 'Fout bij bepalen kenmerk goedgekeurd.';
|
||||
SELECT k.mld_kenmerk_key
|
||||
INTO v_goedgekeurd
|
||||
FROM mld_kenmerk k
|
||||
WHERE k.mld_srtkenmerk_key = 1041 -- goedgekeurd
|
||||
AND k.mld_typeopdr_key = v_mld_typeopdr_key;
|
||||
|
||||
v_errormsg := 'Fout bij bepalen kenmerkopdracht goedgekeurd.';
|
||||
SELECT max(ko.mld_kenmerkopdr_key)
|
||||
INTO v_opdrgoed_key
|
||||
FROM mld_kenmerkopdr ko
|
||||
WHERE ko.mld_opdr_key = v_opdr_key
|
||||
AND v_goedgekeurd = ko.mld_kenmerk_key;
|
||||
|
||||
v_errormsg := 'Fout bij aanpassen extern nummer.';
|
||||
IF v_mld_kenmerkopdr_key IS NULL THEN
|
||||
@@ -901,6 +930,24 @@ BEGIN
|
||||
THEN
|
||||
-- Meld de opdracht af als deze geaccepteerd was
|
||||
MLD.setopdrachtstatus (v_opdr_key, 6, v_user_key); -- Facilitor
|
||||
ELSIF rec.status = 9 AND v_opdr_status = 6
|
||||
THEN
|
||||
-- De opdracht is in Focus uitgeprijst door Sitech, dus deze mag nu als goedgekeurd worden gezien.
|
||||
IF v_opdrgoed_key IS NULL THEN
|
||||
-- kenmerk toevoegen
|
||||
INSERT INTO mld_kenmerkopdr (mld_kenmerk_key, mld_opdr_key, mld_kenmerkopdr_waarde)
|
||||
VALUES (v_goedgekeurd, v_opdr_key, '142');
|
||||
fac.trackaction ('ORDUPD', v_opdr_key, NULL, SYSDATE, 'Goedgekeurd: --> Ja');
|
||||
ELSE
|
||||
-- kenmerk aanpassen
|
||||
UPDATE mld_kenmerkopdr SET mld_kenmerkopdr_waarde = '142' WHERE mld_kenmerkopdr_key = v_opdrgoed_key;
|
||||
fac.trackaction ('ORDUPD', v_opdr_key, NULL, SYSDATE, 'Goedgekeurd: --> Ja');
|
||||
END IF;
|
||||
-- Het totaalbedrag mag nu ook worden weggeschreven, dit is immers al goedgekeurd.
|
||||
UPDATE mld_opdr SET mld_opdr_kosten = v_opdrkosten WHERE mld_opdr_key = v_opdr_key;
|
||||
-- Meld de opdracht kostentechnisch gereed wanneer deze was afgemeld
|
||||
MLD.setopdrachtstatus (v_opdr_key, 9, v_user_key); -- Facilitor
|
||||
fac.trackaction ('ORDAFR', v_opdr_key, NULL, SYSDATE, NULL);
|
||||
ELSIF rec.status = 1 AND v_opdr_status = 5
|
||||
THEN
|
||||
-- Opdracht is afgewezen op het moment dat de opdracht nog niet geaccepteerd is.
|
||||
@@ -944,6 +991,7 @@ BEGIN
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
*/
|
||||
|
||||
-- Rapportage voor login
|
||||
CREATE OR REPLACE VIEW STCH_V_RAP_NOLOGIN
|
||||
@@ -1925,6 +1973,47 @@ AS
|
||||
AND u.melding_key = nta.mld_melding_key(+)
|
||||
AND u.opdracht_type = 'RFQ';
|
||||
|
||||
-- Opdracht ook via mail naar interne mailbox wanneer verstuurd aan een technische leverancier.
|
||||
CREATE OR REPLACE VIEW stch_v_noti_opdracht
|
||||
(
|
||||
code,
|
||||
sender,
|
||||
receiver,
|
||||
text,
|
||||
key,
|
||||
xkey,
|
||||
xsender,
|
||||
xemail,
|
||||
xmobile,
|
||||
attachments
|
||||
)
|
||||
AS
|
||||
SELECT 'ORDSNT', -- Opdracht verzonden naar leverancier
|
||||
NULL,
|
||||
NULL,
|
||||
'Opdracht met nummer '|| TO_CHAR (o.mld_melding_key) || '/' || o.mld_opdr_bedrijfopdr_volgnr || 'is verzonden naar ' || b.prs_bedrijf_naam,
|
||||
o.mld_opdr_key,
|
||||
NULL,
|
||||
NULL,
|
||||
'werkvergunningen.facility@sitech.nl',
|
||||
NULL,
|
||||
NULL
|
||||
FROM mld_opdr o, fac_tracking t, prs_bedrijf b, fac_usrdata f
|
||||
WHERE o.mld_opdr_key = t.fac_tracking_refkey
|
||||
AND o.mld_uitvoerende_keys = b.prs_bedrijf_key
|
||||
AND f.fac_usrtab_key = 661
|
||||
AND f.fac_usrdata_code = b.prs_bedrijf_key
|
||||
AND t.fac_tracking_datum BETWEEN (SELECT fac_notificatie_job_nextrun
|
||||
- fac_notificatie_job_interval
|
||||
/ 24
|
||||
FROM fac_notificatie_job
|
||||
WHERE UPPER(fac_notificatie_job_view) =
|
||||
'STCH_V_NOTI_OPDRACHT')
|
||||
AND (SELECT fac_notificatie_job_nextrun
|
||||
FROM fac_notificatie_job
|
||||
WHERE UPPER(fac_notificatie_job_view) =
|
||||
'STCH_V_NOTI_OPDRACHT');
|
||||
|
||||
------ payload end ------
|
||||
|
||||
SET DEFINE OFF
|
||||
|
||||
Reference in New Issue
Block a user