Table of Contents

Search

  1. Preface
  2. Working with Transformations
  3. Aggregator Transformation
  4. Custom Transformation
  5. Custom Transformation Functions
  6. Data Masking Transformation
  7. Data Masking Examples
  8. Expression Transformation
  9. External Procedure Transformation
  10. Filter Transformation
  11. HTTP Transformation
  12. Identity Resolution Transformation
  13. Java Transformation
  14. Java Transformation API Reference
  15. Java Expressions
  16. Java Transformation Example
  17. Joiner Transformation
  18. Lookup Transformation
  19. Lookup Caches
  20. Dynamic Lookup Cache
  21. Normalizer Transformation
  22. Rank Transformation
  23. Router Transformation
  24. Sequence Generator Transformation
  25. Sorter Transformation
  26. Source Qualifier Transformation
  27. SQL Transformation
  28. Using the SQL Transformation in a Mapping
  29. Stored Procedure Transformation
  30. Transaction Control Transformation
  31. Union Transformation
  32. Unstructured Data Transformation
  33. Update Strategy Transformation
  34. XML Transformations

Transformation Guide

Transformation Guide

Custom Transformation Properties

Custom Transformation Properties

Properties for the Custom transformation apply to both the procedure and the transformation. Configure the Custom transformation properties on the Properties tab of the Custom transformation.
The following table describes the Custom transformation properties:
Option
Description
Language
Language used for the procedure code. You define the language when you create the Custom transformation. If you need to change the language, create a new Custom transformation.
Module Identifier
Module name. Applies to Custom transformation procedures developed using C or C++.
Enter only ASCII characters in this field. You cannot enter multibyte characters.
This property is the base name of the DLL or the shared library that contains the procedure. The Designer uses this name to create the C file when you generate the external procedure code.
Function Identifier
Name of the procedure in the module. Applies to Custom transformation procedures developed using C.
Enter only ASCII characters in this field. You cannot enter multibyte characters.
The Designer uses this name to create the C file where you enter the procedure code.
Class Name
Class name of the Custom transformation procedure. Applies to Custom transformation procedures developed using C++ or Java.
Enter only ASCII characters in this field. You cannot enter multibyte characters.
Runtime Location
Location that contains the DLL or shared library. Default is $PMExtProcDir. Enter a path relative to the Integration Service node that runs the Custom transformation session.
If this property is blank, the Integration Service uses the environment variable defined on the Integration Service node to locate the DLL or shared library.
You must copy all DLLs or shared libraries to the runtime location or to the environment variable defined on the Integration Service node. The Integration Service fails to load the procedure when it cannot locate the DLL, shared library, or a referenced file.
Tracing Level
Amount of detail displayed in the session log for this transformation. Default is Normal.
Is Partitionable
Indicates if you can create multiple partitions in a pipeline that uses this transformation:
  • No. The transformation cannot be partitioned. The transformation and other transformations in the same pipeline are limited to one partition.
  • Locally. The transformation can be partitioned, but the Integration Service must run all partitions in the pipeline on the same node. Choose Local when different partitions of the Custom transformation must share objects in memory.
  • Across Grid. The transformation can be partitioned, and the Integration Service can distribute each partition to different nodes.
Default is No.
Inputs Must Block
Indicates if the procedure associated with the transformation must be able to block incoming data. Default is enabled.
Is Active
Indicates if this transformation is an active or passive transformation.
You cannot change this property after you create the Custom transformation. If you need to change this property, create a new Custom transformation and select the correct property value.
Update Strategy Transformation
Indicates if this transformation defines the update strategy for output rows. Default is disabled. You can enable this for active Custom transformations.
Transformation Scope
Indicates how the Integration Service applies the transformation logic to incoming data:
  • Row
  • Transaction
  • All Input
When the transformation is passive, this property is always Row. When the transformation is active, this property is All Input by default.
Generate Transaction
Indicates if this transformation can generate transactions. When a Custom transformation generates transactions, it generates transactions for all output groups.
Default is disabled. You can only enable this for active Custom transformations.
Output is Repeatable
Indicates if the
order
of the output data is consistent between session runs.
  • Never. The order of the output data is inconsistent between session runs. This is the default for active transformations.
  • Based On Input Order. The output order is consistent between session runs when the input data order is consistent between session runs. This is the default for passive transformations.
  • Always. The order of the output data is consistent between session runs even if the order of the input data is inconsistent between session runs.
Requires Single Thread Per Partition
Indicates if the Integration Service processes each partition at the procedure with one thread. When you enable this option, the procedure code can use thread-specific operations. Default is enabled.
Output is Deterministic
Indicates whether the transformation generates consistent output data between session runs. Enable this property to perform recovery on sessions that use this transformation.
If you configure a transformation as repeatable and deterministic, it is your responsibility to ensure that the data is repeatable and deterministic. If you try to recover a session with transformations that do not produce the same data between the session and the recovery, the recovery process can result in corrupted data.

0 COMMENTS

We’d like to hear from you!