Is the CDS the future of Finance and Operations apps?

Future of Finance and Operations CDS
Adrià the medium: what will happen with the CDS?
Adrià the seer: what will happen with the CDS?

After the MBAS on Wednesday I’m thinking about this more and more. Will Dynamics 365 for Finance and Supply Chain Management’s data be natively hosted in the CDS?

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?

Continue reading “Is the CDS the future of Finance and Operations apps?”

Azure hosted build for Dynamics 365 Finance & SCM

Azure hosted build pipeline

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 for a few months with access to the private preview. And of course thanks to Joris for inviting us to the preview!

Azure hosted build
Riding the Azure Pipelines by Caza Pelusas

What does this mean? We no longer need a VM to run the build pipelines! Nah, we still need! If you’re running tests or synchronizing the DB as a part of your build pipeline you still need the VM. But we can move CI builds to the Azure hosted agent!

You can also read my full guide on MSDyn365FO & Azure DevOps ALM.

Remember this is a public preview. If you want to join the preview you first need to be part of the Dynamics 365 Insider Program where you can join the “Dynamics 365 for Finance and Operations Insider Community“. Once invited you should see a new LCS project called PEAP Assets, and inside its Asset Library you’ll find the nugets in the Nuget package section.

Continue reading “Azure hosted build for Dynamics 365 Finance & SCM”

LCS DB API: automating Prod to Dev DB copies

auto

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.

Using the LCS DB API
Using the LCS DB API

You can learn more about the LCS DB REST API reading these posts I wrote some time ago. You might want to read them because I’m skipping some steps which are already explained there:

You can also read the full guide on MSDyn365FO & Azure DevOps ALM.

And remember: this is currently in private preview. If you want to join the preview you first need to be part of the Dynamics 365 Insider Program where you can join the “Dynamics 365 for Finance and Operations Insider Community“. Once invited to the Yammer organization you can ask to join the “Self-Service Database Movement / DataALM” group where you’ll get the information to add yourself to the preview and enable it on LCS.

Continue reading “LCS DB API: automating Prod to Dev DB copies”

Compiler warnings: are you checking them in Dynamics 365?

Warning

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 their warnings, you can open a support request and it’s Microsoft’s job to fix it. If your code breaks some functionality because you didn’t care about a warning, it’s your job to fix it, and your customer will want it as fast as you’d want Microsoft to fix their error.

That’s why we should be warned about warnings (badum tss).

Continue reading “Compiler warnings: are you checking them in Dynamics 365?”

Messaging API: add actions to the message bar

Messaging API actions

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 versions joining the Dynamics 365 Insider Program.

Continue reading “Messaging API: add actions to the message bar”

1 2 3 Power mime!

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 it. And that’s what we did!

1 2 3 Power Mime!
1 2 3 Power Mime!
Continue reading “1 2 3 Power mime!”

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 a storage account on Azure like Miquel Vidal has shown in his blog (in Spanish) or with the Recurring Integrations Scheduler tool.

Unzip .NET Streams

Most of the functionalities that consist in uploading of downloading a file is MSDyn365FO use .NET Streams, usually its child class MemoryStream.

So, how do we unzip one of these files? For example, the ISO20022 vendor payment journal file is zipped. What if we need to access the XML file contained in the ZIP?

We’ll need to use the ZipArchive class from System.IO.Compression namespace, and it’s really really easy. For example:

Edit: this code is valid for a single file ZIP. If the zipped file contains more than one file you must process each Stream inside the while.

We need to copy the unzippedStream stream (which is a DeflateStream) to a MemoryStream (which must be initialized) before returning it.

Remember that to access a .NET collection we need to use an enumerator to loop through it. If you don’t see the methods in the lookup using dot notation just write them, writing .NET code in X++ is still a bit buggy…

A warning about Self-service environments: update carefully

A warning about Self-service environments: update carefully 1

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 self-service and we’ve had a customer migrated to it. So it’s about time I warn you about one scary thing…

Self-service !
Continue reading “A warning about Self-service environments: update carefully”