天天看點

Document Builder: how is rule detail loaded from DB to memoryCreated by Jerry Wang, last modified on Jul 09, 2014

Created by Jerry Wang, last modified on Jul 09, 2014

this wiki gives a more detailed explanation regarding rule loading process as a complement for wiki "rule load process".

In our example we have ZCR_KT which has three different rules: ZCR_NAME, ZCR_RULE_TEST and ZCR_SWIM.

Document Builder: how is rule detail loaded from DB to memoryCreated by Jerry Wang, last modified on Jul 09, 2014

When the three rules are loaded into memory from database table, it looks like below:

Document Builder: how is rule detail loaded from DB to memoryCreated by Jerry Wang, last modified on Jul 09, 2014

And in the previous wiki "Rule load process", the column "EVALUATOR" is already filled as below. In wiki "rule evaluation process" we know that this column is the starting point of rule evaluation process.

Document Builder: how is rule detail loaded from DB to memoryCreated by Jerry Wang, last modified on Jul 09, 2014
Document Builder: how is rule detail loaded from DB to memoryCreated by Jerry Wang, last modified on Jul 09, 2014

How is it filled in the runtime?

it is filled by the static method /IPRO/CL_EVALUATION~load below:

Document Builder: how is rule detail loaded from DB to memoryCreated by Jerry Wang, last modified on Jul 09, 2014

one importing parameter is rule guid: 005056B23ADB1ED2B7F41E8C6D7CEB49

Through this guid we could get the rule header information from DB table /IPRO/TRULES:

Document Builder: how is rule detail loaded from DB to memoryCreated by Jerry Wang, last modified on Jul 09, 2014

Then read rule detail information from table SFOBUEV001 and pass the query result into constructor in line 27:

Document Builder: how is rule detail loaded from DB to memoryCreated by Jerry Wang, last modified on Jul 09, 2014

the content of lt_sfobuev001 looks like below in SE16:

Document Builder: how is rule detail loaded from DB to memoryCreated by Jerry Wang, last modified on Jul 09, 2014
Document Builder: how is rule detail loaded from DB to memoryCreated by Jerry Wang, last modified on Jul 09, 2014

all the build in function logic are also hard coded in this method:

Document Builder: how is rule detail loaded from DB to memoryCreated by Jerry Wang, last modified on Jul 09, 2014
Document Builder: how is rule detail loaded from DB to memoryCreated by Jerry Wang, last modified on Jul 09, 2014