Avalados por :

Obtención de trazabilidad de OC: Pedido, Entrada de Mercadería, Entrega de Precio y Factura

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 7 Vistas
0
Cargando...

Estimados

La idea de la creación de esta consulta es obtener la trazabilidad completa de la OC, ya sea abierta, cerrada o cancelada, para verificar si se realizó la entrada de mercadería, el precio de entrega o si se facturó.

Las tablas que se deben ocupar son:

Pedido (OPOR - POR1)

Entrada de Mercadería (OPDN - PDN1)

Entrega de Precio (OIPF - IPF1)

Factura (OPCH - PCH1)

Debería quedar de esta forma, realmente he realizado muchas pruebas pero no he obtenido un resultado óptimo, agradezco su ayuda.

OPOR.DocNum OPOR.DocDate OPOR.NumAtCard OPOR.CardName OPOR.DocTotal OPOR.DocCur OPDN.DocNum OPDN.DocDate OPDN.NumAtCard OPDN.CardName OPDN.DocCur OPDN.DocTotal OIPF.DocNum OIPF.DocNum OIPF.DocTotal
N° OC Fecha OC Referencia Nombre Proveedor Total monto OC Moneda Entrada de mercadería Fecha de entrada Referencia Nombre Proveedor Moneda Total monto OC Precio de entrega Fecha precio de entrega Total monto Precio de Entrega

Atte.

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Manuel - Samuel

Gracias por su ayuda logré conectar las tablas y crear la trazabilidad, dejo aquí el código creado.

SELECT

T0.[Docnum] AS 'Número de Pedido',

T0.[Docdate] AS 'Fecha documento de Pedido',

T0.[NumAtCard] AS 'Referencia de Pedido',

T0.[Cardcode] AS 'Código de Cliente/Proveedor',

T0.[Cardname] AS 'Nombre Proveedor',

T0.[DocTotal] AS 'Total de Pedido',

T1.[ItemCode] AS 'Número de Artículo',

T1.[Quantity] AS 'Cantidad Solicitada',

T1.[OpenCreQty] AS 'Cantidad Pendiente OC',

T2.OpenCreQty 'Cantidad Pendiente de Factura',

Case

When T2.[Linestatus] = 'O'

Then 'Abierta' when T2.[Linestatus] = 'C'

Then 'Completa' else 'Eliminada' end ,

T3.[DocNum] AS 'Número Entrada de mercancías',

T3.[DocDate] AS 'Fecha Entrada de mercancías',

T5.[Docnum] AS 'Número Interno de Factura',

T5.[FolioNum] AS 'Número de Folio de Factura',

T7.[Docnum] AS 'Número de Precio de Entrega',

T7.[DocDate] AS 'Fecha de Precio de Entrega',

T7.[DocCur] AS 'Moneda de Precio de Entrega',

T7.[DocTotal] AS 'Total de Precio de Entrega'

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 and t2.baseline=t1.linenum

left join opdn t3 on t2.docentry=t3.docentry

left join pch1 t4 on t4.baseentry=t2.docentry and t4.basetype=20 and t4.baseline=t2.linenum

left join opch t5 on t4.docentry=t5.docentry

left join ipf1 t6 on t6.baseentry=t2.docentry and t6.basetype=20 and t6.linenum=t2.linenum

left join oipf t7 on t6.docentry=t7.docentry

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Hola Jose

Estuve revisando tu pregunta y me gustaría responderla porque también tengo un problema similar. SAP me está mostrando un error en la línea 47 y este es el mensaje de error:

1). [SAP AG][LIBODBCHDB DLL][HDBODBC] Error general; 260 nombre de columna no válido: T0.DOCENTRY: línea 47 col 36 '' (ECM2) (en la posición 945)

Y esta es la línea donde se produce el error:

from opor t0 inner join por1 t1 on t0.docentry=t1.docentry

¿Podrías ayudarme?

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Manuel, gracias por tu ayuda. Voy a ejecutarla y te comentaré cómo resultó.

Atentamente,

José Miguel I.C.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

José Miguel:

Aquí tienes una consulta que puede servir como guía, solo necesitas agregar la tabla de precios de entrega (OIPF e IPF1).

----------------------------------------------------x---------------------------------------------------------

SELECT

T0.[Docnum] AS 'Pedido',

T0.[Docdate] AS 'Fechadoc',

T0.NumAtCard,

T0.[Cardcode] ,

T0.[Cardname] AS 'Proveedor',

T1.[ItemCode] AS 'Artículo',

T1.[Dscription] AS 'Descripción',

T1.Quantity as 'Cantidad Solicitada',

T1.OpenCreQty 'Cantidad Pendiente OC',

Case when T2.[Linestatus] = 'O' Then 'Abierta' when T2.[Linestatus] = 'C' then 'Completa' else 'Eliminada' end ,

T3.[DocNum] AS 'Entrada de mercancías',

T2.OpenCreQty 'Cantidad Pendiente de Factura',

T5.[Docnum] AS 'Número Interno Factura',

T5.FolioNum 'Folio Factura'

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 and t2.baseline=t1.linenum

left join opdn t3 on t2.docentry=t3.docentry

left join pch1 t4 on t4.baseentry=t2.docentry and t4.basetype=20 and t4.baseline=t2.linenum

left join opch t5 on t4.docentry=t5.docentry

Left join OITM T6 on T1.ItemCode = T6.ItemCode

WHERE T6.[ItmsGrpCod]= 106 --- PUEDES FILTRAR POR OTRO CRITERIO AQUÍ

-----------------------------------------------------------X---------------------------------------------

Espero haber sido de ayuda.

Saludos cordiales,

Manuel Díaz G.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?