Prozeduren Previous topic Chapter index Next topic

SF_RENUMPOSITION

 

Eingabeparameter

(Es gibt keine Eingabeparameter)

 

Ausgabeparameter

(Es gibt keine Ausgabeparameter)

 

Beschreibung

Nummeriert die Schemafächer Position neu durch.

 

Definition

CREATE PROCEDURE SF_RENUMPOSITION
AS
  DECLARE VARIABLE sfid INTEGER;
  DECLARE VARIABLE sfposition INTEGER;
  DECLARE VARIABLE sfpos_neu INTEGER;
  DECLARE VARIABLE sfpos_alt INTEGER;
BEGIN
  sfpos_alt = -1000;
  sfpos_neu = 0;
  FOR SELECT SFID, SFPOSITION FROM SCHEMAFAECHER
      ORDER BY SFPOSITION ASCENDING
      INTO :sfid, :sfposition
  DO BEGIN
    IF ( ((sfposition - sfpos_alt) < 250) OR (sfposition < 0) ) THEN BEGIN
      UPDATE SCHEMAFAECHER SET SFPOSITION = :sfpos_neu
      WHERE SFID = :sfid;
      sfposition = sfpos_neu;
    END
    sfpos_alt = sfposition;
    sfpos_neu = sfposition + 1000000;
  END
END

 

     Previous topic Chapter index Next topic