Transaction ID determination interface

The Transaction ID Determination Proc determines the transaction ID if it cannot be determined from a configured offset and length. You can choose the transaction ID and examine the data inside the message for special cases.

This UPoC does not generally apply to UN/EDIFACT, HL7, or X12 messages. The standards define how the transaction ID is determined.

These types of transaction IDs are available: offset/length, proc, and hard-coded string.

The return value from the Transaction ID Determination UPoC is the transaction ID the engine uses.

Arguments in Transaction ID Determination UPoCs

In Java UPoC TrxID determination, Process(cloverEnv, msg) has been deprecated.

userargs is now supported. For example, Process(cloverEnv, msg, userargs).

When no userargs are specified from the NetConfig file, userargs is null.

There are two ways to reuse the existing Process(cloverEnv, msg):

  • Invoke it in a new Process(cloverEnv, msg, userargs):
    public class Trixid extends Trxid {
    public String process (CloverEnv cloverEnv, Message msg, PropertyTree userargs)
    throws CloverleafException {
    if (userargs == null)
    retrun process(cloverEnv, msg); // re-use the existing Trxid JavaUPoC here.
    return null;
    }
    
    public String process (CloverEnv cloverEnv, Message msg)
    throws CloverleafException { 
    :
    // the existing logic for trxid in JavaUPoC
    :
    }
    }
  • Fill Process(cloverEnv, msg, userargs) with the existing logic of Process(cloverEnv, msg).