Buenas Tardes Expertos estoy de nuevo en el foro para buscar solucion a un tema que me tiene quebrando la cabeza,
estoy realizando un reporte de rentenciones de impuestos y tengo el query definido, pero me esta dando el problema que se me repiten algunas registros los cuales no deseo porque me altera el cuadre de la presentacion del mismo, adjunto el query
SELECT T3.[AddID] AS 'RTN', T0.[CardCode] AS 'COD PROVEEDOR', T0.[CardName] AS 'NOMBRE PROVEEDOR', T0.[NumAtCard] AS 'NUMERO DE FACTURA', T0.[DocDate] AS ' FECHA FACTURA', T2.[TaxbleAmnt] AS 'BASE RETENCION', T0.[WTSum] AS 'IMPUESTO RETENIDO' FROM OPCH T0 INNER JOIN OVPM T1 ON T0.[ReceiptNum] = T1.[DocEntry] INNER JOIN VPM6 T2 ON T1.[DocEntry] = T2.[DocNum] INNER JOIN OCRD T3 ON T0.[CardCode] = T3.[CardCode] WHERE T2.[WTCode] =[%0] AND T0.[DocDate] >=[%1] AND T0.[DocDate] <=[%2] ORDER BY T0.[CardName]
he tratado de relacionar otros campos de las tablas ovpm y vpm6 ya que identifique que es alli donde comienzan a repetirse los registro, espero puedan su apoyo en este tema gracias
Para el reporte de retenciones si son de proveedores, los registros de retenciones los tienes en la tabla PCH5 la vinculas con PCH1 y OPCH y ya tienes tu reporte.
Lo que no entiendo es por que vas a las tablas vpm6 y ovpm, ahí están los pagos, pero si en un pago haces más de una factura entonces claro que se repiten los registros. Mas que repetirse, es que en el modelo de datos para obtener determinada información requiere mayor análisis y elaboración.
Buen dia Meqs,
te comento,
la tabla ovpm solo la utilizo para hacer match con la tabla vpm6, en la tabla vpm6 se encuentran los campos T2.[TaxbleAmnt] , en este campo se almacena la base de la retencion sobre la cual calculamos el 1%, y en la tabla OPCH hay un campo T0.[NumAtCard] donde la chica de pagos almacena el numero de factura fiscal entonces quiero enlazar este campo con este (T2.[TaxbleAmnt]
tiene que quedar de esta foma:
con la solución que me detallas esta muy bien así lo había realizado pero lo necesitan de la forma como te lo estoy planteando, la verdad estoy muy agradecido y si me aconsejas estaré atento
otra dato que quiero adicionar es que en la tabla vpm6 aparecen los pagos efectuados a retenciones y las fechas las cuales necesitare para parametrizar los mesese en que fueron canceladas o pagadas
la retención se define cuando se hace la factura, pero el reporte tiene que llevar las canceladas con el respectivo pago, osea ver la factura de la retención y con que pago se se realizo
Buenas tardes Meqs,
te quiero agradecer por el apoyo, te comento que ejecute el query con lo que me pide el departamento financiero, al momento de correrlo ellos me dicen que le hace faltan algunas retenciones pues me puse analizar y encontre el problema, = al momento de darle la parametrización de las fechas NO es con los campos de Fecha de la Factura (opch) sino con los Campos de Fecha de los Pagos (ovpm), trate de agregar la tabla y se me repiten los datos.
SELECT T2.[AddID], T1.[CardCode], T2.[CardName], T1.[NumAtCard], T1.[DocDate], T0.[TaxbleAmnt], T0.[WTAmnt] FROM PCH5 T0 INNER JOIN OPCH T1 ON T0.[AbsEntry] = T1.[DocEntry] INNER JOIN OCRD T2 ON T1.CardCode = T2.CardCode left join VPM2 T3 on T1.DocEntry=T3.DocEntry INNER JOIN OVPM T4 ON T1.[ReceiptNum] = T4.[DocEntry] WHERE T0.[WTCode] =[%0] and T4.[DocDate] >=[%1] and T4.[DocDate] <=[%2] ORDER BY T2.[CardName]
te comento que encontre la solucion, estoy muy agradecido por tu gran apoyo, comparto lo que me estaban solicitando por si otro colega se le presenta dicha Consulta,
saludos
SELECT T2.[AddID], T1.[CardCode], T2.[CardName], T1.[NumAtCard], T1.[DocDate], T0.[TaxbleAmnt], T0.[WTAmnt] FROM PCH5 T0 INNER JOIN OPCH T1 ON T0.[AbsEntry] = T1.[DocEntry] INNER JOIN OCRD T2 ON T1.[CardCode] = T2.[CardCode] INNER JOIN OVPM T3 ON T1.[ReceiptNum] = T3.[DocEntry] WHERE T0.[WTCode] = [%0] AND T3.[DocDate] >= [%1] AND T3.[DocDate] <=[%2] ORDER BY T2.[CardName]