Hola,
a ver si te sirve esta rutina que uso yo.
Un saludo.
---
Jordi
P.D.: La rutina...
Sub Initialize
Dim retorno As Variant
Print CallPgm00
End Sub
Public Function CallPgm00 As Variant
'Ejemplo para ejecutar llamada a un programa en el iSeries pasando
par�metros.
On Error Goto PeasoError
Const CNSub = "CallPgm00"
Const userName = "******" 'Sustituir por usuario
Const password = "********" 'Sustituir por contrase�a.
'DataTypeEnum
Const adChar = 129
'ParameterDirectionEnum
Const adParamInput = 1
Const adParamInputOutput = 3
'CommandTypeEnum
Const adCmdText = 1
'Conectar ADODB para ejecutar llamadas.
Set cnnAS400 = CreateObject("ADODB.Connection")
cnnAS400.Open "Provider=IBMDA400;Data Source=CORCEGA", userName,
password
Set cmdPrint = CreateObject("ADODB.Command")
Set cmdPrint.ActiveConnection = cnnAS400
cmdPrint.CommandText = "{{CALL /QSYS.LIB/JORDI.LIB/J0010.PGM(?, ?,
?)}}"
cmdPrint.Parameters.Append cmdPrint.CreateParameter("P1", adChar,
adParamInputOutput, 8) 'Next Number 8
cmdPrint.Parameters.Append cmdPrint.CreateParameter("P2", adChar,
adParamInput, 2) 'Century 2
cmdPrint.Parameters.Append cmdPrint.CreateParameter("P3", adChar,
adParamInput, 2) 'Fiscal Year 2
cmdPrint.Parameters.Item(0).Value = "00000000"
cmdPrint.Parameters.Item(1).Value = "20"
cmdPrint.Parameters.Item(2).Value = "03"
cmdPrint.CommandType = adCmdText
cmdPrint.Execute
CallPgm00 = cmdPrint.Parameters.Item(0).Value
cnnAS400.Close
Set cnnAS400 = Nothing
Exit Function
PeasoError:
Print "Error #" + Str(Err) + " on " + CNAgent +" sub:" + CNSub + " at
line "+ Str(Erl) + " what say: " + Error$
Exit Function
End Function
_____________________________________________________
Forum.HELP400 es un servicio m�s de NEWS/400.
� Publicaciones Help400, S.L. - Todos los derechos reservados
http://www.help400.es
_____________________________________________________
Para darte de baja, env�a el mensaje resultante de pulsar
mailto:[EMAIL PROTECTED]