Over the next few days I am going to post code that walks through the sales life cycle. To start below is code that will take a given SalesId and confirm it.
public boolean confirmSalesOrder(SalesId _salesId)
{
SalesFormletter SalesFormletter;
SalesTable SalesTable;
;
SalesFormletter =
SalesFormletter::construct(DocumentStatus::Confirmation,true);
SalesTable.clear();
SalesTable = SalesTable::find(_salesId);
SalesFormletter.update(SalesTable,
systemDateGet(),
SalesUpdate::All,
AccountOrder::None,
false,
false);
}
Confirm a Sales Order through code
Preform a PackingSlip Update through code
To continue on with post like the previous, below is code that will take a given salesid an perform a packslip update on it.
public packSlipUpSO(SalesId _salesid)
{
SalesFormLetter SalesFormLetter = SalesFormLetter::construct(DocumentStatus::PackingSlip,true);
SalesTable SalesTable = SalesTable::Find(_salesId);
;
SalesFormLetter.update(SalesTable,systemDateGet(), SalesUpdate::ALL, AccountOrder::None, false, false);
}
This is in short form, because that is what someone left comments about on the last post, so I thought I would put this in short form just for them! Anyway, if you notice the 'SalesUpdate::ALL'. This enum tells the update posting that take the entire sales order and mark it has being packing slip updated. If you only wanted what was set as delivered now from within the sales line, then you could change this to the value: SalesUpdate::DeliverNow