DYNAMIC RESULT SETS 1
LANGUAGE SQL
 BEGIN


	            BEGIN
					    DECLARE crs CURSOR WITH RETURN FOR
						SELECT pa.VariableId AS ArgumentVarId,
						       pa.OrdinalPosition AS ArgumentOrdinalPosition,
						       Programs_1.ProgramID AS CalledProgramId,
						       Programs_1.AliasName AS CalledProgramName,
						       v.VarID AS CallParameterVarId,
						       Programs_2.ProgramID AS CallingProgramId,
						       Programs_2.AliasName AS CallingProgramName,
						       pth.PathStr,
						       os.StartRow,
						       ArgumentVars.VarSize,
						       v.VarSize,
						       ArgumentVars.VarName AS argumentName,
						       v.VarName AS paramName
						FROM CallParameters cp
						      INNER JOIN Variables v ON cp.VariableId = v.VarID
						      INNER JOIN StatementReference AS StatementReference_1 ON cp.ID = StatementReference_1.ResourceID
							  INNER JOIN StatementReference AS StatementReference_2 ON StatementReference_2.OccurID = StatementReference_1.OccurID
							  INNER JOIN OccurrencesStmt os ON os.OccurID = StatementReference_2.OccurID
							  INNER JOIN ProgramAliases AS Programs_2 ON Programs_2.ProgramID = os.ProgID AND Programs_2.AliasType = 0
						      INNER JOIN ProgramArguments pa ON cp.OrdinalPosition = pa.OrdinalPosition
						                                        AND StatementReference_2.ResourceID = pa.ProgId
						      INNER JOIN ProgramAliases AS Programs_1 ON pa.ProgId = Programs_1.ProgramID AND Programs_1.AliasType = 0
						      INNER JOIN Paths pth ON os.PathID = pth.PathID
						      INNER JOIN Variables AS ArgumentVars ON ArgumentVars.VarID = pa.VariableId
						WHERE StatementReference_1.ResourceType = 96
						      AND StatementReference_2.ResourceType = 5
						      AND pa.VariableId IN (SELECT * FROM SESSION.numeric_param_temp)
						ORDER BY pa.VariableId;

				        OPEN crs;
				
                END;
END	
