Adding a transaction is a good idea (I thought I'd already done that) for speed purposes on large databases, but I don't see how it would affect the recalculation of Smart Names (a transaction just tells SQLite not to commit each change to disk until the transaction is completed, which is why it speeds things up, but in the end, the database is still changed in exactly the same way either with or without a transaction).
RE: RESYNC, I didn't add RESYNC (although I properly should have) because we are only updating the user sort or a custom field and I don't believe there are any internal dependencies associated with these fields (famous last words). In consulting with Clyde re: the recalculation of smart names, he said (assuming I had used a RESYNC):
In other words, adding RESYNC would trigger smart name recalculations, not avoid them.
However, I'm willing to give it a shot and see what happens. Version 1.23, posted here, fixes the typo in the the window title bar, adds a transaction, and adds Resync. I suspect the only way to avoid recalculating Smart Names will be to open database>Properties and check "Disable Smart Names" before running the macro, but I'd be interested if these changes make any difference without doing that.
RE: RESYNC, I didn't add RESYNC (although I properly should have) because we are only updating the user sort or a custom field and I don't believe there are any internal dependencies associated with these fields (famous last words). In consulting with Clyde re: the recalculation of smart names, he said (assuming I had used a RESYNC):
QUOTE |
The resync command makes sure everything is kept in sync after a sqlite update. So if smart names are not disabled then then they will be recalculated |
In other words, adding RESYNC would trigger smart name recalculations, not avoid them.
However, I'm willing to give it a shot and see what happens. Version 1.23, posted here, fixes the typo in the the window title bar, adds a transaction, and adds Resync. I suspect the only way to avoid recalculating Smart Names will be to open database>Properties and check "Disable Smart Names" before running the macro, but I'd be interested if these changes make any difference without doing that.