Then i believe that it is possible though it is not "that" easy. Note that the below logic works in sequential mode only...
First you need to merge all files. While merging (using UNIX command), add a comment or symbol or trailer after each file including for the last file.
E.g. (i added **** after each file)
StatusCode=500
StatusCodeText=Internal Server Error
RequestHeaderSize=221
RequestDataSize=1696
RequestSize=1917
ResponseHeaderSize=167
ResponseDataSize=3997
ResponseSize=4164
[urlfield]
<
xml version="1.0" encoding="utf-8"
>%0a<SOAP-ENV:Envelope xmlns:SOAP-ENV="
http://schemas.xmlsoap.org/soap/envelop ... sageHeader xmlns="
http://csi.cingular.com/CSI/Namespaces/ ... Header.xsd" xmlns:cin="
http://csi.cingular.com/CSI/Namespaces/ ... l.xsd">%0a <TrackingMessageHeader>%0a <cin:version>v52</cin:version>%0a <cin:messageId>....
****
StatusCode=200
StatusCodeText=OK
RequestHeaderSize=305
RequestDataSize=2347
RequestSize=2652
ResponseHeaderSize=148
ResponseDataSize=6624
ResponseSize=6772
<Request>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="
http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header>
<mes:MessageHeader xmlns:mes="
http://csi.cingular.com/CSI/Namespaces/ ... in:version xmlns:cin="
http://csi.cingular.com/CSI/Namespaces/ ... :messageId xmlns:cin="
http://csi.cingular.com/CSI/Namespaces/ ... timeToLive xmlns:cin="
http://csi.cingular.com/CSI/Namespaces/ ... timeToLive>
****
Read each line as fixed width including XML messages.
Create as many stage variables as the number of output columns you want. (your scenario needs 11 stage variables to deal with each column)
e.g.
Define following stage variables...
StatusCode
StatusCodeText
RequestHeaderSize
....
....
Stage variable "StatusCode" -> [If Field(Col,1,'=') = 'StatusCode' Then Field(Col,2,'=') Else StatusCode]
Similarly, define all required stage variables including for XML messages.
When done, create columns in output sequential file. Define the column names similar to what you want in the output. Map each stage variable to its respective output column.
Very important... add a constraint in transfomer [Col1 = '****']
Logic: Stage variables will get respective values while each record is processed in sequence. But no record will be written to output file due to the constraint specified. When **** is encountered, a record will be written to the output file. I guess this is what you wanted.
** First line is column names will give you the header record needed
This can also be achieved by using BASIC language or by writting wrapper in C++.