SAP Function Modules

ISM_REV_ACC_BILLING SAP Function module - IS-M/SD: Revenue Recognition During Billing Document Transfer







ISM_REV_ACC_BILLING is a standard SAP function module available within R/3 SAP systems depending on your version and release level. Below is the pattern details for this FM showing its interface including any import and export parameters, exceptions etc as well as any documentation contributions (Comments) specific to the object.

See here to view full function module documentation and code listing, simply by entering the name ISM_REV_ACC_BILLING into the relevant SAP transaction such as SE37 or SE80.

Associated Function Group: JFRR
Released Date: Not Released
Processing type: Normal fucntion module
Normal function module settings


Pattern for FM ISM_REV_ACC_BILLING - ISM REV ACC BILLING





CALL FUNCTION 'ISM_REV_ACC_BILLING' "IS-M/SD: Revenue Recognition During Billing Document Transfer
  EXPORTING
    i_invoice_header =          " jf23_jfrk_wa  Billing header
    i_document_number =         " jfrk-vbeln
    i_acc_method =              " tjf37-acc_method
    i_tjf05 =                   " tjf05         Document Type Determination
*   i_check =                   " xfeld         'X' = Test Run
    i_fica_active =             " xfeld
  TABLES
    it_jfrp =                   " jf23_jfrp_tab  Billing items
    ct_accit =                  " jf23_accit_tab  FI/CO document item information
    ct_acccr =                  " jf23_acccr_tab  FI/CO document currency information
    it_rr_accit =               " jf23_accit_tab
    it_rr_acccr =               " jf23_acccr_tab
    it_rr_non_accit =           " jf23_accit_tab
    it_rr_non_acccr =           " jf23_acccr_tab
    it_komv =                   " jf23_komv_tab
    et_jfrevacc =               " jf23_jfrevacc_tab
    et_jfrevvaacc =             " jf23_jfrevvaacc_tab
    et_ref_jkaccount_tab =      " jf23_comm_ref_jkaccount_tab
  CHANGING
    c_rw_posnr =                " posnr_acc
  EXCEPTIONS
    INTERNAL_ERROR = 1          "               Error occurred in the data selection
    .  "  ISM_REV_ACC_BILLING

ABAP code example for Function Module ISM_REV_ACC_BILLING





The ABAP code below is a full code listing to execute function module ISM_REV_ACC_BILLING including all data declarations. The code uses the latest in-line data DECLARATION SYNTAX but I have included an ABAP code snippet at the end to show how declarations would look using the original method of declaring data variables up front. This will allow you to compare and fully understand the new inline method. Please note some of the newer syntax such as the @DATA is not available until a later 4.70 service pack (SP8).

DATA:
it_it_jfrp  TYPE STANDARD TABLE OF JF23_JFRP_TAB,"TABLES PARAM
wa_it_jfrp  LIKE LINE OF it_it_jfrp ,
it_ct_accit  TYPE STANDARD TABLE OF JF23_ACCIT_TAB,"TABLES PARAM
wa_ct_accit  LIKE LINE OF it_ct_accit ,
it_ct_acccr  TYPE STANDARD TABLE OF JF23_ACCCR_TAB,"TABLES PARAM
wa_ct_acccr  LIKE LINE OF it_ct_acccr ,
it_it_rr_accit  TYPE STANDARD TABLE OF JF23_ACCIT_TAB,"TABLES PARAM
wa_it_rr_accit  LIKE LINE OF it_it_rr_accit ,
it_it_rr_acccr  TYPE STANDARD TABLE OF JF23_ACCCR_TAB,"TABLES PARAM
wa_it_rr_acccr  LIKE LINE OF it_it_rr_acccr ,
it_it_rr_non_accit  TYPE STANDARD TABLE OF JF23_ACCIT_TAB,"TABLES PARAM
wa_it_rr_non_accit  LIKE LINE OF it_it_rr_non_accit ,
it_it_rr_non_acccr  TYPE STANDARD TABLE OF JF23_ACCCR_TAB,"TABLES PARAM
wa_it_rr_non_acccr  LIKE LINE OF it_it_rr_non_acccr ,
it_it_komv  TYPE STANDARD TABLE OF JF23_KOMV_TAB,"TABLES PARAM
wa_it_komv  LIKE LINE OF it_it_komv ,
it_et_jfrevacc  TYPE STANDARD TABLE OF JF23_JFREVACC_TAB,"TABLES PARAM
wa_et_jfrevacc  LIKE LINE OF it_et_jfrevacc ,
it_et_jfrevvaacc  TYPE STANDARD TABLE OF JF23_JFREVVAACC_TAB,"TABLES PARAM
wa_et_jfrevvaacc  LIKE LINE OF it_et_jfrevvaacc ,
it_et_ref_jkaccount_tab  TYPE STANDARD TABLE OF JF23_COMM_REF_JKACCOUNT_TAB,"TABLES PARAM
wa_et_ref_jkaccount_tab  LIKE LINE OF it_et_ref_jkaccount_tab .

DATA(ld_c_rw_posnr) = 'Check type of data required'.
DATA(ld_i_invoice_header) = 'Check type of data required'.

SELECT single VBELN
FROM JFRK
INTO @DATA(ld_i_document_number).


SELECT single ACC_METHOD
FROM TJF37
INTO @DATA(ld_i_acc_method).

DATA(ld_i_tjf05) = 'Check type of data required'.
DATA(ld_i_check) = 'Check type of data required'.
DATA(ld_i_fica_active) = 'Check type of data required'.

"populate fields of struture and append to itab
append wa_it_jfrp to it_it_jfrp.

"populate fields of struture and append to itab
append wa_ct_accit to it_ct_accit.

"populate fields of struture and append to itab
append wa_ct_acccr to it_ct_acccr.

"populate fields of struture and append to itab
append wa_it_rr_accit to it_it_rr_accit.

"populate fields of struture and append to itab
append wa_it_rr_acccr to it_it_rr_acccr.

"populate fields of struture and append to itab
append wa_it_rr_non_accit to it_it_rr_non_accit.

"populate fields of struture and append to itab
append wa_it_rr_non_acccr to it_it_rr_non_acccr.

"populate fields of struture and append to itab
append wa_it_komv to it_it_komv.

"populate fields of struture and append to itab
append wa_et_jfrevacc to it_et_jfrevacc.

"populate fields of struture and append to itab
append wa_et_jfrevvaacc to it_et_jfrevvaacc.

"populate fields of struture and append to itab
append wa_et_ref_jkaccount_tab to it_et_ref_jkaccount_tab. . CALL FUNCTION 'ISM_REV_ACC_BILLING' EXPORTING i_invoice_header = ld_i_invoice_header i_document_number = ld_i_document_number i_acc_method = ld_i_acc_method i_tjf05 = ld_i_tjf05 * i_check = ld_i_check i_fica_active = ld_i_fica_active TABLES it_jfrp = it_it_jfrp ct_accit = it_ct_accit ct_acccr = it_ct_acccr it_rr_accit = it_it_rr_accit it_rr_acccr = it_it_rr_acccr it_rr_non_accit = it_it_rr_non_accit it_rr_non_acccr = it_it_rr_non_acccr it_komv = it_it_komv et_jfrevacc = it_et_jfrevacc et_jfrevvaacc = it_et_jfrevvaacc et_ref_jkaccount_tab = it_et_ref_jkaccount_tab CHANGING c_rw_posnr = ld_c_rw_posnr EXCEPTIONS INTERNAL_ERROR = 1 . " ISM_REV_ACC_BILLING
IF SY-SUBRC EQ 0. "All OK ELSEIF SY-SUBRC EQ 1. "Exception "Add code for exception here ENDIF.







ABAP code to compare 7.40 inline data declaration with original syntax

The below ABAP code uses the older none in-line data declarations. This allows you to see the coding differences/benefits of the later inline syntax. It may also be useful if you are using an older version of SAP as some of the newer syntax above, such as the @DATA is not available until 4.70 EHP 8.

DATA:
ld_c_rw_posnr  TYPE POSNR_ACC ,
ld_i_invoice_header  TYPE JF23_JFRK_WA ,
it_it_jfrp  TYPE STANDARD TABLE OF JF23_JFRP_TAB ,
wa_it_jfrp  LIKE LINE OF it_it_jfrp,
ld_i_document_number  TYPE JFRK-VBELN ,
it_ct_accit  TYPE STANDARD TABLE OF JF23_ACCIT_TAB ,
wa_ct_accit  LIKE LINE OF it_ct_accit,
ld_i_acc_method  TYPE TJF37-ACC_METHOD ,
it_ct_acccr  TYPE STANDARD TABLE OF JF23_ACCCR_TAB ,
wa_ct_acccr  LIKE LINE OF it_ct_acccr,
ld_i_tjf05  TYPE TJF05 ,
it_it_rr_accit  TYPE STANDARD TABLE OF JF23_ACCIT_TAB ,
wa_it_rr_accit  LIKE LINE OF it_it_rr_accit,
ld_i_check  TYPE XFELD ,
it_it_rr_acccr  TYPE STANDARD TABLE OF JF23_ACCCR_TAB ,
wa_it_rr_acccr  LIKE LINE OF it_it_rr_acccr,
ld_i_fica_active  TYPE XFELD ,
it_it_rr_non_accit  TYPE STANDARD TABLE OF JF23_ACCIT_TAB ,
wa_it_rr_non_accit  LIKE LINE OF it_it_rr_non_accit,
it_it_rr_non_acccr  TYPE STANDARD TABLE OF JF23_ACCCR_TAB ,
wa_it_rr_non_acccr  LIKE LINE OF it_it_rr_non_acccr,
it_it_komv  TYPE STANDARD TABLE OF JF23_KOMV_TAB ,
wa_it_komv  LIKE LINE OF it_it_komv,
it_et_jfrevacc  TYPE STANDARD TABLE OF JF23_JFREVACC_TAB ,
wa_et_jfrevacc  LIKE LINE OF it_et_jfrevacc,
it_et_jfrevvaacc  TYPE STANDARD TABLE OF JF23_JFREVVAACC_TAB ,
wa_et_jfrevvaacc  LIKE LINE OF it_et_jfrevvaacc,
it_et_ref_jkaccount_tab  TYPE STANDARD TABLE OF JF23_COMM_REF_JKACCOUNT_TAB ,
wa_et_ref_jkaccount_tab  LIKE LINE OF it_et_ref_jkaccount_tab.

ld_c_rw_posnr = 'Check type of data required'.
ld_i_invoice_header = 'Check type of data required'.

"populate fields of struture and append to itab
append wa_it_jfrp to it_it_jfrp.

SELECT single VBELN
FROM JFRK
INTO ld_i_document_number.


"populate fields of struture and append to itab
append wa_ct_accit to it_ct_accit.

SELECT single ACC_METHOD
FROM TJF37
INTO ld_i_acc_method.


"populate fields of struture and append to itab
append wa_ct_acccr to it_ct_acccr.
ld_i_tjf05 = 'Check type of data required'.

"populate fields of struture and append to itab
append wa_it_rr_accit to it_it_rr_accit.
ld_i_check = 'Check type of data required'.

"populate fields of struture and append to itab
append wa_it_rr_acccr to it_it_rr_acccr.
ld_i_fica_active = 'Check type of data required'.

"populate fields of struture and append to itab
append wa_it_rr_non_accit to it_it_rr_non_accit.

"populate fields of struture and append to itab
append wa_it_rr_non_acccr to it_it_rr_non_acccr.

"populate fields of struture and append to itab
append wa_it_komv to it_it_komv.

"populate fields of struture and append to itab
append wa_et_jfrevacc to it_et_jfrevacc.

"populate fields of struture and append to itab
append wa_et_jfrevvaacc to it_et_jfrevvaacc.

"populate fields of struture and append to itab
append wa_et_ref_jkaccount_tab to it_et_ref_jkaccount_tab.

Contribute (Add Comments)

Please help keep this info upto date and use the comments section below to add useful hints, tips and information specific to this SAP function. This will then be available for you and other users to easily find by simply searching on the object name ISM_REV_ACC_BILLING or its description.