SAP FIMA_PRINCIPAL_CALC_VIA_IRR Function Module for









FIMA_PRINCIPAL_CALC_VIA_IRR is a standard fima principal calc via irr 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 fima principal calc via irr FM, simply by entering the name FIMA_PRINCIPAL_CALC_VIA_IRR into the relevant SAP transaction such as SE37 or SE38.

Function Group: FF16
Program Name: SAPLFF16
Main Program: SAPLFF16
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:



Function FIMA_PRINCIPAL_CALC_VIA_IRR 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 'FIMA_PRINCIPAL_CALC_VIA_IRR'"
EXPORTING
I_LEISTE = "
* I_ZVRHYEFF = 12 "
* I_TAKE_DUEDATE = ' ' "
* I_TAKE_RSALDO = 'X' "
* I_RUNIT = '0.00001' "Rounding unit in FIMA
* I_FORMROUTINE = "Function Module Name
* I_PROGRAMNAME = "ABAP Program: Current Main Program
I_EFFZINS = "
* I_DRSALDO = '00000000' "
* I_FLG_IEFFZ = ' ' "
* I_RSALDO = 0 "Rem. bal.
* I_SEFFMETH = '2' "Effective interest method
* I_SZBMETH = '1' "Interest calculation method
* I_SKALID = ' ' "Factory Calendar for Interest Calculation
* I_WAEHRUNG = ' ' "

IMPORTING
E_DATE_BALANCE = "
E_BALANCE = "Remaining Capital
E_Y = "
E_PRINCIPAL = "
E_ITER_RESULT = "
E_EFFZINS = "

TABLES
IT_KOND = "
IT_BEWE = "Transfer Structure: Flow Records in Cash Flow Calculator
* IT_BBAS = "Calculation Bases (Cash Flow)
* ET_KOND = "
ET_BEWE = "Transfer Structure: Flow Records in Cash Flow Calculator
* ET_BBAS = "Calculation Bases (Cash Flow)
* ET_EFFZ = "Flow records rel.to effect.int.rate

EXCEPTIONS
NOT_SOLVABLE = 1
.



IMPORTING Parameters details for FIMA_PRINCIPAL_CALC_VIA_IRR

I_LEISTE -

Data type: VTBLEISTE
Optional: No
Call by Reference: Yes

I_ZVRHYEFF -

Data type:
Default: 12
Optional: Yes
Call by Reference: Yes

I_TAKE_DUEDATE -

Data type: XFELD
Default: ' '
Optional: Yes
Call by Reference: Yes

I_TAKE_RSALDO -

Data type: XFELD
Default: 'X'
Optional: Yes
Call by Reference: Yes

I_RUNIT - Rounding unit in FIMA

Data type: TFMPRUNIT
Default: '0.00001'
Optional: Yes
Call by Reference: Yes

I_FORMROUTINE - Function Module Name

Data type: RS38L_FNAM
Optional: Yes
Call by Reference: Yes

I_PROGRAMNAME - ABAP Program: Current Main Program

Data type: SYREPID
Optional: Yes
Call by Reference: Yes

I_EFFZINS -

Data type: F
Optional: No
Call by Reference: Yes

I_DRSALDO -

Data type: DDISPO
Default: '00000000'
Optional: Yes
Call by Reference: Yes

I_FLG_IEFFZ -

Data type:
Default: SPACE
Optional: Yes
Call by Reference: Yes

I_RSALDO - Rem. bal.

Data type:
Optional: Yes
Call by Reference: Yes

I_SEFFMETH - Effective interest method

Data type:
Default: '2'
Optional: Yes
Call by Reference: Yes

I_SZBMETH - Interest calculation method

Data type:
Default: '1'
Optional: Yes
Call by Reference: Yes

I_SKALID - Factory Calendar for Interest Calculation

Data type: TFMSKALIDWT
Default: SPACE
Optional: Yes
Call by Reference: Yes

I_WAEHRUNG -

Data type: WWHR
Default: SPACE
Optional: Yes
Call by Reference: Yes

EXPORTING Parameters details for FIMA_PRINCIPAL_CALC_VIA_IRR

E_DATE_BALANCE -

Data type: SY-DATUM
Optional: No
Call by Reference: Yes

E_BALANCE - Remaining Capital

Data type: TFM_BSALDO
Optional: No
Call by Reference: Yes

E_Y -

Data type: F
Optional: No
Call by Reference: Yes

E_PRINCIPAL -

Data type: VTBBEWE-BNWHR
Optional: No
Call by Reference: Yes

E_ITER_RESULT -

Data type: F
Optional: No
Call by Reference: No ( called with pass by value option)

E_EFFZINS -

Data type: F
Optional: No
Call by Reference: Yes

TABLES Parameters details for FIMA_PRINCIPAL_CALC_VIA_IRR

IT_KOND -

Data type: VTBKOND
Optional: No
Call by Reference: No ( called with pass by value option)

IT_BEWE - Transfer Structure: Flow Records in Cash Flow Calculator

Data type: VTBBEWE
Optional: No
Call by Reference: No ( called with pass by value option)

IT_BBAS - Calculation Bases (Cash Flow)

Data type: VZZBBAS
Optional: Yes
Call by Reference: No ( called with pass by value option)

ET_KOND -

Data type: VTBKOND
Optional: Yes
Call by Reference: No ( called with pass by value option)

ET_BEWE - Transfer Structure: Flow Records in Cash Flow Calculator

Data type: VTBBEWE
Optional: No
Call by Reference: No ( called with pass by value option)

ET_BBAS - Calculation Bases (Cash Flow)

Data type: VZZBBAS
Optional: Yes
Call by Reference: No ( called with pass by value option)

ET_EFFZ - Flow records rel.to effect.int.rate

Data type: VZZEFFZ
Optional: Yes
Call by Reference: No ( called with pass by value option)

EXCEPTIONS details

NOT_SOLVABLE -

Data type:
Optional: No
Call by Reference: No ( called with pass by value option)

Copy and paste ABAP code example for FIMA_PRINCIPAL_CALC_VIA_IRR 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:
lt_it_kond  TYPE STANDARD TABLE OF VTBKOND, "   
lv_i_leiste  TYPE VTBLEISTE, "   
lv_not_solvable  TYPE VTBLEISTE, "   
lv_e_date_balance  TYPE SY-DATUM, "   
lv_i_zvrhyeff  TYPE SY, "   12
lv_i_take_duedate  TYPE XFELD, "   ' '
lv_i_take_rsaldo  TYPE XFELD, "   'X'
lv_i_runit  TYPE TFMPRUNIT, "   '0,00001'
lv_i_formroutine  TYPE RS38L_FNAM, "   
lv_i_programname  TYPE SYREPID, "   
lt_it_bewe  TYPE STANDARD TABLE OF VTBBEWE, "   
lv_e_balance  TYPE TFM_BSALDO, "   
lv_i_effzins  TYPE F, "   
lv_e_y  TYPE F, "   
lt_it_bbas  TYPE STANDARD TABLE OF VZZBBAS, "   
lv_i_drsaldo  TYPE DDISPO, "   '00000000'
lt_et_kond  TYPE STANDARD TABLE OF VTBKOND, "   
lv_e_principal  TYPE VTBBEWE-BNWHR, "   
lv_i_flg_ieffz  TYPE VTBBEWE, "   SPACE
lt_et_bewe  TYPE STANDARD TABLE OF VTBBEWE, "   
lv_i_rsaldo  TYPE VTBBEWE, "   0
lv_e_iter_result  TYPE F, "   
lt_et_bbas  TYPE STANDARD TABLE OF VZZBBAS, "   
lv_e_effzins  TYPE F, "   
lv_i_seffmeth  TYPE F, "   '2'
lt_et_effz  TYPE STANDARD TABLE OF VZZEFFZ, "   
lv_i_szbmeth  TYPE VZZEFFZ, "   '1'
lv_i_skalid  TYPE TFMSKALIDWT, "   SPACE
lv_i_waehrung  TYPE WWHR. "   SPACE

  CALL FUNCTION 'FIMA_PRINCIPAL_CALC_VIA_IRR'  "
    EXPORTING
         I_LEISTE = lv_i_leiste
         I_ZVRHYEFF = lv_i_zvrhyeff
         I_TAKE_DUEDATE = lv_i_take_duedate
         I_TAKE_RSALDO = lv_i_take_rsaldo
         I_RUNIT = lv_i_runit
         I_FORMROUTINE = lv_i_formroutine
         I_PROGRAMNAME = lv_i_programname
         I_EFFZINS = lv_i_effzins
         I_DRSALDO = lv_i_drsaldo
         I_FLG_IEFFZ = lv_i_flg_ieffz
         I_RSALDO = lv_i_rsaldo
         I_SEFFMETH = lv_i_seffmeth
         I_SZBMETH = lv_i_szbmeth
         I_SKALID = lv_i_skalid
         I_WAEHRUNG = lv_i_waehrung
    IMPORTING
         E_DATE_BALANCE = lv_e_date_balance
         E_BALANCE = lv_e_balance
         E_Y = lv_e_y
         E_PRINCIPAL = lv_e_principal
         E_ITER_RESULT = lv_e_iter_result
         E_EFFZINS = lv_e_effzins
    TABLES
         IT_KOND = lt_it_kond
         IT_BEWE = lt_it_bewe
         IT_BBAS = lt_it_bbas
         ET_KOND = lt_et_kond
         ET_BEWE = lt_et_bewe
         ET_BBAS = lt_et_bbas
         ET_EFFZ = lt_et_effz
    EXCEPTIONS
        NOT_SOLVABLE = 1
. " FIMA_PRINCIPAL_CALC_VIA_IRR




ABAP code using 7.40 inline data declarations to call FM FIMA_PRINCIPAL_CALC_VIA_IRR

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_e_date_balance).
 
DATA(ld_i_zvrhyeff) = 12.
 
DATA(ld_i_take_duedate) = ' '.
 
DATA(ld_i_take_rsaldo) = 'X'.
 
DATA(ld_i_runit) = '0.00001'.
 
 
 
 
 
 
 
 
DATA(ld_i_drsaldo) = '00000000'.
 
 
"SELECT single BNWHR FROM VTBBEWE INTO @DATA(ld_e_principal).
 
DATA(ld_i_flg_ieffz) = ' '.
 
 
 
 
 
 
DATA(ld_i_seffmeth) = '2'.
 
 
DATA(ld_i_szbmeth) = '1'.
 
DATA(ld_i_skalid) = ' '.
 
DATA(ld_i_waehrung) = ' '.
 


Search for further information about these or an SAP related objects



Comments on this SAP object

What made you want to lookup this SAP object? Please tell us what you were looking for and anything you would like to be included on this page!