WSSENASA ejemplo fitosanitarios

Este ejemplo en visual basic 6 (ver otros lenguajes) usa la interfaz WSAFIPFE para conectar al web service de trazablidad de productos fitosanitarios en modo prueba e informar una transacción, obtener la lista de transacciones pendientes y confirmar una. El significado de cada método y propiedad y los códigos (de evento, etc) usados están explicados en la documentación de esta página.

El ejemplo requiere versión 24.80 o superior del instalador.

Los datos son provistos por PAMI o SENASA. Aun en modo prueba se debe contar con un usuario/contraseña válidos según los trámites y asociado a un GLN.

En el proyecto en visual basic, agregar una referencia al objeto WSAFIPFE y ejecutar el código desde un botón.

Dim ws As WSAFIPFE.pami

Set ws = New WSAFIPFE.pami

If ws.iniciar(0, "senasaws", "Clave2013", "") Then

ws.sversion = 0

ws.sTransaccionItemCantidad = 1

ws.sIndiceItem = 0

ws.sglnorigen = ""

ws.sglndestino = "3692581473693"

ws.sfoperacion = "27/07/2014"

ws.sfelaboracion = "25/08/2013"

ws.sfvto = "25/08/2014"

ws.sidevento = "11"

ws.sidEventoNO = False

ws.scodproducto = "88900000000001"

ws.sncantidad = 1

ws.sncantidadNO = False

ws.snserie = "123"

ws.snlote = "12"

ws.sncai = ""

ws.sncae = ""

ws.sidmotivodestruccion = ""

ws.snmanifiesto = ""

ws.sentransporte = False

ws.sentransporteNO = True

ws.snremito = "12345682"

ws.smotivodevolucion = ""

ws.sobservaciones = ""

ws.sapellidoNombres = ""

ws.sdireccion = ""

ws.snumero = ""

ws.snumeroNO = True

ws.slocalidad = ""

ws.slocalidadNO = True

ws.sprovincia = ""

ws.sprovinciaNO = True

ws.snpostal = ""

ws.ArchivoXMLEnviado = "c:\senviado.xml"

ws.ArchivoXMLRecibido = "c:\srecibido.xml"

Dim bResultado As Boolean

bResultado = ws.sSaveTransaccion()

If ws.sRespuestaResultado Then

MsgBox ("resultado pami verdadero ")

Else

MsgBox ("resultado pami falso ")

End If

MsgBox ("error general " + " " + ws.UltimoMensajeError)

MsgBox ("error pami " + ws.sErrorDescripcion1)

MsgBox ("codigo transaccion " + ws.sRespuestaCodigoTransaccion)

ws.ArchivoXMLEnviado = ""

ws.ArchivoXMLRecibido = "c:\strecibido.xml"

bResultado = ws.sGetTransaccionesManual("","","","","","","","","","","","","")

If ws.sRespuestaResultado Then

MsgBox ("resultado pami verdadero ")

Else

MsgBox ("resultado pami falso ")

End If

MsgBox ("error general " + " " + ws.UltimoMensajeError)

MsgBox ("error pami " + ws.sErrorDescripcion1)

MsgBox ("codigo transaccion " + ws.sRespuestaCodigoTransaccion)

MsgBox ("paginas " + Str(ws.sCantPaginas))

MsgBox ("items " + Str(ws.sTransaccionItemCantidad))

For nIndex = 1 To ws.sTransaccionItemCantidad

ws.sIndiceItem = nIndex - 1

MsgBox (Str(nIndex) + " producto " + ws.scodproducto + " fecha " + ws.sfoperacion + " id: "+ws.sidtransaccion)

Next

ws.sTransaccionItemCantidad = 1

ws.sIndiceitem = 0

ws.spidstransacNO = False

ws.spidstransac = "id transaccion a confirmar"

ws.sncantidadNO = True

ws.sfoperacion = "30/08/2014"

ws.ArchivoXMLEnviado = "c:\cenviado.xml"

ws.ArchivoXMLRecibido = "c:\crecibido.xml"

bResultado = ws.ssendConfirmaTransacc()

MsgBox("ultimo mensaje: " + ws.UltimoMensajeError)

MsgBox("resultado pami: " + ws.sRespuestaResultadoS)

MsgBox("codigo pami: " + ws.sErrorCodigo1)

MsgBox("error pami: " + ws.sErrorDescripcion1)

MsgBox("codigo transaccon: " + ws.sRespuestaCodigoTransaccion)

Else

MsgBox ("error inicio " + ws.UltimoMensajeError)

End If