Skip to main content

Reports


Report with explicit parameters

 There are two ways to create a report 

  • using controller class 
  • SSRS report using DP class 

1. For SSRS Report first create a DP class and declare the insertion in your temp table (In memory) and declare the logic for your report 




you can also place your queries in DP class or AOT queries 

2. Now create a contract class in which you will declare your parameters for your report and it will also perform validation of the data




3. Now create a UI builder class for your the lookup of your parameters and how they will bind to your report.






4. Now finally create your report from solution explorer and click add item and select report 

fill in the following properties in it to get the temp table mapped with the report


In this query first write name of your DP class and .temptable name to get its fields to map in the report 



IF IN YOUR REPORT MULTIPLE DATA IS NOT VISIBLE ADD ROW GROUP AND SORT ACCORDING TO YOUR DESIRED FIELDS 


5. Now create an output menu to refer this report as SSRS report and also mention the name of the Design tab in your report 



  • FOR CONTROLLER CLASS YOU CAN CREATE THIS CONTROLLER CLASS AND MENTION OUTPUT MENU OBJECT TYPE CLASS and OBJECT NAME CONTROLLER CLASS NAME 






 HEY HEY HEY !! HACK OF THE DAY!!!

GO TO ANY CLASS FROM OTHER CLASS SELECT CLASS NAME 

AND PRESS F12



Comments

Popular posts from this blog

Edit Method on Form

Edit Method D365 for a form Data Source 1. To create an edit method first create a controller class. with following properties  public static edit MainAccountNum LedgerJournalTransLedger(LedgerJournalTrans _ledgerjournal, boolean _set, MainAccountNum _id) { MainAccountNum accountId = _id; MainAccount mainAccount = MainAccount::findByMainAccountId(_id); if(_set) { if(_ledgerjournal.AccountType== LedgerJournalACType::Ledger) { mainAccount = MainAccount::findByMainAccountId(accountId); if(_ledgerjournal.LedgerDimension) { DimensionDefault defaultDim = LedgerDimensionFacade::getDefaultDimensionFromLedgerDimension(_ledgerjournal.LedgerDimension); _ledgerjournal.LedgerDimension = LedgerDimensionDefaultingEngine::getLedgerDimensionFromAccountAndDim(mainAccount.RecId, DimensionHierarchy::getAccountStructure(mainAccount.RecId), defaultDim); } else { _ledgerjournal.LedgerDimension = LedgerDimensionDefaultingEngine::getLedgerDimensionFromAccountAndDim(mainAccount.RecId, DimensionHierarchy::ge...

Lookup and Mandatory fields on Form using Form event Handlers D365

Lookup and Mandatory fields on Form using Form event Handlers D365 [FormControlEventHandler(formControlStr(VendBankAccounts, VendBankAccount_SLD_BankCode), FormControlEventType::Lookup)] public static void VendBankAccount_SLD_BankCode_OnLookup(FormControl sender, FormControlEventArgs e)     {         Query query = new Query();         QueryBuildDataSource queryBuildDataSource;         FormControlCancelableSuperEventArgs event = e as FormControlCancelableSuperEventArgs;         QueryBuildRange queryBuildRange;         SysTableLookup sysTableLookup = SysTableLookup::newParameters(tableNum(SLD_BankCodes), sender);         sysTableLookup.addSelectionField(fieldNum(SLD_BankCodes, BankCodes));         sysTableLookup.addLookupField(fieldNum(SLD_BankCodes, BankCodes));         sysTableLookup.addLookupField(fieldNum(SLD_BankCode...

Field Level Security In Ax 2012

FIELD LEVEL SECURITY IN AX 2012 In this blog we will discuss field level security applied in  Ax 2012. 1. Field level security is added on form level as well in Ax 2012 its bit different then field level security in D365 2. This also requires privileges to be applied on form specific fields only. Step #1 :  Change datasource property of the field which need to be added in security. Step #2 : Now add these 2 fields in form --- > permissions --- > Read Step #3 : Now finally create privilege and add these fields explicitly in it.       HEY HEY HEY !!!! HACK OF THE DAY  Add Fields in Entry point privilege section of form  Explicitly.