Estimados, necesito saber si existe algún reporte en SAP B1 versión 9.2 PL04 que contenga la siguiente información:
1.- Fecha, valor y cantidad Compra de cada articulo.
2.- PPP generado después de cada compra.
De no existir un reporte indicar que tablas son las que se deben involucrar.
Las cosas han cambiado enormemente aquí, no leo el por favor, tal parece el requerimiento de un usuario para el que estas trabajando, esos son muy malos modales.
No existe un reporte con las características que comentas, ya verificaste el análisis de compras o el informe de últimos precios de compra ?
Para generar un reporte a la medida puedes involucrar varias tablas, dependerá desde donde quieres partir, desde la solicitud, la entrada, la factura de proveedor, es necesario analizar a que detalle necesitas el reporte, necesitas la fecha de la entrada, la fecha del pedido, etc.
Las tablas que pudieras involucrar son: OPOR y POR1 pedido, factura de proveedor OPCH y PCH1 para pagos efectuados la tabla es OVPM, para entrada de mercancía OPDN y PDN1.
Al habilitar información del sistema (en la opción visualizar ) y pasar el cursor por el documento en la parte baja encontrarás la información de la tabla
Estimado, reporte “análisis de compra” no muestra la información que se requiere, en cuanto al informe “Último informe de compra” no lo encontré en el modulo de compra.
Podrías ayudar con el nombre de campo de la tabla en la cual se informan los siguientes datos;
valor PPP y Fecha, valor y cantidad Compra de cada articulo.
Ultimo informe de compra lo encuentras en informes de inventario, se llama “Informe de últimos precios” ahí puedes tildar el documento del que necesites el ultimo precio y podrás elegir por número de articulo.
Ahora bien, sobre la tabla y campos, no puedo decirte exactamente que tabla y que campos porque tu requerimiento no está bien planteado, como te comenté, puedes tomar la fecha de la solicitud de compra, la del pedido, la de la entrada factura de proveedor, y lo mismo pasa para los demás campos que haces mención.
Al habilitar la opción que te comenté
y pasar el cursor por el documento
en la parte baja encontrarás el nombre del campo y el nombre de la tabla, en la imagen del lado izquierdo están los documentos de compra, la primera cuestión es desde que documento parte tu reporte ? de esta manera podrás generar un Query con la información que te solicitan.
Estimado, el informa de ultimo precio en modulo de inventarios esta relacionado con la venta, el precio que necesito es de compra ya que la idea es realizar un proceso de corrección monetaria.
Esta consulta te dará el ultimo precio de compra por articulo y fecha, espero te sirva
SELECT T0.[ItemCode], T0.[Dscription], T0.[Quantity],
T0.[Price], T0.[Currency], T0.[ShipDate], T0.[Rate], T0.[DocDate],
T0.[WhsCode] FROM PDN1 T0 INNER JOIN OPDN T1 ON T0.DocEntry = T1.DocEntry
WHERE T0.[ItemCode] = [%0] and T0.[DocDate] between [%1] and [%2] ORDER BY T0.[ItemCode], T0.[DocDate]
Estimado, por su puesto, adjunto query la que retorna el valor PPP por ItemCode.
Nota: Aún estoy en proceso de validar los resultados, si detectas algo me avisas, esta consulta retorna
select distinct
T2.[ItemCode],
T2.[ItemName],
T1.[WhsCode],
T1.WhsName,
isnull(sum(T6.Saldo),0) [Stock],
(case sum(T7.TransValue) when 0 then 1 else sum(T7.TransValue) end)/(case sum(T7.Saldo) when 0 then 1 else sum(T7.Saldo) end) [PMP], sum(T6.Saldo)*((case sum(T7.TransValue) when 0 then 1 else sum(T7.TransValue) end)/(case sum(T7.Saldo) when 0 then 1 else sum(T7.Saldo) end)) [Valorizado]
from OITM T2
inner JOIN OITW T0 ON T0.ItemCode=T2.ItemCode
inner JOIN OWHS T1 ON T1.WhsCode=T0.WhsCode
left join (
select A0.ItemCode, A0.Warehouse, (A0.InQty-A0.OutQty) [Saldo], A0.TransValue
from OINM A0
where A0.DocDate<=@date
) T6 on T6.ItemCode=T0.ItemCode and T6.Warehouse=T0.WhsCode
left join (
select A1.ItemCode, sum(A1.InQty-A1.OutQty) [Saldo], sum(A1.TransValue) [TransValue]
from OINM A1
where A1.DocDate<=@date
group by A1.ItemCode
) T7 on T7.ItemCode=T0.ItemCode and T7.ItemCode=T6.ItemCode
group by T2.[ItemCode], T2.[ItemName], T1.[WhsCode], T1.WhsName
having sum(T6.Saldo)<>0
order by 1,3