SAP ISM_ACCOUNTING_DOCUMENT_CREATE Function Module for IS-M/SD: Generate Accounting Document Using FI Interface
ISM_ACCOUNTING_DOCUMENT_CREATE is a standard ism accounting document create SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for IS-M/SD: Generate Accounting Document Using FI Interface processing and below is the pattern details for this FM, showing its interface including any import and export parameters, exceptions etc. there is also a full "cut and paste" ABAP pattern code example, along with implementation ABAP coding, documentation and contribution comments specific to this or related objects.
See here to view full function module documentation and code listing for ism accounting document create FM, simply by entering the name ISM_ACCOUNTING_DOCUMENT_CREATE into the relevant SAP transaction such as SE37 or SE38.
Function Group: JF23
Program Name: SAPLJF23
Main Program: SAPLJF23
Appliation area: J
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function ISM_ACCOUNTING_DOCUMENT_CREATE pattern details
In-order to call this FM within your sap programs, simply using the below ABAP pattern details to trigger the function call...or see the full ABAP code listing at the end of this article. You can simply cut and paste this code into your ABAP progrom as it is, including variable declarations.CALL FUNCTION 'ISM_ACCOUNTING_DOCUMENT_CREATE'"IS-M/SD: Generate Accounting Document Using FI Interface.
EXPORTING
I_INVOICE_HEADER = "Billing header
I_ACCRUAL_DATE = "Accrual Date
I_UEBNR = "Transfer Number
* I_GL_ACCOUNT = "
* I_CHECK = "'X' = Test Run
* I_CPD_ADRESS = "Address Number
* I_DOCUMENT_OLD = "
* I_COMPONENT = "Component limitation
* I_COMPONENT_CHECK = "Component limitation for checks
IMPORTING
E_REF_JFRK = "
E_FICA_ACTIVE = "
CHANGING
C_JFFS = "Error Log
TABLES
I_JFRP_TAB = "Billing items
* E_JFREVVAACC_TAB = "
* E_JFREVACC_TAB = "
* E_REF_JKACCOUNT_TAB = "
* E_REF_JKACCFIZUO_TAB = "
* E_REF_JKACCTFPROT_TAB = "
* E_XJKACCADD = "
* I_JFPA_TAB = "
I_KOMV_TAB = "
* I_JFRKCC_TAB = "Payment Card Data
* E_ACCHD_TAB = "Account document header information
* E_ACCIT_TAB = "FI/CO document item information
* E_ACCCR_TAB = "FI/CO document currency information
* E_JFREVVA_TAB = "
* E_JFREVPER_TAB = "
EXCEPTIONS
ACCOUNT_CREATE_ERROR = 1 NO_DOCUMENT_REQUIRED = 2
Customer Function user exits
Below is a list of CUSTOMER FUNCTION exit user exits that are available within this program and maybe relevant for this FM.EXIT_SAPLJF23_001 IS-M/SD: Billing Document Transfer - Header Data
EXIT_SAPLJF23_002 IS-M/SD: Billing Document Transfer - Tax Line
EXIT_SAPLJF23_003 IS-M/SD: Billing Document Transfer - G/L Account Line
EXIT_SAPLJF23_004 IS-M/SD: Billing Document Transfer - Provisions
EXIT_SAPLJF23_005 IS-M/SD: Billing Transfer - Payment Card Line
EXIT_SAPLJF23_006 IS-M/SD: Billing Transfer - Sub-Ledger Account Line (Accounts Receivable)
EXIT_SAPLJF23_007 IS-M/SD: Billing Transfer - Document
EXIT_SAPLJF23_008 IS-M/SD: Billing Document Transfer - General Ledger Account Posting
EXIT_SAPLJF23_009 IS-M/SD: Revenue Accrual Transfer - Document
EXIT_SAPLJF23_010 IS-M/SD: Contract Postings at End of Liability Account Cycle
EXIT_SAPLJF23_011 IS-M/SD: Determine CO Order for Closure of Del.-Related Liability Acct
EXIT_SAPLJF23_012 IS-M/SD: User Exit for Billing Doc.Transfer - Split Criteria Cust.Line
IMPORTING Parameters details for ISM_ACCOUNTING_DOCUMENT_CREATE
I_INVOICE_HEADER - Billing header
Data type: JF23_JFRK_WAOptional: No
Call by Reference: No ( called with pass by value option)
I_ACCRUAL_DATE - Accrual Date
Data type: SY-DATUMOptional: No
Call by Reference: No ( called with pass by value option)
I_UEBNR - Transfer Number
Data type: JFRK-ISPUEBNROptional: No
Call by Reference: No ( called with pass by value option)
I_GL_ACCOUNT -
Data type: C000-SAKN1Optional: Yes
Call by Reference: No ( called with pass by value option)
I_CHECK - 'X' = Test Run
Data type: JF23_XFIELDOptional: Yes
Call by Reference: No ( called with pass by value option)
I_CPD_ADRESS - Address Number
Data type: SADR-ADRNROptional: Yes
Call by Reference: No ( called with pass by value option)
I_DOCUMENT_OLD -
Data type: JF23_BELEG_WAOptional: Yes
Call by Reference: No ( called with pass by value option)
I_COMPONENT - Component limitation
Data type: TRWCI-COMPONENTOptional: Yes
Call by Reference: No ( called with pass by value option)
I_COMPONENT_CHECK - Component limitation for checks
Data type: TRWCI-COMPONENTOptional: Yes
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for ISM_ACCOUNTING_DOCUMENT_CREATE
E_REF_JFRK -
Data type: JF23_REF_FI_JFRK_WAOptional: No
Call by Reference: No ( called with pass by value option)
E_FICA_ACTIVE -
Data type: XFELDOptional: No
Call by Reference: No ( called with pass by value option)
CHANGING Parameters details for ISM_ACCOUNTING_DOCUMENT_CREATE
C_JFFS - Error Log
Data type: JF23_JFFS_WAOptional: No
Call by Reference: Yes
TABLES Parameters details for ISM_ACCOUNTING_DOCUMENT_CREATE
I_JFRP_TAB - Billing items
Data type: JF23_JFRP_TABOptional: No
Call by Reference: No ( called with pass by value option)
E_JFREVVAACC_TAB -
Data type: JF23_JFREVVAACC_TABOptional: Yes
Call by Reference: No ( called with pass by value option)
E_JFREVACC_TAB -
Data type: JF23_JFREVACC_TABOptional: Yes
Call by Reference: No ( called with pass by value option)
E_REF_JKACCOUNT_TAB -
Data type: JF23_COMM_REF_JKACCOUNT_TABOptional: Yes
Call by Reference: No ( called with pass by value option)
E_REF_JKACCFIZUO_TAB -
Data type: JF23_COMM_REF_JKACCFIZUO_TABOptional: Yes
Call by Reference: Yes
E_REF_JKACCTFPROT_TAB -
Data type: JF23_COMM_REF_JKACCTFPROT_TABOptional: Yes
Call by Reference: Yes
E_XJKACCADD -
Data type: JK_JKACCADDVB_GENERICTABOptional: Yes
Call by Reference: Yes
I_JFPA_TAB -
Data type: JF23_JFPA_TABOptional: Yes
Call by Reference: Yes
I_KOMV_TAB -
Data type: JF23_KOMV_TABOptional: No
Call by Reference: No ( called with pass by value option)
I_JFRKCC_TAB - Payment Card Data
Data type: JF23_JFRKCC_TABOptional: Yes
Call by Reference: No ( called with pass by value option)
E_ACCHD_TAB - Account document header information
Data type: JF23_ACCHD_TABOptional: Yes
Call by Reference: No ( called with pass by value option)
E_ACCIT_TAB - FI/CO document item information
Data type: JF23_ACCIT_TABOptional: Yes
Call by Reference: No ( called with pass by value option)
E_ACCCR_TAB - FI/CO document currency information
Data type: JF23_ACCCR_TABOptional: Yes
Call by Reference: No ( called with pass by value option)
E_JFREVVA_TAB -
Data type: JF23_JFREVVA_TABOptional: Yes
Call by Reference: No ( called with pass by value option)
E_JFREVPER_TAB -
Data type: JF23_JFREVPER_TABOptional: Yes
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
ACCOUNT_CREATE_ERROR -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
NO_DOCUMENT_REQUIRED -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for ISM_ACCOUNTING_DOCUMENT_CREATE Function Module
The ABAP code below is a full code listing to execute function module POPUP_TO_CONFIRM including all data declarations. The code uses the original data declarations rather than 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 newer method of declaring data variables on the fly. 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), which i why i have stuck to the origianl for this example.| DATA: | ||||
| lv_c_jffs | TYPE JF23_JFFS_WA, " | |||
| lv_e_ref_jfrk | TYPE JF23_REF_FI_JFRK_WA, " | |||
| lt_i_jfrp_tab | TYPE STANDARD TABLE OF JF23_JFRP_TAB, " | |||
| lv_i_invoice_header | TYPE JF23_JFRK_WA, " | |||
| lv_account_create_error | TYPE JF23_JFRK_WA, " | |||
| lt_e_jfrevvaacc_tab | TYPE STANDARD TABLE OF JF23_JFREVVAACC_TAB, " | |||
| lt_e_jfrevacc_tab | TYPE STANDARD TABLE OF JF23_JFREVACC_TAB, " | |||
| lt_e_ref_jkaccount_tab | TYPE STANDARD TABLE OF JF23_COMM_REF_JKACCOUNT_TAB, " | |||
| lt_e_ref_jkaccfizuo_tab | TYPE STANDARD TABLE OF JF23_COMM_REF_JKACCFIZUO_TAB, " | |||
| lt_e_ref_jkacctfprot_tab | TYPE STANDARD TABLE OF JF23_COMM_REF_JKACCTFPROT_TAB, " | |||
| lt_e_xjkaccadd | TYPE STANDARD TABLE OF JK_JKACCADDVB_GENERICTAB, " | |||
| lt_i_jfpa_tab | TYPE STANDARD TABLE OF JF23_JFPA_TAB, " | |||
| lv_e_fica_active | TYPE XFELD, " | |||
| lv_i_accrual_date | TYPE SY-DATUM, " | |||
| lv_no_document_required | TYPE SY, " | |||
| lv_i_uebnr | TYPE JFRK-ISPUEBNR, " | |||
| lt_i_komv_tab | TYPE STANDARD TABLE OF JF23_KOMV_TAB, " | |||
| lv_i_gl_account | TYPE C000-SAKN1, " | |||
| lt_i_jfrkcc_tab | TYPE STANDARD TABLE OF JF23_JFRKCC_TAB, " | |||
| lv_i_check | TYPE JF23_XFIELD, " | |||
| lt_e_acchd_tab | TYPE STANDARD TABLE OF JF23_ACCHD_TAB, " | |||
| lt_e_accit_tab | TYPE STANDARD TABLE OF JF23_ACCIT_TAB, " | |||
| lv_i_cpd_adress | TYPE SADR-ADRNR, " | |||
| lt_e_acccr_tab | TYPE STANDARD TABLE OF JF23_ACCCR_TAB, " | |||
| lv_i_document_old | TYPE JF23_BELEG_WA, " | |||
| lv_i_component | TYPE TRWCI-COMPONENT, " | |||
| lt_e_jfrevva_tab | TYPE STANDARD TABLE OF JF23_JFREVVA_TAB, " | |||
| lt_e_jfrevper_tab | TYPE STANDARD TABLE OF JF23_JFREVPER_TAB, " | |||
| lv_i_component_check | TYPE TRWCI-COMPONENT. " |
|   CALL FUNCTION 'ISM_ACCOUNTING_DOCUMENT_CREATE' "IS-M/SD: Generate Accounting Document Using FI Interface |
| EXPORTING | ||
| I_INVOICE_HEADER | = lv_i_invoice_header | |
| I_ACCRUAL_DATE | = lv_i_accrual_date | |
| I_UEBNR | = lv_i_uebnr | |
| I_GL_ACCOUNT | = lv_i_gl_account | |
| I_CHECK | = lv_i_check | |
| I_CPD_ADRESS | = lv_i_cpd_adress | |
| I_DOCUMENT_OLD | = lv_i_document_old | |
| I_COMPONENT | = lv_i_component | |
| I_COMPONENT_CHECK | = lv_i_component_check | |
| IMPORTING | ||
| E_REF_JFRK | = lv_e_ref_jfrk | |
| E_FICA_ACTIVE | = lv_e_fica_active | |
| CHANGING | ||
| C_JFFS | = lv_c_jffs | |
| TABLES | ||
| I_JFRP_TAB | = lt_i_jfrp_tab | |
| E_JFREVVAACC_TAB | = lt_e_jfrevvaacc_tab | |
| E_JFREVACC_TAB | = lt_e_jfrevacc_tab | |
| E_REF_JKACCOUNT_TAB | = lt_e_ref_jkaccount_tab | |
| E_REF_JKACCFIZUO_TAB | = lt_e_ref_jkaccfizuo_tab | |
| E_REF_JKACCTFPROT_TAB | = lt_e_ref_jkacctfprot_tab | |
| E_XJKACCADD | = lt_e_xjkaccadd | |
| I_JFPA_TAB | = lt_i_jfpa_tab | |
| I_KOMV_TAB | = lt_i_komv_tab | |
| I_JFRKCC_TAB | = lt_i_jfrkcc_tab | |
| E_ACCHD_TAB | = lt_e_acchd_tab | |
| E_ACCIT_TAB | = lt_e_accit_tab | |
| E_ACCCR_TAB | = lt_e_acccr_tab | |
| E_JFREVVA_TAB | = lt_e_jfrevva_tab | |
| E_JFREVPER_TAB | = lt_e_jfrevper_tab | |
| EXCEPTIONS | ||
| ACCOUNT_CREATE_ERROR = 1 | ||
| NO_DOCUMENT_REQUIRED = 2 | ||
| . " ISM_ACCOUNTING_DOCUMENT_CREATE | ||
ABAP code using 7.40 inline data declarations to call FM ISM_ACCOUNTING_DOCUMENT_CREATE
The below ABAP code uses the newer in-line data declarations. This allows you to see the coding differences/benefits of the later inline syntax. Please note some of the newer syntax below, such as the @DATA is not available until 4.70 EHP 8.| "SELECT single DATUM FROM SY INTO @DATA(ld_i_accrual_date). | ||||
| "SELECT single ISPUEBNR FROM JFRK INTO @DATA(ld_i_uebnr). | ||||
| "SELECT single SAKN1 FROM C000 INTO @DATA(ld_i_gl_account). | ||||
| "SELECT single ADRNR FROM SADR INTO @DATA(ld_i_cpd_adress). | ||||
| "SELECT single COMPONENT FROM TRWCI INTO @DATA(ld_i_component). | ||||
| "SELECT single COMPONENT FROM TRWCI INTO @DATA(ld_i_component_check). | ||||
Search for further information about these or an SAP related objects