3251 - Current provider does not support returning multiple recordsets from a single execution.



I have the following Oracle 8i stored procedure returning 3 recordsets
(this is testing a theory only).
PROCEDURE clr0033_get_time (
p_format1 IN VARCHAR2
, p_format2 IN VARCHAR2
, p_format3 IN VARCHAR2
, p_cursor1 IN OUT clr0033.t_ref_clr0033_get_time
, p_cursor2 IN OUT clr0033.t_ref_clr0033_get_time
, p_cursor3 IN OUT clr0033.t_ref_clr0033_get_time
) IS
v_cursor1 clr0033.t_ref_clr0033_get_time;
v_cursor2 clr0033.t_ref_clr0033_get_time;
v_cursor3 clr0033.t_ref_clr0033_get_time;
BEGIN
OPEN v_cursor1 FOR
SELECT TO_CHAR ( SYSDATE, p_format1 ) system_date
FROM DUAL;

p_cursor1 := v_cursor1;

-- --
OPEN v_cursor2 FOR
SELECT TO_CHAR ( SYSDATE, p_format2 ) system_date
FROM DUAL;

p_cursor2 := v_cursor2;

-- --
OPEN v_cursor3 FOR
SELECT TO_CHAR ( SYSDATE, p_format3 ) system_date
FROM DUAL;

p_cursor3 := v_cursor3;
END;
I am calling the procedure in an ActiveX DLL in VB6.0 using ADO as
such:
On Error GoTo ERROR_Build

strA = "YY-MM-DD"
strB = "YYYY-MON-DD"
strC = "MON-DD-YY"

Set objConn = New ADODB.Connection

strConn = "Provider=MSDAORA.1;Password=******;User ID=cld;Data
Source=clddev_ud505.world;Persist Security info=True"

On Error GoTo SQLErr

With objConn
.ConnectionTimeout = 800 '
CInt(m_Application.Contents.Item("RDSCon_ConnectionTimeout"))
.CommandTimeout = 800
'CInt(m_Application.Contents.Item("RDSCon_CommandTimeout"))
.CursorLocation = adUseClient
.Open strConn
End With

Set objCmd = New ADODB.Command

With objCmd
.ActiveConnection = objConn
.CommandText = "CLR0033.CLR0033_GET_TIME"
.CommandType = adCmdStoredProc
End With

With objCmd.Parameters
.Append objCmd.CreateParameter("a", adVarChar, adParamInput,
Len(strB), strA)
.Append objCmd.CreateParameter("b", adVarChar, adParamInput,
Len(strB), strB)
.Append objCmd.CreateParameter("c", adVarChar, adParamInput,
Len(strB), strC)
End With

Set objRS = New ADODB.Recordset
Set objRS = objCmd.Execute

Set objRS1 = objRS
Set objRS2 = objRS.NextRecordset
Set objRS3 = objRS.NextRecordset


I get the 3251 error message on the "Set objRS2 = objRS.NextRecordset"
line.
I have read several posts, but none see to help/fix my issue. Any help
would be greatly appreciated.
Thanks,
Skippy

.



Relevant Pages


Loading