SAP ABAP Class CL_FDT_DECISION_TABLE_COMPARE (FDT: Decision Table Comparison Helper)
Hierarchy
SAP_BASIS (Software Component) SAP Basis Component
   BC-SRV-BR (Application Component) BRFplus - ABAP-Based Business Rules
     SFDT_EXPRESSIONS (Package) BRFplus: Expressions
Properties
Class CL_FDT_DECISION_TABLE_COMPARE  
Short Description FDT: Decision Table Comparison Helper    
Super Class    
Instantiability of a Class 0  Private 
Final    
General Data
Message Class    
Program status     
Category 0   
Package SFDT_EXPRESSIONS   BRFplus: Expressions 
Created 20121107   SAP 
Last change 20130531   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_DECISION_TABLE Forward declaration class (CLASS c DEFINITION DEFERRED)  Forward declaration class (CLASS c DEFINITION DEFERRED)
3 CL_FDT_MAINTENANCE Forward declaration class (CLASS c DEFINITION DEFERRED)  Forward declaration class (CLASS c DEFINITION DEFERRED)
4 IF_FDT_TYPES Forward declaration interface (INTERFACE i DEFINITION DEF...  Forward declaration interface (INTERFACE i DEFINITION DEF...
Interfaces
Class CL_FDT_DECISION_TABLE_COMPARE has no interface implemented.
Friends
Class CL_FDT_DECISION_TABLE_COMPARE has no friend class.
Attributes
# Attribute Level Visibility Read only Typing Associated Type Initial Value Description Created on
1 GC_OP_ABORT Constant Public Type reference (TYPE) DIFF_OPERATION 'a' 20121107
2 GC_OP_CHANGE Constant Public Type reference (TYPE) DIFF_OPERATION 'c' change operation 20121107
3 GC_OP_DELETE Constant Public Type reference (TYPE) DIFF_OPERATION '-' delete operation 20121107
4 GC_OP_INSERT Constant Public Type reference (TYPE) DIFF_OPERATION '+' insert operation 20121107
5 GC_OP_MOVE Constant Public Type reference (TYPE) DIFF_OPERATION 'm' move operation 20121107
6 GC_OP_UNKNOWN Constant Public Type reference (TYPE) DIFF_OPERATION '?' unknown operation 20121107
7 GC_TG_COLUMN Constant Public Type reference (TYPE) DIFF_TARGET 'C' column target 20121107
8 GC_TG_ROW Constant Public Type reference (TYPE) DIFF_TARGET 'R' row target 20121107
9 GC_TG_TABLE Constant Public Type reference (TYPE) DIFF_TARGET 'T' 20121107
10 MO_DECISION_TABLE Instance attribute Private Object reference (TYPE REF TO) CL_FDT_DECISION_TABLE FDT Decision Table 20121107
11 MT_DIFF Instance attribute Private Type reference (TYPE) T_DIFF Table that stores the differences 20121107
12 MT_TEXT_1 Instance attribute Private Type reference (TYPE) CL_FDT_DECISION_TABLE=>TS_TABLE_DATA_TEXT 20121107
13 MT_TEXT_2 Instance attribute Private Type reference (TYPE) CL_FDT_DECISION_TABLE=>TS_TABLE_DATA_TEXT 20121107
14 MV_COUNTER Instance attribute Private Type reference (TYPE) I 0 count changes 20121107
15 MV_LIMIT Instance attribute Private Type reference (TYPE) I abort processing after n changes 20121107
16 MV_TIMESTAMP_1 Instance attribute Private Type reference (TYPE) IF_FDT_TYPES=>TIMESTAMP Timestamp 1 20121107
17 MV_TIMESTAMP_2 Instance attribute Private Type reference (TYPE) IF_FDT_TYPES=>TIMESTAMP Timestamp 2 20121107
Methods
# Method Level Visibility Method type Description Created on
1 COMPARE Instance method Private Method compare two version of a decision table 20121107
2 COMPARE_COLUMNS Instance method Private Method compare the columns 20121107
3 COMPARE_ROWS Instance method Private Method compare 2 rows 20121107
4 CONSTRUCTOR Instance method Public Constructor Constructor 20121107
5 DIFF_TO_CHANGE_INFO Instance method Private Method Convert TS_DIFF to Table of string 20121107
6 FILTER_COL_MOVES Instance method Private Method find column inserts and deletions that are equal and merge 20121107
7 FILTER_ROW_MOVES Instance method Private Method find row inserts and deletions that are equal and merge them 20121107
8 FIND_COMMON_SUBROWS Instance method Private Method find the first common subrow set 20121107
9 GENERATE_DIFF_OPS Instance method Private Method Helper method to generate row differences 20121107
10 GET_DIFFERENCE Static method Public Method Get differences of two tables 20121107
11 GET_ROW_AS_TEXT Instance method Private Method Concatenates a row of a table to a string 20121112
12 IS_COMPARE_EQUALS Instance method Private Method decide if compared rows are equal 20121107
13 LIMIT_COUNTER Instance method Private Method increments counter, stops when limit is reached 20121107
14 SPLIT_SUBROWS Instance method Private Method split between subrow sets. deivide unitl a result is found 20121107
Events
Class CL_FDT_DECISION_TABLE_COMPARE has no event.
Types
# Type Visibility Typing Associated Type Description Created on Type Source
1 DIFF_OPERATION Public See coding Type for a operation in s_diff 20121107 diff_operation TYPE c LENGTH 1
2 DIFF_TARGET Public See coding Type for a target in s_diff 20121107 diff_target TYPE c LENGTH 1
3 S_COL_COMPARE Private See coding Structure to connect equal columns in different versions 20121107 BEGIN OF s_col_compare, object_id TYPE if_fdt_types=>id, col_no_1 TYPE int4, col_no_2 TYPE int4, END OF s_col_compare
4 S_DIFF Public See coding Structure to decribe a difference 20121107 BEGIN OF s_diff, target TYPE diff_target, table_1_row TYPE int4, table_1_col TYPE int4, table_2_row TYPE int4, table_2_col TYPE int4, operation TYPE diff_operation, table_1_text TYPE string, table_2_text TYPE string, col_id_1 type if_fdt_types=>id, col_id_2 type if_fdt_types=>id, END OF s_diff
5 TS_COL_COMPARE Private See coding Table of equal columns 20121107 ts_col_compare TYPE SORTED TABLE OF s_col_compare WITH NON-UNIQUE KEY col_no_1 col_no_2
6 T_DIFF Public See coding Table of differences 20121107 t_diff TYPE STANDARD TABLE OF s_diff WITH NON-UNIQUE KEY target operation table_1_row table_1_col table_2_row table_2_col
7 T_TEXT Public See coding Table of texts for readable output 20121107 t_text TYPE STANDARD TABLE OF string
Method Signatures

Method COMPARE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning RTS_DIFF Value transfer Type reference (TYPE) T_DIFF Differences 20121107

Method COMPARE on class CL_FDT_DECISION_TABLE_COMPARE has no exception.

Method COMPARE_COLUMNS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing CV_LIMIT_REACHED Call by reference Type reference (TYPE) ABAP_BOOL Table of differences 20121107
2 Exporting ETS_COMP Call by reference Type reference (TYPE) TS_COL_COMPARE X: Limit reached -> Stop 20121107
3 Exporting ET_DIFF Call by reference Type reference (TYPE) T_DIFF Table of equal columns 20121107

Method COMPARE_COLUMNS on class CL_FDT_DECISION_TABLE_COMPARE has no exception.

Method COMPARE_ROWS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting ET_DIFF Call by reference Type reference (TYPE) T_DIFF Table of differences 20121107
2 Exporting EV_MATCHING Call by reference Type reference (TYPE) I Number of matching rows 20121107
3 Exporting EV_TOTAL Call by reference Type reference (TYPE) I Number of comparable rows 20121107
4 Importing ITS_COMP Call by reference Type reference (TYPE) TS_COL_COMPARE Table of equal columns 20121107
5 Importing IV_ROW_NO_1 Call by reference Type reference (TYPE) I Row no. from table version 1 20121107
6 Importing IV_ROW_NO_2 Call by reference Type reference (TYPE) I Row no. from table version 2 20121107

Method COMPARE_ROWS on class CL_FDT_DECISION_TABLE_COMPARE has no exception.

Method CONSTRUCTOR Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_DECISION_TABLE Call by reference Type reference (TYPE) IF_FDT_TYPES=>ID 20121107
2 Importing IV_LIMIT Call by reference Type reference (TYPE) I 50 Max number of entries 20121107
3 Importing IV_TIMESTAMP_1 Call by reference Type reference (TYPE) IF_FDT_TYPES=>TIMESTAMP 20121107
4 Importing IV_TIMESTAMP_2 Call by reference Type reference (TYPE) IF_FDT_TYPES=>TIMESTAMP 20121107
# Exception Resumable Description Created on
1 CX_FDT_INPUT 20121107
2 CX_FDT_PROCESSING 20121107

Method DIFF_TO_CHANGE_INFO Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting ET_CHANGE_INFO Call by reference Type reference (TYPE) CL_FDT_MAINTENANCE=>T_CHANGE_INFO Change Info 20121107

Method DIFF_TO_CHANGE_INFO on class CL_FDT_DECISION_TABLE_COMPARE has no exception.

Method FILTER_COL_MOVES Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting ET_MOVE Call by reference Type reference (TYPE) T_DIFF Reduced table of real movements 20121107
2 Importing IT_DIFF Call by reference Type reference (TYPE) T_DIFF Table of differences 20121107
3 Importing IT_MOVE Call by reference Type reference (TYPE) T_DIFF Table of potential movements 20121107

Method FILTER_COL_MOVES on class CL_FDT_DECISION_TABLE_COMPARE has no exception.

Method FILTER_ROW_MOVES Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing ITS_COMP Call by reference Type reference (TYPE) TS_COL_COMPARE Table of equal columns 20121107

Method FILTER_ROW_MOVES on class CL_FDT_DECISION_TABLE_COMPARE has no exception.

Method FIND_COMMON_SUBROWS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing CV_LIMIT_REACHED Call by reference Type reference (TYPE) ABAP_BOOL X: Limit reached -> Stop 20121107
2 Exporting ET_DIFF Call by reference Type reference (TYPE) T_DIFF Table of differences 20121107
3 Exporting EV_LENGTH Call by reference Type reference (TYPE) I Length of common subrow set 20121107
4 Exporting EV_START_1 Call by reference Type reference (TYPE) I First row of common subrow set in table 1 20121107
5 Exporting EV_START_2 Call by reference Type reference (TYPE) I First row of common subrow set in table 2 20121107
6 Importing ITS_COMP Call by reference Type reference (TYPE) TS_COL_COMPARE Table of equal columns 20121107
7 Importing IV_LENGTH_1 Call by reference Type reference (TYPE) I Amount of rows in table 1 that are considered 20121107
8 Importing IV_LENGTH_2 Call by reference Type reference (TYPE) I Amount of rows in table 2 that are considered 20121107
9 Importing IV_START_1 Call by reference Type reference (TYPE) I First row to consider in table 1 20121107
10 Importing IV_START_2 Call by reference Type reference (TYPE) I First row to consider in table 2 20121107

Method FIND_COMMON_SUBROWS on class CL_FDT_DECISION_TABLE_COMPARE has no exception.

Method GENERATE_DIFF_OPS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing CV_LIMIT_REACHED Call by reference Type reference (TYPE) ABAP_BOOL X Limit reached 20121115
2 Exporting ET_DIFF Call by reference Type reference (TYPE) T_DIFF Table of differences 20121107
3 Importing IV_DIFF_OP Call by reference Type reference (TYPE) DIFF_OPERATION Operation 20121107
4 Importing IV_LENGTH Call by reference Type reference (TYPE) I Length of affected row set 20121107
5 Importing IV_START Call by reference Type reference (TYPE) I First affected row 20121107

Method GENERATE_DIFF_OPS on class CL_FDT_DECISION_TABLE_COMPARE has no exception.

Method GET_DIFFERENCE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting ET_CHANGE_INFO Call by reference Type reference (TYPE) CL_FDT_MAINTENANCE=>T_CHANGE_INFO Difference (Message) 20121107
2 Exporting ET_DIFF Call by reference Type reference (TYPE) T_DIFF Difference (Technical Format) 20121107
3 Importing IV_DECISION_TABLE Call by reference Type reference (TYPE) IF_FDT_TYPES=>ID Decision Table 20121107
4 Importing IV_LIMIT Call by reference Type reference (TYPE) I 50 Max no of messages returned 20121107
5 Importing IV_TIMESTAMP_1 Call by reference Type reference (TYPE) IF_FDT_TYPES=>TIMESTAMP Timestamp 1 (of decision table) 20121107
6 Importing IV_TIMESTAMP_2 Call by reference Type reference (TYPE) IF_FDT_TYPES=>TIMESTAMP Timestamp 2 (of decision table) 20121107
# Exception Resumable Description Created on
1 CX_FDT_INPUT 20121107

Method GET_ROW_AS_TEXT Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_INTERRUPTED_ENDING Call by reference Type reference (TYPE) STRING '...' string added at the end if the max. length is reached. 20121112
2 Importing IV_MAX_LENGTH Call by reference Type reference (TYPE) I 50 max. length of text 20121112
3 Importing IV_PREFIX Call by reference Type reference (TYPE) STRING `[ ` string added at the start 20121115
4 Importing IV_ROW_NO Call by reference Type reference (TYPE) I Row number 20121112
5 Importing IV_SEPERATOR Call by reference Type reference (TYPE) STRING ` | ` field seperator 20121112
6 Importing IV_SUFFIX Call by reference Type reference (TYPE) STRING ` ]` string added at the end 20121115
7 Importing IV_TABLE Call by reference Type reference (TYPE) I 1: Table 1, 2: Table 2 20121112
8 Returning RV_TEXT Value transfer Type reference (TYPE) STRING concatenated row fields 20121112

Method GET_ROW_AS_TEXT on class CL_FDT_DECISION_TABLE_COMPARE has no exception.

Method IS_COMPARE_EQUALS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_MATCHING Call by reference Type reference (TYPE) I 20121107
2 Importing IV_TOTAL Call by reference Type reference (TYPE) I 20121107
3 Returning RV_RESULT Value transfer Type reference (TYPE) ABAP_BOOL 20121107

Method IS_COMPARE_EQUALS on class CL_FDT_DECISION_TABLE_COMPARE has no exception.

Method LIMIT_COUNTER Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IV_INC Call by reference Type reference (TYPE) I 1 amount 20121107
2 Returning RV_LIMIT_REACHED Value transfer Type reference (TYPE) ABAP_BOOL X: Limit reached -> Stop 20121107

Method LIMIT_COUNTER on class CL_FDT_DECISION_TABLE_COMPARE has no exception.

Method SPLIT_SUBROWS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing CV_LIMIT_REACHED Call by reference Type reference (TYPE) ABAP_BOOL X: limit reached, stopped 20121107
2 Exporting ET_DIFF Call by reference Type reference (TYPE) T_DIFF Table of differences 20121107
3 Importing ITS_COMP Call by reference Type reference (TYPE) TS_COL_COMPARE Table of equal columns 20121107
4 Importing IV_LENGTH_1 Call by reference Type reference (TYPE) I Length of changed area in version 1 20121107
5 Importing IV_LENGTH_2 Call by reference Type reference (TYPE) I Length of changed area in version 2 20121107
6 Importing IV_START_1 Call by reference Type reference (TYPE) I First row for split (from tab 1) 20121107
7 Importing IV_START_2 Call by reference Type reference (TYPE) I Firt row for split (tab 2) 20121107

Method SPLIT_SUBROWS on class CL_FDT_DECISION_TABLE_COMPARE has no exception.
History
Last changed by/on SAP  20130531 
SAP Release Created in 740