(
  IN  p_Input_StartColFor03Level INTEGER
)
DYNAMIC RESULT SETS 1
LANGUAGE SQL
 BEGIN

                DECLARE v_Input_StartColFor03Level INTEGER;
	            BEGIN

					    DECLARE crs CURSOR WITH RETURN FOR	
			            SELECT DISTINCT
							    occ.ProgID,
					            prgAlsxyz.AliasName AS ProgramName,
					            pth.PathStr,
					            occ.StartRow,
					            v.IsCopy
					     FROM Variables v
					          INNER JOIN VariablePos vp ON v.VarID = vp.VarId
					          INNER JOIN Occurrences occ ON v.OccurID = occ.OccurID
					          INNER JOIN Paths pth ON occ.PathID = pth.PathID
					          INNER JOIN Programs prg ON v.ProgIDReference = prg.ProgramID
					    	  INNER JOIN ProgramAliases prgAlsxyz ON prg.ProgramId = prgAlsxyz.ProgramID
								AND prgAlsxyz.AliasType = 0
						 WHERE v.iLevel = 3
					          AND vp.LevelColumn != v_Input_StartColFor03Level
					          AND occ.ProgId IN (SELECT * FROM SESSION.numeric_param_temp)
					     ORDER BY prgAlsxyz.AliasName,
					              pth.PathStr,
					              occ.StartRow;


                        SET v_Input_StartColFor03Level = p_Input_StartColFor03Level;

                        OPEN crs;

                  END;
 END	
