Ejemplo WSFEX Visual Basic

Este ejemplo usa el identificador "1" como 3°er argumento del método registrar(conNumero). Debe usar un identificador único y diferente para obtener CAE diferentes en cada ejecución. Después de probar el ejemplo lea toda la documentación referente a "identificador" y "reproceso" para una explicación detallada sobre la función de este argumento. El ejemplo usa el método "xRegistrarConNumero" (y el instalador 98.50) equivalente al método "xRegistrar" pero con un 4°to argumento: el número de comprobante a autorizar que debe ser calculado manualmente. Se deben usar fechas del dia.

Para usar el control ActiveX en Visual Basic 5 o posterior:

Agregar al proyecto una referencia al componente WSAFIPFE

Insertar el control WSAFIPFE. Cambiar la propiedad "name" a "FE".

En el evento click de un control tipo botón insertar el siguiente código:

Dim cIdentificador As String

Dim nNumero As Integer

Dim nIndex As Integer

Dim nPuntoventa As Integer

Dim ntipoComprobante As Integer

cIdentificador = "1"

nNumero = 1

nPuntoventa = 3

ntipoComprobante = 19

If fe.iniciar(0, "aqui c.u.i.t. emisor sin separadores", "aqui ruta y nombre del certificado tipo *.pfx", "") Then

fe.xversion = 1

If fe.xObtenerTicketAcceso() Then

fe.xFecha_cbte = "20191104"

fe.xFecha_pago = "20191104"

fe.xtipo_expo = 1

fe.xPermiso_existenteS = "S"

fe.xDst_cmp = 203

fe.xCliente = "Joao Da Silva"

fe.xCuit_pais_clienteS = "50000000016"

fe.xDomicilio_cliente = "Rua 76 km 34.5 Alagoas"

fe.xId_impositivo = "PJ54482221-l"

fe.xMoneda_idS = "012"

fe.xMoneda_ctzS = 0.51

fe.xObs_comerciales = "Sin observaciones"

fe.xImp_total = 500

fe.xForma_pago = "Contado"

fe.xIncoTerms = "CIF"

fe.xIncoTerms_ds = "Texto dic."

fe.xIdioma_cbte = 1

fe.ArchivoXMLRecibido = "c:\recibido.xml"

fe.xItemCantidad = 2

fe.xIndiceItem = 0

fe.xITEMPro_codigo = "PRO1"

fe.xITEMPro_ds = "Producto Tipo 1 Exportacion MERCOSUR ISO 9001"

fe.xITEMPro_qty = 1

fe.xITEMPro_umed = 7

fe.xITEMPro_precio_uni = 250

fe.xITEMPro_precio_item = 250

fe.xIndiceItem = 1

fe.xITEMPro_codigo = "PRO1"

fe.xITEMPro_ds = "Producto Tipo 1 Exportacion MERCOSUR ISO 9001"

fe.xITEMPro_qty = 1

fe.xITEMPro_umed = 7

fe.xITEMPro_precio_uni = 250

fe.xITEMPro_precio_item = 250

fe.xPermisoCantidad = 2

fe.xPermisoNoInformar = 0

fe.xIndiceItem = 0

fe.xPERMISO_id_permiso = "09052EC01006154G"

fe.xPERMISO_dst_merc = 203

fe.xIndiceItem = 1

fe.xPERMISO_id_permiso = "09052EC01006154G"

fe.xPERMISO_dst_merc = 202

fe.xCmps_asocCantidad = 1

fe.xIndiceItem = 0

fe.xCMPS_ASOC_cbte_cuit = "123456789"

fe.xCMPS_ASOC_cbte_nroS = "1234"

fe.xCMPS_ASOC_cbte_punto_venta = 1

fe.xCMPS_ASOC_cbte_tipo = 1

If fe.xRegistrarConNumero(nPuntoventa, ntipoComprobante, cIdentificador, nNumero) Then

MsgBox ("Reproceso " + fe.xRespuestaReproceso)

MsgBox ("resultado correcto " + fe.xRespuestaResultado)

MsgBox ("CAE " + fe.xRespuestaCAE)

MsgBox ("número " + fe.xRespuestacbte_numeroS)

Else

MsgBox ("Reproceso " + fe.xRespuestaReproceso)

MsgBox ("resultado falso " + fe.xRespuestaResultado)

MsgBox ("error " + fe.xerrmsg)

MsgBox ("motivo " + fe.xRespuestaMotivos_obs)

MsgBox ("ultimo mensaje error " + fe.UltimoMensajeError)

End If

Else

MsgBox ("fallo en acceso " + fe.xerrmsg)

End If

Else

MsgBox ("fallo iniciar " + fe.UltimoMensajeError)

End If