Utente:Alfgt/Sandbox

Features (modules) modifica

Microsoft Dynamics AX contains 19 core modules[1] :

Traditional core (since Axapta 2.5) modifica

  • General Ledger, composed of ledger, sales tax, currency and fixed assets features
  • Bank Management, where cash is received and paid out
  • Customer Relationship Management (CRM), where Business Relations (customers, vendors, and leads) are contacted and maintained
  • Accounts Receivable, where orders are entered, shipped and invoiced
  • Accounts Payable, where purchase orders are issued and goods received into inventory
  • Inventory Management, where Inventory is valued and managed
  • Master Planning, where purchase and production planning takes place
  • Production, where bill of materials is defined and manufacturing is tracked
  • Product Builder, where product models are created and maintained
  • Human Resources, where employee information is kept
  • Project Accounting, where projects are created and tracked primarily from an accounting perspective
  • Basic, where data configuration is performed
  • Administration Module, where system configuration is performed

Extended core modifica

The following modules are part of the core of AX 2009 (AX 5.0) and available on a per-license basis in AX 4.0:

External components modifica

Several external components are also available:

  • Enterprise Portal for Dynamics AX (built on Sharepoint Services)
  • Microsoft SQL Reporting Services integration
  • Application Integration Framework (Webservices + Biztalk adapter)
  • A .Net Business Connector for third party software (A COM adapter is also available)
  • Microsoft Dynamics Mobile 1.5 development tools

Architecture modifica

The Microsoft Dynamics AX software is composed of four (4) major components:

  • The Database Server, a database that stores the Microsoft Dynamics AX data
  • The File Server, a folder containing the Microsoft Dynamics AX application files
  • The Application Object Server(s) (AOS), a service that controls all aspects of Microsoft Dynamics AX's operation
  • The Client(s), the actual user interface into Microsoft Dynamics AX

See also the book Inside Microsoft Dynamics AX 4.0[4]

MorphX and X++ modifica

MorphX is an integrated development environment in Microsoft Dynamics AX that allows developers to graphically design data types, base enumerations, tables, queries, forms, menus and reports. MorphX supports drag-and-drop and is very intuitive. It also allows access to any application classes that are available in the application, by launching the X++ code editor.

Because MorphX uses referencing to link objects together, changes in, for example, datatypes of fieldnames will automatically be reflected in all places where they are used (such as forms or reports). Furthermore, changes made through MorphX will be reflected in the application immediately after compilation.

Microsoft Dynamics AX also offers support for version control systems (VCS) integrated with the IDE, allowing collaboration in development. There is also a tool for reverse-engineering table structures and class structures to Visio. The actual implementation limits the practical use of both these features.

X++ itself is the programming language behind MorphX, and belongs to the curly brackets and .-operator class of programming languages (like C# or Java). It is an object-oriented class-based single dispatch language. X++ is a derivative of C++ (both lack the finally keyword for example) to which garbage collection and language integrated SQL queries were added.

Code samples modifica

X++ integrates SQL queries into standard Java-style code. Following are three equivalent examples (result-wise), though the first one has generally better performance. Samples #2 and #3 hint at an object-like behavior from table buffers.

Sample #1

/// <summary>
/// This job is used as an X++ sample
/// </summary>
public static void xppTest1(Args _args)
{
    UserInfo userInfo;
    ;

    update_recordset userInfo
        setting enable = NoYes::No
        where userInfo.id != 'Admin'
            && userInfo.enable;
}

Sample #2

/// <summary>
/// This job is used as an X++ sample
/// </summary>
public static void xppTest2(Args _args)
{
    UserInfo userInfo;
    ;

    ttsbegin;

    while select forupdate userInfo
        where userInfo.id != 'Admin'
            && userInfo.enable
    {
        userInfo.enable = NoYes::No;
        userInfo.update();
    }
    
    ttscommit;
}

Sample #3

/// <summary>
/// This job is used as an X++ sample
/// </summary>
public static void xppTest3(Args _args)
{
    UserInfo userInfo;
    ;

    select forupdate userInfo
        where userInfo.id != 'Admin'
           && userInfo.enable;
            
    ttsbegin;
            
    while (userInfo)
    {
        userInfo.enable = NoYes::No;
        userInfo.update();
        
        next userInfo;
    }
    
    ttscommit;
}

Future modifica

The LINQ library was first used in Microsoft Dynamics AX 2009 for out-of-the-box SSRS reporting. It is expected that Visual Studio and the LINQ library will be used more extensively in future versions of AX.

Presence on the World Wide Web modifica

One of the most notable sources of information with regards to Axapta (prior to the Microsoft purchase) was technet.navision.com, a newsgroup which grew to a considerable number of members and posts up until 2002. Following the incorporation of Axapta into Microsoft's Business Solution suite, the newsgroup's content was transferred over to the Microsoft Business Solutions newsgroup[5]. The oldest technet post that can be found today dates back to August 2000.[6] During the Axapta 3.0 era, this newsgroup in conjunction with secured official Microsoft websites (Partnersource for Microsoft Partners and Axapta resellers and Customersource for licensed Axapta customers) accounted for most of the official documentation sources on Axapta. During this time freely accessible documentation remained scarce. Following Microsoft's release of Dynamics AX 4.0, Axapta's presence on the World Wide Web greatly improved through heightened interest from professional blogs as well as a continually improving presence on MSDN. Though MSDN contained mostly placeholders immediately following the release, it now contains a wealth of information from a complete SDK to white papers and code samples.