UPPER() verwijderd i.v.m. performance. ins_srtdeel_acadsymbol was al upper (via ins112). Via trigger wordt ins_srtdeel_cadlayer nu ook upper zodat de relatief veel tijd kostende functie UPPER() overbodig is geworden.

svn path=/Database/trunk/; revision=7446
This commit is contained in:
Bert in het Veld
2000-03-15 12:39:58 +00:00
parent 7d1ae41990
commit fb8f10923b

View File

@@ -2,6 +2,7 @@
/* REVISIONS:
*
* 15-03-2000 BIV UPPER() verwijderd overal waar Upper(ins_srtdeel_cadlayer) en UPPER((ins_srtdeel_acadsymbol) i.v.m. performance.
* 23-11-1999 RD cad_SLNKPostErase: bij verwijderen van een ruimte alleen die werkplekken verwijderen
* met verwijderdatum NOT NULL, dus niet verwijderen in prs_werkplek maar van prs_v_aanwezigwerkplek.
* 23-11-1999 BIV PRS_WERKPLEK toegevoegd aan cad_SLNKpostdraw.
@@ -2145,12 +2146,29 @@ FUNCTION Bepaal_VolgnummerTxt(Omschrijving IN VARCHAR2) RETURN VARCHAR2 IS
END IF;
ELSE
/* Het is geen WERKPLEK - check of het een srtdeel is */
/* gebruik in dit geval geen MIN() ....
SELECT MIN(ins_srtdeel_key) INTO SrtDeelKey
FROM ins_srtdeel
WHERE ins_srtdeel_dimensie = Dimensie
AND UPPER(ins_srtdeel_cadlayer) = UPPER(LayerNaam)
AND UPPER(ins_srtdeel_acadsymbol) = UPPER(BlockNaam)
AND ins_srtdeel_cadlayer = UPPER(LayerNaam)
AND ins_srtdeel_acadsymbol = UPPER(BlockNaam)
AND ins_srtdeel_verwijder IS NULL;
... maar gebruik hiervoor in de plaats rownum = 1 */
BEGIN
SELECT ins_srtdeel_key INTO SrtDeelKey
FROM ins_srtdeel
WHERE ins_srtdeel_dimensie = Dimensie
AND ins_srtdeel_cadlayer = UPPER(LayerNaam)
AND ins_srtdeel_acadsymbol = UPPER(BlockNaam)
AND ins_srtdeel_verwijder IS NULL
AND rownum = 1;
EXCEPTION
WHEN NO_DATA_FOUND THEN
SrtDeelKey := NULL;
END;
IF SrtDeelKey IS NOT NULL THEN
/* Het is een srtdeel, dus voeg een deel toe */
IF LPNCondName = 'LPN_ALG_TERREINSECTOR' OR LPNCondName = 'LPN_ALG_RUIMTE' OR
@@ -2184,11 +2202,25 @@ FUNCTION Bepaal_VolgnummerTxt(Omschrijving IN VARCHAR2) RETURN VARCHAR2 IS
RecordAdded:= FALSE;
END IF;
ELSE
/*
SELECT MIN(ins_srtdeel_key) INTO SrtDeelKey
FROM ins_srtdeel
WHERE ins_srtdeel_dimensie = Dimensie
AND UPPER(ins_srtdeel_acadsymbol) = UPPER(BlockNaam)
AND ins_srtdeel_verwijder IS NULL;
AND ins_srtdeel_acadsymbol = UPPER(BlockNaam)
AND ins_srtdeel_verwijder IS NULL;
*/
BEGIN
SELECT ins_srtdeel_key INTO SrtDeelKey
FROM ins_srtdeel
WHERE ins_srtdeel_dimensie = Dimensie
AND ins_srtdeel_acadsymbol = UPPER(BlockNaam)
AND ins_srtdeel_verwijder IS NULL
AND rownum = 1;
EXCEPTION
WHEN NO_DATA_FOUND THEN
SrtDeelKey := NULL;
END;
IF SrtDeelKey IS NOT NULL THEN
/* Het is een srtdeel */
IF LPNCondName = 'LPN_ALG_TERREINSECTOR' OR LPNCondName = 'LPN_ALG_RUIMTE' OR
@@ -2261,11 +2293,25 @@ FUNCTION Bepaal_VolgnummerTxt(Omschrijving IN VARCHAR2) RETURN VARCHAR2 IS
LayerNaam := cad_SLNKSTRUCTreadVALSTR(Session_id, 'LAYER');
LoadDwg := cad_SLNKSTRUCTreadVALSTR(Session_id, 'LOADDWG');
/* Check of het een soortdeel is... */
/*
SELECT MIN(ins_srtdeel_key) INTO SrtDeelKey
FROM ins_srtdeel
WHERE ins_srtdeel_dimensie = Dimensie
AND UPPER(ins_srtdeel_cadlayer) = UPPER(LayerNaam)
AND ins_srtdeel_cadlayer = UPPER(LayerNaam)
AND ins_srtdeel_verwijder IS NULL;
*/
BEGIN
SELECT ins_srtdeel_key INTO SrtDeelKey
FROM ins_srtdeel
WHERE ins_srtdeel_dimensie = Dimensie
AND ins_srtdeel_cadlayer = UPPER(LayerNaam)
AND ins_srtdeel_verwijder IS NULL
AND rownum = 1;
EXCEPTION
WHEN NO_DATA_FOUND THEN
SrtDeelKey := NULL;
END;
IF SrtDeelKey IS NOT NULL THEN
/* Het is een srtdeel */
IF LPNCondName = 'LPN_ALG_TERREINSECTOR' OR LPNCondName = 'LPN_ALG_RUIMTE' OR
@@ -2578,12 +2624,27 @@ FUNCTION Bepaal_VolgnummerTxt(Omschrijving IN VARCHAR2) RETURN VARCHAR2 IS
END IF;
ELSE
/* Het is ook geen ruimte, check of het dan een srtdeel is...*/
/*
SELECT MIN(ins_srtdeel_key) INTO SrtDeelKey
FROM ins_srtdeel
WHERE ins_srtdeel_dimensie = Dimensie
AND UPPER(ins_srtdeel_cadlayer) = UPPER(LayerNaam)
AND ins_srtdeel_cadlayer = UPPER(LayerNaam)
AND ins_srtdeel_verwijder IS NULL;
-- SM44 Fix #79 AND UPPER(ins_srtdeel_acadsymbol) = UPPER(BlockNaam);
*/
BEGIN
SELECT ins_srtdeel_key INTO SrtDeelKey
FROM ins_srtdeel
WHERE ins_srtdeel_dimensie = Dimensie
AND ins_srtdeel_cadlayer = UPPER(LayerNaam)
AND ins_srtdeel_verwijder IS NULL
AND rownum = 1;
EXCEPTION
WHEN NO_DATA_FOUND THEN
SrtDeelKey := NULL;
END;
-- SM44 Fix #79 AND ins_srtdeel_acadsymbol = UPPER(BlockNaam);
IF SrtDeelKey IS NOT NULL THEN
/* Het is een srtdeel... */
IF LPNCondName = 'LPN_ALG_TERREINSECTOR' OR LPNCondName = 'LPN_ALG_RUIMTE' OR