Ejecutar un procedimiento almacenado Oracle 10 con VB 6.
Bueno como todo en la programación no se si esta sera la mejor forma pero es la que me funciono despues de probar de varias formas.
declaro la variable en el formulario.
Private cmmProc As New ADODB.Command
En un procedimiento inicializarComando le borro y le vuelvo a ingresar los parametros.
en el procedimiento te pongo ejeomplos de varios tipos de datos y parametro de entrada y salida.
Private Sub inicializarComando()
Dim j As Integer
Set cmmProc = New ADODB.Command
With cmmProc
.ActiveConnection = V_Cnn 'Variable con la conexion abierta
.CommandText = "INTER.GUARDAR_FALLA" 'Con el esquema
.CommandType = adCmdStoredProc
End With
For j = cmmProc.Parameters.Count - 1 To 0 Step -1
cmmProc.Parameters.Delete (j)
Next j
cmmProc.Parameters.Append cmmProc.CreateParameter("P_CODF", adUnsignedBigInt, adParamOutput)
cmmProc.Parameters.Append cmmProc.CreateParameter("P_ID_TIPOACC", adInteger, adParamInput)
cmmProc.Parameters.Append cmmProc.CreateParameter("P_DIRECC", adVariant, adParamInput)
cmmProc.Parameters.Append cmmProc.CreateParameter("P_FECHAINICIO", adBSTR, adParamInput)
cmmProc.Parameters.Append cmmProc.CreateParameter("P_COMENTARIOS", adVariant, adParamInput)
End Sub
y la parte donde lo llamo y cargo los valores de los parametros.
Public Sub cmdNuevo_Click()
inicializarComando
cmmProc("P_CODF") = Null
cmmProc("P_ID_TIPOACC") = Val(cboAccion.BoundText)
cmmProc("P_DIRECC") = Trim(txtDirecc.Text)
cmmProc("P_FECHAINICIO") = txtFechaI.DisplayText + " " + txtHoraI.DisplayText
cmmProc("P_COMENTARIOS") = txtComentarios.Text
cmmProc.Execute
V_llave = cmmProc("P_CODF")
end sub
Bueno espero les sirva, a mi me funciono.
0 comentarios:
Publicar un comentario
Suscribirse a Enviar comentarios [Atom]
<< Inicio