cancel
Showing results for 
Search instead for 
Did you mean: 

RELACIONAR FACTURAS DE PROVEEDORES Y NOTAS DE CREDITO.

Former Member
0 Kudos

Saludos cordiales a todo el mundo, dare puntacion maxima a quien pueda ayudarme a resolver esto, necesito ver la manera de restar las notas de credito de proveedor a las facturas pero necesito que me las relacione y me muestren todas las facturas de proveedor ya sea que tenga o no su nota de credito para ello ya casi tengo mi query lista y casi cuadrada en montos respecto a la contabilidad usando lo siguiente

facturas

SELECT T0.[CardCode], T0.[CardName], T0.[DocNum], T0.[DocType], T0.[DocDate], T0.[DocDueDate], T0.[NumAtCard], T0.[DocTotal],T0.[PaidToDate], (T0.[DocTotal] -T0.[PaidToDate]) as Vigente ,T0.[CtlAccount] FROM OPCH T0 WHERE

T0.[CtlAccount] ='20101010001' or

T0.[CtlAccount] ='20101020001' or

T0.[CtlAccount] ='20101030001'

notas de crdito

SELECT T0.[CardCode], T0.[CardName], T0.[DocNum], T0.[DocType], T0.[DocDate], T0.[DocDueDate], T0.[NumAtCard], T0.[DocTotal], T0.[PaidToDate], (T0.[DocTotal] -T0.[PaidToDate]) as Adeudo ,T0.[CtlAccount] FROM ORPC T0 WHERE

T0.[CtlAccount] ='20101010001' or

T0.[CtlAccount] ='20101020001' or

T0.[CtlAccount] ='20101030001'

No se si estoy en lo correcto?

MUCHAS GRACIAS

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hola...

Una base para obtener lo que requieres podría ser el siguiente query:

SELECT T0.[DocNum], T0.[ObjType], T0.[DocDate], T0.[CardCode], T0.[CardName], T0.[DocTotal] FROM PCH1 T1 INNER JOIN OPCH T0 ON T0.DocEntry = T1.DocEntry INNER JOIN RPC1 T3 ON T3.BaseRef = T0.DocNum INNER JOIN ORPC T2 ON T2.DocEntry = T3.DocEntry
UNION
SELECT T2.[DocNum], T2.[ObjType], T2.[DocDate], T2.[CardCode], T2.[CardName], (T2.[DocTotal] * -1) FROM PCH1 T1 INNER JOIN OPCH T0 ON T0.DocEntry = T1.DocEntry INNER JOIN RPC1 T3 ON T3.BaseRef = T0.DocNum INNER JOIN ORPC T2 ON T2.DocEntry = T3.DocEntry

Lo que hace es mostrar los importes tanto de facturas de compras como de Notas de Crédito, unas en positivo y las otras en negativo, de modo que puedas en la ventana de querys obtener la suma, o en su defecto en un layout, calcular el mismo.

Espero te sea de ayuda

Saludos Cordiales,

Former Member
0 Kudos

Lo que entrega Paul, sirve siempre que cada nota de credito este relacionada con una factura. Si no lo estan entonces no te la entregará.

Es decir el resultado de esa consulta te entregara, sólo aquellas facturas que tengas asociada una nota de credito.

Sin embargo encuentro un problema en esta consulta, pues si tienes una factura con varias lineas, entonces duplicará la información del valor ya que lo esta sacando de la cabecera.

Corregiria de la siguiente forma.


SELECT DISTINCT T0.[DocNum], T0.[ObjType], T0.[DocDate], T0.[CardCode], T0.[CardName]
	, T0.[DocTotal] 'Valor Facturado'
	, T2.[DocTotal]*-1 'Valor NC'
	, (T0.[DocTotal] + T2.[DocTotal]*-1) 'Valor Adeudado'
FROM OPCH T0
	INNER JOIN PCH1 T1 ON T0.DocEntry = T1.DocEntry 
	LEFT OUTER JOIN RPC1 T3 ON T3.BaseEntry= T1.DocEntry AND T3.BaseLine=T1.LineNum
	LEFT OUTER JOIN ORPC T2 ON T2.DocEntry = T3.DocEntry

Ahora esta consulta debe mostrarte cada monto facturado con su monto en nota de credito y la diferencia entre ellos.

slds.

Former Member
0 Kudos

GRACIAS POR LA AYUDA!!! A TODOS CREO QUE YA LOGRE HACER ALGO MAS O MENOS ASI, PERO AHORA CREO QUE TAMBIEN TENGO QUE DESCONTAR LOS PAGOS EFECTUADOS PERO EN ESE MOVIMIENTO SI NO SABBRIA COMO HACERLO.

SELECT T0.[CardCode], T0.[CardName], T0.[DocNum], T0.[FolioNum], T0.[DocType], T0.[DocDate], T0.[DocDueDate], T0.[NumAtCard], T0.[DocTotal], T0.[PaidToDate], (T0.[DocTotal] - T0.[PaidToDate]) as Vigente, T1.[Phone1], T0.[CtlAccount] FROM OPCH T0 INNER JOIN OCRD T1 ON T0.CardCode = T1.CardCode WHERE T0.[CtlAccount] ='20101010001' or

T0.[CtlAccount] ='20101020001' or

T0.[CtlAccount] ='20101030001'

UNION

SELECT T0.[CardCode], T0.[CardName], T0.[DocNum], T0.[FolioNum], T0.[DocType], T0.[DocDate], T0.[DocDueDate], T0.[NumAtCard], T0.[DocTotal], T0.[PaidToDate], (T0.[DocTotal]*-1 +T0.[PaidToDate]) as Vigente,T1.[Phone1], T0.[CtlAccount] FROM ORPC T0 INNER JOIN OCRD T1 ON T0.CardCode = T1.CardCode WHERE T0.[CtlAccount] ='20101010001' or

T0.[CtlAccount] ='20101020001' or

T0.[CtlAccount] ='20101030001'

LES DEJO LA CONSULTA PARA QUE LE DEN UN VISTASO Y VER SI E PUEDEN AYUDAR A RELACIONARLOS CONB LOS PAGOS

Former Member
0 Kudos

Para los pagos efectuados, es sólo agregar un UNION más con las tablas de pagos OPVM y PVM3 (detalle de factura).

slds.

Answers (2)

Answers (2)

Former Member
0 Kudos

pero como te decian si las facturas no son copiadas desde la factura sino hechas manualmente no podran salirte en el informe, además no siempre se devuelve la totalidad de la factura, asi que en eses caso si se tendra q tener en cuenta la tabla de ORIN

Former Member
0 Kudos

Amigo Guzman,

Tengo algunas preguntas

1.- cada nota de credito tiene como origen una factura, es decir estan relacionadas por SAP.

2.- Si no estan relacionadas, existe algun campo de usuario en la nota de credito, que te indique a que factura corresponde?

3.- este campo de usuario es a nivel de encabezado o detalle?

4.- Te propongo que ademas de la puntuación maxima ofrezcas algo en dinero, jajajaja sólo broma.

Former Member
0 Kudos

JAJAJA.... Gracias por tomarte tu tiempo para leer mi pregunta, respecto a tus dudas bueno es correcto hay Facturas de proveedor que si se les aplica directo la Nota de credito, y que si hay campo definidos por el suaurio que se empleen para relacionarllas, lamentablemente no lo tenemos ni a nivel detalle o encabezado.