SAP ISB_PREPAYMENT_DURATION_CALC Function Module for IS-B: Bestimmt einen IS-B Zahlungsstrom gemäß Prepayment-Ansatz
ISB_PREPAYMENT_DURATION_CALC is a standard isb prepayment duration calc 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-B: Bestimmt einen IS-B Zahlungsstrom gemäß Prepayment-Ansatz 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 isb prepayment duration calc FM, simply by entering the name ISB_PREPAYMENT_DURATION_CALC into the relevant SAP transaction such as SE37 or SE38.
Function Group: JBRZ
Program Name: SAPLJBRZ
Main Program: SAPLJBRZ
Appliation area: J
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function ISB_PREPAYMENT_DURATION_CALC 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 'ISB_PREPAYMENT_DURATION_CALC'"IS-B: Bestimmt einen IS-B Zahlungsstrom gemäß Prepayment-Ansatz.
EXPORTING
I_VDARL = "Stammdaten Darlehen
I_VZZKOKO = "Konditionskopf Darlehen
I_JBIXGSC = "Objektinformationen Darlehen
I_SZSART = "Zahlungsstromtyp
I_JBTKREG = "Kalkulationsregel
* I_KZ_DETAILPROT = ' ' "Kennzeichen für Detailprotokoll
IMPORTING
O_JBDZSKO = "Zahlungsstromkopf
TABLES
I_VVZZKOPO = "Tabelle Konditionspositionen Darlehen
O_JBDZSTR_TAB = "Zahlungsstrom (Bewegungen)
IO_SPROT_TAB = "
I_A_VZZBEPP = "Tabelle Auszahlungen
* I_OTHER_VZZBEPP = "Tabelle sonstige Bewegungen
I_TZB0A = "Tabelle Bewegungsarten
I_TZPA = "Tabelle Produktarten
I_TZPAB = "Tabelle Produktarten/Bukrs
I_TZK01 = "Tabelle Konditionsarten
I_TZK02 = "Tabelle Zuordnung Kond.art - Kond.Grp.
* I_KAPITALMINDERUNGEN = "Tabelle für Kapitalminderungen
EXCEPTIONS
INPUT_ERROR = 1 CF_GENERATE_ERROR = 2 PREPAYMENT_GENERATE_ERROR = 3 NEW_CF_GENERATE_ERROR = 4 UNEXPECTED_ERROR = 5 CUSTOMIZING_ERROR = 6
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_SAPLJBRZ_401 User Exit for Determining Prepayment Percentages
IMPORTING Parameters details for ISB_PREPAYMENT_DURATION_CALC
I_VDARL - Stammdaten Darlehen
Data type: VDARLOptional: No
Call by Reference: No ( called with pass by value option)
I_VZZKOKO - Konditionskopf Darlehen
Data type: VZZKOKOOptional: No
Call by Reference: No ( called with pass by value option)
I_JBIXGSC - Objektinformationen Darlehen
Data type: JBIXGSCOptional: No
Call by Reference: No ( called with pass by value option)
I_SZSART - Zahlungsstromtyp
Data type: JBDZSKO-SZSARTOptional: No
Call by Reference: No ( called with pass by value option)
I_JBTKREG - Kalkulationsregel
Data type: JBTKREGOptional: No
Call by Reference: No ( called with pass by value option)
I_KZ_DETAILPROT - Kennzeichen für Detailprotokoll
Data type: CDefault: ' '
Optional: Yes
Call by Reference: No ( called with pass by value option)
EXPORTING Parameters details for ISB_PREPAYMENT_DURATION_CALC
O_JBDZSKO - Zahlungsstromkopf
Data type: JBDZSKOOptional: No
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for ISB_PREPAYMENT_DURATION_CALC
I_VVZZKOPO - Tabelle Konditionspositionen Darlehen
Data type: VVZZKOPOOptional: No
Call by Reference: No ( called with pass by value option)
O_JBDZSTR_TAB - Zahlungsstrom (Bewegungen)
Data type: JBDZSTROptional: No
Call by Reference: No ( called with pass by value option)
IO_SPROT_TAB -
Data type: SPROT_KOptional: No
Call by Reference: No ( called with pass by value option)
I_A_VZZBEPP - Tabelle Auszahlungen
Data type: VZZBEPPOptional: No
Call by Reference: No ( called with pass by value option)
I_OTHER_VZZBEPP - Tabelle sonstige Bewegungen
Data type: VZZBEPPOptional: Yes
Call by Reference: No ( called with pass by value option)
I_TZB0A - Tabelle Bewegungsarten
Data type: TZB0AOptional: No
Call by Reference: No ( called with pass by value option)
I_TZPA - Tabelle Produktarten
Data type: TZPAOptional: No
Call by Reference: No ( called with pass by value option)
I_TZPAB - Tabelle Produktarten/Bukrs
Data type: TZPABOptional: No
Call by Reference: No ( called with pass by value option)
I_TZK01 - Tabelle Konditionsarten
Data type: TZK01Optional: No
Call by Reference: No ( called with pass by value option)
I_TZK02 - Tabelle Zuordnung Kond.art - Kond.Grp.
Data type: TZK02Optional: No
Call by Reference: No ( called with pass by value option)
I_KAPITALMINDERUNGEN - Tabelle für Kapitalminderungen
Data type: VVZZKOPOOptional: Yes
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
INPUT_ERROR - Eingabefehler
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
CF_GENERATE_ERROR - Zahlungsstrom wurde nicht erzeugt
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
PREPAYMENT_GENERATE_ERROR - Fehler bei Prepayment-Ermittlung
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
NEW_CF_GENERATE_ERROR - Fehler bei Erzeugung des korrigierten ZSTRs
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
UNEXPECTED_ERROR - unerwarteter (-> fataler) Fehler
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
CUSTOMIZING_ERROR - fataler Fehler im Customizing
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for ISB_PREPAYMENT_DURATION_CALC 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_i_vdarl | TYPE VDARL, " | |||
| lv_o_jbdzsko | TYPE JBDZSKO, " | |||
| lt_i_vvzzkopo | TYPE STANDARD TABLE OF VVZZKOPO, " | |||
| lv_input_error | TYPE VVZZKOPO, " | |||
| lt_o_jbdzstr_tab | TYPE STANDARD TABLE OF JBDZSTR, " | |||
| lt_io_sprot_tab | TYPE STANDARD TABLE OF SPROT_K, " | |||
| lv_i_vzzkoko | TYPE VZZKOKO, " | |||
| lt_i_a_vzzbepp | TYPE STANDARD TABLE OF VZZBEPP, " | |||
| lv_cf_generate_error | TYPE VZZBEPP, " | |||
| lv_i_jbixgsc | TYPE JBIXGSC, " | |||
| lt_i_other_vzzbepp | TYPE STANDARD TABLE OF VZZBEPP, " | |||
| lv_prepayment_generate_error | TYPE VZZBEPP, " | |||
| lt_i_tzb0a | TYPE STANDARD TABLE OF TZB0A, " | |||
| lv_i_szsart | TYPE JBDZSKO-SZSART, " | |||
| lv_new_cf_generate_error | TYPE JBDZSKO, " | |||
| lt_i_tzpa | TYPE STANDARD TABLE OF TZPA, " | |||
| lv_i_jbtkreg | TYPE JBTKREG, " | |||
| lv_unexpected_error | TYPE JBTKREG, " | |||
| lt_i_tzpab | TYPE STANDARD TABLE OF TZPAB, " | |||
| lv_i_kz_detailprot | TYPE C, " ' ' | |||
| lv_customizing_error | TYPE C, " | |||
| lt_i_tzk01 | TYPE STANDARD TABLE OF TZK01, " | |||
| lt_i_tzk02 | TYPE STANDARD TABLE OF TZK02, " | |||
| lt_i_kapitalminderungen | TYPE STANDARD TABLE OF VVZZKOPO. " |
|   CALL FUNCTION 'ISB_PREPAYMENT_DURATION_CALC' "IS-B: Bestimmt einen IS-B Zahlungsstrom gemäß Prepayment-Ansatz |
| EXPORTING | ||
| I_VDARL | = lv_i_vdarl | |
| I_VZZKOKO | = lv_i_vzzkoko | |
| I_JBIXGSC | = lv_i_jbixgsc | |
| I_SZSART | = lv_i_szsart | |
| I_JBTKREG | = lv_i_jbtkreg | |
| I_KZ_DETAILPROT | = lv_i_kz_detailprot | |
| IMPORTING | ||
| O_JBDZSKO | = lv_o_jbdzsko | |
| TABLES | ||
| I_VVZZKOPO | = lt_i_vvzzkopo | |
| O_JBDZSTR_TAB | = lt_o_jbdzstr_tab | |
| IO_SPROT_TAB | = lt_io_sprot_tab | |
| I_A_VZZBEPP | = lt_i_a_vzzbepp | |
| I_OTHER_VZZBEPP | = lt_i_other_vzzbepp | |
| I_TZB0A | = lt_i_tzb0a | |
| I_TZPA | = lt_i_tzpa | |
| I_TZPAB | = lt_i_tzpab | |
| I_TZK01 | = lt_i_tzk01 | |
| I_TZK02 | = lt_i_tzk02 | |
| I_KAPITALMINDERUNGEN | = lt_i_kapitalminderungen | |
| EXCEPTIONS | ||
| INPUT_ERROR = 1 | ||
| CF_GENERATE_ERROR = 2 | ||
| PREPAYMENT_GENERATE_ERROR = 3 | ||
| NEW_CF_GENERATE_ERROR = 4 | ||
| UNEXPECTED_ERROR = 5 | ||
| CUSTOMIZING_ERROR = 6 | ||
| . " ISB_PREPAYMENT_DURATION_CALC | ||
ABAP code using 7.40 inline data declarations to call FM ISB_PREPAYMENT_DURATION_CALC
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 SZSART FROM JBDZSKO INTO @DATA(ld_i_szsart). | ||||
| DATA(ld_i_kz_detailprot) | = ' '. | |||
Search for further information about these or an SAP related objects