October 10, 2012

October 09, 2012

Build numbers of Axapta

Build numbers of Microsoft Dynamics Ax

Hi all,



Here theAxapta Versions, with a description of the version represented.
in following tables all build version numbers are split into three parts. 
First one is  the client version number , followed by the application version. Formatted 
like: Build #client version/application version/localization vertsion e.g. #1951.7500/514-320/OP023-196 - for 3.0 KR2 client and 3.0 SP4 application.

Dynamics AX 2012
Build number Version
6.0.852.78 2012 Beta
6.0.947.0 2012 RTM
6.0.947.61 2012 Cumulative Update 1 (CU1)
6.0.947.280 2012 Cumulative Update 2 (CU2)
6.0.947.862 2012 Feature Pack
6.0.1108.670 2012 Feature Pack with CU3





Dynamics AX 2009
Build number Version RPC interface version
5.0.593.0 2009 RTM 50444.0 (C50C.0000)
5.0.593.439 2009 Hotfix Rollup 1 (RU1) N/A
5.0.593.662 2009 Hotfix Rollup 2 (RU2) N/A
5.0.593.827 2009 Hotfix Rollup 3 (RU3) N/A
5.0.593.1084 2009 Hotfix Rollup 4 (RU4) N/A
5.0.593.1287 2009 Hotfix Rollup 5 (RU5) N/A
5.0.593.1429 2009 Hotfix Rollup 6 (RU6) N/A
5.0.1000.52 2009 SP1 50444.0 (C50C.0000)
5.0.1500.358 2009 SP1 Hotfix Rollup 1 (RU1) 50444.0 (C50C.0000)
5.0.1500.809 2009 SP1 Hotfix Rollup 2 (RU2) 50444.0 (C50C.0000)
5.0.1500.1313 2009 SP1 Hotfix Rollup 3 (RU3) 50444.0 (C50C.0000)
5.0.1500.2116 2009 SP1 Hotfix Rollup 4 (RU4) 50444.0 (C50C.0000)
5.0.1500.2985 2009 SP1 Hotfix Rollup 5 (RU5) 50444.0 (C50C.0000)
5.0.1500.3761 2009 SP1 Hotfix Rollup 6 (RU6) 50444.0 (C50C.0000)
5.0.1500.4570 2009 SP1 Hotfix Rollup 7 (RU7) 50444.0 (C50C.0000)
5.0.1500.6491 2009 SP1 Hotfix Rollup 8 (RU8) 50444.0 (C50C.0000)





Dynamics AX 4.0
Build number Version RPC interface version
4.0.1659.26 4.0 RTM 41638.0 (A2A6.0000)
4.0.1659.35 4.0 RTM (localized) N/A
4.0.2163.0 4.0 SP1 42060.0 (A44C.0000)
4.0.2500.XXX 4.0 SP1 DIS layer hotfixes 42060.0 (A44C.0000)
4.0.2501.116 4.0 SP2 42060.0 (A44C.0000)
4.0.2503.XXX 4.0 SP2 DIS layer hotfixes 42060.0 (A44C.0000)





Axapta 3.0
Build number Client version AOCP version
1951.8 3.0 N/A
1951.17 3.0 SP1 60029 (0xEA7D)
1951.18 3.0 SP1 N/A
1951.2410 3.0 SP2 60031 (0xEA7F)
1951.2411 3.0 SP2 Hotfixed 60031 (0xEA7F)
1951.3730 3.0 SP3 60031 (0xEA7F)
1951.3733 3.0 SP3 Hotfixed 60031 (0xEA7F)
1951.4060 3.0 SP4 60031 (0xEA7F)
1951.5160 3.0 SP5 61031 (0xEE67)
1951.6710 3.0 Kernel Rollup 1 61031 (0xEE67)
1951.7500 3.0 Kernel Rollup 2 63031 (0xF637)
1951.7609 3.0 Kernel Rollup 3 63031 (0xF637)
Build number Application version
514-90 3.0 SP2
514-193 3.0 SP3
514-320 3.0 SP4
514-513 3.0 SP5
514-859 3.0 SP6


-Harry

September 27, 2012

How to Restore deleted sales order or purchase order

How to Restore deleted sales order or purchase order in AX 2009






Hi Frnds,

Some times fortunately or unfortunately user delete a record from Purchase Order OR Sales Order Forms,
and it can be drag you in a big problems, Here I am sharing a trick to restore these deleted Order records.
When ever a record is deleted from a Form, it sits in the void tables. These orders can be viewed from

AR -> Inquiries -> History -> Voided sales order or AP -> Inquiries -> History -> Voided Sales order.

AP -> Inquiries -> History -> Voided sales order or AP -> Inquiries -> History -> Voided Purchase order.

Now from this form you can only view the deleted orders but there is not option of restoring them.
Below are some sample code, you can use this to restore the voided orders.

Sales order restoration:
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;
}


Purchase order restoration:





static void restoreDeletedPO(Args _args)
{
    PurchTableDelete    purchTableDelete;
    PurchLineDelete     purchLineDelete;
    PurchTable          purchTable;
    PurchLine           purchLine;
    ;

    purchTableDelete = PurchTableDelete::find('00242_049', true);
    ttsbegin;
    switch (purchTableDelete.Cancelled)
    {
        case Voided::Voided :
            purchTable  = conpeek(purchTableDelete.PurchTable, 1);
            purchTable.insert();

            while select forupdate purchLineDelete where purchLineDelete.PurchId == purchTableDelete.PurchId
            {
                purchLine = conpeek(purchLineDelete.PurchLine, 1);
                purchLine.insert();
            }
            purchTableDelete.delete();
            break;

        case Voided::linesVoided :
            while select forupdate purchLineDelete where purchLineDelete.PurchId == purchTableDelete.PurchId
            {
                purchLine = conpeek(purchLineDelete.PurchLine, 1);
                purchLine.insert();
                purchLineDelete.delete();
            }
            purchTableDelete.delete();
            break;
   }

   ttscommit;
}



If you have any query for the same feel free to ask.  
-Harry