Outbound transmissions to file

The generic model supports outbound transmission as a file using the IBM® App Connect Enterprise FileOutput node. The full path name of the file may be controlled in the following precedence:

Directory / Folder

  1. Transmission FILEADDRESS column (rObject.FILEADDRESS)
  2. Channel URL column (rChannel.URL.PATH)
  3. Channel location column (rChannel.LOCATION)
  4. MQMD supplied by mapper (OutputRoot.MQMD.Directory)

File Name

  1. Transmission FILENAME column (rObject.FILENAME)
  2. FILENAME supplied by mapper/mapper select (rMapperParams.FILENAME)
  3. Channel URL column (rChannel.URL.FILE)
  4. MQMD supplied by mapper (OutputRoot.MQMD.Name)
In addition to the above precedence, the Channel URL supports a dynamic expression using $Expr{expr} syntax string. The marker $Expr{expr} is used to designate that the 'expr' text must be evaluated as a native runtime expression. This means it must be a valid ESQL expression that can be processed by an EVAL() call. This allows invocation of an ESQL function that could be backed by Java™ or SQL if required. The following text shows a simple example:
file:///output_$Expr{CURRENT_DATE}/file_$Expr{NextFileSequence()}

Transmission to File Packet Size

In the previous version of FTM, sending a large BLOB to file in a single transfer may result in the JVM consuming too much memory. In the latest version of FTM, the Set_File_Destination node sends a series of packets to the "In" input on the FileOutput node instead. When the final packet has been sent, it propagates to the "Finish File" input on FileOutput. These outputs are visible in the following figure. The default packet size used is 10MB, but an alternative value may be set by creating an entry in the VALUE table where CATEGORY = CORE, KEY = GEN_OUT_PT_PACKET_SIZE, and VALUE is stored in bytes (for example, 10485760 bytes = 10MB).
Figure 1. Outbound transmission handler message flow
Outbound transmission handler message flow