Monday, February 16, 2015

Activate MIRO Reference Key (Xref3) - Using Substitution and BADI Techniques



A. Below is the step to activate the Reference Key in the  MIRO - Details screen.

1.  Create Implicit Enhancement in program LMR1MF6Q .
2.  Implement below code.
PERFORM modify_fi_subscreen TABLES t_acscr
                                USING  'XREF3'  'ACTIVE'  '1'.

B.1  User exit Activation for Substitution 

1. Execute tcode GCX2 .
2. Change the line with Application Area = GBLS . Change the value Ex. Program to = ZRGGBS000
3. GO to SE38 . Copy the standard program RGGBS000 to ZRGGBS000
4. Create new exit and paste below code.

*---------------------------------------------------------------------*
*       FORM U111                                                                  *
*---------------------------------------------------------------------*
*       Populate XREF3 BSEG-XREF3
*---------------------------------------------------------------------*
FORM u111 USING xref3 TYPE bseg-xref3 .

  DATAl_v_lifnr  TYPE lifnr.
  CHECK sy-tcode EQ 'MIRO'.

  FIELD-SYMBOLS  TYPE accit_t.
  FIELD-SYMBOLS  TYPE accit.
*  DATA: field_accit TYPE char18 VALUE '(SAPLMRMP)xaccit[]'.
  DATAfield_invfo TYPE char18 VALUE '(SAPLFDCB)INVFO'.
  FIELD-SYMBOLS  TYPE invfo.

*  ASSIGN (field_accit) TO .
*  CHECK sy-subrc EQ 0.

  ASSIGN (field_invfoTO .
  CHECK BSEG-MWSKZ '**' OR BSEG-MWSKZ 'IG' .
*  IF bseg-bschl = '31'. " Posting Key.
    xref3 -xref3.
*  ENDIF.


ENDFORM.   


B.2 Step to configure Substitution .

1. This substitution is for  FI checking to save xref3 in BSEG table.
2.  Go to tcode GGB1 - Substitution , Choose Finacial Accounting and Line Item.



3, Create new Substitution  and apply below configuration.



4. Create new Step with selection of BSEG-XREF3



5. Maintain the checking condition . Select Prerequisite icon and choose sy-tcode = 'MIRO'.
6. Choose the Substitution  and key in the Exit name. Activate the Substitution 



C. Activate and Configure for Substitution - User Exit

1. Execute OBBH Tcode - To select the and activate the substitution based on company code.
2. Click new entries for each company code.


D. Display Reference Key(XREF3) in MIR4 transaction

1. Implement BADI - BADI_FDCB_SUBBAS04.
2, Make sure activate all the screen, and hide it (as dummy).
3. There is example of implemetation in BADI - BADI_FDCB_SUBBAS01.
4. Put below code at GET_DATA_FROM_SCREEN_OBJECT method.


METHOD if_ex_badi_fdcb_subbas04~get_data_from_screen_object .


  DATAlt_doc TYPE STANDARD TABLE OF acc_doc,
        l_xref3 TYPE bseg-xref3,
        l_aworg TYPE acchd-aworg.

  FIELD-SYMBOLS TYPE acc_doc.

CHECK sy-tcode 'MIR4'.
MOVE ex_invfo-gjahr TO l_aworg.
CHECK l_aworg IS NOT INITIAL.

*VALUE(I_AWSYS) LIKE  ACCHD-AWSYS DEFAULT SPACE
  CALL FUNCTION 'AC_DOCUMENT_RECORD'
    EXPORTING
      i_awtyp            'RMRP'
      i_awref            ex_invfo-belnr
      i_aworg            l_aworg
*     I_AWSYS            =
*     I_AWTYP_INCL       = ' '
*     I_AWTYP_EXCL       = ' '
*     I_BUKRS            = ' '
     I_VALUTYP          '0'
     X_DIALOG           ' '
   TABLES
     t_documents        lt_doc
*   EXCEPTIONS
*     NO_REFERENCE       = 1
*     NO_DOCUMENT        = 2
*     OTHERS             = 3
            .
  IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.

  CHECK lt_doc[] IS NOT INITIAL.
  READ TABLE lt_doc ASSIGNING  WITH KEY awtyp 'BKPF'.

  CHECK  IS ASSIGNED.
  SELECT SINGLE xref3 INTO l_xref3 FROM bseg
          WHERE bukrs ex_invfo-bukrs
            AND gjahr ex_invfo-gjahr
            AND belnr -docnr
            AND bschl '31' .


  IF sy-subrc 0.
    me->if_ex_badi_fdcb_subbas04~invfo-xref3 l_xref3.
  ENDIF.

* fill export parameters from interface attributes
  ex_invfo  me->if_ex_badi_fdcb_subbas04~invfo.


ENDMETHOD.





9 comments:

  1. This comment has been removed by a blog administrator.

    ReplyDelete
  2. In the Substitution exit code there is some code missing

    ReplyDelete
    Replies
    1. Please share what code is missing i;ll update . Thanks

      Delete
    2. You forgot to add this code.

      Define your user exit in the FORM routine GET_EXIT_TITLES with the correct exit type (EXITS-PARAM).
      exits-name = 'U111'.
      exits-param = c_exit_param_none.
      exits-title = text-100. "Give any suitable text for your exit
      APPEND exits.

      Delete
  3. This comment has been removed by the author.

    ReplyDelete
  4. Through our portal you will be able to know and learn about the different techniques used for verification. We are growing in scale and serving more new Miro COA customers around the world. Our purpose is to help you make the right choice. So what are you waiting for? Now it is the right to add certificate of authentication to your expensive possession.

    ReplyDelete
  5. Off late these professional Miro Certificate of Authenticity art authentication services have become very much popular. We are coming up in many places around the world. Customers from different places are seeking our help, we are more than happy to help you make the right purchase.

    ReplyDelete