Prozeduren Previous topic Chapter index Next topic

FA_FOLDERTREE

 

Eingabeparameter

Parameter

Typ

Beschreibung

ROOT_FAID

INTEGER

Fach ID von wo an gesucht werden soll.

ROOT_LEVEL

INTEGER

Damit kann der Anfangs-Level angegeben werden.

 

Ausgabeparameter

Parameter

Typ

Beschreibung

FAID

INTEGER

Alle Unterfächer FAID

FALEVEL

INTEGER

Für jede FAID den entsprechenden Tiefen-Level

 

Beschreibung

Mit dieser Stored Procedure kann anhand einer Fach ID alle Unterfächer als DataSet abgefragt werden.

 

Definition

CREATE PROCEDURE FA_FOLDERTREE(
    ROOT_FAID INTEGER,
    ROOT_LEVEL INTEGER)
RETURNS (
    FAID INTEGER,
    FALEVEL INTEGER)
AS
  DECLARE VARIABLE SUB_FAID INTEGER;
BEGIN
  SELECT 
    FAID 
  FROM FAECHER 
  WHERE FAID = :ROOT_FAID 
  INTO 
    :FAID;
  
  IF (FAID IS NOT NULL) THEN
  BEGIN
    FALEVEL = ROOT_LEVEL;
    SUSPEND;
    FOR
      SELECT 
        FAID 
      FROM FAECHER 
      WHERE FAIDUEBER = :ROOT_FAID 
      ORDER BY FAPOSITION ASCENDING 
      INTO 
        :SUB_FAID
    DO 
    BEGIN
      FOR
        SELECT 
          FAID, FALEVEL 
        FROM FA_FOLDERTREE(:SUB_FAID, :ROOT_LEVEL+1) 
        INTO 
          :FAID, :FALEVEL
      DO
        SUSPEND;
    END
  END
END

 

     Previous topic Chapter index Next topic