Ayuda SAP

Mensaje de error en pestaña condiciones de va02

Hola mastersaps

Aqui de nuevo con una duda, tengo el siguiente requerimiento:

Mandar un mensaje de error en la pestaña (CONDICIONES), de la transacción va02 al modificar un pedido, Yo coloque el mensaje en la subrutina FV64A011 donde tiene una fórmula donde si la utilidad es negativa me manda el mensaje de error pero el mensaje aparece en la barra de estado desde que ingreso y el usuario quiere que aparezca hasta que el ingrese una cantidad.
Busqué en la WEB y dice que debo entrar al programa SAPMV45V al include MV45AFZZ Y Buscar el USER EXIT de esa pestaña y ahí colocar el mensaje. Ustedes que opinan amigos???
Espero haya quedado claro…
Sludos

Hola,

Yo personalmente coincido con lo que encontraste en la WEB. Ese programa/include es en general en donde más se colocan validaciones para la creación/modificacion de pedidos de ventas.

Saludos

1 me gusta

@Ulises, me parece que es correcto lo que ya tienes, en mi caso coloque una validación parecida pero el mensaje lo muestro al momento que el usuario graba.

Considera crear una tabla “Z” donde puedas colocar los usuarios con permisos para vender sin utilidad por que siempre existen ventas con excepciones y si tu código no lo contempla te mentes en problemas; No estaría mal que también evaluaras tener una tabla de mantenimiento para definir que sociedades y las clases de pedidos que entraran bajo esta validación.

Nota: considera validar ventas con utilidad en negativo, así como ventas bajo que estén bajo el costo.

bueno espero te sea util la información.

Saludos.

Include: MV45AFZZ
EXIT: USEREXIT_SAVE_DOCUMENT_PREPARE

1 me gusta

Efectivamente no puedes poner el código en la rutina form, ya que esta “se activa” solo al crear pedido de ventas, ahora bien dentro del include MV45AFZZ, tienes varios exit donde alojar la validación, tienes que probar poniendo un break-point. para chequear los valores cambiados chequea las tablas xvbap (valores nuevos) e yvbap (valores antiguos), además fijate en el campo xvbap-updkz y comparalo con la constante updkz_update (esta ya existe y tiene valor U, que SAP identifica cuando modificas una posición).

los exit que podrian contener la validación:
userexit_pricing_prepare_tkomk.
userexit_pricing_prepare_tkomp.
userexit_save_document.

te dejo también los valores posibles del campo xvbap-updkz.

1 me gusta

quiero debbugear pero me sale un mensaje de “el programa marco no es un reporte online” a que se debe?

Por el error que dices, debes estar intentando ejecutar un include.

¿Puede ser que hayas puesto código en una exit y estés intentando ejecutar eso?

Para debuguear eso, debes poner el break en tu exit, y despues ejecutar la VA02 o la que sea, con el caso de prueba.

Saludos.

2 Me gusta

Excelente gracias por tu respuesta @sconoredhot voy a continuar con eso.
saludos

1 me gusta

Hola amigos gurus, estaba probando colocar los break-points en los user-exit y cuando me voy a la transacción va02 y doy click en la pestaña de condiciones me manda a la pantlla de debbug y aparece el userexit_pricing_prepare_tkomk. Me imagino que en este user-exit debo meter el mensaje que quiero que aparezca cuando la utilidad sea negativa? como ven ustedes

Este tema se cerró automáticamente 91 días después del último post. No se permiten nuevas respuestas.