Page Total and Running Total in SSRS AX 2012

In SSRS Reports, you can easily make use of running totals on every page of your report. SQL Server Reporting Service does not have a standard functionality for this.  Here I will explain how you can implement running totals in your report.

  1. Add a tablix to your report and add a dataset to it. In my example I have 3 columns:
    Debtor code, Account Name and Outstanding amount.
  2. Add a 4th column to the tablix. Set the visibility of this column to Hide.
  3. Select in the 4th column the detail row. Select Text Box Properties and change the name of the textbox to ‘RunningTotal’.
  4. Select Value and press the expression button. In this expression we will define the running total of the column. In my example, I have a columns Outstanding from the dataset ‘CreditLimitDetails’

    =RunningValue(Fields!Outstanding.Value,SUM,”CreditLimitDetails”)
    Now we have a running value of the outstanding amount in the 4th column.

  5. To display the running value on every page, we will use the page footer.
  6. Add a page footer to your report. In BIDS you can select, Report, Add Page footer.
  7. In this example I will add a page total and a running total to the report.
  8. Insert a 2 text boxes to the page footer.
  9. Open the expression definition of the first text box. In this text box we will define the totaal outstanding amount of the current page.
    =”Page Total: ” + cstr(Sum(ReportItems!Outstanding.Value))
  10. Open the expression definition of the second text box. In this text box we will define the Running total of the outstanding column of the current page and all previous pages.
    =”Running Total: ” +cstr(Last(ReportItems!RunningTotal.Value))

Now your report will print running totals at the bottom of every page.

Refresh Listpage from Child form AX 2012

You often open a dialog or drop dialog when you are working with another form. As a result, you might want to refresh the parent form after you finish the action on the dialog or drop dialog form. However, not every dialog form requires that you update the calling form. Typically, you refresh the parent form when the information that you provide in the dialog form appears on that form.

To refresh a parent form,you must write your code in Child form by Override method CloseOk and write the below code.

public void closeOk()
{
    #Task
    FormRun formRun;
    
    super();
    
    // Get an instance of the calling form.
    formRun = element.args().caller();
    
    // If the caller is a form, refresh that form.
    if(formRun)
    {
        formRun.task(#taskF5);
    }
}

100% working : Fatal exception performing AXRDCE transformation step. The report cannot be rendered. Please contact your system administrator.

Hello Guys,

Today I came with new issue in AX Report.

Few days back my report was working fine.

But today it showed me something weird information while opening the report.

Fatal exception performing AXRDCE transformation step. The report cannot be rendered. Please contact your system administrator. Continue reading

Could not load file or assembly ‘ModelName.axmodel’ or one of its dependencies. This assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded. – AX 2012

Hi Guys,

I hope you are doing good.  Today I’m gonna share you very intresting thing,  Don’t scare by looking this title but solution is very simple.

I was trying to install my Model File to new environment. But It throws an error

1

For this issue solution is very Simple. Continue reading

AX 2012 SSRS Error : There was an error while trying to deserialize parameter http://tempuri.org/:queryBuilderArgs.

Hi Guys,

Today i have faced with new issue which shows the following message,

The formatter threw an exception while trying to deserialize the message: There was an error while trying to deserialize parameter http://tempuri.org/:queryBuilderArgs. The InnerException message was 'Element 'http://tempuri.org/:queryBuilderArgs' contains data from a type that maps to the name 'http://schemas.datacontract.org/2004/07/XppClasses:SRSQueryBuilderArgs'. The deserializer has no knowledge of any type that maps to this name. Consider using a DataContractResolver or add the type corresponding to 'SRSQueryBuilderArgs' to the list of known types - for example, by using the KnownTypeAttribute attribute or by adding it to the list of known types passed to DataContractSerializer.'. Please see InnerException for more details.

Really its weird  message, So i tried to restart SSRS Services, after restarted service still the same issue was following. Then i searched in online that any users faced similar issue,  same way i found here.

The reason behind the issue was AOS memory which rises more.

So i have deleted my Temp folder files,

C:\Users\Saad\AppData\Local, Delete the all the AUC and KTI files.

C:\Users\Saad\AppData\Local\Microsoft\Dynamics AX\VSAssemblies,  Delete the AUC  file.

Then Stop and Start the Services.

Done..

Well, So what are AUC and KTI files here,

AUC extension: Application Unicode Object Cache file (as from AX 4.0)
This file is created on the client side, and is used to improve performance by caching AX objects. When you are in the situation where an AX client keeps using ‘old code’, or where something works on one client and not on the other, removing the AUC file might be the solution.
You can find this file in the directory C:\Documents and Settings\[USERNAME]\Local Settings\Application Data for xp, or C:\Users\USERNAME\AppData\Local for vista.
More information about object caching on Axaptapedia

KTI extension: Kernel Text Index file
This is the index to the KTD file.

KTD extension: Kernel Text Data file
This file contains system text strings. These are used in the interface of AX and for system messages.

Have a good day 🙂

SSRS White Space due to Hidden Column ?

I have few SSRS Reports that is show/hide columns based on the parameter. Some time you may get White Space due to hidden column. The reason behind the white space is, The design which you made you are changing the HIDDEN property to Header and Data Row. It means you made hidden only Header and Data row. But you can see the Tablix row at the top of your Header and Data row which is in Grey Color. So right click the particular Tablix Row and Custom Invisible Property Set True or False.

Cannot create a record in Table () , The record already exists.

Sometime you tried to insert some record in the table, if the system shows Cannot create a record in Table () , The record already exists. Generally we know that, this issues is caused due to Duplicate value. But here is the trick, so even i have checked the Index values which is allow duplicate yes. But still why this issue.. Basically we know that dynamics AX has invisible Index in every Table which is Recid, so this Recid is generating from SystemSequences Table( field nextval). So this SystemSequences  table contains every table Id and its next recid value in nextval field, so if it has a value with an already issued record id, you can increase the number.  To access this SystemSequences table you have to use SQL Management studio, Better it’s recommended to stay away from this table.

 

Hope you enjoyed.