Eingabeparameter
Parameter | Typ | Beschreibung |
---|---|---|
PARENTID |
INTEGER |
Primary Key Wert von der FAECHER Tabelle |
Ausgabeparameter
(Es gibt keine Ausgabeparameter)
Beschreibung
Stored Procedure nummeriert Fächer um. Als Übergabeparameter gibt man für alle Event Base Fächer 0, für alle Newsroom Fächer -1 oder für alle Web Base Fächer -2 an. Danach ist gewährleistet, dass die Differenz der Fach IDs min. 250 ist.
Definition
CREATE PROCEDURE FA_RENUMPOSITION_2(
PARENTID INTEGER)
AS
DECLARE VARIABLE FACHPOS_ALT INTEGER;
DECLARE VARIABLE FACHPOS INTEGER;
DECLARE VARIABLE FACHID INTEGER;
BEGIN
FACHPOS = 0;
FOR
SELECT FAID, FAPOSITION FROM FAECHER WHERE FAIDUEBER = :PARENTID ORDER BY FAPOSITION ASCENDING
INTO :FACHID, :FACHPOS_ALT
DO BEGIN
/* Umnummerieren, wenn Differenz zwischen aktueller und
vorheriger Position kleiner als 250 ist */
IF ((FACHPOS_ALT - FACHPOS) < 250) THEN
BEGIN
FACHPOS_ALT = FACHPOS + 1000;
UPDATE FAECHER SET FAPOSITION = :FACHPOS_ALT WHERE FAID = :FACHID;
END
FACHPOS = FACHPOS_ALT;
IF (FACHID <> PARENTID) THEN
BEGIN
EXECUTE PROCEDURE FA_RENUMPOSITION_2(FACHID);
END
END
END
![]() ![]() ![]() |