Wednesday 26 November 2014

Table Groups and Uses in Ax 2012



Table Groups

AX 2012 R3 CU8 is released

Microsoft Dynamics AX2012 R3 CU 8 (KB2998197) is released

The version number of this release is 6.3.1000.309.

Please follow the link to find the Functional and Developer features comes with the update

release features

you can download the update from the below location
AX 2012 R3 CU8

Friday 21 November 2014

Reading Customer from C# AIF Service Ax 2012

static void Main(string[] args)
{
    string customer = "US-004";

    AxdCustomer foundCustomer = null;

    CallContext context = new CallContext();

    context.Company = "USMF";
    // CON_ReadCustomer.Con_ReadCustomerServiceReference.CustomerService proxy = new CON_ReadCustomer.Con_ReadCustomerServiceReference.CustomerService();

    CustomerServiceClient proxy = new CustomerServiceClient();

    try
    {

        foundCustomer = proxy.read(context, Program.readCritera(customer));
        Console.WriteLine("AccountNum : " + foundCustomer.CustTable[0].AccountNum);
        Console.WriteLine("CustGroup : " + foundCustomer.CustTable[0].CustGroup);
        Console.WriteLine("Name : " + foundCustomer.CustTable[0].Name);
        //Console.WriteLine("Name : " + foundCustomer.CustTable[0].Name);
        Console.ReadLine();

    }

    catch (Exception e)
    {
            Console.WriteLine(e.Message);         
    }


    public static EntityKey[] readCritera(string customerAccount)
    {

        AxdEntity_CustTable custTable = new AxdEntity_CustTable();

        EntityKey[] entityKeyList = new EntityKey[1];

        EntityKey key = new EntityKey();

        KeyField[] keyFields = new KeyField[1];

        KeyField keyField = new KeyField();

        keyField.Field = "AccountNum";

        keyField.Value = customerAccount;

        keyFields[0] = keyField;

        key.KeyData = keyFields;

        entityKeyList[0] = key;

        return entityKeyList;
    }

}

Getting Table Fields in AX 2012

Ax 2012 Job to get Table fields

static void TableObjects(Args _args)
{
    DictTable   d = new DictTable(tableNum(AccountantLogisticsLocation_BR));
    int         i;
    int         cnt = d.fieldCnt();
    str         nameForLookup;
    FieldId     fieldid = d.fieldNext(0);;


    for (i = 1; i <= cnt; i++)
    {
        if (!d.isDefaultData())
        {
            nameForLookup = d.fieldName(fieldid);
            if (d.fieldSqlDefault(fieldid))//skip default table fields
            {
                info(nameForLookup);
            }
            else
            {
                continue;
            }
            fieldId = d.fieldNext(fieldId);

        }

    }
   
}

Make sure that SQL Server Reporting Services is configured correctly

Make sure that SQL Server Reporting Services is configured correctly. Verify the Web Service URL and Report Manager URL configuration in the SQL Reporting Services Configuration Manager.

Make sure the Web service URL and Report Manager URL works fine.





















Go for Run as Administrator to open Ax 2012
Try Validating report server Settings now.













Thursday 13 November 2014

Cannot Insert multiple records in Securing Data area(UserDataAreaFilter). The Record Already Exists







 Cannot Insert multiple records in Securing Data area(UserDataAreaFilter). The Record Already Exists

Cause of the error,after Upgrade from Ax 2012 R2 to R3 the table 
UserDataAreaFilter contains R2 data so that when the existing user log on to Ax 2012 R3, info popups wit the error message. 

 

so that whenever the user log on, record inserted into this table.
if we delete the records in this table and once again the user logon's record will be inserted to this table

Calculate ledger balance by dimension set in X++ in AX2012/Dynamics 365 FO

There are a variety of ways users can view balances in the general ledger. Some of the most common options are: 1. Trial balance 2. Financia...