Myslím, že by to mělo být toto:
With cmd
.Properties("PLSQLRSet") = TRUE
.ActiveConnection = conn
.CommandType = adCmdText
.CommandText = "{call their_package.get_product(?,?)}"
.NamedParameters = True
.Parameters.Append cmd.CreateParameter("rptid", adNumeric, adParamInput, 0, 98)
.Parameters.Append cmd.CreateParameter("scenario", adVarChar, adParamInput, 4, "decline001")
End With
...
Set rs = cmd.Execute
cmd.Properties("PLSQLRSet") = FALSE
Poznámka: Ačkoli their_package.get_product() přebírá tři parametry, je třeba svázat pouze dva, protože parametry Ref kurzoru jsou automaticky svázány poskytovatelem.
Další informace naleznete v dokumentaci Oracle:Poskytovatel Oracle pro OLE DB Developer's Guide – „Using OraOLEDB with Visual Basic“