Procedures cad_slnkpostdraw en cad_slnkpostmodify uitgebreidt voor de entry "Ontgravingsvak".

svn path=/Database/trunk/; revision=6388
This commit is contained in:
Bert in het Veld
1998-12-03 08:56:02 +00:00
parent cdb7bc5a3b
commit b18246effc

View File

@@ -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;