मुझे लगता है कि यह यही होना चाहिए:
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
नोट: हालांकि उनका_पैकेज.get_product() तीन पैरामीटर लेता है, केवल दो को बाध्य करने की आवश्यकता है क्योंकि रेफ कर्सर पैरामीटर स्वचालित रूप से प्रदाता द्वारा बाध्य होते हैं।
अधिक जानकारी के लिए Oracle दस्तावेज़ देखें:OLE के लिए Oracle प्रदाता DB डेवलपर गाइड - "Visual Basic के साथ OraOLEDB का उपयोग करना"