Sales Order . Purchase Order Confirmation, sales order invoice

Sales order confirmation:

server static void afmConfirmSalesOrder(SalesId _salesId)
{
    SalesFormletter         salesFormletter;
    SalesTable              salesTable;
    SalesTable.clear();
    SalesFormletter         = SalesFormletter::construct(DocumentStatus::Confirmation);
    SalesTable              = SalesTable::find(_salesId);
    SalesFormletter.reArrangeNow(false);
    SalesFormletter.update(SalesTable, systemDateGet(), SalesUpdate::All, AccountOrder::Auto, false, false);
}

  Confirmation of related direct delivery purchase orders
                while select PurchId from interCompanyPurchSalesReference
                    where interCompanyPurchSalesReference.SalesId == salesTable.SalesId
                    &&    interCompanyPurchSalesReference.dataAreaId == orderAddr.OrderDataAreaId
                {
                    purchtable = PurchTable::find(interCompanyPurchSalesReference.PurchId);
                   {
                        purchformletter = PurchFormLetter::construct(DocumentStatus::PurchaseOrder);
                        purchformletter.update(purchtable, '');
                    }
                }


Sales order invoice


// please note the SalesUpdate parameter. below code invoice the packing slip generated quantizes


static void TestInvoiceSO(Args _args)
{
    SalesTable salesTable = SalesTable::find('ECM-20000318');
    SalesFormLetter     salesformLetter = SalesFormLetter::construct(DocumentStatus::Invoice);
    salesformLetter.update(salesTable,systemDateGet(),SalesUpdate::PackingSlip);
    info(strFmt("Sales order '%1'invoiced",salesTable.SalesId));
}



Comments