diff --git a/BES/BES_IND.SRC b/BES/BES_IND.SRC index 094c6270..09c09ccb 100644 --- a/BES/BES_IND.SRC +++ b/BES/BES_IND.SRC @@ -29,6 +29,9 @@ create index bes_i_bes_bestelopdr_p_prs_key on bes_bestelopdr (prs_perslid_key); create index bes_i_bes_bestelopdr_datum on bes_bestelopdr(bes_bestelopdr_datum); create index bes_i_bes_bestelopdr_item on bes_bestelopdr_item(bes_bestelopdr_item_verwerkt); +create index bes_i_bes_bestellever_prs_key on bes_bestellevr (prs_perslid_key); +create index bes_i_bes_bestellevr_item1 ON bes_bestellevr_item(bes_bestellevr_key); + create index bes_i_bes_srtdeel1 on bes_srtdeel(bes_srtgroep_key); CREATE UNIQUE INDEX bes_i_bes_srtdeel2 ON bes_srtdeel(bes_srtdeel_nr, prs_bedrijf_key, bes_srtgroep_key, bes_srtdeel_verwijder); CREATE INDEX bes_i_bes_srtdeel_prs_bdr_key on bes_srtdeel (prs_bedrijf_key); diff --git a/BES/BES_SEQ.SRC b/BES/BES_SEQ.SRC index ff6822d2..0827c2f6 100644 --- a/BES/BES_SEQ.SRC +++ b/BES/BES_SEQ.SRC @@ -10,6 +10,8 @@ CREATE SEQUENCE bes_s_bes_bestelling_key MINVALUE 1 NOCACHE; CREATE SEQUENCE bes_s_bes_bestelling_item_key MINVALUE 1; CREATE SEQUENCE bes_s_bes_bestelopdr_key MINVALUE 1 NOCACHE; CREATE SEQUENCE bes_s_bes_bestelopdr_item_key MINVALUE 1; +CREATE SEQUENCE bes_s_bes_bestellevr_key MINVALUE 1; +CREATE SEQUENCE bes_s_bes_bestellevr_item_key MINVALUE 1; CREATE SEQUENCE bes_s_bes_cXMLparams_key MINVALUE 1; CREATE SEQUENCE bes_s_bes_disc_params_key MINVALUE 1; diff --git a/BES/BES_TAB.SRC b/BES/BES_TAB.SRC index ac87af82..936093f3 100644 --- a/BES/BES_TAB.SRC +++ b/BES/BES_TAB.SRC @@ -367,6 +367,36 @@ CREATE_TABLE(bes_bestelopdr_item, 0) OR (bes_bestelopdr_item_aantal<0 AND bes_bestelopdr_item_aantalontv>=bes_bestelopdr_item_aantal)) ); +CREATE_TABLE(bes_bestellevr, 0) +( + bes_bestellevr_key + NUMBER(10) + CONSTRAINT bes_k_bes_bestellevr_key PRIMARY KEY, + bes_bestellevr_pakbon + VARCHAR(50), + bes_bestellevr_datum + DATE + DEFAULT SYSDATE, + prs_perslid_key + NUMBER(10) REFERENCES prs_perslid(prs_perslid_key) ON DELETE SET NULL, + bes_bestellevr_opmerk + VARCHAR2(320) +); + +CREATE_TABLE(bes_bestellevr_item, 0) +( + bes_bestellevr_item_key + NUMBER(10) + CONSTRAINT bes_k_bestel_lev_item_key PRIMARY KEY, + bes_bestellevr_key + NUMBER(10) REFERENCES bes_bestellevr(bes_bestellevr_key) ON DELETE CASCADE, + bes_bestelopdr_item_key + NUMBER(10) + CONSTRAINT bes_r_bes_bestelopdr_i_key2 REFERENCES bes_bestelopdr_item(bes_bestelopdr_item_key) ON DELETE CASCADE, + bes_bestellevr_item_aantal + NUMBER(15,3) +); + CREATE_TABLE(bes_bestelling_item, 0) ( bes_bestelling_item_key diff --git a/BES/BES_TRI.SRC b/BES/BES_TRI.SRC index de0c1d9e..e13db10c 100644 --- a/BES/BES_TRI.SRC +++ b/BES/BES_TRI.SRC @@ -103,6 +103,24 @@ BEGIN END; / +CREATE_TRIGGER(bes_t_bes_bestellevr_B_IU) + BEFORE INSERT OR UPDATE + ON bes_bestellevr + FOR EACH ROW +BEGIN + UPDATE_PRIMARY_KEY(bes_bestellevr_key,bes_s_bes_bestellevr_key); +END; +/ + +CREATE_TRIGGER(bes_t_bes_bestellevr_item_B_IU) + BEFORE INSERT OR UPDATE + ON bes_bestellevr_item + FOR EACH ROW +BEGIN + UPDATE_PRIMARY_KEY(bes_bestellevr_item_key,bes_s_bes_bestellevr_item_key); +END; +/ + CREATE_TRIGGER(bes_t_bes_bestelopdr_item_b_u) BEFORE UPDATE ON bes_bestelopdr_item diff --git a/FAC/FAC_PACX.SRC b/FAC/FAC_PACX.SRC index 0e13d30c..dbe6d323 100644 --- a/FAC/FAC_PACX.SRC +++ b/FAC/FAC_PACX.SRC @@ -109,6 +109,7 @@ AS PROCEDURE create_mld_opdr_node (p_key IN NUMBER, p_extra_key IN NUMBER, p_concise IN BOOLEAN, p_bgtmode IN BOOLEAN DEFAULT FALSE); PROCEDURE create_bes_bestelling_node (p_key IN NUMBER, p_concise IN BOOLEAN); PROCEDURE create_bes_bestelopdr_node (p_key IN NUMBER, p_concise IN BOOLEAN); + PROCEDURE create_bes_bestellevr_node (p_key IN NUMBER, p_concise IN BOOLEAN); PROCEDURE create_bez_afspraak_node (p_key IN NUMBER, p_extra IN NUMBER, p_concise IN BOOLEAN); @@ -7268,6 +7269,8 @@ AS LOOP create_bes_besteli_node (rec1.bes_bestelling_item_key); END LOOP; + -- we zouden hier een loopje met create_bes_bestellevri_node kunnen doen + -- we ondersteunen echter (nog) alleen de route create_bes_bestellevr_node --> create_bes_bestellevri_node createclosetag ('bestelopdrachtitem'); END; @@ -7528,6 +7531,15 @@ AS create_bes_bestelopdri_node (rec1.bes_bestelopdr_item_key); END LOOP; + -- welke pakbonnen zeggen iets over deze opdrachtregels van opdracht + FOR rec3 IN (SELECT DISTINCT bli.bes_bestellevr_key + FROM bes_bestellevr_item bli, bes_bestelopdr_item boi + WHERE boi.bes_bestelopdr_item_key = bli.bes_bestelopdr_item_key + AND boi.bes_bestelopdr_key = p_key) + LOOP + create_bes_bestellevr_node (rec3.bes_bestellevr_key, FALSE); + END LOOP; + -- Er is nogal wat info te behalen bij de bestelaanvraag; deze includen we hier integraal vooralsnog -- Welke aanvraag hoort hier bij? Dat kunnen er theoretisch meer zijn (bundeling) FOR rec2 IN c2 @@ -7541,6 +7553,67 @@ AS END IF; END; + + PROCEDURE create_bes_bestellevri_node (p_key IN NUMBER) + AS + BEGIN + createopentag ('bestelleveringitem'); + + FOR rec in ( + SELECT bli.bes_bestellevr_item_key, + bli.bes_bestellevr_item_aantal, + bli.bes_bestelopdr_item_key, + bi.bes_bestelopdr_item_omschrijv -- ter info + FROM bes_bestelopdr_item bi, bes_bestellevr_item bli + WHERE bi.bes_bestelopdr_item_key = bli.bes_bestelopdr_item_key + AND bli.bes_bestellevr_item_key = p_key) + LOOP + createxmltagvalue ('key', p_key); + createxmltagvalue ('aantal', rec.bes_bestellevr_item_aantal); + createxmltagvalue ('levertitem', rec.bes_bestelopdr_item_key); // concessie: hier moet eigenlijk bes_bestelopdr_item + createxmltagvalue ('omschrijving', rec.bes_bestelopdr_item_omschrijv); + + END LOOP; + + createclosetag ('bestelleveringitem'); + END; + + + PROCEDURE create_bes_bestellevr_node (p_key IN NUMBER, p_concise IN BOOLEAN) + AS + BEGIN + IF p_key IS NOT NULL + THEN + createopentag ('bestellevering'); + + FOR rec0 IN (SELECT bes_bestellevr_pakbon, + bes_bestellevr_datum, + bes_bestellevr_opmerk, + prs_perslid_key + FROM bes_bestellevr + WHERE bes_bestellevr_key = p_key) + LOOP + createxmltagvalue ('key', p_key); + createxmltagvalue ('pakbon', rec0.bes_bestellevr_pakbon); + mydatetochar ('leverdatum', rec0.bes_bestellevr_datum); + createxmltagvalue ('opmerking', rec0.bes_bestellevr_opmerk); + create_prs_perslid_node (rec0.prs_perslid_key, 'inboeker', TRUE); + END LOOP; + + IF NOT p_concise + THEN + FOR rec1 IN (SELECT bes_bestellevr_item_key + FROM bes_bestellevr_item + WHERE bes_bestellevr_key = p_key) + LOOP + create_bes_bestellevri_node (rec1.bes_bestellevr_item_key); + END LOOP; + END IF; + + createclosetag ('bestellevering'); + END IF; + END; + -- -- -- BEZOEKERS @@ -10467,8 +10540,6 @@ AS BEGIN DBMS_LOB.createtemporary (aclob, TRUE, DBMS_LOB.CALL); add_header (p_custid); - add_localisation (p_xmlnode); - create_bookmarks_node (p_xmlnode, p_key); xmlnode_depth := 0; -- Set initial depth-level!!! xml_node (p_xmlnode, p_key, @@ -10477,6 +10548,8 @@ AS p_extra, p_where, FALSE); + create_bookmarks_node (p_xmlnode, p_key); + add_localisation (p_xmlnode); add_footer (''); RETURN aclob; EXCEPTION WHEN NO_DATA_FOUND THEN diff --git a/_UP/DB43to44.src b/_UP/DB43to44.src index 61eee40a..def9e2ad 100644 --- a/_UP/DB43to44.src +++ b/_UP/DB43to44.src @@ -284,6 +284,52 @@ ALTER TABLE prs_bedrijfdienstlocatie ADD CONSTRAINT prs_u_prs_bedrijfdienstloc_key UNIQUE (prs_bedrijf_key, prs_perslid_key, prs_dienst_key, alg_locatie_key, alg_gebouw_key,prs_bedrijf_voor_key); +/////////////////////////////////////////////////////////////////////////////////////////// MARX#75026 + +CREATE_TABLE(bes_bestellevr, 0) +( + bes_bestellevr_key + NUMBER(10) + CONSTRAINT bes_k_bes_bestellevr_key PRIMARY KEY, + bes_bestellevr_pakbon + VARCHAR(50), + bes_bestellevr_datum + DATE + DEFAULT SYSDATE, + prs_perslid_key + NUMBER(10) REFERENCES prs_perslid(prs_perslid_key) ON DELETE SET NULL, + bes_bestellevr_opmerk + VARCHAR2(320) +); + +create index bes_i_bes_bestellever_prs_key on bes_bestellevr (prs_perslid_key); + +CREATE_TABLE(bes_bestellevr_item, 0) +( + bes_bestellevr_item_key + NUMBER(10) + CONSTRAINT bes_k_bestel_lev_item_key PRIMARY KEY, + bes_bestellevr_key + NUMBER(10) REFERENCES bes_bestellevr(bes_bestellevr_key) ON DELETE CASCADE, + bes_bestelopdr_item_key + NUMBER(10) + CONSTRAINT bes_r_bes_bestelopdr_i_key2 REFERENCES bes_bestelopdr_item(bes_bestelopdr_item_key) ON DELETE CASCADE, + bes_bestellevr_item_aantal + NUMBER(15,3) +); + +create index bes_i_bes_bestellevr_item1 ON bes_bestellevr_item(bes_bestellevr_key); + +CREATE SEQUENCE bes_s_bes_bestellevr_key MINVALUE 1; +CREATE SEQUENCE bes_s_bes_bestellevr_item_key MINVALUE 1; + +/////////////////////////////////////////////////////////////////////////////////////////// FCLT#75899 +ALTER TABLE fac_menu MODIFY fac_menu_alturl VARCHAR2(1000 CHAR); +ALTER TABLE fac_imp_menu MODIFY menu_alturl VARCHAR2(1000); + +/////////////////////////////////////////////////////////////////////////////////////////// FMHN#75734 +ALTER TABLE fac_faq ADD fac_faq_answer2 VARCHAR2 (4000 CHAR); +ALTER TABLE fac_imp_faq ADD fac_faq_answer2 VARCHAR2 (4000); /////////////////////////////////////////////////////////////////////////////////////////// FCLT#00000