Pedido con BAPI_PO_CREATE1 no recepciona

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • mekachu
    Member
    • abr
    • 52

    #1

    Pedido con BAPI_PO_CREATE1 no recepciona

    Hola a todos :

    He creado un programa que genera un pedido de compras con la BAPI_PO_CREATE1 y posteriormente hace un 101 con la BAPI_GOODSMVT_CREATE.

    El problema es que el pedido se crea bien, pero luego al hacer el 101 me dice que el pedido no contiene posiciones seleccionables y no me permite crear la entrada de mercancías.
    Sin embargo, si creo el pedido a mano si me permite hacer las entradas con mi programa.

    Supongo que me debe faltar algún parámetro en la bapi, pero no se me ocurre cuál puede ser.

    Adjunto la lista de parámetros que le paso.

    * Rellenar datos de cabecera
    e_cabecera-comp_code = '2100'.
    e_cabecera-doc_type = 'ZREV'.
    e_cabecera-purch_org = l_orgcompras. " '2120'.
    e_cabecera-pur_group = l_grcompras. " 'S06'.
    e_cabecera-vendor = l_vendor.
    * e_cabecera-ref_1 = xlikp-vbeln. "codigo de la entrega de salida

    e_cabecerax-comp_code = 'X'.
    e_cabecerax-doc_type = 'X'.
    e_cabecerax-purch_org = 'X'.
    e_cabecerax-pur_group = 'X'.
    e_cabecerax-vendor = 'X'.
    * e_cabecerax-ref_1 = 'X'.

    l_numpos = 10.

    * Rellenar poitem
    t_poitem-po_item = l_numpos.
    t_poitem-material = 'SERVICIO'.
    t_poitem-short_text = l_descripcion.
    t_poitem-plant = xlikp-vstel.
    * t_poitem-stge_loc = ''.
    t_poitem-quantity = '1'.
    t_poitem-acctasscat = 'Y'.
    t_poitem-net_price = l_precio.
    t_poitem-conf_ctrl = '0004'.

    t_poitemx-po_item = l_numpos.
    t_poitemx-material = 'X'.
    t_poitemx-short_text = 'X'.
    t_poitemx-plant = 'X'.
    * t_poitemx-stge_loc = 'X'.
    t_poitemx-quantity = 'X'.
    t_poitemx-acctasscat = 'X'.
    t_poitemx-net_price = 'X'.
    t_poitemx-conf_ctrl = 'X'.

    APPEND t_poitem.
    APPEND t_poitemx.

    * Rellenar poschedule
    t_schedule-po_item = l_numpos.
    t_schedule-delivery_date = xlikp-lfdat.

    t_schedulex-po_item = l_numpos.
    t_schedulex-delivery_date = 'X'.

    APPEND t_schedule.
    APPEND t_schedulex.

    * Rellenar el pocond
    t_pocond-itm_number = l_numpos.

    * t_pocondx-itm_number = l_numpos.

    *
    * append t_pocond.
    * append t_pocondx.

    t_poaccount-po_item = l_numpos.
    t_poaccount-quantity = '1'.
    t_poaccount-costcenter = ''.
    t_poaccount-gl_account = c_cuenta.

    APPEND t_poaccount.
    CLEAR t_poaccount.

    t_poaccountx-po_item = l_numpos.
    t_poaccountx-quantity = 'X'.
    t_poaccountx-costcenter = 'X'.
    t_poaccountx-gl_account = 'X'.


    APPEND t_poaccountx.
    CLEAR t_poaccountx.
  • El_Sapote
    Senior Member
    • may
    • 107

    #2
    Hacerle commit a la primera BAPI BAPI_PO_CREATE1
    y asegurarte que la compra no tenga activado confirmacion de entrega.


    Crea manualmente la P.O desde ME21N , despues intenta recepcionar con la Tx MIGO. Sucede el mismo error?

    En tu codigo en que momento llamas las BAPIS???. No olvides validar la tabla return de ambas, si trae datos es que hay un error.

    Saludos.
    Gracias a todos

    Comentario

    Trabajando...