4.5. Transformation Features
The most complex mapping problems can be handled easily using TM, since a powerful syntax is used and transforms may operate with multiple sources and targets of different formats (RDBMS, Files, XML, etc.). Audit trails, database lookups and error handling are introduced easily to meet specific transformation requirements.
Around 300 built-in functions covering such topics as maths functions, string manipulation, date conversions, transaction handling, database tuning, data cleansing and reconciliation, are included to provide an extremely powerful transformation development environment.
Control flow and iteration coding patterns such as, BEGIN END, IF THEN ELSE, FOR EACH, CASE and CATCH ERROR, can be included.
Local variables, accessible in the transform, and global variables, accessible by all sub-transforms of the transform project, may be used.
Fully-tailorable error handling and logging is provided to fit user strategy, e.g. standard error handling is provided as well as Log4J compatibility.
Fuzzy-matching technology automatically makes a best guess at matching between similar sources and targets if required when initially creating a transform.
The data transformations are self-documenting and easily understood by business analysts and programmers alike. Transforms may automatically generate HTML documentation, configurable to meet user requirements, when the transforms project is built.
TM’s Super Transform Project feature may be applied to situations where transforms may be substantially reused, equivalent of a super-sub class concept of programming. Transform projects may inherit from one or more Super Transform Projects. The Super Transform Projects specify the base behaviour, while the subtransform projects then simply refine those aspects of behaviour that are different.
Query propagation is a technique most useful when operating a pull model of transforming data when the source data is RDBMS. Transforms are defined first to transform from the source data to the target data. Once this is done query propagation allows data to be retrieved by a query expressed in the target data format. Using the transforms already defined, the equivalent query in a source data format is generated and the data retrieved and transformed to the target model. Significantly, TM deduces only that data that should be selected and implements an appropriate SQL command, thus providing significant performance improvements over systems that read all data to interpret the data that is required.