miércoles, 20 de enero de 2016

BADI ME_PURCHDOC_POSTED para Pedidos de Compra

En este post vamos a ver otra BADI a la que podemos recurrir para incluir nuestra lógica dentro del proceso de creación o modificación de un pedido de compras (ME21N, ME22N, ME22N ). Se trata de la BADI ME_PURCHDOC_POSTED.

Para los que queráis implementar la BADI y no sabéis como, os remito al anterior post donde explicamos los pasos a seguir con el ejemplo de la BADI PROCESS_PO_CUST:


Volviendo a nuestra BADI, diremos que solo dispone  de un único método (POSTED) que se dispara cuando se ha genera el documento del pedido de compra tras grabar.


Digamos que en este punto sabemos ya, por ejemplo, si estamos creando el pedido, el numero de pedido de compras que nos va a devolver el sistema. Si ponemos un break-point en el método y creamos un pedido de compras, podremos ver que por ejemplo en la tabla interna IM_EKKO ya aparece el numero de pedido de compra que ha generado el sistema.


Si revisamos los parámetros que tiene el método nos llevaremos una agradable sorpresa. Tenemos disponible toda la información del pedido, pero ademas, tenemos todas las tablas internas desdobladas con una versión "OLD". ¿Esto que quiere decir? Pues por ejemplo, podremos saber si nos han modificado un campo en concreto durante la modificación de un pedido. Imaginaros que si detectamos que el usuario modifica el precio de alguna de las lineas automáticamente el sistema debe enviar un mail al responsable de compras para que lo revise. Sin duda esta sería nuestra BADI.


Desde luego que es una BADI muy potente que nos puede dar mucho juego. Muy recomendable conocerla y saber como poder sacarle partido.


No hay comentarios:

Publicar un comentario