Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

  1. Configurar el parámetro MV_CFDUSO con el valor 3.
  2. En el módulo Facturación (SIGAFAT), menú Actualizaciones | Facturación | Facturaciones (MATA467N).
  3. Incluir una Factura de Venta (NF).
  4. Informar los datos del Encabezado e ítems.
  5. Presionar el botón Grabar, para realizar el grabado de la Factura.

    Informações
    titleInformación

    Cuando el parámetro MV_CFDUSO está configurado con el valor 3, se realiza en automático el proceso de transmisión electrónica y envío de email.

    El envío de email, es un proceso que es realizado por el Proveedor Tecnológico denominado The Factory HKA, durante el proceso de transmisión electrónica.

  6. Una vez que se realizó la validación, generación del XML y transmisión del documento electrónico, se visualiza el aviso que informa que la Factura de Venta Electrónica fue Autorizada.

 


2.23 Tag Obligatorias en XML de Factura por mandato(Tipo operación 11 - Mandato)

Producto

TOTVS Backoffice

Línea de producto: 

Línea Protheus

Segmento:

Backoffice

Módulo:SIGAFAT - Facturación
Función:

Rutina

Nombre

Fecha

M486XFUNCO.prwFunciones Genéricas de Facturación Electrónica de Colombia    22/10/2024
FISA814.prwCarga de Catálogos20/10/2024
LOCXCOL.prwFunciones Documentos Fiscales Colombia22/10/2024
MATV410AFunciones genéricas para Pedidos de Venta
FATSCOL.INIEstructura del XML de Documentos de Salida20/10/2024
País:COL (pacote 014724)
Ticket:21140115 
Requisito/Story/Issue (informe el requisito vinculado):DMICNS-21549


SITUACIÓN/REQUISITO

Se realiza la generación de una factura de venta desde la rutina de Facturaciones (MATA467N), informando el campo Tipo Oper. (F2_TIPOPE) con el valor "11" para indicar que se trata de una factura de venta por mandato.

Se identifica que al realizar la transmisión de la factura, ya sea desde la rutina Transmitir Factura electrónica (MATA486) o directamente desde la rutina Facturaciones (MATA467N), el SOAP-REQUEST generado por el sistema no contiene todos los tags que indica the factory para la transmisión de este documento.

De acuerdo con la documentación proporcionada por The Factory, las etiquetas obligatorias para este tipo de documento con operaciones por mandato a nivel detalle de la factura son las siguientes:

    • idEsquema
    • mandatorioNumeroIdentificacion
    • mandatorioNumeroIdentificacionDV
    • mandatorioTipoIdentificacion


Informações
titleDocumentación

Para más información puede consultar la siguiente documentación proporcionada por The Factory:
https://felcowiki.thefactoryhka.com.co/index.php/M%C3%A9todos_Servicio_Emisi%C3%B3n_Web_TFHKA_-_Indice_Manual_Integraci%C3%B3n_Directa#Class.DetalleDeFactura


SOLUCION

Dentro de la rutina de Carga de catálogos(FISA814), se realizan los siguientes ajustes:

  • En la función encargada de crear los catálogos para país Colombia (f814CatCol), se realiza la creación de la estructura y la carga de datos de la nueva tabla "S022 - Mandatorios", para que el usuario pueda informar los datos que serán presentados en las etiquetas mandatorioNumeroIdentificacion, mandatorioNumeroIdentificacionDV y mandatorioTipoIdentificacion del SOAP-REQUEST.


Dentro de la rutina Funciones Documentos Fiscales(LOCXCOL), se realizan los siguientes ajustes:

  • Se crean la nueva función aVldMdCol, la cual está encargada de validar que los productos tengan informado el campo Cod. Mandato (B1_CODMAN) con un código de la nueva tabla "S022 - Mandatorios" cuando el tipo de operación informada  en el encabezado del pedido de venta (C5_TIPOPE) o en el encabezado de la factura de venta (F2_TIPOPE) sea igual a "11". En caso de que existan productos con Cod. Mandato(B1_CODMAN) informando, se manda un mensaje al usuario para que confirme o no el proceso de guardado.
  • Se crea la nueva función a410TudOkCol, la cual se encargara de realizar las validaciones específicas para Colombia al momento de guardar o editar algún pedido de venta.
  • Dentro de la nueva función a410TudOkCol y en la función NfTudOkCol, se realiza el llamado a la nueva función aVldMdCol cuando el campo Tipo Oper.(C5_TIPOPE | F2_TIPOPE)  es igual a "11 - Mandato".


Dentro de la rutina Funciones genéricas para Pedidos de Venta (MATV410A), se realizan los siguientes ajustes:

  • Se realiza el llamado a la nueva función a410TudOkCol para el país Colombia.


Dentro del archivo Estructura del XML de Documentos de Salida(FATSCOL), se realiza los siguientes ajustes:

  • Se agrega una nueva etiqueta llamada cbc:IDMandatory a nivel detalle de factura, la cual toma el valor del campo Cód Mandato (B1_CODMAN) y solo se mostrará cuando el campo Cód Mandato (B1_CODMAN) exista y no este vacío.


Dentro de la rutina Funciones Genéricas de Facturación Electrónica de Colombia(M486XFUNCO), se realizan los siguientes ajustes:

  • En la función para Llenado de oWSdetalleDeFactura solicitado por TheFactory HKA(M486DETDOC), se realiza el ajuste para generar las tags idEsquema, mandatorioNumeroIdentificacion, mandatorioNumeroIdentificacionDV y mandatorioTipoIdentificacion tomando en cuenta el código informando de la etiqueta cbc:IDMandatory del XML generado por el archivo FATSCOL.INI para buscar la información en el nuevo catálogo S022 - Mandatorios.


2.23.1 Configuraciones previas

a) Configuraciones de diccionario y archivo FATSCOL.INI:

Archivo FATSCOL.INI:

Se requiere editar el script actual de generación  de archivo XML, actualizando las secciones de acuerdo al siguiente modelo, en donde se agregaron o fueron modificadas líneas para integrar esta nueva funcionalidad.

Informações
titleFATSCOL.INI

En el apartado de [XXX INICIALIZACION] agregar la validación para comprobar si existe el nuevo campo B1_CODMAN :

(PRE) _aTotal[034] := IIF(SB1->(ColumnPos("B1_CODMAN")) > 0, .T., .F.)


En el apartado de [SD2 INVOICE], agregar la referencia al nuevo campo B1_CODMAN para que cuando exista y no este vacio se genere la nueva tag cbc:IDMandatory:

(PREREG) (_aTotal[001] += IIF( _aTotal[034] .And. !Empty(SB1->B1_CODMAN),'            <cbc:IDMandatory>'+AllTrim(SB1->B1_CODMAN)+'</cbc:IDMandatory>'  + ( chr(13)+chr(10) ),""),.T.)


Creación de campos en el archivo SX3 - Campos:

CampoB1_CODMAN
TipoC - Caracter
Tamaño3
Decimal 0
Picture@!
TítuloCód Mandato
DescripciónCódigo Mandatorio
Val SistemaVazio() .Or. ValidF3I("S022", M->B1_CODMAN,1,3)
UtilizadoSi
ObligatorioNo
BrowseNo
Help

Indica el código de mandatorio de la tabla S022 - Mandatorios al que pertenece el producto.

Para las facturas por mandato es necesario informar este campo para generar las tags  idEsquema, mandatorioNumeroIdentificacion, mandatorioNumeroIdentificacionDV y mandatorioTipoIdentificacion 


Creación de consulta COL022 en el archivo SBX - Consultas:

Alias

Tipo

SecuenciaColumnaDescripciónContenido

COL021

1

01REMandatoriosF3I

COL021

2

0101MandatoriosF812SXB("S022","Codigo")

COL021

5

01

VAR_IXB


b) Pre-condiciones

  1. Aplicar el parche correspondiente al issueDMICNS-21549

    • Validar que las rutinas actualizadas correspondan a las indicadas en la sección Función del punto 01. DATOS GENERALES
  2. Realizar un respaldo del archivo FATSCOL.INI que se encuentra en la ruta configurada en el parámetro MV_CFDFTS.
  3. Tener los ajustes necesarios para poder realizar la transmisión de documentos electrónicos: Facturación Electrónica
  4. En el módulo Facturación(SIGAFAT), ir al menú Actualizaciones Archivos | Clientes.
    • Configurar un Cliente con los valores estandar.
  5. En el módulo Facturación(SIGAFAT):
    • Ir al menú Actualizaciones | Archivos | Definición de Catálogos
    • Al entrar a la rutina se creará de forma automatica el nuevo catálogo S022 - Mandatorios como se muestra en la siguiente imágen:
    • Image Added
    • Ir al menú Actualizaciones | Archivos | Mantenimiento de Catálogos
    • Ingresar los datos en el nuevo catálogo
      • Image Added
  6. En el módulo de Facturación(SIGAFAT), ir al menú Actualizaciones Archivos | Productos
    • Configurar para los productos a utilizar el campo Cód Mandato(B1_CODMAN) con un código de mandatorio del nuevo catálogo S022 - Mandatorios.

2.23.2 Ejemplo de utilización

En el módulo Facturación (SIGAFAT): 

  1. Ir al menú Actualizaciones | Facturación | Facturaciones (MATA467N).
    • Incluir una nueva Factura de Venta (NF).
    • Informar en el encabezado Cliente configurado previamente.
    • Informar en el encabezado el campo Tip Oper.(F2_TIPOPE) con valor igual a "11 - Mandatos".
    • Informar en el detalle el o los Productos configurados previamente.
    • Grabar la factura.
  2. Ir al menú Actualizaciones | Facturación | Transmisión Electrónica (MATA486).
    • Realizar la transmisión de la Factura de Venta
    • Validar que en el SOAP-REQUEST las nuevas etiquetas idEsquema, mandatorioNumeroIdentificacion, mandatorioNumeroIdentificacionDV y mandatorioTipoIdentificacion se muestren correctamente a nivel detalle de factura y que la transmisión sea exitosa.

Image Added

3. PROBLEMAS COMUNES

3.1 Facturas de Venta

...