Procedura-GetPLMJOChildNodes

Popis:
Vrací všechny podřízené PLMJONodes k danému PLMJONode.

Parametry:

NázevPopisDatový typ
AMaster_ID
ID

Návratové hodnoty:

NázevPopisDatový typ
ID
ID
TreePathVarChar(1000)
TreeLevelInteger

Tělo:

BEGIN
  FOR
    WITH RECURSIVE T (ID, TreePath, TreeLevel) AS (
      SELECT A.ID, CAST(ib_lpad(CAST(A.PosIndex AS VARCHAR(10)), 10, '0') AS VARCHAR(1000)) AS TreePath, 1 AS TreeLevel
      FROM PLMJONodes A
      WHERE A.ID = :AMaster_ID
      UNION ALL
      SELECT B.ID, CAST(T.TreePath || ib_lpad(CAST(B.PosIndex AS VARCHAR(10)), 10, '0') AS VARCHAR(1000)) AS TreePath, T.TreeLevel + 1 AS TreeLevel
      FROM PLMJONodes B
      JOIN T ON B.Master_ID = T.ID
    )
    SELECT T.ID, T.TreePath, T.TreeLevel
    FROM T
    INTO :ID, :TreePath, :TreeLevel
  DO BEGIN
    SUSPEND;
  END
END;

Generated by ABRA Software a.s. 27.10.2021 16:34:50