Una consulta:
En mis documentos de ventas tengo un campo en el detalle para seleccionar de un listado una lista de precios (manejamos 9 listas diferente de precios), cada socio de negocio tiene su lista asignada.
Lo que se quiere:
Si mi cliente A, tiene asignada la lista de precios 4, el sistema deje utilizar de las 9 listas de precios, solo la 4, 6, 7… Cliente B tiene asignada la lista de precios 1, pueda utilizar de las 9 listas de precios solo la 1, 6, 9, 2.
en el SN solo te permite mapear 1 una lista de precios al realizar esto se debe configurar que el usuario no pueda actualizar el precio en el documento para que quede protegido los datos.
no creo que sea posible mediante una opción nativa de SAP .
Podrías utilizar la lista de precios mas alta por default y llegar al resultado de la otra mediante % de descuento o bien realizar algunas adecuaciones para que mediante una BF te traiga el precio de las listas que requieres
Gracias por responder, estaba pensando hacerlo por TN, pero aún no se como poner esas condicionantes, que al tener una lista de precio en el SN me deje crear el documento de venta con solo ciertas listas de precio.
el detalle aqui no es un candado ya que nativamente el SAP te permite bloquear la manipulacion del campo de precio , el problema es que solo te deja asignar una Lista de precios tendrias que analizar tu escenario lo mas factible a funcionarte sin que el usuario manipule datos seria una BF
Buenos días
Yo tengo un TN algo similar a lo que necesitas, quizás te pueda servir, se trata de que en la factura el usuario no pueda poner un precio diferente a las listas asignadas
IF @OBJECT_TYPE = '13' AND @TRANSACTION_TYPE='A'
BEGIN
IF EXISTS(
SELECT T1.docnum
FROM OINV T1 Inner join INV1 T2 on T2.DocEntry = T1.DocEntry
INNER JOIN ITM1 T3 on T3.ItemCode = T2.Itemcode and T3.PriceList ='2' and T3.PriceList ='4' and T3.PriceList ='5'--in (2, 4,5,6)
where t1.docentry = @list_of_cols_val_tab_del and T1.Series=4 AND T2.PriceBefDi <> T3.Price)
BEGIN
SELECT @ERROR='7',@ERROR_MESSAGE='Precio Diferente a la lista de Precios'
END
else
begin
IF EXISTS(
SELECT T1.docnum
FROM OINV T1 Inner join INV1 T2 on T2.DocEntry = T1.DocEntry
INNER JOIN ITM1 T3 on T3.ItemCode = T2.Itemcode and T3.PriceList='1' and T3.PriceList ='4' and T3.PriceList ='6'--in (1, 4, 5, 6)
where t1.docentry = @list_of_cols_val_tab_del and T1.Series=63 AND T2.PriceBefDi <> T3.Price)
BEGIN
SELECT @ERROR='8',@ERROR_MESSAGE='Precio Diferente a la lista de Precios'
END
end
end