Blame | Last modification | View Log | RSS feed
CREATE PROCEDURE "RELEASE_MANAGER"."PAOLO_BUILD_TREE" ( nRtag_id IN NUMBER ) ISsessionNumber NUMBER := 0;iteration NUMBER := 1;rowCnt NUMBER := 0;maxIterations NUMBER := 50;BEGININSERT INTO TEMP_TREE_BROWSE ( SESSION_NUM, LEVEL_NUM, PV_ID )SELECT sessionNumber, iteration, rc.PV_IDFROM RELEASE_CONTENT rcWHERE rc.RTAG_ID = nRtag_id;iteration := iteration + 1;LOOPINSERT INTO TEMP_TREE_BROWSE ( SESSION_NUM, LEVEL_NUM, PV_ID )SELECT sessionNumber,iteration,dep.DPV_IDFROM TEMP_TREE_BROWSE ttb,PACKAGE_DEPENDENCIES depWHERE dep.PV_ID = ttb.PV_IDAND ttb.LEVEL_NUM = iteration - 1MINUSSELECT sessionNumber, iteration, ttb.PV_IDFROM TEMP_TREE_BROWSE ttb;rowCnt := SQL%ROWCOUNT;IF rowCnt > 0 THENiteration := iteration + 1;END IF;EXIT WHEN (rowCnt < 1) OR (iteration > maxIterations);END LOOP;END PAOLO_Build_Tree;/