Transaction and Function Point management - Transaction review

Introduction

Once the Transaction and Function Point management - Transaction configuration (which provides the means to build transactions in the application boundary) has been set up and the computation has been executed, it is very important to review all the resulting transactions. This part of the documentation provides SQL queries to automatically collect rules and objects associated to the transactions. These lists should be sent to the SME for validation.

Objects in the Application boundary

Transaction scopes must be compared to the Application boundary. The first SQL query below counts the number of objects that are in the application boundary. The second one provides the detailed list of the objects that have been counted. This will allow a comparison to be made of the objects involved in transactions and the total number of objects that are available in the application.

set search_path=<Prefix>_local;
 
select count (1) as NumberOfFile from (
select distinct object_name,
object_fullname, 
object_type_str 
from cdt_objects cob, ctt_object_applications coa
where object_type_str like '%File%'
and cob.object_id = coa.object_id
and coa.properties = 0
order by 3 ASC, 2 ASC) as result;

The result should look like this:

 

The second SQL query is:

set search_path=<Prefix>_local;
 
select distinct object_name,
object_fullname, 
object_type_str 
from cdt_objects cob, ctt_object_applications coa
where object_type_str like '%File%'
and cob.object_id = coa.object_id
and coa.properties = 0
order by 3 ASC, 2 ASC;

The result should look like this:

Click to enlarge


Review the Transaction Configuration

Rules for Entry Points

List of generic sets used to select Entry Points

The SQL query presented below extracts the generic object sets that have been created to implement rules searching for Entry Points:

set search_path=<prefix>_mngt;
 
select osd.settype, osd.setname, osd.setdefinition
from cal_objsetdef osd, cal_setassociation sa
where sa.set_id = osd.set_id
and osd.settype = 'Transaction entry points'
and sa.attributenumvalue = 0
order by 1,2;

The result should look like this:

Click to enlarge:


List of Free Definition rules used to select Transaction Entry Points

The following SQL query extracts the object sets that have been created by the user to collect Transaction Entry Points specific to the application. These rules must be validated with the SME.

set search_path=<prefix>_mngt;
 
select osd.settype, osd.setname, osd.setdefinition, sa.attributename, sa.attributenumvalue, sa.attributecharvalue 
from cal_objsetdef osd, cal_setassociation sa
where sa.set_id = osd.set_id
and osd.settype = 'Transaction entry points'
and sa.attributenumvalue > 0;

The result should look like this:

Click to enlarge:


It corresponds to all the rules that have been created or are provided as is, in Console or in the CAST Transaction Configuration Center.

Rules for Data Functions

The following SQL query extracts the objects sets that have been created to collect Data Entities. These rules must be validated with the SME. 

set search_path=<prefix>_mngt;
 
select osd.settype, osd.setname, osd.setdefinition, sa.attributenumvalue as defaultFPValue
from cal_objsetdef osd, cal_setassociation sa
where sa.set_id = osd.set_id
and osd.settype = 'Data functions'
and sa.attributenumvalue > 0
and sa.attributename != 'application ID'
order by 1,2;

The result should look like this:

Click to enlarge:


It corresponds to all the rules that have been created or are provided as is, in Console or in the CAST Transaction Configuration Center.


Rules for End Points

The following SQL query extracts the object sets that have been created to collect End Points.

set search_path=<prefix>_mngt;
 
select osd.settype, osd.setname, osd.setdefinition, sa.attributename, sa.attributenumvalue, sa.attributecharvalue 
from cal_objsetdef osd, cal_setassociation sa
where sa.set_id = osd.set_id
and osd.settype = 'Transaction end points'
and sa.attributenumvalue > 0
order by 1;

The "attributenumvalue" column contains the default value for the End Points. The definition of the config is in the "setdefinition" column. If necessary you can enlarge the size of the column in order to see the xml. The result should look like this:


List of generic sets

Generic sets are used to implement complex Free Definition rules and can be shared between multiple rules (ex: Entry Points, End Points, Data Entities, and Excluded Items). The following SQL query extracts the generic sets that have been created in order to validate them with the SME.

set search_path=<prefix>_mngt;
 
select osd.settype, osd.setname, osd.setdefinition, sa.attributename, sa.attributenumvalue, sa.attributecharvalue 
from cal_objsetdef osd, cal_setassociation sa
where sa.set_id = osd.set_id
and osd.settype = 'Generic sets'
and sa.attributenumvalue > 0
order by 1;

The result should look like this:


Rules for Excluded Items

Some objects are not relevant for transactions and must therefore be excluded from the computation. The list of these objects or the way they are identified must be validated with the SME. The following SQL query extracts the object sets that have been created to collect the items that have been excluded:


set search_path=<prefix>_mngt;
 
select osd.settype, osd.setname, osd.setdefinition
from cal_objsetdef osd, cal_setassociation sa
where sa.set_id = osd.set_id
and osd.settype = 'Excluded items'
and sa.attributenumvalue > 0
order by 1;

The result should look like this:


It corresponds to all the rules that have been created or are provided as is, in Console or in the CAST Transaction Configuration Center.

List of Entry Points

The following SQL query counts the number of Entry Points that have been identified in the application, based on the configuration rules: 

set search_path=<Prefix>_local;
 
select count (1) as NumberOfPotentialEntry from (
select cob.object_name as transaction, cob.object_fullname as transactionfullname, cob.object_mangling, cob.object_type_str
from dss_transaction dtr, cdt_objects cob
where dtr.form_id = cob.object_id
order by 3 ASC, 2 ASC) as result;

The result should look like this:


The SQL query providing the corresponding details is as follows:

set search_path=<Prefix>_local;
 
select cob.object_name as transaction, cob.object_fullname as transactionfullname, cob.object_mangling, cob.object_type_str
from dss_transaction dtr, cdt_objects cob
where dtr.form_id = cob.object_id
order by 3 ASC, 2 ASC;

The result should look like this: