Categoría:FACTURA ELECTRONICA
Introducción
Este artículo describe la configuración requerida para operar con factura electrónica de ventas.
Para acceder a la funcionalidad completa de la factura electrónica se requiere por lo menos el release 20261014_1640_FVCAB_ABIERTO, con todas las librerías relacionadas que son:
- adortl150.bpl
- borlndmm.dll
- dbrtl150.bpl
- dsnap150.bpl
- IndyCore150.bpl
- IndyProtocols150.bpl
- IndySystem150.bpl
- inet150.bpl
- prxControlsPkgXE.bpl
- rbDB1215.bpl
- rbIDE1215.bpl
- rbRAP1215.bpl
- rbRCL1215.bpl
- rbRIDE1215.bpl
- rbRTL1215.bpl
- rbTC1215.bpl
- rbTCUI1215.bpl
- rtl150.bpl
- soaprtl150.bpl
- tee9150.bpl
- teeui9150.bpl
Tablas de base
Tabla fvexEMPRESA
Heredada de desarrollos anteriores define datos generales para el uso del servicio de factura electrónica, la pantalla es:

- En desarrollos anteriores necesitábamos tener el path al certificado y la indicación de si estábamos en modo prueba.
- Después veremos si nos sirve con este desarrollo.
Tabla fvexEMPRESA_CMP
Sirve para parametrizar los comprobantes que se emiten usando el servicio de factura electrónica.
- Indica qué servicio usa cada tipo de comprobante, el ejemplo solo usa “EXPORTACIÓN”.
- Por ahora solo define lo de abajo.
- Todos los comprobantes de la familia FV deberían estar en esta tabla.

Tabla fvexREQUERIMIENTOS
En esta tabla se registran los comprobantes cuyo número y CAE queremos tomar usando el servicio de factura electrónica.

Campos
Los campos de la tabla fvexREQUERIMIENTOS son:
- FID: es el timestamp del momento en que se agregó el registro.
- FCOMPROBANTE: es el código de comprobante que estamos procesando, normalmente sería un temporario (???) pero con el agregado del estado abierto también podría ser un código armado con un número mayor o igual a 90000000.
- FSERVICIO: indica el servicio a usar, los valores posibles son LOCAL o EXPORTACIÓN.
- FCAE: es el número de CAE una vez que el servicio web lo asignó.
- FCAE_FECHA: es la fecha del CAE.
- FNUMERO: es el número de comprobante retornado por el servicio web.
- FERROR_CODE: se setea a 1 si el servicio web encuentra un error.
- FERROR_MSG: Es el mensaje de error retornado por el servicio web.
- FUSUARIO: es el usuario que agregó el registro.
Indicaciones para usar el QR
Cuando Pragma se prepara para imprimir, si el comprobante es un FVCAB genera el QR y graba el texto que lo representa en una tabla llamada FVCAB_QR_PRINT. El comando de cmpFORMA carga la imagen del QR desde esa tabla (el texto sigue debajo de la imagen).

En el formulario de impresión hay que agregar un componente DbImage y asociarlo al Pipeline FVCAB, campo FQR_IMAGE.

Para ajustar el tamaño del QR
El sistema permite definir la "escala" para poder modificar el tamaño del QR en la impresión.
Para ver qué escala está definida en la tabla de etiquetas de familias de comprobantes, podés consultar usando el siguiente SQL: SELECT * FROM COMPROBANTEFAMILIA_TAGS WHERE FFAMILIA = 'FV' AND FTAG = 'ESCALA_QR_IMPRESION'
El campo FOBSERVACIONES contiene la escala activa, es un campo VARCHAR.
Para las pruebas, para cambiar a una escala de 4 usar (ojo que el campo FOBSERVACIONES es VARCHAR así que hay que usar comillas): UPDATE COMPROBANTEFAMILIA_TAGS SET FOBSERVACIONES = '4' WHERE FFAMILIA = 'FV' AND FTAG = 'ESCALA_QR_IMPRESION'
Para las pruebas, para cambiar a una escala de 3 usar: UPDATE COMPROBANTEFAMILIA_TAGS SET FOBSERVACIONES = '3' WHERE FFAMILIA = 'FV' AND FTAG = 'ESCALA_QR_IMPRESION'
Para las pruebas, para cambiar a una escala de 2 usar: UPDATE COMPROBANTEFAMILIA_TAGS SET FOBSERVACIONES = '2' WHERE FFAMILIA = 'FV' AND FTAG = 'ESCALA_QR_IMPRESION'
Para las pruebas, para cambiar a una escala de 1 usar: UPDATE COMPROBANTEFAMILIA_TAGS SET FOBSERVACIONES = '1' WHERE FFAMILIA = 'FV' AND FTAG = 'ESCALA_QR_IMPRESION'
Para usar el estado Abierto en facturas de venta
Desde el release 20261014_1640_FVCAB_ABIERTO el sistema admite el uso del estado abierto en facturas de ventas que usan la facturación electrónica. El procedimiento es el siguiente:
Agregar la etiqueta que indica que se usa el estado Abierto
Antes que nada debe agregarse a la tabla COMPROBANTEFAMILIA_TAGS en la familia FV la siguiente etiqueta:

Además, hay que definir qué usuarios pueden usar el estado Abierto como se hace con cualquier otro comprobante.
Comportamiento
Al grabar una factura - si existe la etiqueta CMP_ESTADO_BORRADOR y el usuario puede grabar en estado Abierto - si el usuario elige grabar en estado Abierto el sistema va a tomar directamente un número de comprobante que sea mayor o igual a 90000000 y no lo va a solicitar al servicio web, además la factura va a quedar en estado Abierto.
Si el usuario graba en estado registrado el sistema solicitará número y CAE al servicio web.
Al reabrir un comprobante (que está en estado Abierto) y al grabarlo en estado registrado, el sistema solicitará al servicio web el número y CAE y la factura que tenía un número mayor o igual a 90000000 ahora tendrá un número normal.
Esta categoría no contiene ninguna página o archivo.