(
 p_Input_MaxLevel INTEGER
)
DYNAMIC RESULT SETS 1
LANGUAGE SQL
ss: BEGIN
            
            DECLARE v_Input_MaxLevel INTEGER;
             
            DECLARE crs CURSOR WITH RETURN FOR
		    SELECT DISTINCT
				    ii.ProgId,
		            prgAlsxyz.AliasName AS ProgramName,
		            pth.PathStr,
		            os.StartRow,
		            CASE
		                WHEN pth.PathID = occ.PathID
		                THEN 0
		                ELSE -1
		            END AS IsCopy
		     FROM Programs prg
		          INNER JOIN Occurrences occ ON prg.OccurID = occ.OccurID
				  INNER JOIN OccurrencesStmt os ON prg.ProgramID = os.ProgID
				  INNER JOIN IfInfo ii ON ii.OccurId = os.OccurID
			      INNER JOIN Paths pth ON os.PathID = pth.PathID 
		    	  INNER JOIN ProgramAliases prgAlsxyz ON prg.ProgramId = prgAlsxyz.ProgramID
						AND prgAlsxyz.AliasType = 0
			 WHERE ii.IfNestingLevel > v_Input_MaxLevel 
		     ORDER BY prgAlsxyz.AliasName,
		              pth.PathStr,
		              os.StartRow;
            
            SET v_Input_MaxLevel = p_Input_MaxLevel;
 
            OPEN crs;
            
 END ss	
 
 
 
 
