Anuncio

Colapsar
No hay anuncio todavía.

Problema con funcion IN UPDATE TASK

Colapsar
X
 
  • Filtrar
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes

  • Problema con funcion IN UPDATE TASK

    Buenas, quería preguntar si a alguien alguna vez le paso o sabe como resolverlo,

    Tengo un EXIT (EXIT_SAPMM06E_013 ) para la creación/modificación de pedidos en ME21N/ME22N al momento de guardar.

    Dentro del EXIT llamo a una función CALL FUNCTION nombre IN UPDATE TASK

    la idea es que como esta en actualización, primero se hace el COMMIT estándar, se crea el pedido, se llama a la función, y dentro de esta se hacen ciertas validaciones y se llama a la BAPI_PO_CHANGE donde inserto una posición.

    La cuestión es que cuando hago que frene en la función de actualización con el debug, el documento se modifica correctamente. Pero si no hago que frene, solo guardo sin hacer debug, no funciona, parece como que a la función ni siquiera la llama.

    Alguna idea? Necesito ayuda urgente.

    Muchas gracias

  • #2
    Originalmente publicado por vladiusIII Ver Mensaje
    Buenas, quería preguntar si a alguien alguna vez le paso o sabe como resolverlo,

    Tengo un EXIT (EXIT_SAPMM06E_013 ) para la creación/modificación de pedidos en ME21N/ME22N al momento de guardar.

    Dentro del EXIT llamo a una función CALL FUNCTION nombre IN UPDATE TASK

    la idea es que como esta en actualización, primero se hace el COMMIT estándar, se crea el pedido, se llama a la función, y dentro de esta se hacen ciertas validaciones y se llama a la BAPI_PO_CHANGE donde inserto una posición.

    La cuestión es que cuando hago que frene en la función de actualización con el debug, el documento se modifica correctamente. Pero si no hago que frene, solo guardo sin hacer debug, no funciona, parece como que a la función ni siquiera la llama.

    Alguna idea? Necesito ayuda urgente.

    Muchas gracias
    Buenas.

    La función EXIT_SAPMM06E_013 viendo la ayuda se SAP:

    "You use user exit EXIT_SAPMM06E_013 for updating customer-specific data in the purchasing document. The exit is called when posting the document before the COMMIT WORK. Data relevant for document update is transferred. In some tables transferred via the interface of function module (XEKPO, XEKET), the purchasing document number (EBELN) is possibly not filled. This is not a program error. The determination of the document number only occurs after the creation .

    Es decir, algunos datos están rellenados en tablas internas y otros no y el documento todavía no esta en la BBDD en el momento de la creación.

    Bien, eso significa que el commit estándar que se produce, el que comentas, no es el commit esperado o que incluso lo hace el depurador cuando depuras para no perder la sesión; por lo tanto no tiene sentido aquí hacer la bapi BAPI_PO_CHANGE porque todavía no esta totalmente el pedido en la base de datos.

    Una vez leída la documentación de SAP y al probar incluso que los cambios no se producen, deberíamos probar otra cosa, si se opta por esta exit:


    xekpo = " uekpo Item Table (New)
    yekpo = " uekpo Item Table (Old)


    Probar a modificar la tabla interna XEKPO para ver que cambios se producen y cuales no.

    Saludos.

    Comentario

    Trabajando...
    X