DYNAMIC RESULT SETS 1
LANGUAGE SQL
 BEGIN

					    DECLARE crs CURSOR WITH RETURN FOR
						SELECT pa.ProgramName,
						       COUNT(par.ParaName) AS routines,
							   pgm.ProgramID
						FROM OccurrencesStmt os
						     INNER JOIN Programs pgm ON os.ProgID = pgm.ProgramID
						     INNER JOIN
										(
										    SELECT AliasName AS ProgramName, ProgramId
										    FROM ProgramAliases
										    WHERE AliasType = 0
										) pa ON pgm.ProgramID = pa.ProgramId
						     INNER JOIN StatementReference sr ON os.OccurID = sr.OccurID
						     INNER JOIN Programs AS Programs_1 ON sr.ResourceID = Programs_1.ProgramID
						     INNER JOIN Paragraphs par ON Programs_1.ProgramID = par.ProgramID
						WHERE pgm.ProgramTypeID = 11
						      AND Programs_1.ProgramTypeID = 10
						GROUP BY pa.ProgramName, pgm.ProgramID;


				         OPEN crs;
				

END	
