VB6 Oracle 10 Stored procedures with parameters

35 pts.
Tags:
Oracle 10g
Oracle error messages
Oracle stored procedures
Oracle upgrades
VB 6
Visual Basic
I have a vb6 - RDO code that works ok with Oracle8, recently there was an upgrade to Oracle 10g enterprise. Now I get the error 40041 -> Object Collection: Couldn't find item indicated by text.
1110    lstrSQL = "{call Pyramid.Load_Tables(?, ?, 0)}"
1120    Set lrdoQ = vConexionDatos.MiDataBase.CreateQuery("ProcessTables", lstrSQL)
1130    lrdoQ.rdoParameters(0).Direction = rdParamInput
1140    lrdoQ.rdoParameters(0).Type = rdTypeDATE
1150    lrdoQ.rdoParameters(0).value = lFromDate
1160    lrdoQ.rdoParameters(1).Direction = rdParamInput
1170    lrdoQ.rdoParameters(1).Type = rdTypeDATE
1180    lrdoQ.rdoParameters(1).value = lToDate
1210    lrdoQ.Execute
1230    lrdoQ.Close
the error occurs in the line 1130 Any idea?

Answer Wiki

Thanks. We'll let you know when a new response is added.

Is the stored procedure signature exactly the same as it was on oracle 8 ?

Discuss This Question: 5  Replies

 
There was an error processing your information. Please try again later.
Thanks. We'll let you know when a new response is added.
Send me notifications when members answer or reply to this question.

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
  • Hermes68
    Yes, I supose 10g is more strict with something 8 isn´t. Naming, parameters?
    35 pointsBadges:
    report
  • carlosdl
    Hmmm, not sure about that. That error message usually fires when one is referring to parameters by name ("Couldn't find item indicated by text"), but your code is not doing that, but referring to them by position. Have you tried something like the following ? 1110 lstrSQL = "{call Pyramid.Load_Tables(?, ?, ?)}" 1120 Set lrdoQ = vConexionDatos.MiDataBase.CreateQuery("ProcessTables", lstrSQL) 1130 lrdoQ.rdoParameters(0).Direction = rdParamInput 1140 lrdoQ.rdoParameters(0).Type = rdTypeDATE 1150 lrdoQ.rdoParameters(0).value = lFromDate 1160 lrdoQ.rdoParameters(1).Direction = rdParamInput 1170 lrdoQ.rdoParameters(1).Type = rdTypeDATE 1180 lrdoQ.rdoParameters(1).value = lToDate 1160 lrdoQ.rdoParameters(2).Direction = rdParamInput 1170 lrdoQ.rdoParameters(2).Type = rdTypeINTEGER 1180 lrdoQ.rdoParameters(2).value = 0 1210 lrdoQ.Execute 1230 lrdoQ.Close
    68,470 pointsBadges:
    report
  • Hermes68
    Doesn't work, for 10g what should be the full text (schema.user.package.procedure ¿?) to call a procedure in a package ?? thank you
    35 pointsBadges:
    report
  • carlosdl
    It should be schema.package.procedure
    68,470 pointsBadges:
    report
  • Hermes68
    No way, I wil try without parameters
    35 pointsBadges:
    report

Forgot Password

No problem! Submit your e-mail address below. We'll send you an e-mail containing your password.

Your password has been sent to:

To follow this tag...

There was an error processing your information. Please try again later.

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Thanks! We'll email you when relevant content is added and updated.

Following