Wednesday, December 17, 2008

Restoring a deleted sales order

static void restoreDeletedSO(Args _args)
    {
        SalesTableDelete    salesTableDelete;
        SalesLineDelete     salesLineDelete;
        SalesTable          salesTable;
        SalesLine           salesLine;
        ;
        SalesTableDelete = SalesTableDelete::find('00450_036', true);
        ttsbegin;
        switch (salesTableDelete.Cancelled)
        {
            case Voided::Voided :
                salesTable  = conpeek(salesTableDelete.SalesTable, 1);
                salesTable.insert();
                while select forupdate salesLineDelete where salesLineDelete.SalesId == salesTableDelete.SalesId
                {
                    salesLine = conpeek(salesLineDelete.SalesLine, 1);
                    salesLine.insert();
                }
                salesTableDelete.delete();
                break;
            case Voided::linesVoided :
                while select forupdate salesLineDelete where salesLineDelete.SalesId == salesTableDelete.SalesId
                {
                    salesLine = conpeek(salesLineDelete.SalesLine, 1);
                    salesLine.insert();
                    salesLineDelete.delete();
                }
                salesTableDelete.delete();
                break;
       }
       ttscommit;
    }

No comments:

How to identify the user that was used to change an object from AOT in AX2012

Get the object name for which we need to track these (user and date&time) information's. Login to SQL Server Management Studio an...