SBX - Search With Button

SBX - Forum Post Title

Customizing the Datasets in report layouts

Dynamics 365 Business Central Forum

David Boehm, CPA asked a question on 3 Apr 2018 8:38 PM
My Badges

Question Status

Suggested Answer

After going through the ReleaseNotes_Dynamics365_03192018 document, I can see where single-tenant table extensions (coded in AL) are now a reality in production tenants.  I'm so glad to see that I can now move these from the sandbox to a live environment.

However, I didn't see any mention of the ability to add these table extension fields to either an SSRS or Word report format.  As an example, I need to be able to modify the dataset in a customized version of the 1306 report format (i.e. sales invoice) to include fields from a table extension.

Does anyone know when this might become possible?

Thanks,

--Dave--

Reply

You can create a dependency from your previous extension in the app.json file of the AL project of your report.

In the "dependencies": [] section you have to reference your previous extensions, then you can download symbols and you can add the newly created fields.

Reply
David Boehm, CPA responded on 6 Apr 2018 1:36 PM
My Badges

Thanks for the response, Stefano.

I think your approach would probably work quite well if I had created the report, and therefore had the AL source code.  Since the 1306 report format (Sales Invoice) is a standard D365BC report, I don't have AL source code.

I can download the standard report as a custom version of the report, and modify it in either Word (.docx) or Visual Studio (.rdl).  If I include the .docx version of the report in an AL project folder and then open the folder in VS Code, I get an error message indicating that VS Code can't open a .docx format document.  If I include the .rdl version of the report in an AL project, VSCode can open it, but displays it as 6600 lines of XML.  I suppose I could modify the XML, but this doesn't seem like a very cost-effective way to modify a report.

It looks to me as though I need to either find a way to display the 1306 report as AL source code in VS Code (instead of XML) or find a way to modify the dataset in either Word or SSRS, and independently extend the underlying table within my D365BC sandbox so that it includes the fields that were added to the report.

Does anyone know of a better way to do this?  I hope I'm just missing something that is obvious.

Reply
David Boehm, CPA responded on 11 Apr 2018 11:25 AM
My Badges

Update:

Through using AL code in a VS Code project, I added a table extension to the "Sales Header" table in my D365 Business Central sandbox.  Using Visual Studio 2017, I modified the XML code and report layout in an RDL copy of the "sales invoice" report (i.e. report 1306) to include the field from the table extension.  I uploaded the customized report, ran the "update layout" action, and then tried running the report.  I get the following error message:

Single-tenant extensions are great, but if you can't put the result on a copy of a standard report format (e.g. an invoice), Dynamics 365 Business Central is still not quite ready for "prime-time".

I currently have three prospective customers who are interested in migrating from QuickBooks or NetSuite to D365BC.  Without the ability to add fields from table extensions to reports (specifically the Sales Invoice and Purchase Order reports) I can't in good conscience take them to D365BC.

I posted my first entry in this thread, back on April 3.  Microsoft has been conspicuously silent in replying.  I'm beginning to wonder if the people at Microsoft have even taken this limitation into consideration.  If so, what is the plan for rectifying it?

Thanks,

--Dave--

Reply
Suggested Answer
It seems the standard error when you have a control in RDLC binded to something not in the dataset. Is this field present in your report dataset? So strange...
Reply
David Boehm, CPA responded on 11 Apr 2018 2:27 PM
My Badges

Yes, it is there.

Reply
Suggested Answer

The steps you’ve done seems correct to me. This error seems something related to a field in the RDLC. NigerianVAT is a custom field you’ve added in Sales Header via extension? Is it available in the report dataset?

Reply
David Boehm, CPA responded on 11 Apr 2018 4:40 PM
My Badges

I've opened the report in Visual Studio 2017 and added "NigerianVAT" as a field in the report dataset.  I've also opened this report in VS Code (as an XML document) and reassured myself that it is there.  I am presently trying to run the report in the Sandbox, but all I'm currently getting is "working on it".

In the meantime, I've exported and imported the report a couple of times to the report layout window in D365BC.  When I import the report, the field I've added via Visual Studio is in the report dataset.  When I export the report from D365BC, the field is no longer in the dataset.  I can see where the field still exists in the report format, but it is absent from the dataset.

It seems as though the import process checks the dataset against the "Sales Header" table, and deletes any fields that it doesn't find in the "Sales Header" table.  The import validation process apparently doesn't take the table extension into consideration.

I think this might be the source of the problem.

Reply
Chris Bulson responded on 12 Apr 2018 1:29 PM
My Badges

Hey David,

I'd recommend laying this out over at github.com/.../issues

You may be able to get a better answer about how\if\when this is going to be possible or not.

Thanks,

Chris

Reply
David Boehm, CPA responded on 12 Apr 2018 4:09 PM
My Badges

Thanks, yes Freddy Kristiansen (with the Copenhagen design team) suggested the same thing.  I entered it in the AL GitHub "issues" section, a few hours ago.

It has to be a case of "how/if", and not "when".  If you can't add custom fields to an invoice, purchase order, etc.--then Dynamics 365 Business Central would basically be useless for at least half of the population of potential users.  More than 1/2 of the companies I've converted to D365BC have requested this.  Two of my clients have suspended implementation until this issue is resolved.

Reply
David Boehm, CPA responded on 11 Jul 2018 5:51 PM
My Badges

During a June webinar with Microsoft, I got the impression that the ability to modify the underlying dataset within a copy of a standard BC report (e.g. "Sales Invoice"), would be included in the September, 2018 BC update.  In the July episode of this monthly webinar, I was informed that this capability will NOT be included in the September 2018 BC update.  There were about 20 participants in this webinar, and several of us took exception to this.

It is nice that we can now extend BC with custom pages, tables, table extensions, etc.  However, I think it is essential that we be given the ability to put this data on to invoices, P.O.'s and other touch-points.  I believe this is a VERY HIGH priority in the user community, and should therefore be a high priority for the BC development team, as well.  If you agree, please add additional comments to this post, click on "Like", etc.  I get the impression the development team doesn't see this as being as high a priority as some of us in the user community see it as being.  Perhaps your comments will help change their thinking.

Reply
Suggested Answer

It’s in the roadmap for Fall Release 18 as announced.

Reply
David Boehm, CPA responded on 12 Jul 2018 11:35 AM
My Badges

Where is the roadmap showing the plans for the Fall release?  Can you give me a URL to it?

If I follow the URL from the ?| Get Help | "Welcome to Dynamics Business Central" | "Microsoft Business Central Roadmap", I land on "https://dynamics.microsoft.com/en-us/release/spring-2018-release/#release-notes", which tells me all about Spring '18.

I can't find anything on this page that addresses the future roadmap.

Thanks in advance for your help...

Reply
Franz Kalchmair responded on 15 Jul 2018 1:39 AM

@david: well said. you are completely right. editing, modifying reports in d365bc should be much more easier! at that point of time it would be really hard to sell d365bc to customers. most needed customizations are much too time consuming, elaborately and complicated and therefore too expensive.

Reply
Franz Kalchmair responded on 15 Jul 2018 1:57 AM

no roadmap, but some news about upcoming things.

www.hannesholst.com/.../code-alterations-d365bc-what-you-need-to-know

Reply
David Boehm, CPA responded on 15 Jul 2018 1:15 PM
My Badges

I don't know either, but he's obviously an astute fellow.  Too bad he doesn't say anything about report dataset modification.  I think he does do a good job of differentiating between BC online and BC on-prem, though.

Reply
Suggested Answer
It seems the standard error when you have a control in RDLC binded to something not in the dataset. Is this field present in your report dataset? So strange...
Reply
Suggested Answer

The steps you’ve done seems correct to me. This error seems something related to a field in the RDLC. NigerianVAT is a custom field you’ve added in Sales Header via extension? Is it available in the report dataset?

Reply
Suggested Answer

It’s in the roadmap for Fall Release 18 as announced.

Reply
Suggested Answer

Report extension is not available now but it’s in the backlog.

Reply

SBX - Two Col Forum

SBX - Migrated JS