Árvore de páginas

Versões comparadas

Chave

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

...

En caso de editar el Núm. de Doc. (F1_DOC), y si se introduce un número de documento mayor al consecutivo que corresponda, el sistema reasigna automáticamente el número y presenta un aviso de la acción realizada.


2.10.4 Regla de rechazo DSAJ05b


The Factory HKA Colombia SAS informa que desde el próximo 10 de noviembre de 2024 la DIAN generará rechazo al transmitir un documento soporte cuando el tipo de documento del vendedor no corresponda a un valor válido de la lista, de acuerdo con lo establecido en el anexo técnico vigente para el documento soporte en adquisiciones con sujetos no obligados a expedir factura electrónica.


Es requisito reportar la información relacionada con los documentos de no residentes de acuerdo con los códigos que se indican en la tabla 16.2.1 Documento de identificación (Tipo de identificador fiscal) del anexo técnico 1.0 de la resolución 00167 de 2021.

DSAJ25b. El contenido de este atributo no corresponde a uno de los valores posibles de la lista.

Cuando el campo <tipoOperacion> se reporte como 11 (No Residente), 

Image Added

Nota: Conforme a la Normativa vigente, debe tenerse en cuenta lo que se indica para el concepto de residente fiscal en Colombia y no residente fiscal en Colombia.

En el campo <tipoIdentificacion>, podrá indicarse alguno de los valores de la siguiente tabla.

Para cumplir con esa nueva regla deberá actualizar el catálogo TiposDocIdentidad con los siguientes datos:

Image Added

2.10.5 Diccionario de datos 

El usuario debe realizar las siguientes actualizaciones al diccionario de datos a través del módulo Configurador de Protheus (SIGACFG):

...

Producto

Solucoes_espanhol
SolucaoTOTVS Backoffice

Línea de producto: 

Linhas_totvs_espanhol
LinhaLínea Protheus

Segmento:

Segmentos_totvs_espanhol
SegmentoBackoffice

Módulo:SIGAFAT - Facturación
Función:
16
RutinaNombre TécnicoFecha
LOCXNFDocumentos Fiscales20/08/2024
LOCXNF2Funciones Genéricas para Notas Fiscales20/08/2024
LOCXCOLDocumentos Fiscales - Colombia21/08/2024
LOCXFUNAFunciones Genéricas Notas Fiscales13/08/2024
MATA486Documentos Electrónicos13/08/2024
FATECOL.INIGeneración de XML para Documentos de Entrada14/08/2024
País:Colombia (pacote 014357)
Ticket:No aplica (Pacote: 014412)
Requisito/Story/Issue (informe el requisito vinculado):DMINA-23953

...

  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 Venta29/10/2024
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 no cuenten 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

COL022

1

01REMandatoriosF3I

COL022

2

0101MandatoriosF812SXB("S022","Codigo")

COL022

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


2.24 Ejecución de Transmisión electrónica por JOB nuevo Schedule 

Producto

TOTVS Backoffice

Línea de producto: 

Línea Protheus

Segmento:

Backoffice

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

Rutina

Nombre

Fecha

MATA486Documentos Electrónicos14/11/2024
autoCOLNfeTransTransmisión Electrónica automática de documentos Colombia14/11/2024
LOCXCOLDocumentos Fiscales Colombia14/11/2024
País:COL
Ticket:NA
Requisito/Story/Issue (informe el requisito vinculado):DMICNS-21518


SITUACIÓN/REQUISITO

Se requiere disponibilizar un JOB, en cual el cliente pueda configurar la trasmisión electrónica de Factura de Venta (NF), Nota de Crédito de Cliente (NCC), Nota de Débito de Cliente (NDC), Documento Soporte (NF), Nota de Ajuste de Crédito (NCP) y Nota de Ajuste de Débito (NDP) conforme a su regla de negocio.


SOLUCIÓN

En la rutina de Documentos Fiscales - Colombia (LOCXCOL):

Dentro de la función LxTraCOL, se agregan validaciones para cuando se realiza la ejecución del JOB, se realice correctamente la transmisión de los documentos electrónicos.

En la rutina de Documentos Electrónicos (MATA486):

Dentro de las funciones Realiza Pre-validación de Datos para Transmisión (M486VLDDOC) y Genera el Log de transmisión electrónica(M486GENLOG), se agrega un parámetro que reciben dichas funciones para saber cuando se esta ejecutando el JOB. Se agregan bifurcaciones para que el proceso se ejecute correctamente al validar los datos de transmisión y generar el log del proceso cuando se esta ejecutando la transmisión electrónica desde JOB.

Se crea la nueva rutina Transmisión Electrónica automática de documentos Colombia(autoCOLNfeTrans), la cual permite la ejecución de la transmisión electrónica de Colombia por medio del nuevo Schedule. 

En dicha rutina se manda llamar la función LxTraCOL para cada serie y especie informada en el nuevo grupo de preguntas y que este configurada en la tabla SFP - Control de Formularios.


2.24.1 Configuraciones previas

a) Configuraciones de diccionario:

Tablas Genéricas en el archivo SX5 – Tablas Genéricas:

Crear una nueva tabla genérica con las especies de documentos que son transmitidos:

Tabla

00

Clave

1E

Descripción

Especies de documentos Transmisión Electrónica


Crear nuevos registros en la 00 - 1E Especies de documentos Transmisión Electrónica

CLAVE

Descripción

1FACTURA/DOCUMENTO SOPORTE
2NOTA DE CRÉDITO CLIENTE
3NOTA DE DÉBITO CLIENTE
8NOTA DE CRÉDITO AJUSTE
9NOTA DE DÉBITO AJUSTE


 Consulta Estándar en el archivo SXB – Consulta Estándar:

AliasTipoSecuenciaColumnaDescripciónContenido
ESPDOC101DBEspecie Transm ElectSX5
ESPDOC20101Codigo
ESPDOC40101CodigoX5_CHAVE
ESPDOC4

01

02DescripcionX5_DESCRI 
ESPDOC5

01



Alltrim(X5_CHAVE)
ESPDOC6

01



1E


Creación de Preguntas en el archivo SX1 – Archivo de Preguntas:

Grupo: MATA486K

Orden

01

02

Pregunta

¿Tipo de Documento?

¿Serie?

Tipo

C

C

Tamaño

12

50

Variable

MV_PAR01

MV_PAR02

Validación



Objeto

R -Rango

R -Rango

Consulta Estándar

ESPDOC

SERNF

Contenido

FP_ESPECIE

FP_SERIE


Informações
titlePacote Diccionario (uso exclusivo interno)

Código: 014812
Pacote: MI - DMICNS-21518 - COL TRANSMISIÓN AUTO


b) Configuraciones de Schedule:


Totvs custom tabs box
tabsPre-condiciones Sistema,Configuración Rutina Schedule,Configuración Schedule
idsPre-condiciones Sistema,Configuración Rutina Schedule,Configuración Schedule
Totvs custom tabs box items
defaultyes
referenciaPre-condiciones Sistema
  1. En el archivo de configuración del servidor(appserver.ini), agregar la siguiente información:
      • [Drivers]
        MultiProtocolPort=1

        [General]
        App_Environment=NOMBRE_AMBIENTE(ambiente donde se activará nuevo Schedule)

  2. En el módulo Libros Fiscales(SIGAFIS), ir al menú Actualizaciones | Archivos | Contr. Formularios
    1. Contar con las series correctamente configuradas para los documentos a transmitir: Factura de Venta (NF), Nota de Crédito de Cliente (NCC), Nota de Débito de Cliente (NDC), Documento Soporte (NF), Nota de Ajuste de Crédito (NCP) y Nota de Ajuste de Débito (NDP)
Totvs custom tabs box items
defaultno
referenciaConfiguración Rutina Schedule

Para la ejecución del proceso por medio del nuevo Schedule, se requiere contar con una rutina compilada en el repositorio como la que muestra a continuación:

Bloco de código
languageapplescript
#INCLUDE 'rwmake.ch'
#INCLUDE 'PROTHEUS.CH'

/*/{Protheus.doc} WFPRUEBA3
    Función principal que se debe informar en el Schedule
    /*/
Function WFPRUEBA3(aPar)
    If IsBlind() 
        BatchProcess("Teste","Teste",,{ || TSTExec3() })
    EndIf
Return Nil

/*/{Protheus.doc} TSTExec3
    Función informanda en la función BatchProcess, la cual se ejecutará
	conforme a la periodicidad informada en el Schedule.
    /*/
Function TSTExec3()
    Local cPerg := "MATA486K"
    
    If !Pergunte(cPerg,.T.)
	    Return .F.
    Else
        MakeSqlExpr(cPerg)
        DSVFAT1(MV_PAR01,MV_PAR02)
    Endif
Return       

/*/{Protheus.doc} SchedDef
    Función requerida para ejecución en el Schedule.
    /*/
Static Function SchedDef()
    Local aParam  := {}

    aParam := { "P",;			//Tipo R para relatorio P para processo
                "MATA486K",;		//Pergunte do relatorio, caso nao use passar ParamDef
                ,;				//Alias
                ,;				//Array de ordens
                ""}				//Titulo - "Calculo de Depreciacao e Correcao Monetaria"

Return aParam
Totvs custom tabs box items
defaultno
referenciaConfiguración Schedule

En el módulo Configurador (SIGACFG): 

Ir al menú Entorno| Schedule| Schedule

En la nueva pantalla, seleccionar la opción "Agenda":

Image Added

Dar clic en "Nuevo", posteriormente informar el nombre de la rutina que se va a ejecutar:

Image Added

A continuación se debe confirmar la periodicidad con la que se va a ejecutar la rutina:

  • UnicaSolo se ejecutará el día y la hora ingresados ​​en los campos Día y Hora.
  • Tarifa diaria 
    • Opción de frecuencia: Si se marca como sí, se debe ingresar una frecuencia de ejecución en horas o minutos, y debe haber una hora de inicio y finalización para esta ejecución. Si se marca como no, solo debe ingresar una hora para ejecutar el cronograma.
    • Opción Recurrente: Si se marca como sí, considera los parámetros de frecuencia para su ejecución. Si se marca como no, solo considera los parámetros de la primera ejecución.
  • Semanal
    • Opción de frecuencia: Si se marca como sí, se debe ingresar una frecuencia de ejecución en horas o minutos, y debe haber una hora de inicio y finalización. Si marca como no, solo deberá ingresar una única vez. Para ambas opciones se deberá informar los días de la semana de ejecución.
    • Opción Recurrente: Si se marca como sí, considera los parámetros de frecuencia para su ejecución. Si se marca como no, solo considera los parámetros de la primera ejecución.
  • Mensual
    • Opción de frecuencia: Si se marca como sí, se debe ingresar una frecuencia de ejecución en días, horas o minutos, y debe haber una hora de inicio y finalización y un día de inicio y finalización. Si se marca como no, sólo se deberá indicar el día y hora de ejecución.
    • Opción Recurrente: Si se marca como sí, considera los parámetros de frecuencia para su ejecución. Si se marca como no, solo considera los parámetros de la primera ejecución.

Image Added

Al elegir la opción "Tarifa diaria", se mostrará la siguiente información:

Image Added

Posteriormente, se requiere informar los datos de la Empresa, Sucursal, Módulo y Usuario.

Image Added


Al dar clic en "Edite parámetros", se mostrará una ventana con las preguntas para informar las especies y las series que serán consideradas al momento de ejecutar el proceso de transmisión electrónica,

  • ¿Tipo Documento? - Especies de los documentos a ser transmitidos. El número de especie y descripción se obtiene de la tabla genérica 00 - 1E Especies de documentos Transmisión Electrónica.
  • ¿ Serie? - Serie de los documentos a ser transmitidos.


NOTA: Importante borrar el contenido de cada pregunta antes de informar la especie y serie usando la consulta estándar.

Image Added

Image AddedImage Added


Al finalizar se mostrará la información de ejecución:

Image Added





c) Log de ejecución:

Al ejecutarse el proceso de transmisión electrónica por medio del Schedule, se generará un Log en la carpeta estándar "system\transmision_auto_log\" con el resumen del proceso como se muestra a continuación:

Image Added


3. PROBLEMAS COMUNES

...