SAP ISU_EDM_DETERM_USAGE_FACTOR Function Module for Determination of Current and Future Usage Factor
ISU_EDM_DETERM_USAGE_FACTOR is a standard isu edm determ usage factor SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for Determination of Current and Future Usage Factor 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 isu edm determ usage factor FM, simply by entering the name ISU_EDM_DETERM_USAGE_FACTOR into the relevant SAP transaction such as SE37 or SE38.
Function Group: EEDM_USAGEFACTOR
Program Name: SAPLEEDM_USAGEFACTOR
Main Program: SAPLEEDM_USAGEFACTOR
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function ISU_EDM_DETERM_USAGE_FACTOR 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 'ISU_EDM_DETERM_USAGE_FACTOR'"Determination of Current and Future Usage Factor.
EXPORTING
X_OBJTYPE = "Reference Obj. Type
* X_BCANCEL_DATA = "Data Bill. Revers. Update: ERCH, ETRG, EITR, Offsetting Erch
* X_I_USAGE_OPER = "Table of Usage Factors for Each Operand
* X_IALLEVER = "Standard Table for EVER Structure
* X_UF_CUST = "Customizing for Usage Factor Update
* X_HISTOBJKEY = "Key of Inducing Object
* X_HISTDATA = "Table of Usage Factor Applied to a Load Profile (History)
X_OBJKEY = "Object Key
X_AB = "Date from Which a Time Slice is Valid
X_BIS = "Date from Which a Time Slice is Valid
* X_MASS = "Unit of Meas.
* X_COMPT = "INTERNAL: calculation format for readings and consumption
X_WMODE = "Processing Mode (1 = Display, 2 = Change, 3 = Create...)
* X_ABRVORG = "Billing Transaction
* X_BILLING_DATA = "Billing data
TABLES
YT_EUFASS = "Allocation of Usage Factor to any BOR Objects
YT_ELPASS = "Allocation of Load Profiles to any BOR Objects
EXCEPTIONS
SYSTEM_ERROR = 1 NOT_FOUND = 2 SYNTHPROF_NOT_FOUND = 3
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_SAPLEEDM_USAGEFACTOR_001 Consumption Factor Determination: Filter Out Allocations
EXIT_SAPLEEDM_USAGEFACTOR_002 Determination of Relevant Period
EXIT_SAPLEEDM_USAGEFACTOR_003 Determination of Future Consumption Factor
IMPORTING Parameters details for ISU_EDM_DETERM_USAGE_FACTOR
X_OBJTYPE - Reference Obj. Type
Data type: ELPASS-OBJTYPEOptional: No
Call by Reference: Yes
X_BCANCEL_DATA - Data Bill. Revers. Update: ERCH, ETRG, EITR, Offsetting Erch
Data type: ISU2A_BCANCEL_DATAOptional: Yes
Call by Reference: Yes
X_I_USAGE_OPER - Table of Usage Factors for Each Operand
Data type: ISU2A_IUSAGE_OPEROptional: Yes
Call by Reference: Yes
X_IALLEVER - Standard Table for EVER Structure
Data type: ISU2A_IEVEROptional: Yes
Call by Reference: Yes
X_UF_CUST - Customizing for Usage Factor Update
Data type: ITUF_CUSTOptional: Yes
Call by Reference: Yes
X_HISTOBJKEY - Key of Inducing Object
Data type: E_HISTOBJECTEUFASSOptional: Yes
Call by Reference: Yes
X_HISTDATA - Table of Usage Factor Applied to a Load Profile (History)
Data type: ISULP_IEUFASS_HISTOptional: Yes
Call by Reference: Yes
X_OBJKEY - Object Key
Data type: ELPASS-OBJKEYOptional: No
Call by Reference: Yes
X_AB - Date from Which a Time Slice is Valid
Data type: EUFASS-ABOptional: No
Call by Reference: Yes
X_BIS - Date from Which a Time Slice is Valid
Data type: EUFASS-BISOptional: No
Call by Reference: Yes
X_MASS - Unit of Meas.
Data type: EPROFHEAD-MASSOptional: Yes
Call by Reference: Yes
X_COMPT - INTERNAL: calculation format for readings and consumption
Data type: REABLD-COMPTOptional: Yes
Call by Reference: Yes
X_WMODE - Processing Mode (1 = Display, 2 = Change, 3 = Create...)
Data type: REGEN-WMODEOptional: No
Call by Reference: Yes
X_ABRVORG - Billing Transaction
Data type: ETRG-ABRVORGOptional: Yes
Call by Reference: Yes
X_BILLING_DATA - Billing data
Data type: ISU2A_BILLING_DATAOptional: Yes
Call by Reference: Yes
TABLES Parameters details for ISU_EDM_DETERM_USAGE_FACTOR
YT_EUFASS - Allocation of Usage Factor to any BOR Objects
Data type: EUFASSOptional: No
Call by Reference: Yes
YT_ELPASS - Allocation of Load Profiles to any BOR Objects
Data type: ELPASSOptional: No
Call by Reference: Yes
EXCEPTIONS details
SYSTEM_ERROR - System Error
Data type:Optional: No
Call by Reference: Yes
NOT_FOUND - Object Not Found
Data type:Optional: No
Call by Reference: Yes
SYNTHPROF_NOT_FOUND -
Data type:Optional: No
Call by Reference: Yes
Copy and paste ABAP code example for ISU_EDM_DETERM_USAGE_FACTOR 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_x_objtype | TYPE ELPASS-OBJTYPE, " | |||
| lt_yt_eufass | TYPE STANDARD TABLE OF EUFASS, " | |||
| lv_system_error | TYPE EUFASS, " | |||
| lv_x_bcancel_data | TYPE ISU2A_BCANCEL_DATA, " | |||
| lv_x_i_usage_oper | TYPE ISU2A_IUSAGE_OPER, " | |||
| lv_x_iallever | TYPE ISU2A_IEVER, " | |||
| lv_x_uf_cust | TYPE ITUF_CUST, " | |||
| lv_x_histobjkey | TYPE E_HISTOBJECTEUFASS, " | |||
| lv_x_histdata | TYPE ISULP_IEUFASS_HIST, " | |||
| lv_x_objkey | TYPE ELPASS-OBJKEY, " | |||
| lv_not_found | TYPE ELPASS, " | |||
| lt_yt_elpass | TYPE STANDARD TABLE OF ELPASS, " | |||
| lv_x_ab | TYPE EUFASS-AB, " | |||
| lv_synthprof_not_found | TYPE EUFASS, " | |||
| lv_x_bis | TYPE EUFASS-BIS, " | |||
| lv_x_mass | TYPE EPROFHEAD-MASS, " | |||
| lv_x_compt | TYPE REABLD-COMPT, " | |||
| lv_x_wmode | TYPE REGEN-WMODE, " | |||
| lv_x_abrvorg | TYPE ETRG-ABRVORG, " | |||
| lv_x_billing_data | TYPE ISU2A_BILLING_DATA. " |
|   CALL FUNCTION 'ISU_EDM_DETERM_USAGE_FACTOR' "Determination of Current and Future Usage Factor |
| EXPORTING | ||
| X_OBJTYPE | = lv_x_objtype | |
| X_BCANCEL_DATA | = lv_x_bcancel_data | |
| X_I_USAGE_OPER | = lv_x_i_usage_oper | |
| X_IALLEVER | = lv_x_iallever | |
| X_UF_CUST | = lv_x_uf_cust | |
| X_HISTOBJKEY | = lv_x_histobjkey | |
| X_HISTDATA | = lv_x_histdata | |
| X_OBJKEY | = lv_x_objkey | |
| X_AB | = lv_x_ab | |
| X_BIS | = lv_x_bis | |
| X_MASS | = lv_x_mass | |
| X_COMPT | = lv_x_compt | |
| X_WMODE | = lv_x_wmode | |
| X_ABRVORG | = lv_x_abrvorg | |
| X_BILLING_DATA | = lv_x_billing_data | |
| TABLES | ||
| YT_EUFASS | = lt_yt_eufass | |
| YT_ELPASS | = lt_yt_elpass | |
| EXCEPTIONS | ||
| SYSTEM_ERROR = 1 | ||
| NOT_FOUND = 2 | ||
| SYNTHPROF_NOT_FOUND = 3 | ||
| . " ISU_EDM_DETERM_USAGE_FACTOR | ||
ABAP code using 7.40 inline data declarations to call FM ISU_EDM_DETERM_USAGE_FACTOR
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 OBJTYPE FROM ELPASS INTO @DATA(ld_x_objtype). | ||||
| "SELECT single OBJKEY FROM ELPASS INTO @DATA(ld_x_objkey). | ||||
| "SELECT single AB FROM EUFASS INTO @DATA(ld_x_ab). | ||||
| "SELECT single BIS FROM EUFASS INTO @DATA(ld_x_bis). | ||||
| "SELECT single MASS FROM EPROFHEAD INTO @DATA(ld_x_mass). | ||||
| "SELECT single COMPT FROM REABLD INTO @DATA(ld_x_compt). | ||||
| "SELECT single WMODE FROM REGEN INTO @DATA(ld_x_wmode). | ||||
| "SELECT single ABRVORG FROM ETRG INTO @DATA(ld_x_abrvorg). | ||||
Search for further information about these or an SAP related objects