From fb81c5842c507188a9b0076b45ab7f6d3ed33ef2 Mon Sep 17 00:00:00 2001 From: Marcel Bourseau Date: Thu, 27 Jun 2024 13:40:12 +0000 Subject: [PATCH] MARX#69956 Notities bij opdrachten naar de opdrachtgever -- ook de bijlagen van notities willen we naar opdrachtgever versturen. svn path=/Mareon/trunk/; revision=65318 --- sql/Onces/marx25.sql | 8 +++++ sql/mareon.sql | 72 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 80 insertions(+) diff --git a/sql/Onces/marx25.sql b/sql/Onces/marx25.sql index 6f67732..ad190b9 100644 --- a/sql/Onces/marx25.sql +++ b/sql/Onces/marx25.sql @@ -27,6 +27,14 @@ SET DEFINE OFF -- MARX#69956 Notities bij opdrachten naar de opdrachtgever +-- Nieuwe API voor ophalen van bijlagen van notities, die we (alleen) nodig hebben in geval van AX2012 (AX2009 doen we niet, en T365 en Facilitor verlopen via NQ) +INSERT INTO fac_api (fac_api_name, fac_api_omschrijving, fac_api_filepath, fac_api_viewmapping_json, fac_api_stylesheet) +SELECT 'BIJLAGEN_OPDR_NOTES_4AX', 'Webservice voor ophalen van bijlagen bij opdracht notities', 'appl/api/api_soap.asp', + '[{"req":"BIJLAGEN_OPDR_NOTES_4AX","node":"data_row","view":"mar_v_opdr_note_mog_bijlagen", "filter":{"APIkey": {"colName": "prs_perslid_apikey","datatype": "string","operand": "EQ"}}}]', + 'cust/MARX/xsl/F_GetApiXML.xsl' +FROM DUAL; + + -- Zie MARX#84154 opdr_actiecodes; handjes willen onderdrukken: mld_opdr_actiecode = 2 die hetzelfde als 1 doet, maar dat de actiecode niet via de GUI (expliciet) gezet kan worden. -- We hadden in MARX24i deze instelling op 1 gezet, ivm MARX#81606 Signaleren dat een opdracht gewijzigd is - VM000000566278. -- Echter, met dit ticket MARX#69956 Notities bij opdrachten naar de opdrachtgever moet die niet meer op 1, om te voorkomen dat het handje/vinger icoontje "actie bij" verschijnt. diff --git a/sql/mareon.sql b/sql/mareon.sql index 2ee4023..7ec5671 100644 --- a/sql/mareon.sql +++ b/sql/mareon.sql @@ -6962,6 +6962,29 @@ END; -- Van de nieuwe opdrachten die in Mareon net zijn aangemaakt, gaan we via de sync adapter checken of daar bijlages van bestaan in Facilitor. -- Resultaat view: apikey van woco, opdracht-key van Mareon, opdracht-key van Facilitor-omgeving, opdracht-nr van Facilitor omgeving +-- MARX#84168 Bijlagen in de notities bij opdrachten naar de opdrachtgever +-- FUNCTIE die notitie-key ophaalt/bepaald bij een tracking-key + +CREATE OR REPLACE FUNCTION get_mldopdr_note_key_of_track(p_tracking_key IN NUMBER) +RETURN NUMBER +IS + l_note_key NUMBER(10); +BEGIN + BEGIN + SELECT mld_opdr_note_key + INTO l_note_key + FROM mld_opdr_note n + WHERE n.fac_tracking_key = p_tracking_key; + EXCEPTION + WHEN NO_DATA_FOUND + THEN + RETURN NULL; + END; + RETURN l_note_key; +END; +/ + + CREATE OR REPLACE VIEW mar_v_new_opdr_4_fclt ( FCLT_3D_USER_KEY, @@ -7077,6 +7100,7 @@ CREATE OR REPLACE VIEW marx_v_notifyqueue_order mld_opdr_afwijs_code, mld_opdr_opmerking, mld_opdr_notitie, + mld_opdr_note_key, mld_opdr_kosten ) AS @@ -7103,6 +7127,7 @@ AS ud_annwei.fac_usrdata_code, o.mld_opdr_opmerking, fac.getnoteofnotification(n.fac_notificatie_key), + get_mldopdr_note_key_of_track(n.fac_notificatie_extrakey), o.mld_opdr_kosten FROM fac_v_notifyqueue q, mld_melding m, @@ -9012,6 +9037,53 @@ AS AND m.mld_melding_key = o.mld_melding_key AND m.prs_perslid_key = woco.prs_perslid_key; + +-- MARX#69956 Notities bij opdrachten naar de opdrachtgever, bijlagen worden via NQ ook meegestuurd, bv naar T365, Facilitor +-- Maar bijlagen uit notities willen we ook naar AX2012 sturen (AX2009 laten we zitten). +-- Daarom deze view, die in SYNC wordt gebruikt. +CREATE OR REPLACE VIEW mar_v_opdr_note_mog_bijlagen +( + FCLT_3D_USER_KEY, + prs_perslid_apikey, + ax_company_id, + mld_opdr_key, + mld_opdr_key_fclt, + mld_opdr_externnr, + mld_opdr_note_key +) +AS + SELECT DISTINCT woco.prs_perslid_key, + woco.prs_perslid_apikey, + m.mld_meldbron_nr, + o.mld_opdr_key, + o.mld_opdr_ordernr, + o.mld_opdr_id, + n.mld_opdr_note_key + FROM fac_bijlagen b, + mld_opdr_note n, + mld_opdr o, + mld_melding m, + mar_v_woco_perslid woco + WHERE b.fac_bijlagen_aanmaak > (SELECT fac_tracking_datum + FROM fac_tracking + WHERE fac_tracking_key = (SELECT sync_trackkey_lasttime + FROM mar_v_sync_ax s + WHERE s.prs_perslid_key = woco.prs_perslid_key)) + AND b.fac_bijlagen_aanmaak <= (SELECT fac_tracking_datum + FROM fac_tracking + WHERE fac_tracking_key = (SELECT sync_trackkey_now + FROM mar_v_sync_ax s + WHERE s.prs_perslid_key = woco.prs_perslid_key)) + AND b.fac_bijlagen_kenmerk_key = -1 + AND b.fac_bijlagen_module = 'ORDN' + AND b.fac_bijlagen_verwijder IS NULL + AND n.mld_opdr_note_key = b.fac_bijlagen_refkey + AND n.mld_opdr_key = o.mld_opdr_key + AND m.mld_melding_key = o.mld_melding_key + AND m.prs_perslid_key = woco.prs_perslid_key; + + + -- MARX#62647: Koppeling AX365 - Mareon (Push), bijlagen bij opdrachten -- Deze lijkt erg veel op mar_v_opdr_mogelijk_bijlagen -- Alleen ontbreekt deze view aan de tracking-info om de juiste bijlagen in de sync te verkrijgen