Search This Blog

Thursday, August 16, 2012

AX2012 SSRS reports,Cubes Videos of BI

Guys when I am going through the Youtube I found some link which was very helpful for Dynamics AX BI videos where it shows how to create the reports,Cubes using SSAS in AX, It was really very useful who wants to know how to create reports in AX2012

http://www.youtube.com/dynamicsaxbi

Different layers between AX4.0 vs AX2009 vs AX2012

Layers of AX in different versions
The layer-based application object files (AOD files), Some of them have been renamed with a new prefix in different versions of Microsoft Dynamics AX.
The four layers DIS / DIP / LOS / LOP from Microsoft Dynamics AX 4.0 have been renamed to HFX / SL1 / SL2 / SL3in Microsoft Dynamics AX 2009.

The six layers DIS / DIP / LOS / LOP / BUS / BUP from Microsoft Dynamics AX 4.0 have to be renamed to FPK / FPPSLN / SLP / ISV / ISP in Microsoft Dynamics AX 2012.


AX 4.0 Layer
AX 2009 Layer
AX 2012 Layer
axbup.aod
axbup.aod
axisp.aod
axbus.aod
axbus.aod
axisv.aod
axlop.aod
axsl3.aod
axslp.aod
axlos.aod
axsl2.aod
axsln.aod
axdip.aod
axsl1.aod
axfpp.aod
axdis.aod
axhfx.aod
axfpk.aod



Modules in AX2012 vs AX2009
AX 2009 Modules
AX 2012 Modules
General Ledger
General Ledger
Fixed Assets (New)
Bank
Cash and bank management
Accounts Payable
Accounts Payable
Procurement and sourcing (New)
Accounts Receivables
Accounts Receivables
Sales and Marketing (New)
Inventory Management
Product information (New)
Inventory and warehouse management
Expense management
Travel and expense management
Production
Production control
Project
Project management and accounting
Compliance and internal control (New)




Wednesday, August 8, 2012

AX2012 Methods on Queries and Forms Cannot Compile to CIL


Classes, tables, and enums are types in the X++ language. X++ types can be compiled to CIL. The queries and forms in the AOT are not X++ types, and they cannot be compiled to CIL. This means there are a few minor cases where calls from CIL to X++ p-code can cause an exception.

Suppose a method that is running as CIL calls a method on a query. The query method calls the ClassFactory system class of Microsoft Dynamics AX. This case causes an exception to be thrown. The problem is that the CIL session does not have access to all the system classes, yet the query method makes a call to a system class.


X++ Functions that are Not Supported in CIL
X++ language functions that run strings of dynamically written X++ code are not supported when compiled to CIL. The following X++ functions are not supported when compiled to CIL:
  • evalbuf
  • runbuf


Thursday, August 2, 2012

Dynamics AX2012 Terms and Explanation about Models

Dynamics AX2012 Terms and Explanations for each term.
Term
Definition
Metadata
Information about the properties or structure of data in the Application Object Tree (AOT) that is not part of the data values. Everything in the AOT is metadata.
Application layer
A single layer of the Microsoft Dynamics AX 2012 application within a model store. Elements in higher layers override elements in lower layers.
Model
A named set of elements in a given application layer. Each layer consists of one or more models, of which one is a system-generated layer model.
Model element
A single piece of metadata. For instance, a table definition is a model element. Any one element in a layer belongs to exactly one model; that is, no element can belong to two different models nor can it belong to any model.
Model file (.axmodel)
A model that has been exported from a model store. This file is the chief vehicle of metadata deployment in Microsoft Dynamics AX 2012.
Model store file (.axmodelstore)
A complete model store that has been exported from the database. The file includes all metadata, compiled artifacts, CIL code, and security artifacts. The file is used for moving consistent metadata between environments with minimum downtime.
Model store
A collection of tables in the Microsoft Dynamics AX 2012 database that house the application metadata. The model store is analogous to the AOD file share in Microsoft Dynamics AX 2009.
Generated data
Data that is generated by Microsoft Dynamics AX during development.
Transactional data
Data that describes business transactions and the state of the business.
Configuration data
Data concerning how Microsoft Dynamics AX 2012 is configured. This data includes the following subcategories:
Environment: Computer-environment–specific data. An example of environment data is the list of servers running Microsoft SQL Server® Reporting Services that Microsoft Dynamics AX 2012 is configured to use. If this data is moved, it needs to be corrected to account for new server locations.
System: Parameter settings for the Application Object Server (AOS) such as which database to connect to, or for Enterprise Portal forms.
Application: Number sequences, invoicing profiles, or other data that relates directly to the application.
Reference data
Data that is characterized by shared read operations and infrequent changes. Examples of reference data include flight schedules and product catalogs. Windows Server® AppFabric offers the local cache feature for storing this type of data.
Master data
The critical data of a business, such as customer, product, location, employee, and asset. Master data falls generally into four groupings: people, things, places, and concepts. It also can be further categorized. For example, within people, there are customer, employee, and salesperson categories. Within things, there are product, part, store, and asset categories. Within concepts, there are categories like contract, warrantee, and licenses. Finally, within places, there are office location and geographic division categories.
Definition group
A collection of tables that defines what will be exported by using the data export feature.
Common Intermediate Language (CIL)
The Common Intermediate Language instruction set is part of the specification of the Common Language Infrastructure from Microsoft and is more widely known as .NET. An older name for CIL was Microsoft intermediate language (MSIL).

Wednesday, August 1, 2012

Create multiple items using EcoresproductService in AX2012


creating multiple items using the ecoresecoresproduct service by calling one time create Function. This code was written by my friend Jesper Clausen, I personally thanks hims for providing this code.

static void ImportProducts(Args _args)
{
    EcoResEcoResProduct                     ecoResEcoResProduct;
    EcoResEcoResProduct_Product_Distinct    ProdDist;   
    EcoResEcoResProduct_translation         translation;
    EcoResEcoResProduct_Identifier          identifier;
    EcoResEcoResProduct_ProductDimGroup     prodDimGroup;
    EcoResEcoResProduct_StorageDimGroup     storDimGroup;
    EcoResEcoResProduct_TrackingDimGroup    tracDimGroup;

    EcoResProductService                    ecoresPRoductService;

    CommaIo                                 file;
    container                               readCon;

    Dialog                                  d;
    DialogField                             df1, df2;
    EcoResProductDisplayProductNumber       ProductDisplayProductNumber;
    // Create a comma separated file as input with col1 = product and col2 = description
     and remaining fields.
    ;
    d = new Dialog("Import items");
    df1 = d.addField(ExtendedTypeStr("FilenameOpen"));
    ecoresPRoductService=EcoResProductService::construct();
    ecoResEcoResProduct= new EcoResEcoResProduct();
    if (d.run())
    {
        file = new CommaIo(df1.value(), 'r');
        file.inFieldDelimiter(';');
        while (file.status() == IO_Status::Ok)
        {
            readCon = file.read();
            ProdDist = new EcoResEcoResProduct_Product_Distinct();
            ProdDist.parmDisplayProductNumber(strLRTrim(conPeek(readCon,1)));
            ProdDist.parmProductType(EcoResProductType::Item);
            ProdDist.parmSearchName(strLRTrim(conPeek(readCon,2)));

            // Create the translation object
            translation = ProdDist.createTranslation().addNew();
            translation.parmDescription(strLRTrim(conPeek(readCon,2)));
            translation.parmLanguageId("en-us");
            translation.parmName(strLRTrim(conPeek(readCon,1)));
           
            // Create the identifier object
            Identifier = ProdDist.createIdentifier().addNew();
            identifier.parmProductNumber(strLRTrim(conPeek(readCon,1)));
           
            // Create the StorageDimgroup object
            storDimGroup = ProdDist.createStorageDimGroup().addNew();
            storDimGroup.parmProduct(strLRTrim(conPeek(readCon,1)));
            storDimGroup.parmStorageDimensionGroup("Con-Dim");

            // Create the TrackingDimGroup object
            tracDimGroup = ProdDist.createTrackingDimGroup().addNew();
            tracDimGroup.parmProduct(strLRTrim(conPeek(readCon,1)));
            tracDimGroup.parmTrackingDimensionGroup("Lean-Dim1");

            // checking this product is already Exists or not .
            if(ecoResEcoResProduct.existsProduct())
            {
                ecoResEcoResProduct.parmProduct().add(ProdDist);
            }
            else
            {
                ecoResEcoResProduct.createProduct().add(ProdDist);
            }
        }
        // call create function to create products.
        ecoresPRoductService.create(ecoResEcoResProduct);
    }

}