Priority-based batch scheduling in Dynamics 365
We’ve seen a lot of improvements to the product since it was released as AX7, and some name changes too 😝 And one of the areas where we’ve seen more enhancements is the batch framework. And since the currently live last version of Dynamics 365 Finance and Operations, 10.0.28, we have a new feature that […] ariste.info Priority-based batch scheduling in Dynamics 365 Continue Reading Adrià Ariste Santacreu’s...
Logs in Dynamics 365: not anymore!
Let’s talk about logs in Dynamics 365 Finance and Operations. And I don’t mean the built-in database logs we’ve had since the old Axapta days. I’m talking about plain logs, a table and a form to see how/why data is changing, or logging external calls to OData or custom web services endpoints in the ERP. […] ariste.info Logs in Dynamics 365: not anymore! Continue Reading Adrià Ariste Santacreu’s...
Azure API Management for Dynamics 365 F&O
In today’s post, I want to talk about using Azure API Management (APIM) along Dynamics 365 Finance and Operations. Azure API Management is a hybrid, multi-cloud management platform for APIs across all environments. This means that, after deploying an APIM account, you can create an API that can serve services from one system or multiple. […] ariste.info Azure API Management for Dynamics 365… Continue Reading Adrià...
My take on the X++ custom scripts feature
So three days ago I took a look at the new 10.0.25 features currently in the PEAP program, calmly scrolling through until I saw something about custom scripts on prod, something that read: Run custom X++ scripts with zero downtime You can imagine my face when I read this. At the beginning I was confused, […] ariste.info My take on the X++ custom scripts feature Continue Reading Adrià Ariste Santacreu’s Article on their...
New features for Dynamics 365 in 2021: my year-in-review
The year 2021 has almost come to an end, and it’s time to review the changes we’ve had this past year. So in case you’ve missed something, I hope you can find it here, although I won’t include all new or changed Dynamics 365 Finance & Operations features, only some of them, the ones I’ve […] ariste.info New features for Dynamics 365 in 2021: my year-in-review Continue Reading Adrià Ariste...
New Azure DevOps release tasks: MSAL authentication and ADAL deprecation
There’s a new version and a new task for our release pipelines that use the Azure-hosted agents. These changes have been introduced recently to support the new MSAL authentication libraries for the LCS service connection used to upload and deploy the deployable packages. The current service connections use Azure Active Directory (Azure AD) Authentication Library (ADAL), and support […]
Add a QR code to Dynamics 365 forms and reports
QR codes are very present in our daily lives as a way to share information, URLs, or other data quickly. In this post, we’ll learn how to display one in a Dynamics 365 form or a SSRS report using a library which is included in our development VMs: QRCoder. Generating a QR code QRCoder is […] ariste.info Add a QR code to Dynamics 365 forms and reports Continue Reading Adrià Ariste Santacreu’s Article on their blog...
Update VMs using pipelines and d365fo.tools
Now that Microsoft will also update additional Dynamics 365 Finance and Operations Sandbox environments, partners and customers will only need to take care of updating cloud-hosted environments, as we’ve always done. I’m sure each team manages this differently, maybe leaving it to each developer to update their VM, or there’s someone in the customer or […] ariste.info Update VMs using… Continue Reading...
Package and Model planning
Creating a package or a model is one of the first things we’ll do when starting to code in a new project. It’s something very basic, but I’m still seeing some issues around this, bad practices that can lead to problems in the future. Packages or models? Is a package something different as a model? […] ariste.info Package and Model planning Continue Reading Adrià Ariste Santacreu’s Article on their blog...
PriceDisc: getting prices the right way
Need to get the price of an item that has a sales or purchase agreement? The PriceDisc class is here to save us! This is one of those reference posts that I’m writing for the Adrià of the future, because it’s something I forget about a lot. PriceDisc magic! There’s an obsolete method, I think […] ariste.info PriceDisc: getting prices the right way Continue Reading Adrià Ariste Santacreu’s Article on their...
Dataverse and Cross-apps capabilities: the future of FnO
It’s been some time since I wrote “Is Dataverse the future of Finance and Operations apps?“, and when I did, Dataverse was still called CDS and still went through several name changes. Has anything changed since I wrote that post? Do I still see Dataverse as the future of Finance and Operations apps? Well, now […] ariste.info Dataverse and Cross-apps capabilities: the future of… Continue Reading Adrià...
Restore a data package with Azure DevOps Pipelines
You can read my complete ALM guide on Microsoft Dynamics 365 for Finance & Operations and Azure DevOps. Moving data from the production to a sandbox environment is something we regularly have to do to have real updated data to do some testing or debugging. It’s a process that takes time and that can be […] ariste.info Restore a data package with Azure DevOps Pipelines Continue Reading Adrià Ariste Santacreu’s...
Dual-write table mappings: copy to other environments
In a past post, we learned how to create custom data entities to be used in Dual-write. And now you might be asking yourself, how do I move the Dual-write table mappings to a test or production environment from the development environment? Do I need to repeat everything I’ve done on the dev machine in […] ariste.info Dual-write table mappings: copy to other environments Continue Reading Adrià Ariste Santacreu’s...
SocrateX & Application checker
It’s been a while since I first wrote about the Application Checker in 2019, and here I am again. In this blog post, I’ll talk about SocrateX and XQuery too, and I’ll also show how to generate the files and databases used to analyze the code. If you want to know more about App Checker […] ariste.info SocrateX & Application checker Continue Reading Adrià Ariste Santacreu’s Article on their blog...
Develop custom Data Entities for Dual-write
Dual-write has been around for almost two years now. It’s one of the ways of integrating Dynamics 365 Finance and Operations and Dataverse along with Virtual Entities. The standard solution comes with many out-of-the-box entities available to synchronize. This has been one of the great improvements since Dual-write was made available in preview, when Juanan […] ariste.info Develop custom… Continue Reading Adrià...
Azure DevTest Labs powered builds for Dynamics 365 FnO
The end of Tier-1 Microsoft-managed build VMs is near, and this will leave us without the capacity to synchronize the DB or run tests in a pipeline, unless we deploy a new build VM in our, or our customer’s, Azure subscription. Of course, there might be a cost concern with it, and there’s where Azure […] ariste.info Azure DevTest Labs powered builds for Dynamics 365 FnO Continue Reading Adrià Ariste Santacreu’s...
Tier 1 Microsoft managed VMs will be removed
If you receive the LCS email notifications for your projects you already know this: all Tier 1 virtual machines from Microsoft’s subscription will be gone as early as 1 December! This is what the emails say: As communicated previously, Microsoft is removing the use of Remote Desktop Protocol (RDP) to access environments managed by Microsoft. As […] ariste.info Tier 1 Microsoft managed VMs… Continue Reading Adrià...
Add and build .NET projects to your Dynamics 365 pipeline
I bet that most of us have had to develop some .NET class library to solve something in Dynamics 365 Finance and Operations. You create a C# project, build it, and add the DLL as a reference in your FnO project. Don’t do that anymore! You can add the .NET project to source control, build […] ariste.info Add and build .NET projects to your Dynamics 365 pipeline Continue Reading Adrià Ariste Santacreu’s Article on...
Celebrating 50.000 visits with a new design!
I started this blog in February 2019 and it’s just reached the 50.000 visits milestone, over 40.000 during the last 12 months! Thanks to everybody that has visited it, commented, shared, or written to me. I really like receiving feedback from people reading what I write. And as you must’ve noticed I’ve also changed the […] ariste.info Celebrating 50.000 visits with a new… Continue Reading Adrià Ariste...
Execute Dynamics 365 OData actions as CDS actions using Virtual Entities
Since Dynamics 365 for Finance and Operations version 10.0.12 we’ve been able to use FnO (public) data entities as CDS Virtual Entities. This will allow us to create model-driven Power Apps for Finance and Operations entities without having to copy data between Finance and Operations and the Common Data Service (CDS). This opens a lot … Continue reading Execute Dynamics 365 OData actions as… Continue Reading Adrià...
Apply a DP using release pipelines in self-service environments
After waiting for it for a long time it’s here! If any of your customers has self-service sandbox environments you’ve been doing this by hand. We’ve been on self-service for over a year and a half with a customer, since the private preview, and we’ve REALLY missed this feature in Azure DevOps. All the documentation … Continue reading Apply a DP using release pipelines in self-service… Continue...
Workflow approvals in Teams using adaptive cards
In today’s post I’m going to use the Power Platform and business events to show you how to take the Microsoft Dynamics 365 Finance and Operations Workflow approvals outside MSDyn365FO. How? Using business events, power automate and adaptive cards to display nice messages in Microsoft Teams. If you want to know more about using business … Continue reading Workflow approvals in Teams using… Continue Reading Adrià...
ISV License Generator v0.2 with SHA-2 support
Some time ago I published the first version of ISV License Generator to help us generate a license for a Microsoft Dynamics 365 for Finance and Operations ISV solution, using a CSP cryptographic USB token instead of a software certificate. With the new ISV License Generator version 0.2 I’ve implemented support for SHA-2/SHA-256 while keeping … Continue reading ISV License Generator v0.2 with… Continue Reading Adrià Ariste...
Priority-based throttling for Dynamics 365 integrations
We’re finally getting a throttling functionality for OData integrations! It’s one of the most common requirements from a customer: the need to integrate Dynamics 365 with other systems. With the (back in the day) new AX7 we got a new way of integrating using the OData REST endpoint and the exposed Data Entities. But integrations … Continue reading Priority-based throttling for Dynamics 365… Continue Reading...
Self-service & SSRS: print reports as PDF in your Dev VM
If you’re working with the (not so) new self-service Tier 2 environments in Dynamics 365 for Finance and Operations you might have already noticed this: the reports in Tier 2+ and production environments aren’t using the SSRS report viewer, instead they’re being displayed in a beautiful PDF preview form. But what happens on your development … Continue reading Self-service & SSRS: print reports…...
Add a Menu Item to a SysOperation dialog
A short one! Some time ago I explained how to add a multi selection lookup to a SysOperation dialog and in this post I’ll explain how to add a Menu Item as a Function button to the SysOperation dialog. Before the SysOperation Framework was introduced in AX2012, we used the RunBase Framework, and maybe doing … Continue reading Add a Menu Item to a SysOperation dialog → La entrada Add a Menu… Continue Reading...
Azure functions & Dynamics 365 Finance and Operations
This is another post about solving Dynamics 365 problems using external tools. However I’m starting to think as everything Azure-related as not external at all. In this case I’ll show different scenarios using Azure functions with Dynamics 365. I wrote this almost three weeks ago and it was intended as a two-part post but after … Continue reading Azure functions & Dynamics 365 Finance and… Continue Reading...
Creating (more) community, or trying
I’m sorry for my English-speaking readers because, maybe, this post will be a bit useless for you as all the content I’ll talk about is in Spanish. But it’s always good to know! In the last few days I’ve taken part in a community event, the 365 Saturday online, and I’ve also started a podcast. … Continue reading Creating (more) community, or trying → La entrada Creating (more) community,...
How do we do branching in Dynamics 365?
I’ve written this post after Mötz Jensen asked to in a long and really interesting Twitter discussion on branching and version control in Dynamics 365 for Finance and Operations. This is Denis Trunin‘s tweet that initiated it all: Just go and read all the replies, there’s some of the most interesting content I’ve read on … Continue reading How do we do branching in Dynamics 365? → La...
Is the CDS the future of Finance and Operations apps?
After watching Ryan Jones’ session “What’s new in the Common Data Service”, I ask myself whether that’s the question or it should be when will it be natively available in the Common Data Service? La entrada Is the CDS the future of Finance and Operations apps? se publicó primero en ariste.info. Continue Reading Adrià Ariste Santacreu’s Article on their blog Is the CDS the future of Finance and...
Azure hosted build for Dynamics 365 Finance & SCM
Behold #XppGroupies! The day we’ve been waiting for has come! The Azure hosted builds are in public preview with PU35!! We can now stop asking Joris when will this be available, because it already is! Check the docs! I’ve been able to write this because, thanks to Antonio Gilabert, we’ve been testing this at Axazure … Continue reading Azure hosted build for Dynamics 365 Finance & SCM → La…...
LCS DB API: automating Prod to Dev DB copies
The new LCS DB API endpoint to create a database export has been published! With it we now have a way of automating and scheduling a database refresh from your Dynamics 365 FnO production environment to a developer or Tier 1 VM. You can learn more about the LCS DB REST API reading these posts … Continue reading LCS DB API: automating Prod to Dev DB copies → La entrada LCS DB API: automating… Continue Reading Adrià...
Compiler warnings: are you checking them in Dynamics 365?
Compiler warnings. Warnings. They’re not errors, only warnings. You can just overlook and forget them, right? Well, I hope you aren’t. “But even the standard code done by Microsoft throws warnings!”, you could say. And that’s true, but that’s not your code, it’s Microsoft’s. If a functionality you’re using breaks because they didn’t care about … Continue reading...
Messaging API: add actions to the message bar
With the latest Dynamics 365 for Finance and SCM 10.0.10 version, we’re getting a new feature that will allow us to add actions to the message bar, using the Messaging API like we used to do in AX2012 with the SysInfoAction class. Remember this is in the latest preview version. You can access the preview … Continue reading Messaging API: add actions to the message bar → La entrada Messaging… Continue Reading...
1 2 3 Power mime!
We’re heading into the third week staying home, and with some weeks more ahead of us we need some entertainment. Last week Eva asked me if we could create an app using the Power Platform to play mime games remotely with my colleagues at Axazure. She’d design it graphically and functionally and I’d (no) code … Continue reading 1 2 3 Power mime! → La entrada 1 2 3 Power mime! se publicó primero…...
Unzip a Stream in Dynamics 365 FnO
Since Microsoft Dynamics 365 for Finance & Operations is a cloud-based ERP we cannot work with files on the AOS drive anymore. It was pretty usual to have file-based integrations in AX where you got a file in a folder and processed it. Of course it’s still possible to work with files, for example from … Continue reading Unzip a Stream in Dynamics 365 FnO → La entrada Unzip a Stream in Dynamics… Continue...
10 year AXniversary!
Today I’m going to talk a bit about me instead of X++, Azure DevOps or LCS. Because… On a day like this St. Patrick’s day, 10 years ago, I started working with Axapta! La entrada 10 year AXniversary! se publicó primero en ariste.info. Continue Reading Adrià Ariste Santacreu’s Article on their blog 10 year AXniversary! Today I’m going to talk a bit about me instead of X++, Azure DevOps or LCS. Because… Cake! On...
Exam MB-300: Core Finance and Operations
Last week I took (and passed :P) exam MB-300: Microsoft Dynamics 365: Core Finance and Operations. After taking other older exams I’d like to share my views on MB-300. Role-based certifications The MB-300: Microsoft Dynamics 365: Core Finance and Operations exam is part of the new role-based certifications, and with exam MB-500 is needed to … Continue reading Exam MB-300: Core Finance and… Continue Reading Adrià...
A warning about Self-service environments: update carefully
It looks like the time has finally come and all new LCS projects will have self-service Tier 2+ environments. If you want to know a bit more about them, I wrote this post about service fabric/self-service environments in Microsoft Dynamics 365 for Finance and Operations. The last two projects we’ve started at Axazure are on … Continue reading A warning about Self-service environments: update… Continue Reading Adrià Ariste...
Secure your Azure Pipelines with Azure Key Vault
After the update of my last post about calling the LCS API from Azure DevOps Pipelines I thought that creating a pipeline with a password in plain sight was not very secure. How could we add extra security to a pipeline? Once again we can turn to an Azure tool to help us, the Azure … Continue reading Secure your Azure Pipelines with Azure Key Vault → The post Secure your Azure Pipelines with… Continue Reading Adrià...
Calling the LCS Database Movement API in your Azure DevOps pipeline
I talked about the LCS Database Movement API in a post not long ago, and in this one I’ll show how to call the API using PowerShell from your Azure DevOps Pipelines. What for? Basically, automation. Right now the API only allows the refresh from one Microsoft Dynamics 365 for Finance and Operations environment to … Continue reading Calling the LCS Database Movement API in your Azure DevOps… Continue Reading Adrià...
Add multi selection lookup to a SysOperation Framework dialog
First 2020 post! Happy new year! Yes, I know it’s already past mid January… When you add a field to a SysOperation Framework Data Contract the lookup that the framework creates (if the EDT has a lookup) is a simple, single select lookup. Let’s see how to create a multi select lookup in MSDyn365FO. The … Continue reading Add multi selection lookup to a SysOperation Framework dialog → The post
LCS Database movement REST API
Since last October we’ve been able to try the preview of Microsoft Dynamics 365 for Finance and Operations Database Movement API which allows us to list and download DB backups and start DB refreshes using a REST API. If you want to join the preview you first need to be part of the MSDyn365FO Insider Program where you can join the “Dynamics 365 for Finance and Operations Insider Community“…. Continue Reading...
Create an ISV license from a cryptographic USB token
This post is a product of not reading the full documentation. Lesson #1: read the docs thoroughly, or at least don’t stop reading when you think you’re done. Publishing an ISV solution One of the steps when you want to publish an ISV solution is generating the license for your customers. This license has to be signed using an Authenticode certificate that will enable the solution, limit… Continue Reading Adrià Ariste...
Get the T-SQL query from X++
As you might know MSDyn365FO’s data access layer pretty different from T-SQL. This means that if you copy a query on AX and paste it in SSMS it won’t validate in the 99% of the cases (the other 1% being a select * from table). The differences are specially obvious in the join clauses, for example in AX’s (not) exists join which translates to T-SQL as a WHERE NOT EXISTS (SELECT statement). To… Continue Reading...
DevOps ALM automation in Microsoft Dynamics 365 for Finance and Operations
I’ve already written some posts about development Application Lifecycle Management (ALM) for Dynamics 365 for Finance and Operations in the past: Dynamics 365 for Finance & Operations and Azure DevOps (part I) Dynamics 365 for Finance & Operations and Azure DevOps (part II) Setting up Release Pipeline in Azure DevOps for Dynamics 365 for Finance and Operations Set up the new Azure DevOps… Continue Reading Adrià...
Invent counting with AI Builder
This past weekend I’ve attended my third 365 Saturday, this time in Barcelona, as a speaker. As you can see in the post title my session has been about creating inventory counting journals using AI with the Power Platform. The event has been great, but my session has left me with a bittersweet feeling because I haven’t been able to show the full app functionality due to stupid technical issues… Continue Reading Adrià...
Setup Entity Store’s export to Azure Data Lake storage
It’s easy to start this post, because many people can ask: What’s a Data Lake? Fishing in a Data Lake. By cazapelusas. A Data Lake is not an Azure product but a term referring to a place where data is stored, regardless of whether it’s structured or unstructured. Its only purpose is storing the data ready to be consumed by other systems. It’s like a lake that stores the water of its… Continue Reading...
Manually deploy Retail packages for Microsoft Dynamics 365 for Finance and Operations
First Microsoft Dynamics 365 for Finance and Operations Retail post! I hope more will come. As you might know, one of the setbacks of the database refresh from production in LCS is that some data doesn’t get copied. This is a safety feature that prevents, among others, that emails are sent or batches run accidentally after a DB restore. Remember that it’s a good idea to have a SQL query/script… Continue Reading Adrià...
Parse XML and JSON easily in MSDyn365FO
Some time ago I had to create an interface between MSDyn365FO and a web service that returned data as XML. I decided to use X++’s XML classes (XmlDocument, XmlNodeList, XmlElement, etc…) to parse the XML and get the data. These classes are terrible. You get the job done but in an ugly way. There’s a better method to quickly parse XML or JSON in MSDyn365FO. .NET to the rescue There’s a… Continue Reading Adrià Ariste...