English German Spanish
Support|Education|Careers|Contact Us

Some large input files take a considerable amount of time to process.

Article ID: 1212
Date Created: 14/10/2009 10:13:56
Date Modified: 19/10/2009 10:42:33
Applies To: XE
More Information:

The time taken to perform these mappings is a result of the size of the Target DOM which XE stores in memory when performing translations. In a large file the Target DOM may exceed the size of actual physical memory, causing excessive paging by the operating system and hence an exponential increase in processing time.

There is a way to drastically minimise the processing time, but it requires an amendment to the way that the mapping is written. This method entails splitting the original map DLL into several separate DLLs, handling, say, the Header, repeating Body and Trailer functions. Each DLL is triggered by a specific record type encountered in the in-house file.

The index must then be amended to call these DLLs and flushing of the Target DOM occurs with each change. The following is a sample of changed "proc" handling:

<trans id="Test" docSource="Header" singleTgtDoc="true"> 
<proc id="Header" docSource="Header" docTarget="Output" mapDll="Header.dll" opConfig="UTF8" triggerRecord="HEADER"/> 
<proc id="Body" docSource="Body" docTarget="Output" mapDll="Body.dll" opConfig="UTF8" triggerRecord="BODY"/> 
<proc id="Trailer" docSource="Trailer" docTarget="Output" mapDll="Trailer.dll" opConfig="UTF8" triggerRecord="TRAILER"/> 
</trans>

Keywords:



Rate this article

12345

Current rating: 0
1 star = Poor, 5 stars = Perfect)

Feedback

Did this information solve your problem?
 
What can we do to improve this information?
 
Please provide an email address so that we can obtain
further information if necessary (optional):




User Logon
Username/Password:
CONTACT US

UK: +44 (0) 1733 371 311
ES: +34 91 268 66 29
SE: +46 (0) 322 935 25
DE: +49 (0) 40 31112 374


sales@di-international.com
Terms and Conditions | Copyright Data Interchange Plc 2012