Greg,
Before I comment on your reply, let me first expand on what I said before. The application is actually going to be a service. So, roughly explained, the service is envisioned to be only a handler of XML files (plus error, log, and message handler). It simply watches the folder for new files, and as soon as the file is found (exported from CloverLeaf), it is picked up, validated, and sent to SQL server’s stored procedures. Then, the stored procedures process (update, insert, delete, etc.) records (one by one) from the file, and therefore, are responsible for locking the record being processed.
From the above, you can see that the service is not the problem. Basically, it can pick and send 50,000-record XML file in couple of seconds, but the stored procs will take a lot of time to process.
As for the locking, I was affraid you were going to mention that