A blog about Dynamics 365
-
A Guide to Daily Data Aggregation in Electronic Reporting
From time to time, I need to develop reports that present monthly data aggregated by day. In this post, I’ll demonstrate how a user can select a specific month of the year and generate a CSV report showing the total vendor invoiced amount for each day. I’ll also walk through the methodology I use and…
-
How to Easily Create an Excel File in Electronic Reporting (ER)
In this post, I’ll explain an easy way to create an exportable Excel file using ER. Typically, I use Excel for exporting tables and similar files that need to be opened directly in Excel. For business documents like invoices and orders, I generally prefer Word, though Excel can also be used for these documents, as…
-
Extending Electronic Reporting Sources: Integration with OneDrive (II/II)
To implement the logic, we will create the following classes: There are a lot of classes, each with a bunch of methods, but it’s not as complicated as it looks. Most of the methods are just required because we’re implementing an interface, and they’re basically one-liners that I copied from Microsoft’s example. I’ll try to…
-
Extending Electronic Reporting Sources: Integration with OneDrive (I)
In this series, I will explain how to extend ER (Electronic Reporting) sources to import from non-default origins (beyond the default options like manual imports or SharePoint). This will also enable us to program batch jobs for continuous integrations. Specifically, I will guide you step by step on how to integrate with a third-party OneDrive,…
-
Creating a Table Group All Pattern in Dynamics F&O
There is a recurring pattern across various parts of the ERP system that allows users to select a specific record, a group, or all. This pattern is commonly applied against Customer, Vendor, and Product Masters. The granularity it offers is highly useful, as it simplifies the user’s parameterization process. For example, with Customers, we can…
-
The Fast Way to Filter Electronic Reporting by Selected Records
Sometimes, we need to print a report based on filtered records. While there is a default function for this in ER table records, using the “Ask for query” option, this may not always meet the user’s needs. Instead, the user might prefer to select the records directly from the form and then click the report…
-
Debugging Electroninc Reporting
The debug functionality is a powerful ER tool that lets us see the values assigned to format nodes, the format mapping nodes, and finally navigate the mapping data sources. The last one is the most important part because it allows us to navigate between table relations. I frequently use this tool, not just for ER,…
-
Extending Electronic Reporting Destinations: Integration with OneDrive (III)
In this final post of the series, I’m going to explain how to send files to OneDrive. Since I’ve implemented this functionality in a separate class, it’s more independent from the ER destinations. This is intentional because we may want to reuse the class for other developments. If you are extending destinations that aren’t for…
-
Extending Electronic Reporting Destinations: Integration with OneDrive (II)
To implement the logic, we will create four classes: We won’t write the final class now. I’ll explain it in the next and last post of this series. For now, we will show an info message to verify it’s working. After compiling, we should see the destinations with a lookup for the connection. The enabled…
-
Extending Electronic Reporting Destinations: Integration with OneDrive (I)
By default, you can export ER generated files to your computer, to a tab in your browser, to an email, to an archive (either the default SharePoint or the default Azure Storage), to a printer, and even to Power BI (though I’m not sure how this works, it seems to pass through SharePoint). Most of…
-
Create a Word/PDF in Electronic Reporting (III)
In the last two posts, we explored how to create a Word document with ER. In this final part of the series, I will show you how to fix common issues when working with Word, name the document, and finally export it as a PDF. Line break By default, Word deletes line breaks and substitutes…
-
Create a Word/PDF in Electronic Reporting (II)
We already have the format mapped, so we can download our Word document by selecting the Word node, going to ‘Attachments’ and then selecting ‘Open’: Let’s open our Word document and ensure we have the ‘Developer’ tab enabled. If it’s not visible, you can activate it by navigating to ‘File’ > ‘Options’ > ‘Customize Ribbon’.…
-
Create a Word/PDF in Electronic Reporting (I)
In this series, I’m going to explain the process of creating a Word document in Electronic Reporting (ER) or a PDF, as it can easily be converted to PDF using the ‘Electronic Reporting Destination’. In this post, I’ll be focusing on the format, as the model and the mapping are generic. This method is valid…
-
Validate Electronic Reporting on execution and show errors or warnings
Validate ER on execution and show errors or warnings
-
Extending Generic Electronic Reports
There are different ways to extend Generic Microsoft Electronic Reports (GER), depending on your needs. If you need to modify the data source, you would extend the mapping, while if you need to modify the design, you would extend the format. However, both approaches have limitations; for example, you cannot add a new field. In…
-
Mapping priority in Electronic Reporting
In ER, there may be multiple mappings for a single model. This is because there could be different ways of filling it. In this post, I’m going to explain how the system knows which one to run. Let’s start with this example of an export message. We have a model, three mappings, and a format.…
-
About VALUEIN() in Electronic Reporting for filtering lists
In this post, I’m going to experiment with the VALUEIN() formula inside FILTER() to better understand how it really works. VALUEIN() is a formula that returns a boolean indicating if a certain value is in a list. For example, if we want to know if ‘US-001’ is in the ‘CustTable’, we would do: And we’ll…
-
Using Electronic Reporting for API requests (II)
In this second part, I’m going to explain the code from the executable class. I’m using attachments because I find them very helpful during testing and even in production. However, you can also work in memory; at the end of this guide, I’ll explain how. Let’s start with the executable class. We’ll begin by using…
-
Using Electronic Reporting for API requests (I)
When we need to make a request to an external API, it’s really helpful to use ER because it’s a low-code environment that helps us build, test, and fix our messages much faster. ER supports XML and JSON, so we won’t have a hard time designing the request body or reading the response body. With…
-
Run interface implementations parameterized in a lookup
In this blog post, I’m going to show you a pattern that allows users to parameterize an Interface and run it based on that parameterization. This isn’t a tutorial or guide per se, but rather an experimental solution I developed while trying to implement a similar pattern to the one already used by Microsoft in…
-
Import a CSV file with Electronic Reporting (III)
In the first two entries of this series, we saw the standard way ER for import works, but sometimes that’s just not enough. When we’re working with a file we want to parse, and we have, or think we could find, escape characters (for example, with CSVs or EDI messages), we must leverage the power…
-
Import a CSV file with Electronic Reporting (II)
This article is the second in a series of three about importing CSV files into the system. We will explore the format, the format mapping, and how to test the development. In a future article, I will cover a topic that requires more advanced knowledge of Electronic Reporting and programming logic in general for addressing…
-
Import a CSV file with Electronic Reporting (I)
In this series, I’m going to show an example of importing a CSV file using Electronic Reporting (ER). This guide assumes you have basic knowledge of ER. If you are just starting, I recommend reading the series on ER export first, as it is more step-by-step and explains the basic concepts of ER. In an…
-
Integrating Electronic Reporting import messages into the UI
Following my previous article, ‘Integrating ER Export Formats into the UI’, let’s now take a look at import messages. I’m starting with a very simple model, an import format and an import mapping (direction to destination). In the mapping, there are two user input parameters, ‘string1’ and ‘string2’. These parameters serve as the keys for…
-
Integrating Electronic Reporting export formats into the UI
We’re going to see how to integrate an ER export format into a form. This involves adding a button that, when clicked, will execute a parameterized ER format and pass arguments from the currently selected record. We have this table, where the first two strings act as a unique key: Additionally, we have a Model,…
-
Electronic Reporting Object Base Reference Error
When uploading versions to ER, you may sometimes encounter the error messages ‘Unresolved references left’ and ‘Reference of the object X to the object ‘Base’ Y cannot be established’. Let’s discuss why this happens, how to prevent it, and how to fix it. Cause Let’s suppose we have a Model, a Mapping, and a Format.…
-
Export Message Creation in D365F&O Electronic Reporting: Part IV – The Format
In this final part of the series, we’ll explore how to create a text file using some of the data we’ve gathered in our mapping. The file will be organized into sections, with information sorted both by a suffix on each line and the data’s position within the line. This format is commonly used in…
-
Export Message Creation in D365F&O Electronic Reporting: Part III – The Mapping
In this final part of the mapping, we’re going to link our declared and transformed objects with the model and then check if the data we are getting is what we were expecting. There are two ways to link nodes: either directly with the ‘Bind’ button or using the formula UI ‘edit’. Let’s start with…
-
Export Message Creation in D365F&O Electronic Reporting: Part II – The Mapping
In this second part, we’re going to see how to create the mapping. This is the most technical part, and while we’re going to keep it simple, it sometimes requires knowledge of the system architecture and access to Visual Studio, or the help of someone with a technical profile. I’ve decided to split the mapping…