UserCommitSync: What does that mean?

I am using a connect string to an Excel Spreadsheet in Dynamics GP's Integration Manager. What does the property UserCommitSync do? It is set to YES. Here is the whole connect string.


DBQ=\\Server\Sheets.xls;DefaultDir=\\Server;Driver={MICROSOFT EXCEL DRIVER (*.XLS)};DriverId=790;FIL=excel 8.0;MaxBufferSize=2048;MaxScanRows=8;PageTimeout=5;ReadOnly=1;SafeTransactions=0;Threads=3;UID=admin;UserCommitSync=Yes;

Thanks

PS: The reason I am asking is I can open the spreadsheet, make a change, and then while the spreadsheet is open BEFORE saving the changes, the connection picks up the changes. Is that behaviour controlled by the UserCommitSync property?
LVL 1
loneieagle2Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

David Johnson, CD, MVPOwnerCommented:
dbUserCommitSync seems to control the way Jet writes to the TEMPORARY database it uses for staging EXPLICIT transaction. And it depends upon which version of msjet you are using.. there were extensive changes in v4.

If you want to use explicit transactions turn it off
0
Jim Dettman (Microsoft MVP/ EE MVE)President / OwnerCommented:
<<The reason I am asking is I can open the spreadsheet, make a change, and then while the spreadsheet is open BEFORE saving the changes, the connection picks up the changes. Is that behaviour controlled by the UserCommitSync property? >>

  The answer is, it depends.   JET had substantial changes made in ver 3.0.   What the JET team found out was that many were not taking advantage of transactions with JET 2.x.   So in 3.x, they created implicit transactions.

 These are transactions that are automatically done (a BEGIN TRANSACTION followed by a COMMIT or ROLLBACK) for you.   They did these for most of the record operations.

The UserCommitSynch  controls the explicit transactions; the transactions you state.  So if your not doing a BEGIN TRANSACTION, then no, this is the wrong setting.

ImplicitCommitSync controls the internal transactions that JET does and if you change it, all that it should do is give you poor performance (Jet 2.x behavior when you didn't use a Explicit transaction).


 Now the second part of this: you using the Excel Driver, not a JET DB.  So what has been said doesn't necessarily apply.   It's what that setting means in the context of the Excel driver that's important.

 My suggestion?  Try changing it.   If it does what you want, then we'll do a little more digging to find out exactly what it means, but I have a suspicion that outside of Microsoft, there will be few that do.

The other setting I'd try changing is SafeTransactions to true.

Jim.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Martin LissOlder than dirtCommented:
This question has been classified as abandoned and is closed as part of the Cleanup Program. See the recommendation for more details.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft Excel

From novice to tech pro — start learning today.