Estimados,
Estoy teniendo el siguiente problema y ya no se como resolverlo!
Necesito hacer reasignacion de materiales entre pedidos, para ellos se realizo un desarrollo donde se listan todos los materiales de un cliente especificado de los pedidos actualmente abiertos y se permite reasignarlos a otros clientes.
Para ellos, primero se realiza una reasignacion de almacenes para dicho material, pasandolo del almacen del cliente origen al cliente destino con la
BAPI_GOODSMVT_CREATE, donde se confirma en la MCHB que efectivamente se cambio de almacen el lote junto con el stock y se verifica tambien su creacion en la MARD.
Posteriormente (en el mismo desarrollo), se llama a la bapi BAPI_QUOTATION_CREATEFROMDATA2 (si se trata de una oferta nueva que se irá a crear) o a la BAPI_SALESORDER_CREATEFROMDAT2 (si se trata de un nuevo pedido).
El problema es el siguiente: SI MATERIAL + CENTRO + ALMACEN existia previamente en MARD, la bapi da el ok y procede a crear un nuevo documento con el/los materiales a reasignar.
Si no existia previamente y la bapi BAPI_GOODSMVT_CREATE lo crea, (en el debug se verifica que efectivamente se creo la entrada en la MARD), la BAPI
BAPI_QUOTATION_CREATEFROMDATA2 o a la BAPI_SALESORDER_CREATEFROMDAT2 me dan el error "V 392 el material &1 no existe en el deposito &2 del centro &3.
Pero si salgo del desarrollo y la intento mover de nuevo, lo hace. Estimo que es un problema de sincronismo, pero no importa cuando tiempo espere en el debug, o si vuelvo a llamar a la bapi en el desarrollo cuando ocurre eso, en la MISMA SESION, no va a funcionar. SOLO funciona cuando salgo del desarrollo y entro de nuevo e intento redireccionar el material.
Muchas gracias,
Juan Pablo