So I have been attempting to force a little more structure on the serial control functions in Epicor. The idea being that given any serial number you should be able to tell what revision the part was and and when it was made. The easiest approach to this was to place these values in the serial table. My approach was to use the select serial number entry form to do this and it is working after some playing with including and moving data back and forth.
However I would like to honor the earlier select of revision that can occur places like the PO/Receipts Entry and Serial Number Assignment. The issue is that to do this I am relying on the Transaction Type and the SourceRowID, but in the case of Receipt Entry the serial number entry is being called when the Source Row, the Receipt detail, is still in memory and has not been saved so it does not send a SourceRowID. So if there is a better way to do that it may solve the issue. My approach for right now is to make the system save the receipt detail when the the Serial Number button is clicked. To do this I was forced to use the Mouse Down event then manually call the PerformClick Event to trigger the click. That seems a little clunky to me so I wanted to check if there was a way to send the data to the Select Serial Number Form from the unsaved Receipt Detail and if not how best to handle a click event and imposing another event before it triggers.