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

            DECLARE v_Input_StartColFor03Level INTEGER;

            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 prg.ProgramTypeID = 1
		     ORDER BY prgAlsxyz.AliasName,
		              pth.PathStr,
		              occ.StartRow;


            SET v_Input_StartColFor03Level = p_Input_StartColFor03Level;

            OPEN crs;

 END	
