I have the following scenario:
Two (5Mb) Files with different file structures each ->
XI (transform and generate a single structure record) ->
Insert a record in a DB for each new record generated
Let suppose file1 has order headers - one order per line -and file2 has the corresponding order items - one item per line, e.g;
File 1 OrderNr Description 1 A 2 B 3 C File 2 OrderNr ItemNr MaterialCode .... 1 1 111 1 2 222 1 3 555 2 1 888 2 2 777 3 1 111
Imagine I want to insert a record in the database for
each order/item like this
OrderNr ItemNr Description MaterialCode ..... 1 1 A 111 1 2 A 222 1 3 A 555 ... ... ... ...
My real scenario is a little more complicated but never mind for now.
I need to collect the two different files with two different file structures into the same message. Although I have read about the subject I am not sure about how to do it using BPM because there isn't any field I could use to correlate file1 with file2 - I can only correlate a record of file1 with several records of file2. I simply know that the two files will be available in a specific directory once a day at 06:00AM.
First question is:
How can I collect the two messages originating each from a different file into only one message with two different subtypes one for each file structure?
Because my background is ABAP I could do it with a workaround for temporarily storing the info from each file into database tables in XI and then correlate the info from the two files to generate a single message.
File1 -> XI -> INSERT DATA XI ZDB1 (via ABAP Proxy or RFC)
File2 -> XI -> INSERT DATA XI ZDB2 (via ABAP Proxy or RFC)
Them I could use an event to check when the two tables have all the data from both files. I could then combine the data from the two tables and start another integration process like this
XI SERVER (ABAP Proxy) -> XI Integration Server -> Third-party (JDBC)
But this way I would have to code the hole data conversion which is not a good idea from the perspective of XI (EAI/Broker).
Maybe I sould use BPM. But how?
Is BPM performant enough (we are talking about files with thousand of records)?
Thanks in advance