Search through blog..

Tuesday, November 13, 2012

Full CIL Generation from X++

This post describes one of the many strange errors which might occur if the CIL Generation was not done properly.  If you want to know more about CIL generation . Go here: X++ compiled to .Net CIL[Ax2012]

In Microsoft Dynamics AX, scheduled batch jobs written in X++ must first be compiled into the common intermediate language (CIL) of the .NET Framework.

I faced this one issue when I was trying to do a Full CIL Generation after fixing an Over-layering issue (which occurred due to some project related update installation).
Error message was “Type name does not exist.
The VendRequestAuditContract.getAttribute() reflection API could not create and return the AifCollectionTypeAttribute object. Please check the parameters.”

Before looking into more details, I followed the below best practises suggested when working with CIL generation.
1.      Stop AOS.
2.     Delete all files from path C:\Program Files\Microsoft Dynamics AX\60\Server\<<Instance name>>\bin\XppIL.
3.     Start AOS.
4.     AOT > Add-ins > Incremental CIL generation from X++ 

And that solves the problem. Takes some time in CIL generation but is always effective.

Sunday, November 11, 2012

Extended Architecture of Dynamics Ax 2012

In Dynamics Ax 2012, there are many structural changes in the Database storage level and in the ways of Communication between various components.

The below Extended Architecture will allow us to understand the components involved, behaviour and an overall design typically followed with Dyanmics Ax.


This should help in better understanding which is much required to component choosing and Hardware sizing way before actual start of your project Implementation.
 

Saturday, November 10, 2012

What and how to create a load balancing cluster [AX 2012]

You can distribute the user load in Microsoft Dynamics AX across multiple instances of Application Object Server (AOS) by creating a load balancing cluster.

Microsoft Dynamics AX offers two types of load balancing clusters:
1.      A cluster that includes a load balancer
the load balancing AOS instance is dedicated to distributing the user load. And this load balancing AOS instance does not process MS DAX business logic or data.

2.      A cluster that does not include a load balancer
you must set up client configurations to connect to the load balancing AOS instance.
When a client starts, it connects to the load balancing AOS instance. The load balancing AOS instance returns a list of active AOS instances in the cluster, sorted by workload. The client attempts to connect to the first AOS instance in the list. If that connection fails, the client attempts to connect to the second AOS instance in the list, and so on.

Before you can create a cluster, you must install multiple AOS instances. Each instance must point to the same database.
Create a cluster
1.      Click System administration > Setup > System > Cluster configuration.
Press CTRL+N to create a new cluster.
Caution: You cannot configure the Non Load Balanced AOS Instances as a load balancing cluster. The Non Load Balanced AOS Instances is a default entity that enables AOS communications for non-load balanced AOSs. To create an AOS cluster, you must create a new cluster.

2.      Enter a name and description for the cluster.

3.      Press CTRL+S to save your changes.

4.      Add an AOS instance to a cluster
Click System administration > Setup > System > Cluster configuration.

5.      In the Map AOS instances to clusters section, select an AOS instance.

6.      If you want the AOS instance that you selected to function as a load balancer, select the Load balancer option.
Note: If an AOS instance is used as a load balancer, it cannot be used as a batch server.

7.      Click the Cluster name field to display a list of available clusters. Select the cluster that you want to add the AOS instance to.

8.      Press CTRL+S to save your changes.

Change client configurations
If the cluster uses a load balancing AOS instance, set client configurations to first connect to the load balancing AOS instance. We recommend that you add all AOS instances in the cluster to the client configurations. Use the Microsoft Dynamics AX Configuration utility to change client configurations.

Friday, November 9, 2012

How to Configure an AOS to access a different database [AX 2012]

You can connect an instance of Application Object Server (AOS) to a different database.
You may want to do this in the following situations:
  1. You are moving from a development or staging environment to a production environment.
  2. You are upgrading a Microsoft Dynamics AX system.
Before you can connect an AOS instance to a different database, you must make sure that the AOS account is the domain account or Network Service account that is associated with the AOS service.

Connect to a different database:

  1. Open the server configuration utility. Click Start > Administrative Tools > Microsoft Dynamics AX 2012 Server Configuration. 
  2. Verify that the AOS instance and configuration that you want to modify are selected.
    O
    n the Database Connection tab, use the lists to select a server, database, and baseline database, and then click OK. When you are prompted, click Yes to restart the AOS instance.
    If you do not restart the AOS instance, it does not connect to the new database.

One limitations of Single AOS to connect multiple database is we can have only one AOS - Database connection at a time. One AOS cannot connect to multiple database at the same time.
Only multiple clients can connect to a Single AOS and AOS is responsible for all the Database CRUD operations requested by all the connected clients.

Thursday, November 8, 2012

Installation of multiple AOS instances [AX 2012]

This topic describes how to install multiple instances of Application Object Servers (AOS) for Microsoft Dynamics AX 2012.

Few Important points to be noted while installing Multiple AOS instances are as below:
·        You can install up to 99 AOS instances in your environment. And each AOS instance installed is automatically assigned a number between 01 and 99

·        After you install and start an AOS instance, and before you complete any other tasks in Microsoft Dynamics AX, you must run the initialization checklist.

·        You must install an initial AOS instance and complete the Initialization checklist on that instance before you install additional AOS instances.
If you install additional AOS instances before you have completed the Initialization checklist those AOS instances will not start.

·        The process of manually changing the service account used for an AOS is complicated and prone to error.
For this reason, if you must change the service account for an AOS, it is recommended that you uninstall and reinstall the AOS by using Setup.exe. For more information, see Change the account used by AOS

·        While installing AOS instance, Setup adds the AOS account to the database as a user, and makes it a member of the db_ddladmin, db_datareader, and db_datawriter database roles.

·        Every AOS instance uses just one database. There is no way to select a database based on an incoming client connection (Microsoft Dynamics AX 2012 Configuration).
But it's completely fine to run a Single AOS instance with different databases, one at a time. You can configure the Database connection in the “Microsoft Dynamics AX Server Configuration Utility” and you can only connect the AOS instance to the updated database after a AOS Service Restart.

·        You can install only one instance of .NET Business Connector on a computer. In an environment that has multiple AOS instances, use the Microsoft Dynamics AX Configuration utility to make sure that the instance of .NET Business Connector on the local computer connects to the correct AOS instance for the component that you are installing.
In the utility, in the Configuration Target list, select Business Connector (non-interactive use only). On the Connection tab, verify that the correct AOS instance is displayed.

·        Microsoft does not recommend or support the installation of multiple versions of Microsoft Dynamics AX components on the same computer in a production environment.

·        The AOS service can take several minutes to start the first time after it is installed. To determine whether the AOS service has started, click Administrative tools > Services, and review the status of the Microsoft Dynamics AX Object Server service.

Installation of multiple AOS instances could fall under the below two categories:
1.      Install an AOS instance on multiple computers:
In most production environments, you install multiple AOS instances, each on a different server. You can use multiple AOS instances to support batch processing and load balancing. To make this happen, Install each AOS instance as shown below, and make sure that you point every AOS instance to the same database.
The first user who installs an AOS instance is automatically added to Microsoft Dynamics AX as an administrator. If subsequent AOS instances are installed by different users, you must manually add those users to the Microsoft Dynamics AX System administrator role to grant them administrative rights in Microsoft Dynamics AX
You can use a single domain account for all instances of the AOS service, or you can specify a different account for each instance.

2.     Install multiple AOS instances on one computer:
In some testing and development scenarios, you may want to install multiple AOS instances on the same computer. For example, if you are developing code for multiple versions of Microsoft Dynamics AX, you can install different versions of AOS side by side.
Install each AOS instance as shown below. If you want to install an AOS instance on a server that already has an AOS instance, you must specify a unique port number for each instance. By default, every time that you install an additional AOS instance on a computer, the TCP/IP, WSDL, and NET-TCP port numbers are incremented by 1.
If the same port number is used for more than one AOS instance on a computer, one of the AOS instances that have conflicting port numbers does not start.

How to Install an AOS instance:
1.      Start Microsoft Dynamics AX Setup. Under Install, select Microsoft Dynamics AX components. Advance through the initial wizard pages.

2.     If the Setup Support files have not yet been installed on the computer, the Select a file location page is displayed. The Setup Support files are required for installation. Enter a file location or accept the default location, and then click Next. On the Ready to install page, click Install.

3.     On the Select installation type page, click Custom installation, and then click Next.

4.     On the Select components page, select Application Object Server (AOS), and then click Next.

5.     On the Prerequisite validation results page, resolve any errors. And when no errors remain, click Next.

6.     On the Select a file location page, select the location where you want 32-bit versions of Microsoft Dynamics AX files to be installed, and then click Next.

7.      On the Connect to the databases page, in the Server name box, type or select the name of the Microsoft SQL Server computer. In the Database name box, select the name of the Microsoft Dynamics AX transaction database. Optionally, select the name of the baseline database.

Note: If you are upgrading code or data from Microsoft Dynamics AX 4.0 or Microsoft Dynamics AX 2009, you must select Register database for upgrade and select a baseline database.
The Register database for upgrade option is available when you install the first AOS in the computing environment. If you install more AOSs, this option is not available. You can determine whether the database was registered for upgrade by opening the Microsoft Dynamics AX client. If the database was registered for upgrade, the Data upgrade checklist is displayed when you open the client.

Click Next.

8.     On the Configure an Application Object Server (AOS) instance page, assign a name to the AOS instance. Optionally, you can specify the ports that are listed in the following table.
TCP/IP port (Used by other Microsoft Dynamics AX components to communicate with AOS)
à 2712
Services WSDL port (Used by external applications to access the WSDL for AOS-based Microsoft Dynamics AX Web services)
à 8101
Services endpoint port (Used by external applications to access AOS-based Microsoft Dynamics AX Web services)
à 8201

9.     On the Specify an AOS account page, select the Network Service account of the local computer (recommended only for development environments), a managed service account, or a domain account for the AOS service.
If you select to use a managed service account, make sure to specify the account in the format Domain\AccountName$.

10.  On the Prerequisite validation results page, resolve any errors. When no errors remain, click Next.

11.   On the Ready to install page, click Install.

12.   After the installation is complete, click Finish to close the wizard.

Related links:
http://ajstudi0.blogspot.com/2012/12/step-by-step-installation-procedure-of.html

Sunday, November 4, 2012

Understanding basics of Supply Chain Management

Supply Chain management can be understood better as "The Management of the Chain of Supplies".
It is the managing of upstream and downstream value added flow of materials, final goods and related information amoung suppliers, company, resellers and final consumers.

In simple terms, the management of the below to manufacture Product or Service,
* buy things/services
* make things/services
* move things/services
* sell things/services
* service things/services (helpdesk, replacement of damaged..)

And a Supply Chain Manager should be able to do all the above flawlessly and still manage to make good profit.


In Microsoft Dynamics Ax 2012, many new features are introduced to handle SCM effectively. Below are few listed:
  1. Product Information Management
    • introduction of Creating and Releasing products/product mastersProduct: is a uniquely identifiable product.
      Product master: A standard or functional product representation
      Product variant: is the configuration of a product master
    • introduction of Configuration Technologies (#3)Predefined variant: enables the product to be modeled based on the product dimensions, i.e, color, configuration and size.
      Dimension-based configuration: used to create product variants by selecting values for product dimensions.
      Constraint-based configuration: enables a product to be used in product configurator
  2. Agreements
    • Sales and Purchase AgreementsSales agreement: is a contract that commits the customer to buy a product in a certain quantity over time in exchange of special prices and discounts.
      Purchase agreement: is a contract that commits an organization to buy
    • improvements in Trade Agreements
  3. Procurement and sourcing
    • Purchase order and Change management
      Change management: lets you review and track history of a PO before it is approved.
    • improvements in Vendor management
    • Purchasing Policies
      is a collection of purchasing policy rules that control the requistion process for a group of requisitioners.
    • enhancements in Purchase Requisition and PR ConsolidationPurchase Requisition: is an internal document that authorizes the purchasing department to buy items and services.
      Requisition Consolidation: is a practical way to reduce procurement costs for organizations to consolidate demand.
    • Business rules for Fixed Assets
  4. Manufacturing and Scheduling
    • Operations resource model
      Resources can be allocated to jobs and operations by matching the capabilities of the resource with the requirement of the operation.
    • improvements in Resource scheduling
    • Period Templates
      are introduced to make creating schedules such as production, purchase, sales and final assembly schedules easier.
  5. Lean Manufacturing
    • Production flow
      to describe the flows in manufacturing and logistics supported by Lean activities.
    • Kanban board and Event Kanbans
      Kanban board: uses the different approaches and features of Lean manufacturing integrated into a single, configurable user interface for the shop floor.
    • introduces Mixed mode
      enables companies to implement different production strategies on a single production site.
    • introduces Subcontracting
  6. Time and Attendance and manufacturing execution
    • introduces Time and Attendance
      this module is used to create and process time and attendance registrations which are matched against workers time profile in order to give an accurate picture of the individual workers work effort and enable the company to make informed cost and payroll decision.
    • introduces Manufacturing Execution
      is primarily targeted for use by manufacturing companies, workers can register time and item consumption on production jobs by using the job registration form.
  7. Product configurator
    • introduces building a Product Configuration model
    • prepare for a Model for Release
    • Product Configuration
      Product configurator: is a constraint-based product configuration tool that uses the Microsoft Solver Foundation product. It can be used to create and maintain product models and to reuse product models, components and attributes. Can also be used to configure items on sales order, sales quotation, purchase orders and production orders.
  8. Process manufacturing
    • improvements in Catch weight
    • improvements in Product Information management
    • improvements in Inventory and Warehouse management
    • improvements in Procurement and Sourcing and Sales and marketing
    • improvements in Production Control and Master Planning
    • Process manufacturing reports
  9. Intercompany
    • Intercompany Reports
    • Intercompany Planning
       
Few key areas of SCM as in Ax2012 are listed below:
  • Purchase Order Line Numbers,
  • Subledger Distributions,
  • Vendor lines not related to a PO,
  • Two voucher strategy for Purchase Distributions,
  • Invoice totals matching,
  • Extended price totals matching,
  • Miscellaneous charges,
  • Prepayments
  • and Change management.


Saturday, November 3, 2012

Few facts about Dynamics Ax Classes

X++ is an Object Oriented Programming language and a class an important part of X++ langauge. A class can be defined as a collection of methods. Compared to table methods, using a methods in class makes reusing your code easier and this is because of the below two reasons:
  1. Classes can be inherited
  2. A class method can refer to other methods within a class
Dynamics AX has two main categories of classes:
  1. Application classes - We use application classes for constructing our application. Only these classes can be created or modified.
  2. System classes - These are primarily used for doing runtime changes to the user interface.
Methods:
Classes are divided into methods, where each method should be doing a single task. The code in a method consists of 4 blocks: Identification, variable declaration, code lines and return value.
  1. Identification:
    In the top of a method is the identification of the method which has the following sytax:
    <modifiers> <return type> <method name> (Parameter profile)
  2. Variable declaration:
    The first few lines of code in a method always contains the variable declaration, where we define variables needed in the method
  3. Code lines:
    Code lines lie right below the variable declaration code. These code lines determine the behavior of the method. This is where business logic is written.
  4. Return value:
    This is the value we are intending to return to the caller of the method. Calling return will end the execution of the method and value specified is returned back.
Example of a method:
//Identification
public AmountMst sumCustTrans(CustAccount _custAccount, TransDate _transDate = systemdateget())
{
//Variable declaration
CustTrans custTrans;
AmountMst sumAmountMst;
;
//Code lines
if (!_custAccount)
throw error("Customer account not specified.");
sumAmountMst = (select sum(amountMst) from custTrans where custTrans.accountNum == _custAccount && custTrans.transDate >= _transDate).amountMst;
//return value
return sumAmountMst;
}
 
 
This method calculates the sum of the customer transaction and returns the sum using the variable sumAmountMst.
 
Like all other objects in Dynamics AX, Classes are listed in the Application Object Tree (AOT). And within them are listed methods. The icons for each method in a class are determined by the modifiers, which makes it easy to get an overview of the methods of a table or class. (say, CustBillOfExchangeClose for example)
 
  

Before being able to reference the class object, you must initiate the class object. Keyword new is used o initiate the class. And the class initiating the class object must be of the same type.
Syntax: <Class name> _objVariable = new <Class name>()
The constructors practice is not used in MorphX as new() is used as the constructor.
 

An application class has 3 default nodes:
  1. Class Declaration:
    Variables can only be declared in Class declaration, we cannot initialize variables here |
  2. new() method:
    Invoking new() will call the constructor for the class. A constructor is used to initialize a class.
  3. finalize() method:
    The method finalize() is used to remove the class from memory. This is not a method which is called automatically as the garbage collector will automatically remove objects
    not used anymore from memory.
The below is the simple flow to create and use a class
  1. Go to the node Classes, right-click and chooses New Class. A new class called "Class1" will be created. Open the class by double-clicking the new class.
  2. Check the left window to make sure that ClassDeclaration is selected. Rename the class by changing "Class1" to "MyFirstClass".
  3. In ClassDeclaration, declare a variable of the extended data type ItemId. ClassDeclaration should look like the following:
    class MyFirstClass
    {
    ItemId itemId;
    }
  4. Now add an new method to the class by pressing ctrl+n. The new method called "Method1" will automatically be opened in the editor. Change the name of the method to "parmItemId".
  5. Set the parameter variable equal to the global class variable itemId. The method must return itemId.
    itemId parmItemId(ItemId _itemId = itemId)
    {
    ;
    itemId = _itemId;
    return itemId;
    }
  6. As class variables cannot be referenced from outside the class, so you can create methods like this to set and get the values of a class variable. Such methods are often prefixed with parm*.
  7. Click the save icon in the editor tool bar to save all changes to the class.
The easiest way of testing a class is by creating a job and printing the necessary variables to the Infolog. Example for the above class is:
Static void Classes_TestMyFirstClass(Args _args)
{
MyFirstClass myFirstClass;
;
myFirstClass = new MyFirstClass();
myFirstClass.parmItemId("Item100");
info(myFirstClass.parmItemId());
}

Output:
 
 

Modifiers: are quite useful as you can set restrictions on the use of a method or a whole class and how a class is inherited
 
Access ModifierDescription
PublicThis is the default behavior for classes and methods.
A public class can be inherited and class methods can be overriden in subclasses and called outside the class.
ProtectedOnly methods can be protected.
A protected method can overridden in subclasses, but can only be used inside the class hierarchy.
PrivateBoth classes and methods can be set as private. However this will only affects methods. A private method can only be used within the current class.

About Internet Protocol, IPV4 and IPV6

[NDR – Non Dynamics related Topic]

What is Internet Protocol - IP?
IP specifies the technical format of packets and the addressing scheme for computers to communicate over a network.
It can be compared to something like the postal system. It allows you to address a package and drop it in the system, but there's no direct link between you and the recipient.


What is TCP/IP?
Most networks combine IP with a higher-level protocol called Transmission Control Protocol (TCP), which establishes a virtual connection between a destination and a source.
TCP/IP establishes a connection between two hosts so that they can send messages back and forth for a period of time.

There are currently two version of Internet Protocol (IP): IPv4 and a new version IPv6.

What is IPv4 -- Internet Protocol Version 4?

IPv4 is the fourth revision of the Internet Protocol (IP) used to identify devices on a network through an addressing system. The Internet Protocol is designed for use in interconnected systems of packet-switched computer communication networks.

IPv4 is the most widely deployed Internet protocol used to connect devices to the Internet. IPv4 uses a 32-bit address scheme allowing for a total of 2^32 addresses (just over 4 billion addresses). With the growth of the Internet it is expected that the number of unused IPv4 addresses will eventually run out because every device including computers, smartphones and game consoles - that connects to the Internet requires an address. And IPv6 is being deployed to fulfill the need for more Internet addresses.

What is IPv6 -- Internet Protocol Version 6?

IPv6 is the successor to Internet Protocol Version 4 (IPv4). It was designed as an evolutionary upgrade to the Internet Protocol and will, in fact, coexist with the older IPv4 for some time. IPv6 is designed to allow the Internet to grow steadily, both in terms of the number of hosts connected and the total amount of data traffic transmitted.

IPv6 is also called IPng (Internet Protocol Next Generation), the "next generation" Internet standard and has been under development now since the mid-1990s. IPv6 was born out of concern that the demand for IP addresses would exceed the available supply.



While increasing the pool of addresses is one of the most often-talked about benefit of IPv6, there are other important technological changes in IPv6 that will improve the IP protocol:
  • No more NAT (Network Address Translation)
  • Auto-configuration
  • No more private address collisions
  • Better multicast routing
  • Simpler header format
  • Simplified, more efficient routing
  • True quality of service (QoS), also called "flow labeling"
  • Built-in authentication and privacy support
  • Flexible options and extensions
  • Easier administration (say good-bye to DHCP)
The Difference Between Ipv6 and Ipv4:


PropertyIPv4IPv6
Deployed19811999
Address size32 bit number128 bit number
Address formatDotted decimal notation:
172.25.246.81
Hexadecimal notation:
3ffe:1900:4545:3:200:f8ff:fe21:67cf
No of Addresses2 to the power of 322 to the power of 128

Friday, November 2, 2012

Basic and minimum requirements for installation of MS Dynamics Ax

Network requirement and N/w response time:
 
 
The minimum network requirements for the connection between the client and the AOS and the connection between the AOS and the database in a Microsoft Dynamics AX system is as below:
 

ValueClient to AOSAOS to database
Bandwidth (b)100 megabits/sec100 mbps

 
Total response time for a task in MS Dynamics Ax is expressed by formula:
Response time = (No. of calls to and fro server * Latency) + Number of bytes sent/bandwidth
Note: The higher the Latency (is a measure of time delay experienced in a system), the longer the response time
Domain Requirements:
 
Consider the following domain requirements when you install Microsoft Dynamics AX:
  • Computers that run Microsoft Dynamics AX components must belong to an Active Directory domain, and Active Directory must be configured in native mode.
  • Computers that run Microsoft Dynamics AX components must have access to other computers in Active Directory. These computers may be either in the same domain or in another trusted domain.
  • To support e-mail alerts in Microsoft Dynamics AX, an SMTP (Simple Mail Transfer Protocol) server must be present in the environment.

Minimum Hardware requirements:
 
The following table lists the minimum hardware that is required to install and run the Microsoft Dynamics AX Application Object Server (AOS) and the Microsoft Dynamics AX client.
 
Note: If other Microsoft software is installed on the same computer, the system must comply with the hardware requirements for that software, as well.
 
ItemRequirement
ProcessorIntel Pentium/Celeron family or compatible Pentium III Xeon or higher processor. We recommend a processor speed of 1.1 GHz or higher.
 
Important: MS Dynamics AX is not supported on Itanium 64-bit processors.
RAMWe recommend 4 GB or more of RAM for server computers.
We recommend 2 GB or more of RAM for client computers.
MonitorSuper VGA (1024x768) or higher resolution monitor
OtherA DVD drive is required for an installation from a DVD.

 
Minimum Software requirements for all computers:
 
 
The following software must be present on a computer before any Microsoft Dynamics AX components can be installed:
  • Microsoft .NET Framework (3.5 for most and 4.0 for advanced options)
  • Microsoft Windows Installer 3.1 or Windows Installer 4.0


Supported server Operating systems:
 
The server operating systems that are supported for Microsoft Dynamics AX 2012 components are as below:
 

Operating SystemNotes
Windows Server 2012
(Standard Edition / Datacenter Edition)
Windows Server 2012 is supported only with Microsoft Dynamics AX 2012 R2.
Windows Server 2008 R2
(Standard Edition, Enterprise Edition, Web Edition, or Datacenter Edition)
 
Windows Server 2008 with Service Pack 2
(Standard Edition, Enterprise Edition, Web Edition, or Datacenter Edition)
Only 64-bit versions of Windows Server 2008 are supported.

 
Note: Although a server operating system is required for most Microsoft Dynamics AX server components, you can also install some server components on supported client operating systems, but, only supported for demonstration or development. In a production environment, you must install the server components on a supported server operating system.

 
Supported Database servers:
  • Microsoft SQL Server 2012 (Standard/Enterprise/Business Intelligence Edition)
  • SQL Server 2008 R2 (Standard/Enterprise/Datacenter edition)
  • SQL Server 2008 (Standard/Enterprise edition)

Software requirements for MS Dynamics Ax Server components:
  1. Application object server
    1. .net framework 4.0 (with KB article 2390372)
    2. SQL Server 2008 Native client
  2. Enterprise portal
    1. Web server role
    2. IIS 7.0, IIS 7.5 or IIS 8.0
    3. ASP.Net 2.0
    4. Sharepoint Foundation 2010 / Sharepoint server 2010 (enterprise recommended)
    5. SQL Server 2008 R2 Analysis management objects (AMO)
  3. Enterprise search
    1. Web server role
    2. IIS 7.0, IIS 7.5 or IIS 8.0
    3. ASP.Net 2.0
    4. Windows Powershell 2.0
    5. MS Search server 2010 / MS Search server express 2010 / MS Fast search server 2010 / Sharepoint server 2010
  4. Help server
    1. Web server role
    2. IIS 7.0, IIS 7.5 or IIS 8.0
    3. ASP.Net 4.0
  5. Reporting services extensions
    1. SQL Server 2012 Reporting services / SQL Server 2008 R2 Reporting services (with SP1 or SP2)
    2. Windows Powershell 2.0
  6. Analysis Services integration
    1. SQL Server 2012 Analysis Services (with CU1) / SQL Server 2008 R2 Analysis server / SQL Server 2008 Analysis server
    2. SQL Server management studio
    3. SQL Server business intelligence development studio (BIDS) / SQL Server data tools (SSDT) for SQL Server 2012
    4. Web services on IIS
    5. Web server role
    6. IIS 7.0, IIS 7.5 or IIS 8.0
    7. ASP.Net 4.0
To use webservices to exchange documents with external partners – advised to install the Windows SDK


Software requirements for client computers:
  1. Windows client
    1. Windows 8 (Pro/ Enterprise edition)
    2. Windows 7 (Professional/ Ultimate/ Enterprise edition)
    3. Windows Vista (Business/ Ultimate/ Enterprise edition with SP2)
  2. Office Add-ins
    1. Office 2013 (only with MS Dynamics AX 2012)
    2. 2010 Microsoft Office release
    3. 2007 Office release SP2
  3. Visual Studio Tools for the Microsoft Office System (VSTO)
    1. Remote Desktop Services Integration
  4. Debugger
    1. Microsoft Visual Studio tools
    2. Windows powershell 2.0
    3. Visual Studio 2010 (Professional/ Premium/ Ultimate/ Team Edition with SP1)
    4. Trace Praser
    5. .Net Business connector
The below is link for a document which provides information about the hardware and software requirements for Microsoft Dynamics AX 2012:
http://www.microsoft.com/en-us/download/details.aspx?id=11094

Parent thread link : http://ajstudi0.blogspot.com/2012/11/planning-hardware-infrastructure-for.html