Showing posts with label erp. Show all posts
Showing posts with label erp. Show all posts

Friday, March 9, 2012

Replication & Report execution

I have an issue with some reports that are fired seamlessly from our ERP system, the problem is that they are attempting to run over the replicated database BEFORE the replication has time to get the records into the replicated database. I believe my longest latency time is 8400 (about 8 seconds if I am reading that right).
As soon as a shipment is processed the Bill Of Lading, Packing List & Certificate of Analysis Reports are fired, the ODBC driver is pointing to the replicated database, and in all my testing this did not occur. I couldn't get to the replicated database fast enough to not see the records present.
I know I could put a delay in the stored procedure, but doesn't that defeat my purpose a bit?
Does anyone have any suggestions on how I can speed things up? Any suggestions at all will be appreciated, I want my report database (Transactional replication) project to be a huge success.
8.4 s to be completely accurate
To get a consistent database state you should schedule your distribution agent. This way it will not run continuously but rather in a batch.
You might also want to split the tables into their own publication and then use the independent agent option. This should solve the synchronization problems.
The most significant thing you can do to improve your transactional performance is to try to minimize the indexes, triggers and indexed views hanging off the subscriber tables.
Hilary Cotter
Looking for a SQL Server replication book?
http://www.nwsu.com/0974973602.html
"JLS" <jlshoop@.hotmail.com> wrote in message news:e7ivuSSlEHA.3988@.TK2MSFTNGP14.phx.gbl...
I have an issue with some reports that are fired seamlessly from our ERP system, the problem is that they are attempting to run over the replicated database BEFORE the replication has time to get the records into the replicated database. I believe my longest latency time is 8400 (about 8 seconds if I am reading that right).
As soon as a shipment is processed the Bill Of Lading, Packing List & Certificate of Analysis Reports are fired, the ODBC driver is pointing to the replicated database, and in all my testing this did not occur. I couldn't get to the replicated database fast enough to not see the records present.
I know I could put a delay in the stored procedure, but doesn't that defeat my purpose a bit?
Does anyone have any suggestions on how I can speed things up? Any suggestions at all will be appreciated, I want my report database (Transactional replication) project to be a huge success.

Saturday, February 25, 2012

Replication

When replication was taking place and when we tried to enter records in ERP Package i.e Navision we faced the following error.

231,”21s01”,[Microsoft][ODBC SQL Server Driver][SQL Server]Insert Error: Column name or number of supplied values does not match table definition.

Can anybody help me in resolving this.Please mail to me at

ranjit246@.yahoo.co.in

Merge replication requires every table article to contain a uniqueidentifier column with rowguid property set. If one doesn't exist, we add it. This column does have a DEFAULT constraint defined, so if you specify column list when doing your insert, this rowguid column will be transparent to your application.

It's good practice to specify a column list for all insert statements, I'm guessing your application doesn't do this, which is why your app is failing.

|||

Where do i make this change. I am using the DataSouce in VB DataViewGrid.

Please help

Replication

When replication was taking place and when we tried to enter records in ERP Package i.e Navision we faced the following error.

231,”21s01”,[Microsoft][ODBC SQL Server Driver][SQL Server]Insert Error: Column name or number of supplied values does not match table definition.

Can anybody help me in resolving this.Please mail to me at

ranjit246@.yahoo.co.in

Merge replication requires every table article to contain a uniqueidentifier column with rowguid property set. If one doesn't exist, we add it. This column does have a DEFAULT constraint defined, so if you specify column list when doing your insert, this rowguid column will be transparent to your application.

It's good practice to specify a column list for all insert statements, I'm guessing your application doesn't do this, which is why your app is failing.

|||

Where do i make this change. I am using the DataSouce in VB DataViewGrid.

Please help