Hi
I am using Dynamics AX 2012 R3
when i try to run SalesInvoiceReport in default language for customer using such " en-us" , everything is Ok and i got all fields as i see them in the Report design in Visual Studio and my report printed in one page.
But when i am choosing another customer who is using "arabic" language i got some new fields appeared , which is made blanked pages printed as well.
So .. IS there a class responsible for controlling between different designs according to Language parameter ??
*This post is locked for comments
A lot of functionality in Dynamics AX is tied to country/region. For example zakat is used only in your region specifically in KSA. Other countries such China or U.K may not need it. Similarly TAX/VAT was not part of Middle East, till few months ago. Localized functionality can be enabled/disabled by tiding up with country region code. You can specify country region codes on objects such as on EDT(s), Tables etc. I am not going into details of how to develop country based functionality. Long story short, if a table field is tied up to a country region code, it may or may not appear in UI, based on your legal entity address.
As you provided your issue, it was one of doubts in my mind, that specific field which is not appearing in EN-US version, may be tied only to region KSA and/or Vice-Versa.
PS: If you would like to have detailed discussion on country/region functionality, please create a new thread and continue with that. Keeping discussion around current topic, under one thread can be helpful for community.
Problem Solved :D
Thanks a lot Sohaib
man .. my Problem was in Visual Studio Design i think because i am working with Standard report with now Customization
but when printing from english customer i got column as the following
Item number || Description || Quantity || Unit || Unit price || Discount percent
|| Discount || Amount
but when printing from Arabic customer i got the same above in addition to new Quantity field repeated for each line in invoice
i just check the design in Visual Studio and Check the rectangle called "InvoiceItemsRectangle" , where i found some fields under mine and their visibility property doesn't hidden as well and i don't use them in my data by the way
those fields as the following
[PackingSlip]
[ExternalItemId]
[InventDimPrint]
[Notes]
i just remove them from the design then save and deploy my report
once i am doing that both printing invoices from En-Us and Arabic Customers become the same :D
finally i back those fields to the Design again then save and deploy Report
So thanks again for your efforts
------------------------------------------------------------------------------------
But i got new Question regarding your point number 2 , could you explain it in details
----------------------------------------------------------------------------------------------
this could be for number of possible reasons. at moment I can think as under.
1) a column may being hided based on condition. please right click the column and have a look at visibility expression
2) column may be tied up to some regional functionality, based on language and underlying table field.
we can help you in diagnosis, if you may let us know about report i.e. whether its a standard report without customization or one with customization. in case if this is customized, it would be hard for us to provide details about bespoke functionality. also please specify your application version number and/or any other details you may want to include.
Sorry for that Sohaib
let me explain in other words .. when i printed the SalesInvoiceReport from customer in "en-us" i can see 8 Columns.
But when i print the same report for other customer in "arabic" l can see 9 Columns
Is it accepted ??
why i got like this ??
is there more than one design for that report by default ??
Thanks a lot
this is set in Contract class of report. for your specific report you can see that in Controller class of sales invoice report named as SalesInvoiceController there is a method named preRunModifyContract;
inside this method you can find language being set as following.
this.parmReportContract().parmRdlContract().parmLanguageId(custInvoiceJour.LanguageId);
as you can see that here language is being derived from invoice journal
Thanks Sohaib
but i need to know if there is a class responsible for like this application behavior to investigate regarding those new fields appeared in arabic design and eliminate them :)
the reports which are related to print management framework, also known as control documents usually take language into effect with following three conditions
1) invoice journal must have language field as per language of choice. such as Arabic in your case
2) you have installed Arabic fonts to display this as language in ssrs reports and pdf files
3) if you have any customized labels those should have Arabic translations, for standard labels I expect the Microsoft has provided translations already in label files.
Mostly I have seen people forgetting point number 1 as it is derived from customer master >> sales order>> invoice journal. while consultants upload data they just upload it as en-us, which is obviously wrong. In such case it is also required to update value for existing invoice journals.
André Arnaud de Cal...
291,979
Super User 2025 Season 1
Martin Dráb
230,848
Most Valuable Professional
nmaenpaa
101,156