Query Manager Entrada con Factura

Buenas tardes compañeros, quería pedirles si me podrían ayudar a armar un query que vincule las siguientes tablas.
pdn1: Pedido de entrada de mercancías - Filas
opdn: Pedido de entrada de mercancías
pch1: Factura de acreedor: Líneas
opch: Factura de proveedores

Lo que quiero es ver cual es la cuenta contable que vincula la entrada con la factura dado que cuando consulto el asiento contable de la factura, se da de baja la cuenta de dotación y no se observa a que cuenta fue imputada. Para ello necesito ir y consultar el asiento contable de la entrada.

He visto varios temas relacionados, pero no he llegado al resultado esperado.

Cualquier duda me avisan.

Muchas gracias, saludos

Hola @Leandro_Barze

Siempre la tabla detalle y cabecera se ligan con el DocEntry. es decir:
PDN1 Y OPDN, se ligan con el DocEntry.
PCH1 Y OPCH, se ligan con el DocEntry.

¿Como ligar un documento con su documento origen?, esta relacion solo esta a nivel linea, es decir en el documento destino OPCH, a nivel linea PCH1 existen los campos BaseEntry y BaseType, los cuales corresponden al Documento Origen OPDN.

Ejemplo:
PCH1.BaseEntry = OPDN.DocEntry
PCH1.ObjetType = OPDN.ObjectType

Si lo unico que necesitas es reportear las cuentas, con esa relacion deberia de bastarte para obtener dicha informacion, ahora bien si lo que quieres ver, es el movimiento contable tanto del inventario como el del saldo del proveedor, en el mismo documento entonces omite el crear la entrega y crea directamente la factura, de este modo tendras todos esos movimientos contables en un solo documento.

Saludos

1 me gusta

añade relaciones a OJDT y JDT1 por el campo TransId ,TransType y BaseRef en las tablas de entrada y factura, ya con esa relacion puedes listar JDT1 Account, Debit y Credit

1 me gusta

El que llegue a confeccionar es el siguiente, y está bastante aproximado a lo que deseo:

SELECT 
T0."DocNum" as "nro Pedido"
, T2."DocEntry"
, T3."DocNum"
, T3."TransId" as "nro Op entrada"
, T5."TransId" as "nro Op Fc"
, T4."DocEntry"
, T5."CardCode"
, T5."CardName"
, T4."AcctCode"
, T4."ItemCode"
, T4."ItemCode"
,  T2."AcctCode" 

FROM 
opor t0
inner join por1 t1 on T0."DocEntry" = T1."DocEntry" 
left join pdn1 t2 on t2."BaseEntry" = t1."DocEntry" and t2."BaseType" = 22 
left join opdn t3 on t2."DocEntry" = t3."DocEntry"
left join pch1 t4 on t4."BaseEntry" = t2."DocEntry" and t4."BaseType"= 20
left join opch t5 on t4."DocEntry" = t5."DocEntry" 

WHERE 
T0."DocDate" >=[%0] AND  T0."DocDate" <=[%1] 
AND
T4."AcctCode" Like '%%2.1.010.30.001%%' 
AND 
T4."ItemCode" =  T2."ItemCode"

Con este query me sirve más para cuando se produce la entrada y luego la factura.
Para cuando se hace primero la factura de reserva y luego la entrada, tendria que cambiar la relación, no?

Asi es, lo que podrias hacer, es, a este query le puedes agregar la condicion de que la opch sea factura normal… y luego haces un UNION con otro query al reves donde tomes primero la factura y luego le relaciones la entrada, para las de reserva, y de igual manera en el where le pones la condicion que este otro query solo aplique para facturas de reserva.

En la tabla OPCH tiene un campo que te indica si es factura normal o factura de reserva, si no me equivoco se llama “IsIns” o algo asi…

Intentalo de esa manera tal vez si te funcione. :wink:

2 Me gusta

Este tema se cerró automáticamente 30 días después de la última publicación. No se permiten nuevas respuestas.