I'm trying to make a UDF in Sales Order Header that will be a Y/N value indicating whether or not an invoice has been created for that order.
Any ideas?
Unfortunately, a brief test on version 2018 resulted in neither the post validate of CurrentInvoiceNo or the pre write of SO_SalesOrderHeader events firing when invoicing a sales order.
As Kevin pointed…
It is possible that Sage writes this value without triggering any BOI events. That would be unusual, but technically possible. Header Pre-Write would probably be the best bet (with a GetValue added to…
In my test, the script did not fire on either event attached to SO_SalesOrderHeader but I would think you could instead put the script on the post write event of SO_InvoiceHeader and get the value of the…
Not sure if this helps, but you can probably get the information from the SO_SalesOrderHistoryHeader file. This file should have an invoice number field. It will be blank if an invoice has not been created.
Not sure if this helps, but you can probably get the information from the SO_SalesOrderHistoryHeader file. This file should have an invoice number field. It will be blank if an invoice has not been created.
No, unfortunately that doesn't help. I don't need the invoice number, I need a constant value of Y or maybe like the date the invoice was created.
Nevermind, I figured it out.
Nevermind, no I didn't
If you want to translate this field value into a Y/N UDF, you'd need a script.
You can also check the OrderType field in SO header. S = no invoice. B = at least one invoice.
That Last Invoice Date field would work. How did you get that populated?
Our OrderType field never changes. It's always Standard.
Go into SO Invoice Entry, create a new invoice, and enter the SO # (before leaving the Header tab). Set line quantities, post, and the SO is updated then with what was invoiced (but if all lines were shipped complete, the SO disappears from SO Entry). If any lines were short-shipped, the OrderType changes to B, with a Last Invoice No populated and line quantities updated.
Retaining SO history is optional, and if you need to report on fully shipped SO, you will want to ensure that is turned on.
Oh, we create all orders in Sales Order Entry. I guess that's why those fields don't work? And the order type never changes?
An SO is not a transaction, it is a potential transaction.
Create SO in SO Entry, then invoice in SO Invoice Entry.
If you are not invoicing, you are not processing the transactions (removing inventory, creating the GL entries, creating the invoices for customers to pay...).
*Community Hub is the new name for Sage City