Good day,
I am new to dynamics AX and I need to modify a report which is ReturnAcknowledgmentAndDocumentReport. I found the report design under AOT > Visual Studio Projects > Dynamics AX Model Projects.
I opened this in visual studio and I saw that the report data set used is ReturnAcknowledgmentAndDocumentDS. Now I am unable to find this data set under AOT > Data Sets.
Currently I am under the usr layer. I haven't configured my environment to use the cus layer yet and I don't know if this affects the objects visible in the AOT.
My main goal is to add the item batch number and expiration date on the return order print out. Since the data set doesn't seem to contain the fields I need, I plan to modify this.
Please let me know how to modify this data set. TIA.
If you are new to Dynamics AX, you should take a look at some training, e.g. the development I - IV series. Part IV includes an introduction to reporting. To start with the modification of a standard report without this training is ... challenging.
Although identical in name, the data sets in SSRS reports and the data sets in the AOT are used for different purposes and have nothing in common.
The layer does not affect visibility of objects in the AOT.
The ReturnAcknowledgmentAndDocumentReport uses a data provider class for its data set, so to reach your goal you would have to modify class ReturnAcknowledgmentAndDocumentDP and the corresponding ReturnAcknowledgmentAndDocumentTmp table.
Further reading:
Walkthrough: Customizing Existing Microsoft Dynamics AX Reports
How to: Define a Report Dataset
How to: Use a Report Data Provider Class in a Report
Related
I am working with TFS 2013 and generating reports with SSRS however I have benn tasked with creating a detailed report showing all steps and acceptance criteria for each test case and list the available parameters. I have searched and searched the web and have not found any examples that show the test steps.
Thank you in advance.
In most instances the Test Steps fields are not set to reportable by default so they are not populated in normal reporting databases. You'll need to set them to reportable or create a new data source targeting your TFS transaction databases instead of the Warehouse/Cube databases.
It is not recommended you target transaction databases with reports since this can affect performance of TFS when reports are run. Especially a field like Test Steps since it might need to pull a lot of data at once.
Use the witadmin command to change the reportability of the Test Steps field. Using detail will only put the information in your Warehouse while the detail option will put it into the Warehouse and the Cube. Where you want it depends on how you write your reports. Once set the reportability type can only be changed in limited ways, so please keep this in mind when deciding how you want it set.
witadmin changefield n:<nameOfFieldToChange> /collection:http://yourcollectionURL:8080/tfs/YourCollectionName /reportingtype:<dimension,detail>
See the reportable attributes section for details.
I'm having an Inventory cube with a dimension of "DimForecast". Related report is created by SSRS report builder and published to sharepoint.
End user wants to have what-if analysis so that they could edit Forecast Value directly from user interface (currently, ssrs report) and see how it will influence inventory stock.
Also, once their browser's session is expired (e.g. refresh webpage), all data will be converted back to original ones, which are pulled from Data Warehouse to cube.
Is there any possible work around for this functionality? "Power view" can do similar job but it's only available in Excel. However, for this case we have to use report builder, which is designed neither to user-interaction nor to session-based processing.
The only possible input in the scenario you describe is a parameter e.g. "Forecast Value". You would need to code SSRS expressions to accept the "Forecast Value" parameter and use it in SSRS Expressions to derive the returned data on the report.
A default value of 0 for the "Forecast Value" parameter could be used to effectively "reset" the data back to the original values.
It seems to be stating the obvious, but SSRS in SharePoint seems a really poor choice for a "what if analysis" requirement.
I`m working in a program that supports English and Arabic languages and in current days we are developing the program reports.
We choosed to use SSRS with ReportViewer control in WindowsFormsApplication(C#)
I searched for a way to change the DirectionLayout property of the tablix according to language(LTR english, RTL arabic) and I tried a lot of solutions but with no success.
I do not want to create two reports or create one report with two tablixes one for each language.
Now I`m trying to do the following:
Use SSRS web services to get report definition
Edit the report definition (convert Tablex DirectionLayout to RTL)
Use SSRS Execution Service to load the definition and render the report
assign the renderd report to ReportViewr control
I would like to know is that possible? And where can I search to achieve this task?
1) Depending on the version of SSRS you are using, you can use GetReportDefinition method (http://msdn.microsoft.com/en-us/library/reportservice2005.reportingservice2005.getreportdefinition(v=sql.100).aspx) or GetItemDefinition (http://msdn.microsoft.com/en-us/library/reportservice2010.reportingservice2010.getitemdefinition.aspx)
2) You can use the RDL Object Model to edit the RDL, although it's not trivial and the classes of the Microsoft.ReportingServices.RdlObjectModel namespace are marked internal (SSRS 2008 R2 and higher). You can find sample code by Teo Lachev at http://prologika.com/CS/blogs/blog/archive/2010/03/08/where-is-rdlom-in-r2.aspx and by Lionel Ringenbach at https://github.com/Ucodia/Blog-CustomReportingServices.
For reference information about the classes and methods of the RDL Object Model, start at http://msdn.microsoft.com/en-us/library/ff493708.
3-4) I think it would be easier to deploy your edited report back to the server and then call it with the ReportViewer control. Then you can just leverage available methods in a straightforward manner. The ReportViewer control can handle the rendering directly. Here's information on deployment via the Web service: http://tomyrhymond.wordpress.com/2011/08/07/sql-server-reporting-services-deploying-rdl-files/
There is a constant change (!) in our database, new columns are often added.
Is reporting services the tool to choose for reporting in this case?
Case1: Developers add a new column to a table used in a report. Will the old reports created with a report model based on the old table still work?
Case2: Developers add a new column, and end users want to be able to report on it. If we update the report model, will the old reports based on the old report model still work? Or do we have to create a new report model every time the end user wants to report on a newly created column?
Regards
Lars
Reporting services has required strategies for change management. So, adding new column to a table in the underlying data source does not affect the reports.
If you want to include a newly added table column into your report model you should update (not create from scratch) your report model. Updating the report model automatically insert your new column to the model and does not break your old reports. on the other hand, updating report model does not update/delete the existing item if you change them (like table/column name or column data type etc) in the underlying source. You should manually change them at the report model and at the affected reports.
So, in your case, you won't be having any problem with reporting services.
Here i'm adding a change management section of the Reporting Services/Report Model document and strongly suggest you to read it.
Change Management
Models and the reports based on them
have many internal and external
dependencies. Therefore, you need to
consider the impact of changes
introduced into the dependency chain.
Report models based on relational data
sources use GUID attributes to
identify each entity, attribute, and
role. As mentioned, the report
model-generation process sets the
GUIDs, which are re-created at each
generation. For that reason and to
preserve edits on the report model,
generating a new report model each
time a change occurs is not an option.
You must work with the existing model
and update it, either manually or by
using the update options described
below.
The Semantic Query Engine
manages missing attributes when they
are not critical to report processing.
This functionality is in place to keep
reports running when security
attributes preclude users from seeing
some attributes in the report that may
be allowed to other users. Thus, if a
user is not allowed to access a field
such as the employee home telephone
number, the Employee Listing report
will run for that user but will not
show the excluded information. This
functionality works to your advantage
when models are edited to delete a
non-critical attribute. The report
will still run after you have removed
an attribute, although the report
might show a blank field. However,
query or report processing can be
broken by other changes to the model.
Remember that you should not overwrite
a model generated from a relational
data source when any reports depend on
it.
Schema Changes
If the underlying schema changes and
report model entities or attributes
are affected, you might have to update
the report model accordingly. To do so
in BIDS, use the Autogenerate command
on the Reporting Model menu. You can
also select Autogenerate from the
model item's context menu. By using
the context menu, you can select which
item on the model you want to update
without having to update the entire
model.
The autogeneration process will
show informational, warning, and alert
messages. These messages will show all
items in the model that are
out-of-sync with the underlying DSV,
even though those items are not
specifically included in the item
selected for autogeneration. This
functionality helps detect potential
errors than may lead to unpredictable
errors when running reports based on
the model.
Automatic update affects
newly added items only. The
autogeneration process will add any
new entity, attribute, or role found
in the DSV, but will not delete or
change any entity, attribute, or role.
Therefore, you need to manually manage
updated or deleted items. The messages
shown at the end of the generation
process will highlight any entity,
attribute, or role that needs to be
updated in the resulting out-of-sync
model. You will have to update the
model manually or revert the DSV
changes to maintain model-to-schema
coherence.
Data Source Changes
You can develop and test your model in
a development environment and then
deploy the model in a production
environment easily by changing the
connection string in the data source
file that the DSV uses. The two data
source schemas must be identical.
Note that the DSV contains statistics
based on the actual database data. As
mentioned in the section "Statistics
in Report Model Generation," the value
of those statistics will drive some
algorithm decisions during the model
generation. Therefore, if the
development database data is
significantly different from the
production database data, the model
might not be optimized for the data
that will eventually be used.
Hope this help.
I'm after a tool to generate decent-looking documents from templates, that needs to:
be invoked through code (not interactively)
run on Windows, ideally invoked from code within a web-server
process standalone* report files that contain their own internal data definitions, query options, etc (i.e. ideally so that we can push simple report files to the server, and it simply work - where report/document maintenance is not necessarily a developer activity)
access data from a database (SQL Server 2005) based on parameters (ids etc) that we pass in
export (again, through code) to pdf or similar
*= where standalone simply means that the report is fully self-describing; it is fully expected that additional reporting runtime components will be required to execute the report. Contrast to rdlc which uses the data-sets from the local VS project.
I looked at the rdl/rdlc options (Visual Studio 2008), but rdlc seems to be coupled to the assembly (not standalone), and rdl seems to lack the code-based export ability. The version of Crystal Reports included in VS2008 seems very similar to rdlc - presumably the full Crystal Reports offering has more functionality, but has a non-trivial price tag too...
I'd welcome any suggestions for an appropriate, professional looking tool that might be suitable and recommended...
I think SQL Reporting Services fully support all of your requirements.
I have build some sophisticated solutions myself with SSRS.
(Example)
Fully manageable through code (via SSRS WS) (Upload, execute and export Reports)
Used SQL Server as database
Queries are defined in RDL (or Stored Proc) and based on parameters
There are other solutions like Telerik Reporting or Data Dynamics ActiveReport, but they are not free.
Let me know if you need more informations
SSRS WS: With that I mean the Web Service Interface (Report Server Web Service
). There is also a URL Access method, but I don't think it's a solution for you
I dont think you can satisfy all requirements. Number 3 especially is the killer.
On one reading, I see it as adhoc reporting generating it's on SQL. On another, it is giving users "empowerment" to do roll their own within some limits you define?
You may have looked already... but have you thought about using the ReportBuilder functionality to set up the basics and leave users to do the rest? You'll need a report monkey at some point anyway to set soemthing up.
Edit, after comment:
Reporting Services it is then.
It comprises a web service that renders RDL files uploaded from VS.
Report Builder is a template for users to hack and bash their own within the limits and environment you set.
Architecture of RS 2008
Our Data Dynamics Reports product sound like it is for you. It is a fully programmable reporting component for .NET / Visual Studio. View the documentation on the API here. You can export the reports to any of our various formats, including PDF, HTML, and Excel and it also includes an end user designer control that you can embed into your own applications to let end users modify or create their own reports.
The reports are stored in RDL - the same XML dialect that Reporting Services uses - in fact you can take any existing RDL files and open them in Data Dynamics Reports. In addition to compatibility with RDL, we add many more features, such as "themes" to consistently style your report, master reports (think ASP.NET master pages for reports), and several other built in controls such as a calendar, barcode, and dashboard controls to name a few.
Now lets look at your requirements one-by-one and see how Data Dynamics Reports might solve them:
be invoked through code (not interactively) - Data Dynamics Reports includes comprehensive API.
run on Windows, ideally invoked from code within a web-server - You can use Data Dynamics Reports in client-based, or ASP.NET applications, it even support medium trust ASP.NET applications (webservices are fine).
process standalone* report files that contain their own internal data definitions, query options, etc (i.e. ideally so that we can push simple report files to the server, and it simply work - where report/document maintenance is not necessarily a developer activity) - Data Dynamics Reports uses standard RDL (not rdlc) which includes all information bout how to retrieve data from your datasource. We also include an end user designer control to allow you to emebed a design environment for these standalone files into your own applications.
access data from a database (SQL Server 2005) based on parameters (ids etc) that we pass in - Data Dynamics Reports includes comprehensive support for parameters (even get the "valid values" from a query.
export (again, through code) to pdf or similar - Data Dynamics Reports supports exporting to PDF, HTML, Excel, Word, images, and XML.
I hope it works out for you, and let me know if you have any additional questions.
Scott Willeke
Data Dynamics / GrapeCity inc.
I think, based on all the criteria, you likely need to look at Crystal Reports, since you want the reports to be standalone, although, you could also create a report designer out of XtraReports or ActiveReports Pro and have much of the same functionality.
As for running it on the fly and having it generate, distribute, and archive the reports that run, check out our product at www.versareports.com. It should work with any .NET report designer you want to use and provides the enterprise-class report server framework you likely need.