SAP ISH_EXTRA_PAYMENT_DEBT Function Module for
ISH_EXTRA_PAYMENT_DEBT is a standard ish extra payment debt SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used to perform a specific ABAP function and below is the pattern details, 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 ish extra payment debt FM, simply by entering the name ISH_EXTRA_PAYMENT_DEBT into the relevant SAP transaction such as SE37 or SE38.
Function Group: N019
Program Name: SAPLN019
Main Program: SAPLN019
Appliation area: N
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function ISH_EXTRA_PAYMENT_DEBT 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 'ISH_EXTRA_PAYMENT_DEBT'".
EXPORTING
AUFNAHME = "Admission date
* FAELLIGKEITSDATUM = '00000000' "Due date -->F2
* ZUONR = "Assignment Number
FALLNUMMER = "Case Number
* FALAR = '1' "IS-H: Case Type
* VERWE = 'D1' "IS-H: Use of Copayment Parameters
GJAHR = "Fiscal year
KOSTENTRAEGER = "Insurance Provider
* PATNR = '0000000000' "Patient Number
* TMODE = 'E' "Processing mode for CALL TRANSACTION -->F2
* TUPDATE = 'A' "Update mode for CALL TRANSACTION -->F2
* BELEGART_FORDERUNG = ' ' "Document type for receivble procedure -->F2
ZUZAHLUNGSBETRAG = "Copayment Amount
* CURRENCY = "
* BELEGART_INKASSO = ' ' "Document type for collection procedure -->F2
* BELEGDATUM = '00000000' "Document date -->F2
* BUCHUNGSDATUM = '00000000' "Posting date -->F2
BUCHUNGSKREIS = "Company code
DEBITOR = "Customer
EINRICHTUNG = "Institution
ENTLASSUNG = "Discharge Date
IMPORTING
BELEG = "Created FI copayment receivable (request) doc. no.
ZUZVERF = "Determined copayment procedure -->F2
MSGID = "
MSGNO = "
MSGTY = "
MSGV1 = "
MSGV2 = "
MSGV3 = "
MSGV4 = "
SUBRC = "
EXCEPTIONS
MISSING_DATA = 1 NO_NDEB_FOUND = 2 NO_NKTR_FOUND = 3 NO_RFDEB_FOUND = 4 NO_TN22Q_FOUND = 5 NO_TN22R_FOUND = 6 NO_ZUZVERF_FOUND = 7 NO_TN22F_FOUND = 8 NO_TN22G_FOUND = 9
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_SAPLN019_001 IS-H: Determine Note to Payee for Copayment
EXIT_SAPLN019_003 IS-H: Check Whether Insurance Relationship can be Canceled
IMPORTING Parameters details for ISH_EXTRA_PAYMENT_DEBT
AUFNAHME - Admission date
Data type: NBEW-BWIDTOptional: No
Call by Reference: No ( called with pass by value option)
FAELLIGKEITSDATUM - Due date -->F2
Data type: BSEG-ZFBDTDefault: '00000000'
Optional: Yes
Call by Reference: No ( called with pass by value option)
ZUONR - Assignment Number
Data type: BSEG-ZUONROptional: Yes
Call by Reference: No ( called with pass by value option)
FALLNUMMER - Case Number
Data type: BSEG-ZUONROptional: No
Call by Reference: No ( called with pass by value option)
FALAR - IS-H: Case Type
Data type: NFAL-FALARDefault: '1'
Optional: Yes
Call by Reference: No ( called with pass by value option)
VERWE - IS-H: Use of Copayment Parameters
Data type: TN22K-VERWEDefault: 'D1'
Optional: Yes
Call by Reference: No ( called with pass by value option)
GJAHR - Fiscal year
Data type: BSEG-GJAHROptional: No
Call by Reference: No ( called with pass by value option)
KOSTENTRAEGER - Insurance Provider
Data type: BKPF-XBLNROptional: No
Call by Reference: No ( called with pass by value option)
PATNR - Patient Number
Data type: NPAT-PATNRDefault: '0000000000'
Optional: Yes
Call by Reference: No ( called with pass by value option)
TMODE - Processing mode for CALL TRANSACTION -->F2
Data type:Default: 'E'
Optional: Yes
Call by Reference: No ( called with pass by value option)
TUPDATE - Update mode for CALL TRANSACTION -->F2
Data type:Default: 'A'
Optional: Yes
Call by Reference: No ( called with pass by value option)
BELEGART_FORDERUNG - Document type for receivble procedure -->F2
Data type: BKPF-BLARTDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
ZUZAHLUNGSBETRAG - Copayment Amount
Data type: BSEG-WRBTROptional: No
Call by Reference: No ( called with pass by value option)
CURRENCY -
Data type: BKPF-WAERSOptional: Yes
Call by Reference: No ( called with pass by value option)
BELEGART_INKASSO - Document type for collection procedure -->F2
Data type: BKPF-BLARTDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
BELEGDATUM - Document date -->F2
Data type: BKPF-BLDATDefault: '00000000'
Optional: Yes
Call by Reference: No ( called with pass by value option)
BUCHUNGSDATUM - Posting date -->F2
Data type: BKPF-BUDATDefault: '00000000'
Optional: Yes
Call by Reference: No ( called with pass by value option)
BUCHUNGSKREIS - Company code
Data type: BKPF-BUKRSOptional: No
Call by Reference: No ( called with pass by value option)
DEBITOR - Customer
Data type: BSID-KUNNROptional: No
Call by Reference: No ( called with pass by value option)
EINRICHTUNG - Institution
Data type: TN22P-EINRIOptional: No
Call by Reference: No ( called with pass by value option)
ENTLASSUNG - Discharge Date
Data type: NBEW-BWIDTOptional: No
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for ISH_EXTRA_PAYMENT_DEBT
BELEG - Created FI copayment receivable (request) doc. no.
Data type: BKPF-BELNROptional: No
Call by Reference: No ( called with pass by value option)
ZUZVERF - Determined copayment procedure -->F2
Data type: NKTR-VERZZOptional: No
Call by Reference: No ( called with pass by value option)
MSGID -
Data type: SY-MSGIDOptional: No
Call by Reference: No ( called with pass by value option)
MSGNO -
Data type: SY-MSGNOOptional: No
Call by Reference: No ( called with pass by value option)
MSGTY -
Data type: SY-MSGTYOptional: No
Call by Reference: No ( called with pass by value option)
MSGV1 -
Data type: SY-MSGV1Optional: No
Call by Reference: No ( called with pass by value option)
MSGV2 -
Data type: SY-MSGV2Optional: No
Call by Reference: No ( called with pass by value option)
MSGV3 -
Data type: SY-MSGV3Optional: No
Call by Reference: No ( called with pass by value option)
MSGV4 -
Data type: SY-MSGV4Optional: No
Call by Reference: No ( called with pass by value option)
SUBRC -
Data type: SY-SUBRCOptional: No
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
MISSING_DATA - Is initiated, if required-entry fields not filled
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
NO_NDEB_FOUND - No entry found in NDEB
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
NO_NKTR_FOUND - No entry found in NKTR
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
NO_RFDEB_FOUND - RFDEB not maintained in NDEB
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
NO_TN22Q_FOUND - No copayment-specific parameters found
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
NO_TN22R_FOUND - No copayment-specific parameters found
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
NO_ZUZVERF_FOUND - No copayment procedure found for ins. provider
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
NO_TN22F_FOUND -
Data type:Optional: No
Call by Reference: Yes
NO_TN22G_FOUND -
Data type:Optional: No
Call by Reference: Yes
Copy and paste ABAP code example for ISH_EXTRA_PAYMENT_DEBT 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_beleg | TYPE BKPF-BELNR, " | |||
| lv_aufnahme | TYPE NBEW-BWIDT, " | |||
| lv_missing_data | TYPE NBEW, " | |||
| lv_zuzverf | TYPE NKTR-VERZZ, " | |||
| lv_faelligkeitsdatum | TYPE BSEG-ZFBDT, " '00000000' | |||
| lv_zuonr | TYPE BSEG-ZUONR, " | |||
| lv_fallnummer | TYPE BSEG-ZUONR, " | |||
| lv_falar | TYPE NFAL-FALAR, " '1' | |||
| lv_verwe | TYPE TN22K-VERWE, " 'D1' | |||
| lv_gjahr | TYPE BSEG-GJAHR, " | |||
| lv_kostentraeger | TYPE BKPF-XBLNR, " | |||
| lv_patnr | TYPE NPAT-PATNR, " '0000000000' | |||
| lv_tmode | TYPE NPAT, " 'E' | |||
| lv_tupdate | TYPE NPAT, " 'A' | |||
| lv_msgid | TYPE SY-MSGID, " | |||
| lv_no_ndeb_found | TYPE SY, " | |||
| lv_belegart_forderung | TYPE BKPF-BLART, " SPACE | |||
| lv_zuzahlungsbetrag | TYPE BSEG-WRBTR, " | |||
| lv_currency | TYPE BKPF-WAERS, " | |||
| lv_msgno | TYPE SY-MSGNO, " | |||
| lv_no_nktr_found | TYPE SY, " | |||
| lv_belegart_inkasso | TYPE BKPF-BLART, " SPACE | |||
| lv_msgty | TYPE SY-MSGTY, " | |||
| lv_belegdatum | TYPE BKPF-BLDAT, " '00000000' | |||
| lv_no_rfdeb_found | TYPE BKPF, " | |||
| lv_msgv1 | TYPE SY-MSGV1, " | |||
| lv_buchungsdatum | TYPE BKPF-BUDAT, " '00000000' | |||
| lv_no_tn22q_found | TYPE BKPF, " | |||
| lv_msgv2 | TYPE SY-MSGV2, " | |||
| lv_buchungskreis | TYPE BKPF-BUKRS, " | |||
| lv_no_tn22r_found | TYPE BKPF, " | |||
| lv_msgv3 | TYPE SY-MSGV3, " | |||
| lv_debitor | TYPE BSID-KUNNR, " | |||
| lv_no_zuzverf_found | TYPE BSID, " | |||
| lv_msgv4 | TYPE SY-MSGV4, " | |||
| lv_einrichtung | TYPE TN22P-EINRI, " | |||
| lv_no_tn22f_found | TYPE TN22P, " | |||
| lv_subrc | TYPE SY-SUBRC, " | |||
| lv_entlassung | TYPE NBEW-BWIDT, " | |||
| lv_no_tn22g_found | TYPE NBEW. " |
|   CALL FUNCTION 'ISH_EXTRA_PAYMENT_DEBT' " |
| EXPORTING | ||
| AUFNAHME | = lv_aufnahme | |
| FAELLIGKEITSDATUM | = lv_faelligkeitsdatum | |
| ZUONR | = lv_zuonr | |
| FALLNUMMER | = lv_fallnummer | |
| FALAR | = lv_falar | |
| VERWE | = lv_verwe | |
| GJAHR | = lv_gjahr | |
| KOSTENTRAEGER | = lv_kostentraeger | |
| PATNR | = lv_patnr | |
| TMODE | = lv_tmode | |
| TUPDATE | = lv_tupdate | |
| BELEGART_FORDERUNG | = lv_belegart_forderung | |
| ZUZAHLUNGSBETRAG | = lv_zuzahlungsbetrag | |
| CURRENCY | = lv_currency | |
| BELEGART_INKASSO | = lv_belegart_inkasso | |
| BELEGDATUM | = lv_belegdatum | |
| BUCHUNGSDATUM | = lv_buchungsdatum | |
| BUCHUNGSKREIS | = lv_buchungskreis | |
| DEBITOR | = lv_debitor | |
| EINRICHTUNG | = lv_einrichtung | |
| ENTLASSUNG | = lv_entlassung | |
| IMPORTING | ||
| BELEG | = lv_beleg | |
| ZUZVERF | = lv_zuzverf | |
| MSGID | = lv_msgid | |
| MSGNO | = lv_msgno | |
| MSGTY | = lv_msgty | |
| MSGV1 | = lv_msgv1 | |
| MSGV2 | = lv_msgv2 | |
| MSGV3 | = lv_msgv3 | |
| MSGV4 | = lv_msgv4 | |
| SUBRC | = lv_subrc | |
| EXCEPTIONS | ||
| MISSING_DATA = 1 | ||
| NO_NDEB_FOUND = 2 | ||
| NO_NKTR_FOUND = 3 | ||
| NO_RFDEB_FOUND = 4 | ||
| NO_TN22Q_FOUND = 5 | ||
| NO_TN22R_FOUND = 6 | ||
| NO_ZUZVERF_FOUND = 7 | ||
| NO_TN22F_FOUND = 8 | ||
| NO_TN22G_FOUND = 9 | ||
| . " ISH_EXTRA_PAYMENT_DEBT | ||
ABAP code using 7.40 inline data declarations to call FM ISH_EXTRA_PAYMENT_DEBT
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 BELNR FROM BKPF INTO @DATA(ld_beleg). | ||||
| "SELECT single BWIDT FROM NBEW INTO @DATA(ld_aufnahme). | ||||
| "SELECT single VERZZ FROM NKTR INTO @DATA(ld_zuzverf). | ||||
| "SELECT single ZFBDT FROM BSEG INTO @DATA(ld_faelligkeitsdatum). | ||||
| DATA(ld_faelligkeitsdatum) | = '00000000'. | |||
| "SELECT single ZUONR FROM BSEG INTO @DATA(ld_zuonr). | ||||
| "SELECT single ZUONR FROM BSEG INTO @DATA(ld_fallnummer). | ||||
| "SELECT single FALAR FROM NFAL INTO @DATA(ld_falar). | ||||
| DATA(ld_falar) | = '1'. | |||
| "SELECT single VERWE FROM TN22K INTO @DATA(ld_verwe). | ||||
| DATA(ld_verwe) | = 'D1'. | |||
| "SELECT single GJAHR FROM BSEG INTO @DATA(ld_gjahr). | ||||
| "SELECT single XBLNR FROM BKPF INTO @DATA(ld_kostentraeger). | ||||
| "SELECT single PATNR FROM NPAT INTO @DATA(ld_patnr). | ||||
| DATA(ld_patnr) | = '0000000000'. | |||
| DATA(ld_tmode) | = 'E'. | |||
| DATA(ld_tupdate) | = 'A'. | |||
| "SELECT single MSGID FROM SY INTO @DATA(ld_msgid). | ||||
| "SELECT single BLART FROM BKPF INTO @DATA(ld_belegart_forderung). | ||||
| DATA(ld_belegart_forderung) | = ' '. | |||
| "SELECT single WRBTR FROM BSEG INTO @DATA(ld_zuzahlungsbetrag). | ||||
| "SELECT single WAERS FROM BKPF INTO @DATA(ld_currency). | ||||
| "SELECT single MSGNO FROM SY INTO @DATA(ld_msgno). | ||||
| "SELECT single BLART FROM BKPF INTO @DATA(ld_belegart_inkasso). | ||||
| DATA(ld_belegart_inkasso) | = ' '. | |||
| "SELECT single MSGTY FROM SY INTO @DATA(ld_msgty). | ||||
| "SELECT single BLDAT FROM BKPF INTO @DATA(ld_belegdatum). | ||||
| DATA(ld_belegdatum) | = '00000000'. | |||
| "SELECT single MSGV1 FROM SY INTO @DATA(ld_msgv1). | ||||
| "SELECT single BUDAT FROM BKPF INTO @DATA(ld_buchungsdatum). | ||||
| DATA(ld_buchungsdatum) | = '00000000'. | |||
| "SELECT single MSGV2 FROM SY INTO @DATA(ld_msgv2). | ||||
| "SELECT single BUKRS FROM BKPF INTO @DATA(ld_buchungskreis). | ||||
| "SELECT single MSGV3 FROM SY INTO @DATA(ld_msgv3). | ||||
| "SELECT single KUNNR FROM BSID INTO @DATA(ld_debitor). | ||||
| "SELECT single MSGV4 FROM SY INTO @DATA(ld_msgv4). | ||||
| "SELECT single EINRI FROM TN22P INTO @DATA(ld_einrichtung). | ||||
| "SELECT single SUBRC FROM SY INTO @DATA(ld_subrc). | ||||
| "SELECT single BWIDT FROM NBEW INTO @DATA(ld_entlassung). | ||||
Search for further information about these or an SAP related objects