(
IN p_RootID INTEGER
)
DYNAMIC RESULT SETS 1
LANGUAGE SQL
ss: BEGIN
            
            DECLARE v_RootID INTEGER;
            SET v_RootID = p_RootID; 

	            BEGIN
					        DECLARE crs CURSOR WITH RETURN FOR
						    SELECT  sppd.RootID,
						            sppd.ProgramNo,
						            sppd.FormNo OutputFormNo,
						            spfdef.FormName OutputFormName,
						            spfdef.RootID AS OutputFormRootId,
						            spfdef.MenuCounter OutputFormMenuCounter,
						            spfdef.BlockCounter OutputFormBlockCounter
						     FROM SPNS_ProgramDefinition sppd
						          LEFT OUTER JOIN SPNS_FormDefinition spfdef ON spfdef.FormNo = sppd.FormNo
						                                               AND spfdef.RootID = sppd.RootID
						     WHERE sppd.RootID = v_RootID
						           AND sppd.ProgramNo IN  (SELECT * FROM SESSION.numeric_param_temp)
						           AND sppd.FormNo <> 0
						           AND sppd.FormNo IS NOT NULL;

				             OPEN crs;
				
                END;
END ss	


