Versión 5.0.12 - 24/06/2022
  • 24 Feb 2023
  • 5 Minutes to read
  • Contributors
  • Dark
    Light

Versión 5.0.12 - 24/06/2022

  • Dark
    Light

Article summary

Solución de errores

Caso de usuario 10627: Corrección en obtención alternativa de NIT de empresa

Problema: En la aplicación son necesarios algunos datos de sesión relacionados al entorno de la empresa, los cuales son extraídos dentro del token entregado en las peticiones que se realizan desde el marco; desde allí, entre otras, se obtiene el NIT de la empresa correspondiente al entorno en el que está el usuario. Este dato es usado para validar que las peticiones se realicen al entorno correcto según las configuraciones creadas en la base de datos contenedora.

Análisis: Si bien la aplicación ya cuenta con la lógica necesaria para buscar el NIT de la empresa en caso de que este no se encuentre dentro de los datos de sesión, esta cuenta con un error debido a una condición incorrecta relacionada a uno de los parámetros recibidos.

Solución: A fin de corregir este problema y evitar inconvenientes con las peticiones realizadas al api, se requiere alterar el método ObtenerNitEmpresa de la clase LectorConfigDatosSesionWebApi eliminando el parámetro de configuración idBaseDatos y actualizando la consulta.

Nuevas funcionalidades

Añadir dígito de verificación de emisor en la generación de XML de facturas en envió directo en el proceso de habilitación

Definición: En la estructura XML que se debe enviar a la DIAN, existe una etiqueta llamada ProviderID que contiene información relacionada tanto al emisor del documento electrónico como a la DIAN.

Alcance: Durante la etapa de desarrollo y pruebas se detectó que en el subtag schemeID era necesario enviar el digito de verificación correspondiente a la DIAN o de lo contrario se obtendría una regla de rechazo, sin embargo, la DIAN realizo una modificación/corrección para que ahora se deba enviar el digito de verificación del emisor del documento que esté acorde con lo enviado en el subtag value.

Adición de lectura de propiedades para carga de certificado digital

Definición: Debido a que existen varias entidades que pueden emitir los certificados digitales, aún no se tiene completa certeza de que exista un estándar respecto a la etiqueta/tag dentro del certificado digital, que acredite/identifique al dueño del certificado.

Alcance: Alterar la clase de dominio CertificadoDigital para que en caso de que la etiqueta SerialNumber no contenga el NIT de empresa para la que se está cargando el certificado, se revise en dos propiedades anteriores a la etiqueta SerialNumber si allí se encuentra este valor. En caso de no encontrar el NIT seleccionado en ninguna de estas 3 posiciones, la clase deberá seguir arrojando una excepción, impidiendo la carga del certificado digital.

Mejora en el control de errores para la habilitación propia

Definición: Existen escenarios en los que el proceso de habilitación puede generar errores causados por problemas en el certificado digital u otras causas. En estos casos la DIAN entregará un mensaje de respuesta que no tendrá relacionado un código de ZIP, ya que este nunca se generó; y, en su lugar, tendrá uno o más mensajes de respuesta/error explicando el motivo por el cual no se pudo realizar la petición de habilitación.

Alcance: Se añade un control visual en la página de habilitación que maneje estos escenarios de error. En caso de recibir mensajes de error sin contar con un código ZIP, el proceso de reconsulta deberá detenerse y en su lugar se deberá mostrar un listado con los mensajes devueltos por la DIAN.

Modificación de fecha en actas o entradas al cambiar de estado de documentos

Definición: Se requiere modificar la fecha relacionada al acta/entrada cuando se realice la aceptación de un documento relacionado a la misma, remplazando la fecha de la factura que es el valor que se le asigna actualmente una vez hecha la asociación, por la fecha en que se realizó el cambio de estado.

Alcance: Se crea parámetro de configuración con el nombre ESTADOS_MODIFICACION_ENTRADASYACTAS, el cual determinará si la funcionalidad esta activa. Para ello, el parámetro deberá recibir los códigos de estado bajo los cuales se usará dicha lógica. El parámetro puede tener más de un estado como valor. El valor estará vacío como valor por defecto. En caso de que el parámetro cuente con un valor, el servicio de cambio de estados deberá ejecutar la lógica necesaria para actualizar el campo de fecha del acta/entrada relacionada al documento con la fecha en la que se realiza el cambio de estado. En caso de que se relacione un documento que ya este con un estado que se encuentre configurado del parámetro a un acta/entrada, se deberá usar la fecha del cambio de estado como valor de actualización y no la fecha del documento.

Omitir valores no numéricos en Cedula de emisor en generación de eventos

Definición: Dentro del XML enviado hacia la DIAN para la generación de eventos, se requieren los datos del usuario que está emitiendo el evento. Entre los datos necesarios, se encuentra la identificación/cédula relacionada al usuario. Este dato, al igual que otros usados dentro de la generación del XML, son tomados a partir de la estructura de datos ya existente dentro del ERP y gestionada por otros módulos. Debido a esto, existen escenarios en los que el valor de la cédula puede encontrarse registrado con caracteres adicionales a los numéricos, los cuales al ser usados de la manera en que fueron registrados pueden llegar a generar reglas de rechazo por parte de la DIAN, ya que esta recibe únicamente valores numéricos cuando se trata de la identificación/cédula de la persona emisora del evento.

Alcance: Se generar una función que únicamente tome los valores numéricos dentro de una cadena de caracteres recibida para ser usada en la asignación del dato de identificación de la persona emisora del evento en la generación del XML.

Evitar generación de eventos en entornos de replica

Definición: Al realizar el cambio de estados de un documento recibido dentro de un entorno de réplica, se debe evitar la generación de eventos Para ello, se debe añadir una validación dentro del método encargado de la generación de eventos.

Alcance: En caso de encontrarse en un entorno de réplica, la sección de consulta de datos y generación de eventos no se ejecutará y únicamente se realizará el cambio de estado al documento.

Se actualiza instructivo incluyendo las mejoras y nuevas funcionalidades


Was this article helpful?