(
  IN p_Input_DDName VARCHAR(250)
)
DYNAMIC RESULT SETS 1
LANGUAGE SQL
 BEGIN

            DECLARE v_Input_DDName VARCHAR(250);
            SET v_Input_DDName = p_Input_DDName;

	            BEGIN

					     DECLARE crs CURSOR WITH RETURN FOR	 				
					     SELECT f.LogicalName,
					            f.FileID
					     FROM Files f
						      LEFT OUTER JOIN Occurrences occ ON f.OccurID = occ.OccurID
					          LEFT OUTER JOIN Programs pgm ON pgm.ProgramID = occ.ProgID
					     WHERE
						     (
						       pgm.ProgramID IN (SELECT * FROM SESSION.numeric_param_temp)
						       OR
						       NOT EXISTS (SELECT 0 FROM SESSION.numeric_param_temp)
						     )
					         AND
							 f.name = v_Input_DDName
					   ;
					
                         OPEN crs;

                  END;
 END	
