Valiación Archivos XML SAP B1

Estimados,

Quiero hacer una consulta pero primero les platico un poco que aca en México existe una situación donde a todas las empresas al momento de facturar se les pide entregar un PDF de la factura y un archivo xml con toda la información de la misma. De igual manera todas las facturas de proveedores que nos llegan se deben cargar junto con su archivo xml en el sistema SAP B1, para eso existe un Addon llamado de “Facturación Electrónica” con el cual cargamos dichos archivos.

Lo que pretendo hacer es un querry para saber qué facturas de proveedores ya tienen cargado su archivo xml y cuales no. La consulta que he desarrollado hasta el momento es la siguiente:

SELECT T1.DocNum Documento, T1.[DocDate] FechaContable, T1.[CardCode] Código, T1.[CardName] Nombre, T1.[PaidSum], T1.[DocTotal], T1.[CANCELED], T1.[Comments], T1.[FolioNum] NumFactura, T1.[LicTradNum] RFC, T2.[U_UUID] ArchivoXML FROM [dbo].[OPCH]  T1 INNER JOIN  [dbo].[@YTA_CEF_CPZ1]  T2 ON T1.[LicTradNum] = T2.[U_RFC] WHERE T1.[DocDate] Between '[%0]' and '[%1]'

Sin embargo este código me esta causando duplicidades por línea y por número de factura, eso provoca que la información no sea veraz y que creca exponencialmente, les dejo una imagen

En estricta teoría la información anterior debería ser solo de una línea y con un solo archivo xml pero no es así. Si alguien tiene alguna solución o sugerencia, les agradecere bastante.

Saludos
JJG

Julio,

En Chile lo que comentas ya esta en practica, hoy los contribuyentes o empresas estamos obligados a trabajar con factura electrónica por lo cual una de las obligaciones tributarias para poder utilizar el crédito de las facturas de compra, es poseer en la casilla del receptor del documento el XML y la aceptación electrónica de la mercadería (sin la aceptación no se puede aprovechar el crédito del documento). El problema que te aparece a mi en lo personal se me da en algunas consultas de facturas de compra cuando quiero mas informacion de la que aparece en el L° de compras, ej. los artículos por cada factura y el error en mi caso se da en cuando estoy formando la consulta en la pestaña de “relación de tablas”, tienen chek tablas que no tienen relación alguna y en esos caso se me repite por linea muchas veces la información de una factura.

Revisa la relación de tablas y seguimos conversando el tema.

1 me gusta

@dcalderon

He buscado la relación entre las tablas de la consulta y observo que excepto por el RFC (Registro Federal de Contribuyentes) y el nombre del proveedor no hay ningun otra. Las tablas que use para este querry son las siguientes “OPCH” y “@YTA_CEF_CPZ1

Saludos

@julio.jmz Bueen día. También estoy en México, y lo que te puedo comentar, es que donde estoy se realizó una implementación con Consultoria para ver esos, temas. Sin embargo, te pudo comentar que igual y pudieras considerar el número de Referencia para tu relación.
Saludos,
@Yshua

1 me gusta

Julio Buenas tardes, también estoy en México pero no estamos utilizando un Addon, para que te salga un renglón por línea debes tener una relación entre el número de factura de ambas tablas. Entiendo que de alguna manera la tabla OPCH contiene las facturas de proveedores y la tabla del addon es la @YTA_CEF_CPZ1 por lo que entiendo, de ser así creo que se podría complementar la relación entre las tablas mas o menos de la siguiente manera:

INNER JOIN [dbo].[@YTA_CEF_CPZ1] T2 ON T1.[LicTradNum] = T2.[U_RFC] AND T1.DocEntry = T2.DocEntry

dependiendo de tu version de Business One puede o no contener un campo natural para guardar el número de folio fiscal, este campo podría ser util también para enlazar las factura en una relación 1 a 1.
(para contar con el folio fiscal de los documentos electrónicos y el contenido en la tabla de usuario generada por el addon), en caso de que no exista el campo podrías generarlo como campo definido por el usuario e irlo llenando de preferencia desde el addon para que sea automático,
Espero te ayude en algo. Por otro lado ¿Qué Addon tienen? me interesa conocer sus alcances.
Saludos

1 me gusta

Hola Julio,

Si de manera nativa importas el XML en el sistema es decir click derecho e importar documento electronico antes de crear el documento:

o de manera manual lo ingresas en este campo:

Puedes utilizar la siguiente consulta:

SELECT T0.[DocNum], T0.[DocEntry], T0.[CANCELED], T0.[DocDate], T0.[CardCode], T0.[CardName], T0.[DocTotal], T0.[EDocNum] FROM OPCH T0

La cual me mostro la siguiente información:

Espero te sirva!

Saludos

1 me gusta

@Christian_Ant agradezco tus observaciones, intente correr el querry con el campo DocEntry sin embargo no existe el mismo en la tabla para del addon, habra que crearlo para tener la relación 1 a 1 que mencionas.

El addon que utilizamos es el siguiente

1 me gusta

muchas gracias Julio, hay otro campo con el que puedas hacer el enlace? Docnum por ejemplo, Saludos!!

Tampoco existe la relación 1 a 1 para las tablas con ese campo :pensive:

Saludos

Hola Julio,

Lo que entiendo de tu consulta es que tienes un AddOn desarrollado por Yotta Solutions que te permite recibir los XML de tus proveedores, por el nombre del post “Validacion Archivos XML SAP B1” me imagino que este addon hace una llamada al WS del SAT para validarlos.

En la consulta que compartes se ve que relacionas la tabla OPCH con @YTA_CEF_CPZ1 en base al RFC y los filtras por un rango de fechas, esta relación no te va a funcionar.

Si deseas listar los documentos de proveedores que no tengan una CFDI asigando puedes usar la que compartio karen.massh aplicando un filtro de valores nulos o vacios al campo EDocNum.

O tambien puedes identificar cuales son los campos que relacionan con la tabla de addon y camibiar la reclacion que tienes de RFC.

Sin mas información de tu addon es la aqyuda que puedo compartir.

Saludos,
Alerjandro Castrejón

Este tema se cerró automáticamente 91 días después del último post. No se permiten nuevas respuestas.