(
IN p_FileName VARCHAR(256)
 )
DYNAMIC RESULT SETS 1
LANGUAGE SQL
BEGIN

            DECLARE v_FileName VARCHAR(256);
            SET v_FileName = p_FileName;


	            BEGIN
					             DECLARE crs CURSOR WITH RETURN FOR
								 SELECT p.ProgramName,
						                f.Name AS FileName,
						                f.LogicalName AS FileLogicalName,
						                f.OpenType AS FileOpenType,
						                pth.PathStr AS FilePathStr,
						                occ1.StartRow AS FileStartRow,
						                occ2.StartRow AS ProgramStartRow
						         FROM Files f
								      INNER JOIN
												 (
												   SELECT px.ProgramID,
														 --px.Ancestor,
														 --px.ProgramTypeID,
														 px.OccurID,
														 pa.AliasName AS ProgramName
												   FROM Programs px
													  INNER JOIN ProgramAliases pa ON px.ProgramID = pa.ProgramId AND pa.AliasType = 0
												   WHERE px.ProgramID IN (SELECT * FROM SESSION.numeric_param_temp)
												) p ON  f.ProgID = p.ProgramID
						              INNER JOIN Occurrences occ1 ON f.OccurID = occ1.OccurID
						              INNER JOIN Paths pth ON occ1.PathID = pth.PathID
						              INNER JOIN Occurrences occ2 ON occ2.OccurID = p.OccurID
						         WHERE     (f.Name LIKE '%-' || v_FileName
						                    OR f.Name LIKE v_FileName || '-%'
						                    OR f.Name LIKE v_FileName);
								
								 OPEN crs;
				
                END;
END 
