SAP ABAP Class CL_FDT_FUNCTION (FDT: Function)
Hierarchy
SAP_BASIS (Software Component) SAP Basis Component
   BC-SRV-BR (Application Component) BRFplus - ABAP-Based Business Rules
     SFDT_CORE (Package) BRFplus: Core
Meta Relationship - Using
# Relationship type Using Short Description Created on
1 Inheritance (c INHERITING FROM c_ref)  CL_FDT_MAINTENANCE FDT: Abstract Maintenance Class 20050907
2 Interface implementation (CLASS c. INTERFACES i_ref)  IF_FDT_FUNCTION FDT: Function 20050822
Properties
Class CL_FDT_FUNCTION  
Short Description FDT: Function    
Super Class CL_FDT_MAINTENANCE FDT: Abstract Maintenance Class 
Instantiability of a Class 0  Private 
Final    
General Data
Message Class    
Program status     
Category 0   
Package SFDT_CORE   BRFplus: Core 
Created 20050822   SAP 
Last change 20140121   SAP 
Shared Memory-enabled    
Fixed point arithmetic    
Unicode checks active    
Forward declarations
# Type group / Object type Type Type Description
1 ABAP Type group use (TYPE-POOLS tp)  Type group use (TYPE-POOLS tp)
2 CL_FDT_CC_SERVICES Forward declaration class (CLASS c DEFINITION DEFERRED)  Forward declaration class (CLASS c DEFINITION DEFERRED)
3 CL_FDT_WD_LEAN_TRACE_HELPER Forward declaration class (CLASS c DEFINITION DEFERRED)  Forward declaration class (CLASS c DEFINITION DEFERRED)
4 CL_FDT_WD_LEAN_TRACE_MODEL Forward declaration class (CLASS c DEFINITION DEFERRED)  Forward declaration class (CLASS c DEFINITION DEFERRED)
5 IF_FDT_FUNCTION Forward declaration interface (INTERFACE i DEFINITION DEF...  Forward declaration interface (INTERFACE i DEFINITION DEF...
6 IF_FDT_LEAN_TRACE Forward declaration interface (INTERFACE i DEFINITION DEF...  Forward declaration interface (INTERFACE i DEFINITION DEF...
7 IF_FDT_TYPES Forward declaration interface (INTERFACE i DEFINITION DEF...  Forward declaration interface (INTERFACE i DEFINITION DEF...
8 SEOC Type group use (TYPE-POOLS tp)  Type group use (TYPE-POOLS tp)
9 SEOK Type group use (TYPE-POOLS tp)  Type group use (TYPE-POOLS tp)
10 SEOP Type group use (TYPE-POOLS tp)  Type group use (TYPE-POOLS tp)
Interfaces
# Interface Abstract Final Description Created on
1 IF_FDT_FUNCTION FDT: Function 20050822
Friends
# Friend Modeled only Created on Description
1 CL_FDT_EXPRESSION 20100908 FDT: Abstract Expression Class
2 CL_FDT_FACTORY 20050822 FDT: Factory
3 CL_FDT_FUNCTION_PROCESS 20070718 FDT: Function Process Service
Attributes
# Attribute Level Visibility Read only Typing Associated Type Initial Value Description Created on
1 GC_FNCT_0100 Constant Private Type reference (TYPE) TABNAME 'FDT_FNCT_0100' Table Name 20070819
2 GC_FNCT_0110 Constant Private Type reference (TYPE) TABNAME 'FDT_FNCT_0110' Table Name 20070819
3 GC_VARNAME_RESULT Constant Protected Type reference (TYPE) STRING 'ea_result_data' variable name for result data in generated code 20061005
4 GV_DO_NOT_USE_GEN_CODE Static Attribute Private Type reference (TYPE) ABAP_BOOL 20100319
5 GV_ENFORCE_GENERATED_RESULT Static Attribute Protected Type reference (TYPE) ABAP_BOOL 20070119
6 MS_BUFFER Instance attribute Private Type reference (TYPE) S_BUFFER Transactional Data Buffer 20050924
7 MS_BUFFER_DB Instance attribute Private Type reference (TYPE) S_BUFFER Transactional Data Buffer 20050924
8 MS_PROCESS_BUF_GEN_CODE Instance attribute Private Type reference (TYPE) CL_FDT_CC_SERVICES=>S_DEVELOPMENT_OBJECT 20070917
9 MV_ID Instance attribute Private Attribute reference (LIKE) 20050924
10 MV_MS_BUFFER_DB_LOADED Instance attribute Private Type reference (TYPE) ABAP_BOOL ABAP_TRUE: MS_BUFFER_DB is loaded 20070813
11 MV_MS_BUFFER_LOADED Instance attribute Private Type reference (TYPE) ABAP_BOOL ABAP_TRUE: MS_BUFFER is loaded 20060801
12 MV_PROCESS_BUF_EXPRESSION_ID Instance attribute Private Type reference (TYPE) IF_FDT_TYPES=>ID 20070917
13 MV_PROCESS_BUF_FUNCTION_MODE Instance attribute Private Type reference (TYPE) IF_FDT_FUNCTION=>FUNCTION_MODE 20070917
14 MV_PROCESS_BUF_RESULT_ID Instance attribute Private Type reference (TYPE) IF_FDT_TYPES=>ID 20070917
15 MV_PROCESS_BUF_TIMESTAMP Instance attribute Private Type reference (TYPE) IF_FDT_TYPES=>TIMESTAMP 20070917
16 MV_PROCESS_BUF_WITH_TRACE Instance attribute Private Type reference (TYPE) ABAP_BOOL 20090325
Methods
# Method Level Visibility Method type Description Created on
1 BUILD_CONTEXT_FROM_IV_TAB Instance method Private Method Build Context from ID/Value-Table 20070115
2 BUILD_RESULT Instance method Private Method Build Result objects 20080924
3 CHECK_ASSIGNED_RULESETS Instance method Public Method Checks all assigned rulesets 20091210
4 CHECK_CONTEXT_CLASS Instance method Private Method Check the context class 20051208
5 CHECK_FUNCTION_MODE Instance method Private Method Check the function mode 20060901
6 CHECK_INACTIVE_PROC_REL_OBJS Instance method Private Method Gives all objects with an inactive version back 20110214
7 CHECK_INTERPRETED_RESULT Instance method Private Method check interpreted result agains result from generated coding 20061108
8 CHECK_NAME Instance method Private Method Checks application name (GTABKEY) 20060209
9 CONSTRUCTOR Instance method Public Constructor 20070823
10 DELETE_PROCESSING_BUFFER Instance method Public Method Delete processing relevant buffered information 20070917
11 DONT_USE_GENERATED_CODE Static method Public Method 20061108
12 GET_CONTEXT_IDS Instance method Protected Method Get IDs of the Context Elements 20100908
13 GET_ENRICHED_CONTEXT Instance method Public Method Returns the context IDs with table lines 20110221
14 GET_INACTIVE_PROC_REL_OBJECTS Instance method Public Method Returns all inactive objects which are processing relvant 20110214
15 GET_OLD_REGISTER_KEY Instance method Private Method Returns old name & software_component for reregister GTABKEY 20080402
16 GET_TEMPLATE_FOR_PROCESSING Instance method Public Method Get Template Coding for Processing of the Function 20101108
17 LOAD_BUFFER Instance method Private Method Load the buffer 20050924
18 LOAD_BUFFER_DB Instance method Private Method Load the buffer from data base 20050924
19 PROCESS_EXPRESSION Instance method Private Method Process the expression 20060902
20 PROCESS_GENERATION Instance method Private Method Process the expression 20090325
21 SAVE_BUFFER_DB Instance method Private Method Save the buffer into the data base 20050924
22 SET_BUFFER Instance method Private Method Set the buffer 20050924
23 SET_ENFORCE_GENERATED_RESULT Static method Public Method For Unit Test: ensure that the generated result is returned 20070119
24 USE_GENERATED_CODE Static method Public Method 20061109
Events
Class CL_FDT_FUNCTION has no event.
Types
# Type Visibility Typing Associated Type Description Created on Type Source
1 S_BUFFER Private See coding Transactional Data Buffer 20050924 BEGIN OF s_buffer, result_id TYPE if_fdt_types=>id, ts_context_id TYPE if_fdt_types=>ts_object_id, context_class TYPE seoclsname, expression_id TYPE if_fdt_types=>id, filter_id TYPE if_fdt_types=>id, function_mode TYPE if_fdt_function=>function_mode, * A more strict context and result management is introduces with EHP2. * Previously it was possible to reuse UUIDs in context data objects. * E.g. DOBJ1 used UUID1 as component and DOBJ2 did the same. With the * new more strict approach this is not possible. Any DOBJs used in * contect and result need to be deeply unique. To be able to distinguish * between "old" and "new" logic, the flag is introduced. For old functions * there is a "right of continuance". new_context TYPE abap_bool, END OF s_buffer
2 S_ID_STACK Private See coding 20110214 BEGIN OF s_id_stack, id TYPE if_fdt_types=>id, stack TYPE if_fdt_types=>t_object_id, END OF s_id_stack
3 TH_ID_STACK Private See coding 20110214 th_id_stack TYPE HASHED TABLE OF s_id_stack WITH UNIQUE KEY id
Method Signatures

Method BUILD_CONTEXT_FROM_IV_TAB Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning EO_CONTEXT Value transfer Object reference (TYPE REF TO) IF_FDT_CONTEXT FDT: Context 20070115
2 Importing ITS_ID_VALUE Call by reference Type reference (TYPE) IF_FDT_TYPES=>TS_ID_VALUE 20070115
# Exception Resumable Description Created on
1 CX_FDT_INPUT FDT: Invalid Input 20070115

Method BUILD_RESULT Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_TIMESTAMP Call by reference Type reference (TYPE) IF_FDT_TYPES=>TIMESTAMP Time Stamp (active version) 20080924
2 Returning RO_RESULT Value transfer Object reference (TYPE REF TO) IF_FDT_RESULT FDT: Result 20080924
# Exception Resumable Description Created on
1 CX_FDT FDT: Abstract Exception Class 20080924

Method CHECK_ASSIGNED_RULESETS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting ET_MESSAGE Call by reference Type reference (TYPE) IF_FDT_TYPES=>T_MESSAGE Messages 20091210

Method CHECK_ASSIGNED_RULESETS on class CL_FDT_FUNCTION has no exception.

Method CHECK_CONTEXT_CLASS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_CLASS Call by reference Type reference (TYPE) SEOCLSNAME Name of class 20051208
2 Returning RS_MESSAGE Value transfer Type reference (TYPE) IF_FDT_TYPES=>S_MESSAGE Meldung 20051208

Method CHECK_CONTEXT_CLASS on class CL_FDT_FUNCTION has no exception.

Method CHECK_FUNCTION_MODE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_FUNCTION_MODE Call by reference Type reference (TYPE) IF_FDT_FUNCTION=>FUNCTION_MODE Function Mode 20060901
2 Returning RS_MESSAGE Value transfer Type reference (TYPE) IF_FDT_TYPES=>S_MESSAGE Meldung 20060901

Method CHECK_FUNCTION_MODE on class CL_FDT_FUNCTION has no exception.

Method CHECK_INACTIVE_PROC_REL_OBJS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing CTH_INACTIVE_ID Call by reference Type reference (TYPE) TH_ID_STACK List of objects having an inactive version incl stack 20110214
2 Changing CTS_VISITED_ID Call by reference Type reference (TYPE) IF_FDT_TYPES=>TS_OBJECT_ID Already visited IDs 20110214
3 Changing CT_STACK Call by reference Type reference (TYPE) IF_FDT_TYPES=>T_OBJECT_ID Current stack 20110214
4 Importing ITS_ID Call by reference Type reference (TYPE) IF_FDT_TYPES=>TS_OBJECT_ID Starting ID table 20110214

Method CHECK_INACTIVE_PROC_REL_OBJS on class CL_FDT_FUNCTION has no exception.

Method CHECK_INTERPRETED_RESULT Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning EV_RESULT Value transfer Type reference (TYPE) ABAP_BOOL 20061108
2 Importing IO_CONTEXT Call by reference Object reference (TYPE REF TO) IF_FDT_CONTEXT FDT: Context 20061108
3 Importing IO_GEN_RESULT Call by reference Object reference (TYPE REF TO) IF_FDT_RESULT FDT: Result 20061108
4 Importing IO_PROCESSOR Call by reference Object reference (TYPE REF TO) IF_FDT_PROCESSOR FDT: Processor 20061108
5 Importing ITS_ID_VALUE Call by reference Type reference (TYPE) IF_FDT_TYPES=>TS_ID_VALUE 20070116
6 Importing IV_TIMESTAMP Call by reference Type reference (TYPE) IF_FDT_TYPES=>TIMESTAMP 20061108
# Exception Resumable Description Created on
1 CX_FDT FDT: Abstract Exception Class 20061108

Method CHECK_NAME Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_NAME Call by reference Type reference (TYPE) IF_FDT_TYPES=>NAME FDT: Name 20060209
2 Returning RS_MESSAGE Value transfer Type reference (TYPE) IF_FDT_TYPES=>S_MESSAGE Meldung 20060209

Method CHECK_NAME on class CL_FDT_FUNCTION has no exception.

Method CONSTRUCTOR Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_ID Call by reference Type reference (TYPE) IF_FDT_TYPES=>ID Universal Unique Identifier 20070823

Method CONSTRUCTOR on class CL_FDT_FUNCTION has no exception.

Method DELETE_PROCESSING_BUFFER Signature

Method DELETE_PROCESSING_BUFFER on class CL_FDT_FUNCTION has no parameter.
Method DELETE_PROCESSING_BUFFER on class CL_FDT_FUNCTION has no exception.

Method DONT_USE_GENERATED_CODE Signature

Method DONT_USE_GENERATED_CODE on class CL_FDT_FUNCTION has no parameter.
Method DONT_USE_GENERATED_CODE on class CL_FDT_FUNCTION has no exception.

Method GET_CONTEXT_IDS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_TIMESTAMP Call by reference Type reference (TYPE) TIMESTAMP UTC Time Stamp in Short Form (YYYYMMDDhhmmss) 20100908
2 Returning RTS_CONTEXT_ID Value transfer Type reference (TYPE) IF_FDT_TYPES=>TS_OBJECT_ID Object IDs as sorted table 20100908

Method GET_CONTEXT_IDS on class CL_FDT_FUNCTION has no exception.

Method GET_ENRICHED_CONTEXT Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_TIMESTAMP Call by reference Type reference (TYPE) IF_FDT_TYPES=>TIMESTAMP Time Stamp (active version, UTC) 20110221
2 Returning RTS_CONTEXT_ID Value transfer Type reference (TYPE) IF_FDT_TYPES=>TS_OBJECT_ID Object IDs as sorted table 20110221
# Exception Resumable Description Created on
1 CX_FDT_INPUT FDT: Invalid Input 20110221

Method GET_INACTIVE_PROC_REL_OBJECTS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting ETS_INACTIVE_OBJETCS Call by reference Type reference (TYPE) IF_FDT_TYPES=>TS_OBJECT_ID Object IDs as sorted table 20110214
2 Exporting ET_MESSAGE Call by reference Type reference (TYPE) IF_FDT_TYPES=>T_MESSAGE Messages 20110214

Method GET_INACTIVE_PROC_REL_OBJECTS on class CL_FDT_FUNCTION has no exception.

Method GET_OLD_REGISTER_KEY Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting EV_NAME Call by reference Type reference (TYPE) IF_FDT_TYPES=>NAME Name 20080402
# Exception Resumable Description Created on
1 CX_FDT_INPUT FDT: Invalid Input 20080402

Method GET_TEMPLATE_FOR_PROCESSING Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning ET_SOURCE_CODE Value transfer Type reference (TYPE) IF_FDT_TYPES=>T_SOURCE_CODE Table with Source Code 20101108
2 Importing IV_GET_VALUES Call by reference Type reference (TYPE) BOOLE_D ABAP_FALSE Display coding for getting context values after processing 20120116
3 Importing IV_LOCAL_TEMPLATE Call by reference Type reference (TYPE) BOOLE_D ABAP_FALSE Create a local and no remote template 20120423
4 Importing IV_SHOW_COMMENTS Call by reference Type reference (TYPE) BOOLE_D Data element for domain BOOLE: TRUE (='X') and FALSE (=' ') 20101126
5 Importing IV_SHOW_DDIC Call by reference Type reference (TYPE) BOOLE_D ABAP_FALSE Display coding with result in DDIC representation 20121008
6 Importing IV_TRACE_SETTING Call by reference Type reference (TYPE) BOOLE_D ABAP_FALSE Trace mode for code template 20101126

Method GET_TEMPLATE_FOR_PROCESSING on class CL_FDT_FUNCTION has no exception.

Method LOAD_BUFFER Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_TIMESTAMP Call by reference Type reference (TYPE) IF_FDT_TYPES=>TIMESTAMP Timestamp of active version 20070810
2 Importing IV_VERSION Call by reference Type reference (TYPE) IF_FDT_TYPES=>VERSION 20050924
3 Returning RS_BUFFER Value transfer Type reference (TYPE) S_BUFFER 20050924
# Exception Resumable Description Created on
1 CX_FDT_INPUT FDT: Invalid Input 20050924

Method LOAD_BUFFER_DB Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_VERSION Call by reference Type reference (TYPE) IF_FDT_TYPES=>VERSION 20050924
2 Returning RS_BUFFER Value transfer Type reference (TYPE) S_BUFFER 20050924
# Exception Resumable Description Created on
1 CX_FDT_INPUT 20050924

Method PROCESS_EXPRESSION Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IO_CONTEXT Call by reference Object reference (TYPE REF TO) IF_FDT_CONTEXT Context 20060902
2 Importing IO_PROCESSOR Call by reference Object reference (TYPE REF TO) IF_FDT_PROCESSOR Processor 20060902
3 Importing ITS_ID_VALUE Call by reference Type reference (TYPE) IF_FDT_TYPES=>TS_ID_VALUE 20070114
4 Importing IV_TIMESTAMP Call by reference Type reference (TYPE) IF_FDT_TYPES=>TIMESTAMP Timestamp 20060902
5 Returning RO_RESULT Value transfer Object reference (TYPE REF TO) IF_FDT_RESULT Result 20060902
# Exception Resumable Description Created on
1 CX_FDT FDT: Abstract Exception Class 20060902

Method PROCESS_GENERATION Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing CO_TRACE Call by reference Object reference (TYPE REF TO) IF_FDT_TRACE Trace 20131024
2 Exporting EO_RESULT Value transfer Object reference (TYPE REF TO) IF_FDT_RESULT Result 20090325
3 Exporting ET_MSG Call by reference Type reference (TYPE) IF_FDT_TYPES=>T_MESSAGE Messages 20091208
4 Exporting EV_RETRY Call by reference Type reference (TYPE) ABAP_BOOL 20091208
5 Importing IO_CONTEXT Call by reference Object reference (TYPE REF TO) IF_FDT_CONTEXT Context 20090325
6 Importing IO_PROCESSOR Call by reference Object reference (TYPE REF TO) IF_FDT_PROCESSOR Processor 20090325
7 Importing ITS_ID_VALUE Call by reference Type reference (TYPE) IF_FDT_TYPES=>TS_ID_VALUE 20090325
8 Importing IV_TIMESTAMP Call by reference Type reference (TYPE) IF_FDT_TYPES=>TIMESTAMP Timestamp 20090325
# Exception Resumable Description Created on
1 CX_FDT FDT: Abstract Exception Class 20090325

Method SAVE_BUFFER_DB Signature

Method SAVE_BUFFER_DB on class CL_FDT_FUNCTION has no parameter.
Method SAVE_BUFFER_DB on class CL_FDT_FUNCTION has no exception.

Method SET_BUFFER Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IS_BUFFER Call by reference Type reference (TYPE) S_BUFFER 20050924

Method SET_BUFFER on class CL_FDT_FUNCTION has no exception.

Method SET_ENFORCE_GENERATED_RESULT Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_ENFORCE_GENERATED_RESULT Call by reference Type reference (TYPE) ABAP_BOOL 20070119

Method SET_ENFORCE_GENERATED_RESULT on class CL_FDT_FUNCTION has no exception.

Method USE_GENERATED_CODE Signature

Method USE_GENERATED_CODE on class CL_FDT_FUNCTION has no parameter.
Method USE_GENERATED_CODE on class CL_FDT_FUNCTION has no exception.
History
Last changed by/on SAP  20140121 
SAP Release Created in 710