Thanks for the suggestions. @JeffSchwenk - I tried VI and no go (I get an error, as logic is probably checking value of CurrentInvoice field before updating). @DanBurleson - I have no preference whether it's done before or after, but think it gets more complicated if done after (there may be mutiple postings per day and I'd need to reset the UDF as part of each update, instead of a end-of-day routine). @LouisAraiza - There are backorders, so this would not work all the time. A sales Order may be exported several times (every time a shipment occurs), so this UDF serves as a trigger to create an invoice for each shipment. Since I don't know what will actually ship from the order, I have to create the invoice without shipping in full. Several days later, I receive a file of the lines actually shipped, which is my source file for VI import to update the invoices. All these invoices sit in a HOLD batch. Once updated, I'll move them to a new batch by using SO-1100 (Enhanced Batch Processing from DSD), or a script (if cost effective).
Client basically takes an order, marks it for shipping via the UDF, generates an invoice for all orders with a Yes UDF value, sends file to another vendor to ship product, gets a daily file of items shipped, imports the shipments into existing invoices and moves said invoices into a new batch so they can be updated. Once done, I need to reset the UDF value on the order to prepare it for the next time another shipment occurs.