Prozeduren Previous topic Chapter index Next topic

TFL_RENUMPOSITION

 

Eingabeparameter

Parameter

Typ

Beschreibung

FAID

INTEGER

Primary Key Wert von der FAECHER Tabelle

 

Ausgabeparameter

(Es gibt keine Ausgabeparameter)

 

Beschreibung

Nummeriert die Position eines Stack Fach neu durch.

 

Definition

CREATE PROCEDURE TFL_RENUMPOSITION(
    FAID INTEGER)
AS
  DECLARE VARIABLE tflid INTEGER;
  DECLARE VARIABLE tfltiid INTEGER;
  DECLARE VARIABLE tflposition INTEGER;
  DECLARE VARIABLE tflpos_neu INTEGER;
  DECLARE VARIABLE tflpos_alt INTEGER;
BEGIN
  tflpos_alt = -1000;
  tflpos_neu = 0;
  FOR SELECT TFLID, TFLPOSITION, TFLTIID FROM TITEL_FAECHER_LINK
      WHERE TFLFAID = :faid
      ORDER BY TFLPOSITION ASCENDING
      INTO :tflid, :tflposition, :tfltiid
  DO BEGIN
    IF ( ((tflposition - tflpos_alt) < 250) OR (tflposition < 0) ) THEN BEGIN
      UPDATE TITEL_FAECHER_LINK SET TFLPOSITION = :tflpos_neu
      WHERE TFLID = :tflid;
      tflposition = tflpos_neu;
      /* Damit das Modified vom Titel aktualisiert wird */
      UPDATE TITEL SET TIAUTOR = TIAUTOR
      WHERE TIID = :tfltiid;
    END
    tflpos_alt = tflposition;
    tflpos_neu = tflposition + 1000;
  END
END

 

     Previous topic Chapter index Next topic