Hi!
I'm trying to process a huge amount of rows in a table in a Oracle database as fast as possible.
I use NAS, timer and a LinkedObject table. The LinkedObject table source is a view in my MSSQL2000 database which fetch the rows from Oracle through Linked Server and OLEDB/ODBC.
NAS needs 3 seconds to process a row and update status in Oracle.
If I create a form, open the oracle table(LinkedObject table) in this form and performing my processing/changes it is done in msec.
Also every sql in Query Analyzer finish in msec.
Doing Run on the table from Object Designer quickly give my 10000 rows.
In NAS I create a Record var and use
IF Find
Repeat
..processing..
Until Next=0
There must be something strange going on inside Navision or...
Any idea how to overcome this problem?
Thanks in advance
0
Comments
It is probably looking at the whole thing as one transaction, so it loads 10000 records into memory, and has to start paging at some point. What I'd try is put a counter in there and COMMIT every so many records to free up system resources.
RIS Plus, LLC
I use LinkedInTransaction property FALSE. I do not understand why this so slowly when code run 'non visual'. Everything is ok when prosessing in a form, but when I do this in a 'not printing' report or in a codeunit everything slow down.
The point is to run this by NAS. I now doing some tests using ADO Automation objects and it seems to be faster. But it is far from the performance of Query Analyzer and other test applications I have made.
More ideas?
RIS Plus, LLC