viernes, 9 de noviembre de 2012

BADI ME51N Informar elemento PEP (Imputación) automaticamente de una solicitud de compras


Implementamos por la SE18-SE19 la BADI ME_PROCESS_REQ_CUST (Transacción ME51N)

BADI: ME_PROCESS_REQ_CUST    -> se18 -->Nre.BADI

***************************
* IF_EX_ME_PROCESS_REQ_CUST~PROCESS_ACCOUNT
***************************
METHOD if_ex_me_process_req_cust~process_account.
*Al realizar una solicitud de pedido la cual el tipo de imputación se “A” (Activo) [EBAN-KNTTP] y en la cual se
*indique un código de activo, si este activo tiene asociado un elemento PEP se rellenerá automáticamente en el campo de la solicitud de pedido.
*En caso que el activo no tenga asociado un elemento PEP, el campo de la solicitud referente al
*elemento PEP quedara vacio. Permitiendo continuar con la solicitud
  DATA: re_data TYPE exkn.
  CHECK im_count <= 1.
* obtenemos los datos de imputacion
  CALL METHOD im_account_ref->get_data
    RECEIVING
      re_data = re_data.
* si viene el nº de activo y no ha informado el elemento PEP, nosotros le informamos
* el del maestro de activos
  IF re_data-ps_psp_pnr IS INITIAL AND
     re_data-anln1      IS NOT INITIAL.
    SELECT SINGLE posnr INTO re_data-ps_psp_pnr
     FROM  anla CLIENT SPECIFIED
           WHERE  mandt  = sy-mandt
           AND    anln1  = re_data-anln1.
    IF sy-subrc IS INITIAL AND
       re_data-ps_psp_pnr IS NOT INITIAL.
      CALL METHOD im_account->set_exkn( re_data ).
    ENDIF.
  ENDIF.
ENDMETHOD.

1 comentario:

  1. Interesante post, sabes que en mi caso lo que necesito mostrar a partir del numero de activo es la descripcion del activo fijo en automatico en el campo de texto de material en cada una de las posiciones del pedido

    ResponderEliminar