Este ejemplo en visual basic 6 (ver otros lenguajes) usa la interfaz WSAFIPFE para conectar al web service de trazablidad de precursores químicos en modo prueba e informar una transacción. 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 20.60 o superior del instalador.
Los datos son provistos por PAMI o SEDRONAR. Aun en modo prueba se debe contar con un usuario/contraseña válidos según los trámites.
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, "usuario", "contraseña", "") Then
ws.pqTransaccionItemCantidad = 1
ws.pqIndiceItem = 0
ws.pqglnOrigen = "9998887770004"
ws.pqGlnDestino = "9998887770028"
ws.pqfOperacion = "01/12/2013"
ws.pqidEvento = 40
ws.pqidEventoNO = False
ws.pqCodProducto = "GTIN1"
ws.pqNCantidadl = 1
ws.pqNcantidadNO = False
ws.pqNDocumentoOperacion = "1234"
ws.pqmEntregaParcial = False
ws.pqNRemito = "12345678"
ws.pqIdPasoFronteraIngreso = ""
ws.pqIdPasoFronteraIngresoNO = True
ws.pqIdPasoFronteraEgreso = ""
ws.pqIdPasoFronteraEgresoNO = True
ws.pqIdTipoDocumentoOperacion = 2
ws.pqIdTipoDocumentoOperacionNO = False
ws.pqdDominioTractor = ""
ws.pqdDominioSsemi = ""
ws.pqNSerie = "1234"
ws.pqNLote = "1"
ws.pqDocDespachoPlaza = ""
ws.pqDocPermisoEmbarque = ""
ws.pqdjai = ""
ws.pqNCertRnpq = ""
ws.pqIdTipoDocumento = 0
ws.pqIdTipoDocumentoNO = True
ws.pqNDocumento = ""
ws.pqNDocumentoNO = True
ws.pqMCalidadAnalitica = False
ws.pqMCalidadAnaliticaNo = True
ws.ArchivoXMLEnviado = "c:\enviado.xml"
ws.ArchivoXMLRecibido = "c:\recibido.xml"
Dim bResultado As Boolean
bResultado = ws.pqEnviarTransaccion()
MsgBox ("resultado " + " " + ws.UltimoMensajeError)
MsgBox ("error pami " + ws.pqErrorDescripcion1)
If ws.pqRespuestaResultado = True Then
MsgBox ("resultado pami vedadero")
Else
MsgBox ("resultado pami falso")
End If
MsgBox ("codigo transaccion " + ws.pqRespuestaCodigoTransaccion)
Else
MsgBox ("error inicio " + ws.UltimoMensajeError)
End If