DYNAMIC RESULT SETS 1
LANGUAGE SQL
 BEGIN

	            BEGIN
					    DECLARE crs CURSOR WITH RETURN FOR
						SELECT pa.ProgramName,
					            COUNT(DISTINCT par.ParaID) AS NumberOfProcedures,
								pgm.ProgramID
					     FROM Paragraphs par
					          INNER JOIN Programs pgm ON par.ProgramID = pgm.ProgramID
							  INNER JOIN    (
												SELECT AliasName AS ProgramName, ProgramId
												FROM ProgramAliases
												WHERE AliasType = 0
											 ) pa ON pgm.ProgramID = pa.ProgramId
					     WHERE pgm.OccurID <> 0
                              AND pgm.ProgramID IN (SELECT * FROM SESSION.numeric_param_temp)					
					     GROUP BY pa.ProgramName, pgm.ProgramID
					     ORDER BY pa.ProgramName;
					

				         OPEN crs;
				
                END;
END	
