Redeploying SSRS reports in D365FO without using Visual Studio

Since I am not a developer… especially not an X++ developer I am ususlly not entrusted with access to Visual Studio (this statement was more for dramatic effect but the truth is that I am trying to avoid it to not mess things up).

The main reason for this work around is that in some environments Visual Studio is not set up and to do that would require setting up the correct account, mapping workspaces and a whole lot more. This way is simpler:

  1. Log into the Dynamics Server
  2. Start PowerShell Elevated as Administrator
  3. Run the following command:

    K:\AosService\PackagesLocalDirectory\Plugins\AxReportVmRoleStartupTask\DeployAllReportsToSSRS.ps1 -PackageInstallLocation “K:\AosService\PackagesLocalDirectory”

That will redeploy all of the for Dynamics 365 for Operations

Links:
https://msdax.wordpress.com/2018/04/08/deploying-ssrs-reports-to-dynamics-ax-365/

The macro ‘@CurrentIteration’ is not supported without a team context.

Today when writing release notes for my customers latest release I bumped into an issue. I have a query that returns all item in the current Iteration Path with their release notes. The release notes are written in Microsoft Word so I thought that if I could just get the query into Excel it would be an easy “Copy and Past” operation into word.

Fortunately Azure DevOps have just this feature. You simply go to queries, click the three dots negt to the query and select Open in Excel

My query looks like this:

In order to use Open in Excel you first need to install Azure DevOps Office® Integration 2019. After authenticating to Azure DevOps I got an error message… interresting

Turns out the setting @CurrentIteration does not work in Excel… You have to set it to the actual iteration path in order for the Excel Addin to work.

Good to go 🙂

The Azure DevOps UI for Build Pipelines has changed

A quick one today…

I was about to deploy a new package today for a customer… and I could not find it… Apparently the UI for DevOps has changed and it took me a while to find the same place.

The old UI looked like this. You went to Pipelines – Build – [your pipeline] – [The run you wanted] – Summary. Under Build Artifacts you could find the package zip.

Bildresultat för azure devops build pipeline package

Now it looks a bit different. You still go to Pipelines – Build – [your pipeline] – [The run you wanted] – Summary. You find the package artifacts here.

Oh… and there is also another difference. The package used to be ziped an extra time so you had to extract it to be able to upload it to LCS. Now you directly get the deployable package.

That’s it for today… mainly since I tend to forget 🙂

My top 12 items in the Dynamics and Power Platform 2020 Wave 1

Last week Microsoft finally released the complete PDFs with new features of Dynamics 365 and PowerPlatform Wave 1 2020. I browsed through them (all 405 pages of them 🙂 ) to to try to understand where we are going… here are my top 10 12.

  1. Mass deployment of the Warehouse App
    This gives an organization the ability to use Microsoft Intune (or your favorite MDM solution) to deploy the warehouse app to mobile devices.
  2. The UI will start adapting to the license the user has assigned in order to make the UI “less complex”. This means that there is no longer a possibility to get by under licensed”.
  3. The new grid now allows you to group rows based on a column and also to easily rearrange the columns.
  4. Tables, Entities and Aggregate measurements can be stored in Data Lagke Storage Gen 2. Prior to this release we were only able to store Aggregate Measurements in Data Lakes.
  5. The ability to embed a Power Automate Flow directly in the UI in Dynamics. This flow can be triggered by the end user. This feature is even cooler since it was suggested on the Dynamics Ideas site.
  6. Azure AD sign-in in the POS client. This could previously only be done using a worker ID
  7. The ability to create a PowerApp directly in Microsoft Teams.
  8. Great improvements for running model-driven apps offline. Really cool since this is geared towards mobile front line workers.
  9. Monitor and get insight into usage of your canvas apps using Azure Application Insights.
  10. Power Apps Test Studio is available in General Availability. This gives you the possibility to automate testing and integrate it into Azure DevOps release and Build Pipelines
  11. Simplified expressions in Power Automate. Instead of having to write a complex expression for a string operation there are ready-made blocks for this.
  12. Copy and Paste in the Power Automate designer (Yay)

As you can see this selection of features are quite tech/IT heavy… There are a LOT more app related features in the Wave 2 release. Look through the PDFs linked below to get a grasp on these.

One thing to note is that this is Wave 1… Not everything in Wave 1 is general available or in some cases even in preview… but it is coming. Something to look forward to.

Links:
https://docs.microsoft.com/sv-se/dynamics365-release-plan/2020wave1/
https://docs.microsoft.com/sv-se/power-platform-release-plan/2020wave1/

Flow Friday: Getting random row from Excel

Finally back for Flow Friday after some much needed rest over the holidays. This week is sort of a proof of concept. There are times when you need to just get a random value. This could be for a lottery or get a random name for the person that should take out the trash this week.

  1. Create an Excel Sheet in OneDrive with a table containing all of the names you need to randomize
  1. Go to Microsoft Power Automate and create a new flow
  2. Since I want it to run automatically I set it on a schedule
  1. Next we read the Excel file and figure out the number of rows
  1. We then create a variable that is a random number between 0 and [number of rows in the table]
Formula: rand(0,int(length(body(‘ListRows’)?[‘value’])))
  1. Then we get the name column form the row with the random number
Formula: body(‘ListRows’)?[‘value’]?[variables(‘RandomRow’)]
  1. Finally I sent the name in a notification
outputs(‘Compose’)?[‘Name’]

That is all… I will now get a notification with the name of the person that will take out the trash 🙂

RSAT: Failed to download or overwrite attachment files – Some files maybe in use.

I had an issue today with one of my testcases in RSAT. When running it manyally from the RSAT UI it worked but when trying to run it from a PowerShell script I got this error:

Failed to download or overwrite attachment files – Some files maybe in use.

For some reason the test case uploaded duplicate files to Azure DevOps. When I ran the test in RSAT it uses the local file generated from RSAT and everything worked but when I ran it from the console it downloaded the files from DevOps, got the duplicates and for some reason failed.

The solution was to permanently delete the test case from DevOps and resync it from BPM.

Beware that that will give it another ID which will change the order of the tests.

Getting started with VS Code – for a developer wannabe – Part 1

I am a developer… in the same was as I am a gamer and a harmonica player… I really, really really want to be one… I am not good at it, but I really want to be one. I have over the years tried my hand at Powershell, Yaml, BAT- files and even good old kix scripts and much lite an amateur golfer I try to tell my self that if I just have the right tool I will really get good at this… (I really want to believe that 🙂 )

When it comes to PowerShell I have been an avid user of PowerShell ISE but since Microsoft is not doing much of anything with ISE anymore and they are pushing VS Code more and more for everything I thought what the heck… This is my noob guide to getting started with VS Code (for someone that has only used ISE).

In this post I will show you how I set it up and I will probably follow up wit other posts on how I got started.

First you need to download and install VS Code itself:

  1. Go here to download
  2. I checked the options
    Add “Open with Code” action to Windows Explorer file context meny
    Add “Open with Code” action to Windows Explorer directory context meny
    Register Code as an editor for supported file types
  3. Finish the install and Launch VS Code

When you start VS Code for the first time it will look like this. To get started with PowerShell there is at least one plugin you will need… PowerShell (unexpected right). This is used for providing snippets and high lighting code

4. Click the small cubes at the bottom of the toolbar on the left

5. Type PowerShell in the search bar, select it and press the small green install

The plugin even makes VS Code look a bit like ISE. I usually set it back to Dark (that is what coders do 🙂 )

That is it for today. I will continue with more tips and tricks for getting started with VS Code.

Bye

Johan

Creating an App Password for a Azure AD Account using the Office 365 Portal

Most organizations today are using Azure AD and the absolute recommendation is to use 2FA in as many scenarios as possible… in some that is not possible… then there is an option to use an application password (this should be uses in special cases and you should never use it on an Admin Account). To create an App Password you do the following:

  • Log in to https://portal.office.com
  • In the upper right corner click your profile picture and select “My Account”
  • Go to “Security and Privacy” and click “Create and manage app passwords”

Note: If you are not able to see the Additional Security verification you can go directly to the link: https://account.activedirectory.windowsazure.com/AppPasswords.aspx … here you can create an app password.

  • To create a new app password click create

Links:
https://docs.microsoft.com/en-us/azure/active-directory/user-help/multi-factor-authentication-end-user-app-passwords
https://community.spiceworks.com/topic/2034065-issues-with-o365-app-passwords

Sudio Fem True Wireless lurar

För ett tag sedan fick jag kontakt men det svenska hörlurstillverkaren Sudio. Jag har inte haft möjlighet att testa deras lurar tidigare men jag måste säga att det var en trevlig bekantskap. Modellen jag fått testa heter Sudio Fem, är av true-wireless typ och väger 5 gram var. Jag har ju tidigare gnällt på att jag har problem med in-ear lurar och jag sällan kan få dem att sitta fast som de skall. Sudio 5 sitter behvämt i örat och sticker inte ut så mycket. Modellen jag har är mörkblå med en liten guldfärgad utstickare där två av microfonerna sitter. Jag säger två för lurarna har hela 4 mikrofoner som ger dem en möjlighet att på ett effektivt sätt filtrera bort omgivningens ljud med en funktion som heter TrueVoice. Enligt min erfarenhet funkar detta mycket bra och de jag pratat med och frågat hur det låter säger att det låter mycket bra.

När det gäller lyssningsljudet i lurarna är det mycket bra. Ljudbilden känns mycket balanserad men klart ljud och fyllig bas. Jag är förmodlgen inte rätt person att bedöma detta då majoriteten av mitt lyssnande inte är musik utan röst i form av podcast och ljudböcker. Jag dock passat på attlyssna en del på musik för detta test.

Bildresultat för sudio fem

Lurarna levereras med en magnetisk laddnings case med USB-C kontakt. Casen innehåller som vanligt ett batteri som ger lurarna totalt 20 timmars batteri tid.

En funktion som ingen av mina true vireless lurar haft tidigare men som jag vet att t.ex AirPods har och som i detta fall Sudios lurar har är att de är individuellt parade med telefonen vilket betyder att man kan ha vilken lur om helst liggande på laddning och den andra i örat om man t.x vill använda den som telefon headset. Väldigt praktiskt om man börjar få ont om batteri.

För att kontrollera lurarna finns en touch yta på respektive lur där dubbel-tap byter till förra respektive nästa spår/kapitel och trippel-tap höjer respektive sänker volymen. Enkel-tap på höger eller vänster lur är play/pause.

Bildresultat för sudio fem

Det finns ett par saker jag tycker är aningen sämre med lurarna… för det första har varje lur en touch yta för att bland annat pausa, svara och aktivera röstassistent. Detta gör att lurarna är helt slutna och är IP X5 klassade. Det innebär dock att man inte någon annan feedback om man trycker annat än ett pip i luren när man play och pausat och att de inte funkar på vintern när man har har vantar och mössan långt nerdragen över öronen. Den andra saken jag saknar från de hörlurar jag använder till vardags är en hear-through funktion som gör att man kan höra omgivningen via mikrofonerna vilket är bra att ha när man t.ex besöker en butik och behöver prata med någon. Den tredje nackdelen har att göra med hur jag personligen använder mina hörlurarna. Jag föredrar att bara behöva ha med mig ett par lurar och eftersom jag dagligen sitter i mycket voice möten via datorn skulle jag verkligen uppskatta om jag kunnat ha lurarna anslutna till två enheter samtidigt (dator och telefon).

På det hela taget. Ett par mycket bra hörlurar med endast mindre nackdelar som inte avspeglar lurarna som helhet utan endast har att göra med mina specifika användningsområden. Jag tycker att dessa är bra och mycket prisvärda med sin prislapp på runt 1400 kronor i skrivandes stund. Helt klart rekommenderade!!