Procedures cad_slnkpostdraw en cad_slnkpostmodify uitgebreidt voor de entry "Ontgravingsvak".
svn path=/Database/trunk/; revision=6388
This commit is contained in:
@@ -406,8 +406,49 @@ CREATE OR REPLACE PACKAGE BODY cad AS
|
||||
RETURN NULL;
|
||||
END;
|
||||
END cad_SLNKSTRUCTreadVALDATE;
|
||||
|
||||
|
||||
|
||||
PROCEDURE cad_KILLtrajecten(Session_Id NUMBER, Diepte NUMBER, Datum DATE) IS
|
||||
|
||||
BEGIN
|
||||
DECLARE
|
||||
CURSOR TrajectKleinerDiepte IS
|
||||
SELECT CAD_S.cad_slnkstruct_valint, bis_traject_key
|
||||
FROM cad_slnkstruct CAD_S, bis_v_boring_trajecten BIS_BT
|
||||
WHERE CAD_S.cad_slnkstruct_sessionid = Session_Id
|
||||
AND CAD_S.cad_slnkstruct_entry = 'LPNKEYMODO'
|
||||
AND CAD_S.cad_slnkstruct_valint = BIS_BT.bis_boring_key
|
||||
AND BIS_BT.bis_traject_begindiepte < Diepte;
|
||||
|
||||
BEGIN
|
||||
FOR TrajectRec IN TrajectKleinerDiepte LOOP
|
||||
UPDATE bis_traject
|
||||
SET bis_traject_einddatum = Datum
|
||||
WHERE bis_traject_key = TrajectRec.bis_traject_key;
|
||||
END LOOP;
|
||||
END;
|
||||
|
||||
DECLARE
|
||||
CURSOR TrajectOverlap IS
|
||||
SELECT CAD_S.cad_slnkstruct_valint, BIS_BT.bis_traject_key
|
||||
FROM cad_slnkstruct CAD_S, bis_v_boring_trajecten BIS_BT
|
||||
WHERE CAD_S.cad_slnkstruct_sessionid = Session_Id
|
||||
AND CAD_S.cad_slnkstruct_entry = 'LPNKEYMODO'
|
||||
AND CAD_S.cad_slnkstruct_valint = BIS_BT.bis_boring_key
|
||||
AND BIS_BT.bis_traject_begindiepte < Diepte
|
||||
AND BIS_BT.bis_traject_einddiepte > Diepte;
|
||||
BEGIN
|
||||
FOR TrajectRec IN TrajectOverlap LOOP
|
||||
UPDATE bis_traject
|
||||
SET bis_traject_begindiepte = Diepte
|
||||
WHERE bis_traject_key = TrajectRec.bis_traject_key;
|
||||
COMMIT;
|
||||
END LOOP;
|
||||
END;
|
||||
END cad_KILLtrajecten;
|
||||
|
||||
|
||||
PROCEDURE cad_SLNKpostdraw(Session_Id NUMBER) IS
|
||||
|
||||
LPNName VARCHAR2(128);
|
||||
@@ -455,41 +496,8 @@ CREATE OR REPLACE PACKAGE BODY cad AS
|
||||
SET bis_ontgravingsvak_volume = Volume,
|
||||
bis_ontgravingsvak_diepte = Diepte
|
||||
WHERE bis_ontgravingsvak_key = LPNKey;
|
||||
|
||||
/* "Onthoofden" van trajecten */
|
||||
DECLARE
|
||||
CURSOR TrajectKleinerDiepte IS
|
||||
SELECT CAD_S.cad_slnkstruct_valint, bis_traject_key
|
||||
FROM cad_slnkstruct CAD_S, bis_v_boring_trajecten BIS_BT
|
||||
WHERE CAD_S.cad_slnkstruct_sessionid = Session_Id
|
||||
AND CAD_S.cad_slnkstruct_entry = 'LPNKEYINSO'
|
||||
AND CAD_S.cad_slnkstruct_valint = BIS_BT.bis_boring_key
|
||||
AND BIS_BT.bis_traject_begindiepte < Diepte;
|
||||
BEGIN
|
||||
FOR TrajectRec IN TrajectKleinerDiepte LOOP
|
||||
UPDATE bis_traject
|
||||
SET bis_traject_einddatum = Datum
|
||||
WHERE bis_traject_key = TrajectRec.bis_traject_key;
|
||||
END LOOP;
|
||||
END;
|
||||
|
||||
DECLARE
|
||||
CURSOR TrajectOverlap IS
|
||||
SELECT CAD_S.cad_slnkstruct_valint, BIS_BT.bis_traject_key
|
||||
FROM cad_slnkstruct CAD_S, bis_v_boring_trajecten BIS_BT
|
||||
WHERE CAD_S.cad_slnkstruct_sessionid = Session_Id
|
||||
AND CAD_S.cad_slnkstruct_entry = 'LPNKEYINSO'
|
||||
AND CAD_S.cad_slnkstruct_valint = BIS_BT.bis_boring_key
|
||||
AND BIS_BT.bis_traject_begindiepte < Diepte
|
||||
AND BIS_BT.bis_traject_einddiepte > Diepte;
|
||||
BEGIN
|
||||
FOR TrajectRec IN TrajectOverlap LOOP
|
||||
UPDATE bis_traject
|
||||
SET bis_traject_begindiepte = Diepte
|
||||
WHERE bis_traject_key = TrajectRec.bis_traject_key;
|
||||
COMMIT;
|
||||
END LOOP;
|
||||
END;
|
||||
cad_KILLtrajecten(Session_Id, Diepte, Datum);
|
||||
END IF;
|
||||
cad_SLNKSTRUCTinsertVALSTR(Session_Id, 'SYNC', 1, 'AUTOCAD', 1); /* ORACLE is klaar */
|
||||
END cad_SLNKpostdraw;
|
||||
@@ -557,7 +565,10 @@ CREATE OR REPLACE PACKAGE BODY cad AS
|
||||
WHERE bis_project_key = LPNKey;
|
||||
COMMIT;
|
||||
ELSIF LPNName = 'LPN_BIS_ONTGRAVINGSVAK' THEN
|
||||
NULL; /* moet nog uitgewerkt worden */
|
||||
UPDATE bis_ontgravingsvak
|
||||
SET bis_ontgravingsvak_verwijder = Datum
|
||||
WHERE bis_ontgravingsvak_key = LPNKey;
|
||||
COMMIT;
|
||||
END IF;
|
||||
cad_SLNKSTRUCTinsertVALSTR(Session_Id, 'SYNC', 1, 'AUTOCAD', 1);
|
||||
END cad_SLNKpostErase;
|
||||
@@ -569,6 +580,8 @@ CREATE OR REPLACE PACKAGE BODY cad AS
|
||||
LPNKey NUMBER(10);
|
||||
VeldKey NUMBER(10);
|
||||
Oppervlak NUMBER(13,3);
|
||||
Diepte NUMBER(8,2);
|
||||
Datum DATE;
|
||||
|
||||
BEGIN
|
||||
LPNName := cad_SLNKSTRUCTreadVALSTR(Session_id, 'LPNALIASMODO');
|
||||
@@ -579,7 +592,6 @@ CREATE OR REPLACE PACKAGE BODY cad AS
|
||||
FROM bis_boring
|
||||
WHERE bis_boring_key = LPNKey;
|
||||
IF VeldKey IS NOT NULL THEN
|
||||
/* lees oppervlakte uit */
|
||||
Oppervlak := cad_SLNKSTRUCTreadVALREAL(Session_id, 'AREA');
|
||||
UPDATE bis_veld
|
||||
SET bis_veld_oppervlakte = Oppervlak
|
||||
@@ -597,7 +609,13 @@ CREATE OR REPLACE PACKAGE BODY cad AS
|
||||
SET bis_project_oppervlakte = Oppervlak
|
||||
WHERE bis_project_key = LPNKey;
|
||||
ELSIF LPNName = 'LPN_BIS_ONTGRAVINGSVAK' THEN
|
||||
NULL; /* moet nog uitgewerkt worden */
|
||||
Diepte := cad_SLNKSTRUCTreadVALREAL(Session_id, 'DEPTH');
|
||||
UPDATE bis_ontgravingsvak
|
||||
SET bis_ontgravingsvak_diepte = Diepte
|
||||
WHERE bis_ontgravingsvak_key = LPNKey;
|
||||
/* "Onthoofden" van trajecten */
|
||||
Datum := TO_DATE(cad_SLNKSTRUCTreadVALSTR(Session_id, 'DATE'), 'DD-MM-YYYY');
|
||||
cad_KILLtrajecten(Session_Id, Diepte, Datum);
|
||||
END IF;
|
||||
cad_SLNKSTRUCTinsertVALSTR(Session_Id, 'SYNC', 1, 'AUTOCAD', 1);
|
||||
END cad_SLNKpostModify;
|
||||
|
||||
Reference in New Issue
Block a user