Te env�o un pgm que hice de prueba para llamar a un cl, ten cuidado que hay lineas comentadas (es de prueba)
 
-------------------------------------------------------------------------------------
Dim WithEvents conADO As ADODB.Connection
'Dim rsADO As ADODB.Recordset
Dim rsADO As ADODB.Recordset
 

Private Sub Command1_Click()
  Screen.MousePointer = vbHourglass
       'se crea y abre objeto conADO (conexi�n ADO)
    Set conADO = New ADODB.Connection
    With conADO
        .Provider = "MSDASQL.1"
        .ConnectionString = "DSN=as400.prueba"
        .ConnectionTimeout = 10
        .CursorLocation = adUseClient
   
    End With
   
    Text1.Text = "Conectando con origen de datos " & conADO.ConnectionString
   
  
    conADO.Open
End Sub
 
Private Sub Command3_Click()
Dim sensql As String
Dim rsCAJ As ADODB.Recordset
 

    ' sensql = "SELECT DATOS " & _
    '        "FROM discovto WHERE substr(DATOS, 1, 2) = '01'"
    'sensql = "CREATE ALIAS QTEMP/cinta FOR prueba/discovto(L012012103;" & _
    '         "select datos from qtemp/cinta;" & _
    '         "DROP ALIAS QTEMP/cinta;"
    sensql = " select intdat from inintvto " & _
             " where substr(intdat, 1, 4 ) = '0880'"
            
            
   
            
    Set rsCAJ = conADO.Execute(sensql)
   
    If rsCAJ.BOF And rsCAJ.EOF Then
        Text1.Text = "No hay registros."
    End If
   
    rsCAJ.MoveFirst
    Print Mid(rsCAJ("intdat"), 89, 10)
   
   
 
End Sub
 
Private Sub conADO_ConnectComplete(ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pConnection As ADODB.Connection)
 
    Screen.MousePointer = vbDefault
    Text1.Text = ""
   
    If adStatus <> adStatusErrorsOccurred Then
        MsgBox "Conexi�n establecida con origen de datos " + vbCrLf & conADO.ConnectionString, vbInformation, " "
    Else
        MsgBox "No se pudo establecer conexi�n con origen de datos " + vbCrLf & conADO.ConnectionString, vbInformation, " "
        End
    End If
  
End Sub
 
Private Sub Command2_Click()
  Dim sensql As String
  Dim errLoop As ADODB.Error
   Dim paramet As String * 8
  
    On Error GoTo ControlError
   paramet = "MIGUEL12"
   
    Screen.MousePointer = vbHourglass
   
    'sensql = "call prueba.hojaoedita"
    'sensql = "call prueba.somete "
    'sensql = "call prueba.hojaoep ('00001111', 'MMM' )"
    'sensql = "call prueba.hojaoep ('" & paramet & "')"
    sensql = "call prueba.incpyvto ('201', '2103', '31032001' )"
    Print sensql
    conADO.Execute (sensql)
    Text1.Text = "ejecutado pgm"
  
ControlError:
 
Text1.Text = Text1.Text & vbCrLf & "se encontraron " & conADO.Errors.Count & " errores " & vbCrLf
 
For Each errLoop In conADO.Errors
  
   Text1.Text = Text1.Text & " descripci�n :" & errLoop.Description & vbCrLf
   Text1.Text = Text1.Text & " NativeError :" & errLoop.NativeError & vbCrLf
   Text1.Text = Text1.Text & " Number :" & errLoop.Number & vbCrLf
   Text1.Text = Text1.Text & " source :" & errLoop.Source & vbCrLf
   Text1.Text = Text1.Text & " SQLstate :" & errLoop.SQLState & vbCrLf
   'Text1.Text = "sql status : " & Text1.Text + vbCrLf & conADO.Errors.Item.SQLState
Next
 
  
  
  
    Screen.MousePointer = vbDefault
End Sub
 
Private Sub Form_Unload(Cancel As Integer)
    conADO.Close
 
End Sub
-----------------------------------------------------------
 
 
 
----- Original Message -----
Sent: Tuesday, January 28, 2003 7:28 PM
Subject: Ejecutar cl desde Visual Basic

Hola,
 
alguien me podria facilitar o decirme donde puedo encontrar un ejemplo para ejecutar un cl en el as400 desde un programa visual basic.
 
Gracias.
 
Antonio Campillejo
Visionlab

Responder a