Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

MRM_PARKED_INVOICE_POST

Former Member
0 Kudos
1,287

Hi friends

I need to use the FM MRM_PARKED_INVOICE_POST and i don't know how to use it.

Can you help me? What tables do i have to use to fill the parameters?

Best Regards

4 REPLIES 4

Former Member
0 Kudos
746

Hi Pedro,

Did you try using the where used list?

Its being used in a BAPI internally.

You can also try doing a search for that FM in the forum and there are couple of threads which might be of some help.

Cheers

VJ

Former Member
0 Kudos
746

Hai Pedro

Check the following Code

Data : i_rbkpv TYPE mrm_rbkpv,

ti_drseg TYPE mmcr_tdrseg,

i_editor TYPE REF TO c_textedit_control,

f_mrm_zlspr TYPE mrm_zlspr.

CALL FUNCTION 'MRM_PARKED_INVOICE_POST'

EXPORTING

i_rbkpv = i_rbkpv

ti_drseg = ti_drseg

i_editor = i_editor

IMPORTING

e_mrm_zlspr = f_mrm_zlspr

EXCEPTIONS

OTHERS = 02.

Check with the SAp Standard Program 'LMR1MF76'.

Thanks & regards

Sreenivasulu P

Message was edited by: Sreenivasulu Ponnadi

Peter_Inotai
Active Contributor
0 Kudos
746

Hi Pedro,

Look my relevant code, it worked fine for me:

*======================================================================*
* --- Post Invoices ---
*======================================================================*
  METHOD      post_invoices.

    DATA:
       lwa_zmm_rbkp_p       TYPE          zmm_rbkp,
       lwa_return_commit    TYPE          bapiret2,
       lwa_log_p            TYPE          ty_s_log,
       lv_wi_id             TYPE          zfi_inquiries-wi_id,
       lwa_zmm_rbco         TYPE          zmm_rbco,
       lwa_drseg            TYPE          mmcr_drseg,

       lwa_actions          TYPE          zfi_s_actions,
       lv_inquiry_id        TYPE          zfi_inquiries-inquiry_id,
       lv_inquiry_pos       TYPE          zfi_inquiries-inquiry_pos,
*    For function module SGOS_NOTE_CREATE
       lwa_isobject TYPE          borident,
       lv_istitle   TYPE          sood-objdes,
       lv_epnote    TYPE          borident-objkey,
       lwa_content  TYPE          soli,
       lit_content  TYPE TABLE OF soli,
*    Local variables for Invoice items
       lv_kokrs     TYPE tka02-kokrs,
*    Last inquiry
       lv_last_inquiry_id     TYPE zfi_inquiries-inquiry_id,
       lv_last_inquiry_pos    TYPE zfi_inquiries-inquiry_pos,
*    Document item in invoice document
       lv_rblgp TYPE drseg-rblgp,
*    Return code
       lv_subrc TYPE sy-subrc.

* =====================================================================================

    LOOP AT lit_zmm_rbkp_p INTO lwa_zmm_rbkp_p.

      CLEAR lv_rblgp.

* --> G E T  RBKPV/DRSEG
      CALL FUNCTION 'MRM_INVOICE_READ'
        EXPORTING
          i_belnr       = lwa_zmm_rbkp_p-mm_belnr
          i_gjahr       = lwa_zmm_rbkp_p-gjahr
          i_xselk       = c_flagged
          i_buffer_on   = c_flagged
        IMPORTING
          e_rbkpv       = lwa_rbkpv
        TABLES
          t_drseg       = lit_drseg
        EXCEPTIONS
          error_message = 1.

      IF sy-subrc <> 0.
* Collect message from system variables
        lwa_log_p-belnr = lwa_zmm_rbkp_p-mm_belnr.
        lwa_log_p-gjahr = lwa_zmm_rbkp_p-gjahr.
        lwa_log_p-msgty = sy-msgty.
        lwa_log_p-msgid = sy-msgid.
        lwa_log_p-msgno = sy-msgno.
        lwa_log_p-msgv1 = sy-msgv1.
        lwa_log_p-msgv2 = sy-msgv2.
        lwa_log_p-msgv3 = sy-msgv3.
        lwa_log_p-msgv4 = sy-msgv4.

        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4
              INTO lwa_log_p-message.

        APPEND lwa_log_p TO e_it_log_p.
        CLEAR  lwa_log_p.

*        RETURN.
        EXIT.
      ENDIF.

* ---> Posting date
      lcl_main=>check_posting_date( EXPORTING i_bukrs = lwa_rbkpv-bukrs
                                    CHANGING  c_budat = lwa_rbkpv-budat ).

* ---> Baseline date
      IF lwa_rbkpv-zfbdt IS INITIAL.
        lwa_rbkpv-zfbdt = lwa_rbkpv-bldat.  " Document date
      ENDIF.

*     For the item number generation
      lv_rblgp = LINES( lit_drseg ).

* --> Add entries to lit_drseg from ZMM_RBCO
* Controlling Area
      SELECT SINGLE kokrs
          FROM tka02
          INTO lv_kokrs
          WHERE bukrs = lwa_rbkpv-bukrs.

      LOOP AT lit_zmm_rbco INTO lwa_zmm_rbco.

        lwa_drseg-belnr = lwa_zmm_rbco-mm_belnr.
        lwa_drseg-gjahr = lwa_zmm_rbco-gjahr.
        lwa_drseg-buzei = c_buzei_zero.
        lwa_drseg-saknr = lwa_zmm_rbco-hkont.
        lwa_drseg-shkzg = lwa_zmm_rbco-shkzg.
        lwa_drseg-wrbtr = lwa_zmm_rbco-wrbtr.
        lwa_drseg-kostl = lwa_zmm_rbco-kostl.
        lwa_drseg-aufnr = lwa_zmm_rbco-aufnr.
        lwa_drseg-nplnr = lwa_zmm_rbco-nplnr.
        lwa_drseg-vornr = lwa_zmm_rbco-vornr.
        lwa_drseg-sgtxt = lwa_zmm_rbco-sgtxt.
        lwa_drseg-pernr = lwa_zmm_rbco-pernr.
*        lwa_drseg-waers = lwa_rbkpv-waers.

        lwa_drseg-kokrs = lv_kokrs.

        IF lwa_zmm_rbco-mwskz IS INITIAL.
          lwa_drseg-mwskz = lwa_rbkpv-mwskz1.
        ELSE.
          lwa_drseg-mwskz = lwa_zmm_rbco-mwskz.
        ENDIF.

        lwa_drseg-bukrs = lwa_rbkpv-bukrs.
        lwa_drseg-selkz = c_flagged.

*     \ Generate item number
        lwa_drseg-rblgp = lv_rblgp + 1.
*     // Generate item number

        lwa_drseg-koart = c_koart_gl.

* Profit center, business area from cost center
        SELECT SINGLE gsber prctr
        FROM csks
        INTO (lwa_drseg-gsber, lwa_drseg-prctr)
        WHERE kokrs =  lv_kokrs
          AND kostl =  lwa_zmm_rbco-kostl
          AND datbi >= lwa_rbkpv-budat
          AND datab <= lwa_rbkpv-budat.

        APPEND lwa_drseg TO lit_drseg.
        CLEAR  lwa_drseg.

      ENDLOOP.

      CLEAR lv_subrc.

* --> P O S T INVOICE -------------------------------------------------
      CALL FUNCTION 'MRM_PARKED_INVOICE_POST'
        EXPORTING
          i_rbkpv           = lwa_rbkpv
          ti_drseg          = lit_drseg
*           I_EDITOR          =
*         IMPORTING
*           E_MRM_ZLSPR       =
        EXCEPTIONS
          error_message = 1.

      lv_subrc = sy-subrc.

      IF sy-subrc <> 0.  " POST FAILED

        ROLLBACK WORK.

*     Collect message from system variables
        lwa_log_p-belnr = lwa_zmm_rbkp_p-mm_belnr.
        lwa_log_p-gjahr = lwa_zmm_rbkp_p-gjahr.
        lwa_log_p-msgty = sy-msgty.
        lwa_log_p-msgid = sy-msgid.
        lwa_log_p-msgno = sy-msgno.
        lwa_log_p-msgv1 = sy-msgv1.
        lwa_log_p-msgv2 = sy-msgv2.
        lwa_log_p-msgv3 = sy-msgv3.
        lwa_log_p-msgv4 = sy-msgv4.

        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4
              INTO lwa_log_p-message.

        APPEND lwa_log_p TO e_it_log_p.
        CLEAR  lwa_log_p.
......

0 Kudos
726

Hi Peter, do you have a complete solution? The code snapshot you have provided, doesn't cover full functionality. What is the conditions for Z table Data? 
I have a similar requirement. Appreciate if you could share more information.