MARX#69956 Notities bij opdrachten naar de opdrachtgever

svn path=/Mareon/trunk/; revision=65123
This commit is contained in:
Marcel Bourseau
2024-06-13 11:37:31 +00:00
parent be929b9756
commit 57c06e5695

329
sql/Onces/marx25.sql Normal file
View File

@@ -0,0 +1,329 @@
--
-- $Id$
--
-- Korte beschrijving wat het script doet
-- Voor dbuser invullen: - indien script voor 1 klant is: 'MARX' (de klantcode, zoals vermeld in fac_version_cust)
-- - script is voor meerdere klanten: 'AAXX' (de groepcode, zoals vermeld in fac_version_group)
-- - script is voor meerdere klanten met naam volgens een bepaald patroon: '^AA|^ASMS|^GULU|^NMMS|^RABO|^ZKHM'
--
DEFINE thisfile = 'MARX25.SQL'
DEFINE dbuser = '^MARX'
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 ------
-- MARX#69956 Notities bij opdrachten naar de opdrachtgever
-- 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.
UPDATE fac_setting
SET fac_setting_pvalue = '2'
WHERE fac_setting_name = 'mld_opdr_actiecode';
--Zie FCLT#84170 Default van belletje bij opdrachtnotities naar de opdrachtgever
--Nu eerst fac_reserved_number2 hiervoor gebruiken, dat wordt opdr_note_default_notifyBO (of zo)
--Uitleg: Uitvoerder notificeert de BO default niet, tenzij S(fac_reserved_number2) == 1, dan -default- wel
UPDATE fac_setting
SET fac_setting_pvalue = '1'
WHERE fac_setting_name = 'fac_reserved_number2';
-- Belletje/notificatie voor naar opdrachtgever (woco), zodat notities een ORDNOB notificaties krijgen. Notities zonder ORDNOB worden niet naar opdrachtgever gestuurd, en zijn daarmee interne notities voor eigen gebruik.
UPDATE mld_stdmelding
SET mld_stdmelding_notes = 2
WHERE mld_stdmelding_key = 1;
-- Edit plandates { 1=in order (default), 2=with buttons, 3=both }
UPDATE fac_setting
SET fac_setting_pvalue = '2'
WHERE fac_setting_name = 'mld_ord_edit_plandates';
-- Het veld afhandeling alleen in te vullen bij afmelden/afwijzen (0=no, 1=yes)
UPDATE fac_setting
SET fac_setting_pvalue = '1'
WHERE fac_setting_name = 'mld_afhandeling_restrict_edit';
UPDATE fac_locale_xsl
SET fac_locale_xsl_cust = 'afspraakdatum'
WHERE fac_locale_xsl_label = 'lcl_schedule_start'
AND fac_locale_xsl_module = 'ASP'
AND fac_locale_xsl_lang = 'NL';
UPDATE fac_locale_xsl
SET fac_locale_xsl_cust = 'einddatum'
WHERE fac_locale_xsl_label = 'lcl_schedule_end'
AND fac_locale_xsl_module = 'ASP'
AND fac_locale_xsl_lang = 'NL';
-- Label lcl_opdr_frame_notes vertalen in 'Notities voor opdrachtgever' (was 'Notities voor eigen gebruik')
UPDATE fac_locale_xsl
SET fac_locale_xsl_cust = 'Notities voor uw opdrachtgever of voor uzelf'
WHERE fac_locale_xsl_label = 'lcl_opdr_frame_notes'
AND fac_locale_xsl_lang = 'NL'
AND fac_locale_xsl_module = 'ASP';
-- En label lcl_mld_behandeling vertalen in 'Notities voor opdrachtgever' (was 'Notities voor eigen gebruik')
UPDATE fac_locale_xsl
SET fac_locale_xsl_cust = 'Notities voor uw opdrachtgever of voor uzelf'
WHERE fac_locale_xsl_label = 'lcl_mld_behandeling'
AND fac_locale_xsl_lang = 'NL'
AND fac_locale_xsl_module = 'ASP';
-- En label lcl_mld_note vertalen in 'Notitie voor opdrachtgever' (was 'Notitie voor eigen gebruik')
UPDATE fac_locale_xsl
SET fac_locale_xsl_cust = 'Notitie voor uw opdrachtgever of voor uzelf'
WHERE fac_locale_xsl_label = 'lcl_mld_note'
AND fac_locale_xsl_lang = 'NL'
AND fac_locale_xsl_module = 'ASP';
-- En label lcl_mld_note_new vertalen in 'Notitie voor opdrachtgever' (was 'Notitie voor eigen gebruik')
UPDATE fac_locale_xsl
SET fac_locale_xsl_cust = 'Notitie voor uw opdrachtgever of voor uzelf'
WHERE fac_locale_xsl_label = 'lcl_mld_note_new'
AND fac_locale_xsl_lang = 'NL'
AND fac_locale_xsl_module = 'ASP';
---- Label/Bloktitel voor interne notities
---- Titelblok voor bijlages
--INSERT INTO mld_srtkenmerk (mld_srtkenmerk_key, mld_srtkenmerk_omschrijving,mld_srtkenmerk_kenmerktype)
--VALUES (47, 'Notities voor eigen gebruik', 'l');
--INSERT INTO mld_kenmerk (mld_kenmerk_key, mld_srtkenmerk_key, mld_typeopdr_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer, mld_kenmerk_default)
--SELECT 56, 47, 5, 'O', 890, 'fa-notebook' FROM DUAL;
-- Nieuw kenmerk voor eigen notities ter vervanging van de opdrachtnotities, en doet mee in ANOnimiseer proces
--INSERT INTO mld_srtkenmerk (mld_srtkenmerk_key, mld_srtkenmerk_omschrijving,mld_srtkenmerk_kenmerktype, mld_srtkenmerk_lengte, mld_srtkenmerk_systeem)
--VALUES (46, 'Interne notities', 'C', 4000, 8);
--INSERT INTO mld_kenmerk (mld_kenmerk_key, mld_srtkenmerk_key, mld_typeopdr_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer, mld_kenmerk_toonbaar, mld_kenmerk_hint)
--SELECT 55, 46, 5, 'O', 891, NULL, 'Let op: deze notities worden niet naar uw opdrachtgever gestuurd' FROM DUAL;
-- Conversie: alle notities van de opdrachten eerst in flexprop "interne notities" bij betreffende opdracht stoppen...
-- Evt opmaak in notities + plaatjes gaan verloren..
--DECLARE
-- h_opdr_key NUMBER(10);
-- v_interne_notitie VARCHAR2(4000);
-- CURSOR c_interne_notities
-- IS
-- SELECT n.mld_opdr_note_key, n.mld_opdr_key, n.mld_opdr_note_omschrijving, n.mld_opdr_note_aanmaak
-- FROM mld_opdr_note n
-- ORDER BY n.mld_opdr_key, n.mld_opdr_note_aanmaak;
--BEGIN
-- h_opdr_key := -1;
-- v_interne_notitie := '';
-- FOR rec IN c_interne_notities
-- LOOP
-- IF rec.mld_opdr_key <> h_opdr_key AND h_opdr_key <> -1
-- THEN
-- -- Deze notitie is van ander opdracht, die van de vorige opdracht eerst inserten (en vanwege h_opdr_key <> -1 betekent dat dit niet de 1e keer is (want 1e x moeten we nog ff niets doen)
-- mld.upsertopdrachtkenmerk (55, h_opdr_key, SUBSTR(v_interne_notitie,2));
-- v_interne_notitie := '';
-- END IF;
-- -- Oke, dan note(s) van de nieuwe opdracht opsparen...
-- v_interne_notitie := SUBSTR(v_interne_notitie || CHR(10) || to_char(rec.mld_opdr_note_aanmaak, 'DD-MM-YYYY HH24:MI') || ': ' || rec.mld_opdr_note_omschrijving, 1, 4000);
-- h_opdr_key := rec.mld_opdr_key;
-- END LOOP;
-- -- En de laatste niet vergeten natuurlijk!
-- IF h_opdr_key <> -1
-- THEN
-- mld.upsertopdrachtkenmerk (55, h_opdr_key, SUBSTR(v_interne_notitie,2));
-- END IF;
-- -- En tenslotte gaan we alle notities verwijderen
-- DELETE FROM mld_opdr_note n;
--END;
--/
-- Zelf opdrachten maken --
-- tbv flexprop om je eigen gedefinieerde OG te kiezen, adhv ingids = 1 wat betekent "prive/eigen OG".
CREATE OR REPLACE VIEW marx_v_mijn_opdrachtgevers
AS
SELECT * FROM mar_v_woco_x_lev, prs_bedrijf woco
WHERE l_prs_perslid_key = TO_NUMBER(sys_context('USERENV', 'CLIENT_IDENTIFIER'))
AND woco.prs_bedrijf_key = w_prs_bedrijf_key
AND woco.prs_bedrijf_ingids = 1;
INSERT INTO fac_kenmerkdomein ( fac_kenmerkdomein_key, fac_kenmerkdomein_module, fac_kenmerkdomein_omschrijving, fac_kenmerkdomein_objectnaam,
fac_kenmerkdomein_kolomnaam ,fac_kenmerkdomein_kolomtxt)
SELECT 9, 'MLD', 'Mijn opdrachtgevers', 'MARX_V_MIJN_OPDRACHTGEVERS', 'W_PRS_BEDRIJF_KEY', 'W_PRS_BEDRIJF_NAAM' FROM DUAL;
INSERT INTO mld_srtkenmerk (mld_srtkenmerk_key, mld_srtkenmerk_omschrijving, mld_srtkenmerk_kenmerktype, fac_kenmerkdomein_key)
SELECT 46, 'Uw opdrachtgever', 'R', 9 FROM DUAL;
INSERT INTO mld_kenmerk (mld_kenmerk_key, mld_srtkenmerk_key, mld_stdmelding_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer, mld_kenmerk_verplicht)
SELECT 55, 46, 1, 'S', 10, 1 FROM DUAL;
-- Label "Contactgegevens van de huurder krijgt alsnog label"
INSERT INTO mld_kenmerk (mld_kenmerk_key, mld_srtkenmerk_key, mld_stdmelding_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer, mld_kenmerk_verplicht, mld_kenmerk_omschrijving, mld_kenmerk_hint, mld_kenmerk_default)
SELECT 56, 33, 1, 'S', 15, NULL, 'Opdrachtlocatie met contactgegevens ', NULL, 'fa-address-card' FROM DUAL;
-- Label "Opdrachtgever"
INSERT INTO mld_kenmerk (mld_kenmerk_key, mld_srtkenmerk_key, mld_stdmelding_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer, mld_kenmerk_verplicht, mld_kenmerk_omschrijving, mld_kenmerk_hint, mld_kenmerk_default)
SELECT 57, 33, 1, 'S', 3, NULL, 'Opdrachtgever ', NULL, 'fa-handshake' FROM DUAL;
-- Invoerveld "Opdrachtnummer" (ION)
INSERT INTO mld_kenmerk (mld_kenmerk_key, mld_srtkenmerk_key, mld_stdmelding_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer, mld_kenmerk_verplicht, mld_kenmerk_omschrijving, mld_kenmerk_hint)
SELECT 58, 41, 1, 'S', 11, NULL, NULL, 'Opdrachtnummer/referentienummer welke door opdrachtgever is verstrekt (voor evt vermelding op factuur)' FROM DUAL;
-- Tabel met opdrachtsoorten, zodat een keuze uit de opties kan worden gemaakt bij invoer van melding
INSERT INTO fac_usrtab (fac_usrtab_key, fac_usrtab_naam, fac_usrtab_omschrijving)
VALUES(12,'Opdrachtsoort','Diverse soorten opdrachten');
INSERT INTO fac_usrdata(fac_usrtab_key,fac_usrdata_key, fac_usrdata_code, fac_usrdata_omschr, fac_usrdata_volgnr, fac_usrdata_prijs)
VALUES (12, 60, 'REP', 'Reparatie', 10, 0);
INSERT INTO fac_usrdata(fac_usrtab_key,fac_usrdata_key, fac_usrdata_code, fac_usrdata_omschr, fac_usrdata_volgnr, fac_usrdata_prijs)
VALUES (12, 61, 'MUT', 'Mutatie', 20, 0);
INSERT INTO fac_usrdata(fac_usrtab_key,fac_usrdata_key, fac_usrdata_code, fac_usrdata_omschr, fac_usrdata_volgnr, fac_usrdata_prijs)
VALUES (12, 62, 'INS', 'Inspectie/offerte', 30, 0);
-- Dummy view eerst, zodat fac_domein kan worden aangemaakt.
CREATE OR REPLACE VIEW marx_v_opdr_soort (marx_v_opdr_soort_key, marx_v_opdr_soort_code, marx_v_opdr_soort_omschr)
AS
SELECT 1, 'MB', 'MB was here' FROM DUAL;
INSERT INTO fac_kenmerkdomein ( fac_kenmerkdomein_key, fac_kenmerkdomein_module, fac_kenmerkdomein_omschrijving, fac_kenmerkdomein_objectnaam,
fac_kenmerkdomein_kolomnaam ,fac_kenmerkdomein_kolomtxt)
SELECT 10, 'MLD', 'Opdrachtsoorten', 'MARX_V_OPDR_SOORT', 'MARX_V_OPDR_SOORT_KEY', 'MARX_V_OPDR_SOORT_OMSCHR' FROM DUAL;
INSERT INTO mld_srtkenmerk (mld_srtkenmerk_key, mld_srtkenmerk_omschrijving, mld_srtkenmerk_kenmerktype, fac_kenmerkdomein_key)
SELECT 47, 'Opdrachtsoort', 'R', 10 FROM DUAL;
INSERT INTO mld_kenmerk (mld_kenmerk_key, mld_srtkenmerk_key, mld_stdmelding_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer, mld_kenmerk_verplicht, mld_kenmerk_default)
SELECT 59, 47, 1, 'S', 13, 1, 60 FROM DUAL;
CREATE OR REPLACE VIEW marx_v_opdr_soort (marx_v_opdr_soort_key, marx_v_opdr_soort_code, marx_v_opdr_soort_omschr)
AS
SELECT fac_usrdata_key, fac_usrdata_code, fac_usrdata_omschr
FROM fac_usrdata
WHERE fac_usrtab_key = 12
AND fac_usrdata_verwijder IS NULL;
-- Nieuwe melding 'Premium Registratieformulier'
INSERT INTO mld_stdmelding (mld_ins_discipline_key, mld_stdmelding_key, mld_stdmelding_omschrijving, mld_stdmelding_subject, mld_stdmelding_t_uitvoertijd, mld_stdmelding_planbaar, mld_stdmelding_slabewaken, mld_stdmelding_notfrontend,
mld_stdmelding_prseigen, mld_stdmelding_notify, alg_onrgoed_niveau, alg_org_obj_niveau, mld_stdmelding_freetext, mld_stdmelding_afmeldtext,
mld_stdmelding_doublecheck, mld_stdmelding_kopieerbaar, mld_stdmelding_kto, mld_stdmelding_autoorder, mld_stdmelding_vereisdienst, mld_stdmelding_regime,
mld_stdmelding_afhankelijk, mld_stdmelding_opdrtypevast, mld_stdmelding_directklaar, mld_stdmelding_kanverwijzen)
SELECT 6, 3, 'Mareon Premium Registratieformulier', 0, MLD_T_UITVOERTIJD(tijdsduur=>1,eenheid=>'D'), 1, 0, 0, 0, 0, 'R', -1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0
FROM dual;
-- Label
INSERT INTO mld_kenmerk (mld_kenmerk_key, mld_srtkenmerk_key, mld_stdmelding_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer, mld_kenmerk_verplicht, mld_kenmerk_omschrijving, mld_kenmerk_hint)
SELECT 50, 33, 3, 'S', 5, NULL, 'Opdrachtnemer', NULL FROM DUAL;
-- GLN
INSERT INTO mld_srtkenmerk (mld_srtkenmerk_key, mld_srtkenmerk_omschrijving,mld_srtkenmerk_kenmerktype, mld_srtkenmerk_lengte)
VALUES (40, 'GLN', 'C', 13);
INSERT INTO mld_kenmerk (mld_kenmerk_key, mld_srtkenmerk_key, mld_stdmelding_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer, mld_kenmerk_verplicht, mld_kenmerk_omschrijving, mld_kenmerk_hint)
SELECT 51, 40, 3, 'S', 10, 1, 'Uw GLN', 'Global Location Number van de opdrachtnemer' FROM DUAL;
--Adres
INSERT INTO mld_kenmerk (mld_kenmerk_key, mld_srtkenmerk_key, mld_stdmelding_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer, mld_kenmerk_verplicht, mld_kenmerk_omschrijving, mld_kenmerk_hint)
SELECT 52, 2, 3, 'S', 15, 1, 'Adres', 'Straatnaam of postbus' FROM DUAL;
-- Postcode
INSERT INTO mld_kenmerk (mld_kenmerk_key, mld_srtkenmerk_key, mld_stdmelding_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer, mld_kenmerk_verplicht, mld_kenmerk_omschrijving, mld_kenmerk_hint)
SELECT 53, 3, 3, 'S', 18, 1, 'Postcode', 'Postcode' FROM DUAL;
-- Plaats
INSERT INTO mld_kenmerk (mld_kenmerk_key, mld_srtkenmerk_key, mld_stdmelding_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer, mld_kenmerk_verplicht, mld_kenmerk_omschrijving, mld_kenmerk_hint)
SELECT 54, 4, 3, 'S', 20, 1, 'Plaats', 'Plaatsnaam' FROM DUAL;
--
-- Rommel...?
INSERT INTO mld_srtkenmerk (mld_srtkenmerk_key, mld_srtkenmerk_omschrijving,mld_srtkenmerk_kenmerktype, mld_srtkenmerk_lengte)
VALUES (5, 'Telefoonnr', 'C', 15);
INSERT INTO mld_kenmerk (mld_kenmerk_key, mld_srtkenmerk_key, mld_stdmelding_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer, mld_kenmerk_groep)
SELECT 5, 5, MAX(INS_DISCIPLINE_KEY), 'D', 60, 0 FROM INS_TAB_DISCIPLINE;
INSERT INTO mld_srtkenmerk (mld_srtkenmerk_key, mld_srtkenmerk_omschrijving,mld_srtkenmerk_kenmerktype, mld_srtkenmerk_lengte)
VALUES (6, 'Objectomschrijving', 'C', 256);
INSERT INTO mld_kenmerk (mld_kenmerk_key, mld_srtkenmerk_key, mld_stdmelding_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer, mld_kenmerk_groep)
SELECT 6, 6, MAX(INS_DISCIPLINE_KEY), 'D', 70, 0 FROM INS_TAB_DISCIPLINE;
INSERT INTO fac_kenmerkdomein (fac_kenmerkdomein_module, fac_kenmerkdomein_omschrijving, fac_kenmerkdomein_objectnaam, fac_kenmerkdomein_kolomnaam, fac_kenmerkdomein_kolomtxt, fac_usrtab_key)
VALUES ('MLD', 'Returncodes', 'FAC_USRDATA', 'FAC_USRDATA_KEY', 'FAC_USRDATA_OMSCHR', 2);
INSERT INTO mld_srtkenmerk (mld_srtkenmerk_key, mld_srtkenmerk_omschrijving,mld_srtkenmerk_kenmerktype, fac_kenmerkdomein_key)
VALUES (7, 'Reden weigering', 'R', 1);
INSERT INTO mld_kenmerk (mld_kenmerk_key, mld_srtkenmerk_key, mld_typeopdr_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer)
SELECT 7, 7, 5,'O', -1 FROM DUAL;
-- was eerder onderstaande, maar volgnummer nu op -1 zodat niet meer in beeld
-- SELECT 7, 7, 5,'O', 130 FROM DUAL;
INSERT INTO mld_srtkenmerk (mld_srtkenmerk_key, mld_srtkenmerk_omschrijving,mld_srtkenmerk_kenmerktype, mld_srtkenmerk_lengte)
VALUES (8, 'Mobielnr', 'C', 15);
INSERT INTO mld_kenmerk (mld_kenmerk_key, mld_srtkenmerk_key, mld_stdmelding_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer, mld_kenmerk_groep)
SELECT 8, 8, MAX(INS_DISCIPLINE_KEY), 'D', 65, 0 FROM INS_TAB_DISCIPLINE;
INSERT INTO fac_menu (fac_menu_altgroep, fac_menu_level, fac_menu_volgnr, fac_menu_altlabel, fac_menu_info, fac_menu_alturl, fac_functie_key, fac_menu_portal)
SELECT 1, 2, 11520, 'Aanmelden Mareon Premium', 'Premium abonnement voor de opdrachtnemer',
(SELECT 'appl/mld/mld_melding.asp?disc=6' || '&' || 'mld_defaultstdmelding=2' from dual),
(SELECT fac_functie_key FROM fac_functie WHERE fac_functie_code = 'WEB_EXTREL'), 1
FROM DUAL;
-- Rechten uitdelen aan de hoofdgebruiker (en evt andere beheerders) van elke leverancier, oftewel aan de fac_groep "Leverancier Beheerder" (key 11)
INSERT INTO fac_groeprechten (fac_groep_key, fac_functie_key, ins_discipline_key, fac_gebruiker_alg_level_read, fac_gebruiker_alg_level_write, fac_gebruiker_prs_level_read, fac_gebruiker_prs_level_write)
SELECT 11, fac_functie_key, 6,-1,-1,-1,-1
FROM fac_functie
WHERE fac_functie_code = 'WEB_MLDUSE';
------ 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