field = { description = "Description", fromMessage="true",
field = { description = "Manufacturer", fromMessage="true",
field = { description="Model", fromMessage="true",
field = { description="Qty", fromMessage="true",
field= { description="Price", fromMessage="true",
Assuming that the file that was used in the first FilePublisher example is being subscribed to, the file that FileSubscriber would create would look like the following:
skipPadding=”false”, outputDataset=”TIBCO.TEST.OUTPUT”, subscribeSubjectName = "A.C" }
field = { description = "Part Number", fromMessage="true",
length = ”6”,type="STRING", value="PartNo", length = ”11”,
field = { description = "Description", fromMessage="true",
type="STRING", value="Desc", length = ”15”, position=”11” },
field = { description = "Manufacturer", fromMessage="true",
type="STRING", value="Manuf", length = ”11”, position=”26” },
field = { description="Model", fromMessage="true",
type="STRING", value="Model", length = ”12”, position=”37” },
field = { description="Qty", fromMessage="true",
type="INTEGER", value="Qty", length = ”2”, position=”49” },
field= { description="Price", fromMessage="true",
type="FLOAT", value ="Price", length = ”6”, position=”51” }
Assuming that the file that was used in the second FilePublisher example is being subscribed to, the file that FileSubscriber creates a file that looks like the following:
In the FilePublisher example, a file with multiple record types was used as an example. This example shows how to configure the FileSubscriber to handle the TIBCO Rendezvous messages to process a multiple format file. The following steps could be used to set up the configuration file:
2.
|
Use a FILE_LINE element with a containerName parameter to define the format of each output line to be written after retrieving data from the message. FileSubscriber creates an output record for each FILE_LINE element.
|
For the example shown, FileSubscriber creates a header record for the “OrderHeader” container, then it creates three detail records from the “OrderDetail” record.
length = “3”, type=”STRING" },
The first field, "F64 to binary", is defined as a
INTEGER field that is converted to
BINARY format. The field's data is written starting at byte 12. Because the field precision has been specified as
"9,0", the output data length will be 8 bytes.
The second field, “F64 to packed", is defined as a
DOUBLE field that is converted to
PACKED format. The field's data is written starting at byte 1. Because the field precision has been specified as
"7,2", the output data length will be 4 bytes.
The third field, "Str to packed", is defined as a
STRING field that is converted to
ZONED format. The field's data is written starting at byte 50. Because the field precision has been specified as
"9,2", the output data length will be 9 bytes.
This configuration is for subscribing a file using ECM with __TIBCO_AE_ADAPTER_FAFT_*.<subject name> administrative messages handshake.
subscribeSubjectName = "C.BLOCK_TRANSFER.FILE",
appendToExistingFile = "true",
useExplicitConfirmation = "true",
ECMSubscriberName = "SUB1",
ECMSubscriberName = "SUB2",
blockTransferMode = "true",
forcePublishedFileName = "true",
generateFileSubjectName ="END.BLOCK_TRANSFER.FILE",
exitOnFileSaveError = "true",
generateFileFieldName = "FileName" ??mixedcase??
EPM_DESTINATION = "A.EMSS001"
appendDateTime = "true", padCharacter = " ",
delimiter = "|", skipPadding = "false",
lineLength = "80", autoGenerateFile="false",
autoGenerateFile="false",
JMS_TIBCO_MSG_TRACE = "body",
executeBeforeProcess = "KISHORE.TIBFA310.JCL(TFAALOC)",
generateFileDestinationName = "GEN.FILE",
genFilePublishDestinationName = "B.SUB003.FT11.END",
outputDataset = "KISHORE.SUB003.TXT",
fileHeader = "#[%4,NUMBER_OF_RECORDS%] %%This is a file header [%14,DATE_TIME%]",
fileTrailer = "#[%4,NUMBER_OF_RECORDS%] %%This is a file trailer [%14,DATE_TIME%]",
subscribeDestinationName = "A.FT11",
subscribeDestinationType = "TOPIC",
generateFileOnNumberOfMessages="06"
description = "Label1", fromMessage = "true", position="1",
length="10", type = "STRING" , value = "Label1"
description = "label2", fromMessage = "true", position="11",
length = "10", type = "STRING", value = "Label2"
description = "label3", fromMessage = "true", position = "21",
length = "10", type = "STRING", value = "Label3"
description = "label4", fromMessage = "true", position = "31",
length = "10", type = "STRING", value = "Label4"
description = "label5", fromMessage = "true", position = "41",
length = "2", type = "STRING", value = "Label5"
description = "label6", fromMessage = "true", position = "43",
length = "10", type = "FLOAT", value = "Label6"
description = "TimeStamp", fromMessage = "true", position = "53",
length = "24", type = "TIME", value = "TimeStamp"
This configuration demonstrates how multiple File Types can be defined in a single config file. Up to a maximum of 512 File Types can be defined in a single config file. A single config file can contain any combination of record mode, block mode, VSAM, SEQ, or GDG files.