(
IN p_RootID INTEGER
)
DYNAMIC RESULT SETS 1
LANGUAGE SQL
 BEGIN

            DECLARE v_RootID INTEGER;
            SET v_RootID = p_RootID;

	            BEGIN
					    DECLARE crs CURSOR WITH RETURN FOR
					    SELECT  spmof.RootID,
					            spmof.FormNo,
					            spmof.CalledFormNo,
					            spfdef.FormName CalledFormName,
					            spfdef.RootID AS CalledFormRootId,
					            spfdef.MenuCounter CalledMenuCounter,
					            spfdef.BlockCounter CalledBlockCounter,
					            spmof.OptionNo
					     FROM SPNS_MenuOptionInForm spmof
					          LEFT OUTER JOIN SPNS_FormDefinition spfdef ON spmof.RootID = spfdef.RootID
					                                               AND spmof.CalledFormNo = spfdef.FormNo
					                                               AND (spfdef.MenuCounter <> 0 OR spfdef.MenuCounter IS NOT NULL)
					     WHERE spmof.RootID = v_RootID
					          AND spmof.FormNo IN (SELECT * FROM SESSION.numeric_param_temp)
					     ;

				        OPEN crs;
				
                END;
END	
