Con il seguente codice cerco di invocare dal mio client una stored procedure in oracle:
codice:
Public Function ControllaCFBrasile(cf As String, tipo As String, msgErr As String) As Integer
strSql = "{?={call sial_gestione_lav_esterni.ctrl_codice_fiscale(?,?,?)}"
Set Com = this.ISIALApplication_SIALDatabase.command
With Com
.CommandText = strSql
.CommandType = adCmdText
.Parameters.Append .CreateParameter("RetVal", adInteger, 1, adParamReturnValue)
.Parameters.Append .CreateParameter("i_codice_fiscale", adVarChar, adParamInput, 30, Trim(cf))
.Parameters.Append .CreateParameter("i_tipo", adVarChar, adParamInput, 3, tipo)
.Parameters.Append .CreateParameter("o_msg_err", adVarChar, adParamOutput, 1000, msgErr)
.Execute
End With
ControllaCFBrasile = command("RetVal").Value
msgErr = command("msgErr").Value
End Function
Premesso che i parametri di input alla funzione arrivano correttamente, quando cerca di effettuare la Excecute, mi restituisce il messaggio dell'oggetto; mentre se con gli stessi parametri eseguo la stored direttamente da oracle, la stessa funziona correttamente determinando l'esito se positivo o negativo.
Cosa sbaglio?
Grazie anticipatamente.