DYNAMIC RESULT SETS 1
LANGUAGE SQL
 BEGIN

					    DECLARE crs CURSOR WITH RETURN FOR
						SELECT *
						FROM(
						     SELECT
						            af.FileNumber,
						            adb.DBNumber,
						            af.FileID
						     FROM StatementReference sr
						          INNER JOIN OccurrencesStmt os ON sr.OccurID = os.OccurID
						                                            AND sr.ResourceType = 62
						          INNER JOIN Programs pgm ON os.ProgID = pgm.ProgramID
						          INNER JOIN AdabasView aw ON sr.ResourceID = aw.ViewID
						          INNER JOIN AdabasFiles af ON af.FileID = aw.AdabasFileID
						          INNER JOIN AdabasDatabases adb ON adb.AdabasDBID = af.AdabasDBID
						     WHERE pgm.ProgramTypeID = 1
						     GROUP BY af.FileNumber,
						              adb.DBNumber,
						              af.FileID
						     UNION
						
						     SELECT
						            af.FileNumber,
						            adb.DBNumber,
						            af.FileID
						     FROM StatementReference sr
						          INNER JOIN OccurrencesStmt os ON sr.OccurID = os.OccurID
						          INNER JOIN Programs pgm ON os.ProgID = pgm.ProgramID
						          INNER JOIN AdabasFiles af ON sr.ResourceID = af.FileID
						                                        AND sr.ResourceType = 56
						          INNER JOIN AdabasDatabases adb ON adb.AdabasDBID = af.AdabasDBID
						          LEFT OUTER JOIN MFAdabasFiles maf ON maf.FileNumber = af.FileNumber
						          LEFT OUTER JOIN MFAdabasDB mad ON mad.DBNumber = adb.DBNumber
						     WHERE pgm.ProgramTypeID = 1
						     GROUP BY af.FileNumber,
						              adb.DBNumber,
						              af.FileID
						
							UNION
						
							   SELECT af.FileNumber,
									adb.DBNumber,
									af.FileID
							   FROM StatementReference sr
								   INNER JOIN OccurrencesStmt os ON sr.OccurID = os.OccurID
																AND sr.ResourceType = 193
								   INNER JOIN Programs pgm ON os.ProgID = pgm.ProgramID
								   INNER JOIN NaturalDBView ndv ON ndv.viewid = sr.ResourceID
								   INNER JOIN NaturalDDM nd ON nd.DDM_ID = ndv.DDM_ID
								   INNER JOIN AdabasView aw ON aw.ViewID = nd.ReferenceResourceID
															       AND nd.ResourceType = 62
								   INNER JOIN AdabasFiles af ON af.FileID = aw.AdabasFileID
								   INNER JOIN AdabasDatabases adb ON adb.AdabasDBID = af.AdabasDBID
								   LEFT OUTER JOIN MFAdabasFiles maf ON maf.FileNumber = af.FileNumber
								   LEFT OUTER JOIN MFAdabasDB mad ON mad.DBNumber = adb.DBNumber
							   WHERE pgm.ProgramTypeID = 3
							   GROUP BY af.FileNumber,
									  adb.DBNumber,
									  af.FileID
							)src
							   ORDER BY src.FileNumber,
									    src.DBNumber;
									
				        OPEN crs;
				
END	
