Friday, June 15, 2018

Getting up to speed on D365/AX

For those who may not be aware, the Dynamics space is growing so rapidly. For example, in the Dynamics 365 for Finance and Operations (FO) area, its had a couple names and several different official twitter handles in the past year or so... Fluffy names aside, new modules are being added, upgrades being streamlined, Retail processes and installations optimized, and a focus on proactive over reactive system maintenance are being implemented.

While all that new functionality is great for Dynamics 365 FO, the entire Azure stack and other Dynamics products (Sales and Marketing, Talent, etc) are now pieces of the overall puzzle to your deployment. Ignoring them from your solution is going to be a mistake.

Its near impossible to keep up with it all. You need a solid baseline on the systems (all of them) and then be able to translate the updates that come out to know what is changing on the almost monthly basis. So how can you and your org ramp up in your knowledge as quickly and efficiently as possible? There are a few options and all of them can be used in conjunction with each other:

Option 1: Documentation
You can read all the documentation. Thats a total snooze fest and you'll forget most of it by the time you actually jump into the software. Documentation lacks the application of the concepts and real world scenarios.

Option 2: Dig in. Experience
Roll up your sleeves and dig into the application. Nothing beats getting into the application and making things happen. This can be a bad first step if you are unfamiliar with the application, best practices, typical configs, etc. You can set something up for given business scenarios but what happens when those scenarios inevitably evolve? You don't want to config yourself in a corner... And its easy to do...

Option 3: Conferences and tech sessions
Conferences and tech sessions are a great way to learn from experts and get an understanding of the content. You can ask questions and attend sessions that typically have experience levels for the sessions so you can get the right content. But more importantly, you can network with others. Thats critically important as the community seems very small at times...

There are a few conferences you should try to go to if you're serious about being in the AX/D365 space: AXUG Summit and MS Business Applications Summit.

AXUG Summit is run by users but has become an authority summit for everyone in the community to convene at. Sessions are put on by end users, partners, and Microsoft. It is here where you can get some of the most candid information from everyone from execs to developers. #1 tip is to not go back to the room at the end of the days' sessions...

The Business App Summit is new and has never existed. It seems to be a combination of both the old Convergence which was like a sales-y summit with the MS Tech Conference which was put on by the Microsoft product group and had about as detailed information as you could get about the bits and bytes of the applications.

You can register for AXUG here: https://www.axugsummit.com/register 
You can register for the MS Business Applications Summit: https://www.microsoft.com/en-us/businessapplicationssummit 

Option 4: Social Networks (and blogosphere)
Subscribe to blogs, RSS feeds, email newsletters from ISVs and partners, etc. There is valuable information in sales materials as well. Remember, there is never an obligation to buy services but you'll get a lot of free useful information as long as you can parse through the sales stuff...

Summary
So to round this up and reinterate, the above options are things you should do in conjunction with each other, but are NOT mutually exclusive. Hopefully this helps everyone! Let me know if you're at a conference and want to network!

Wednesday, April 18, 2018

Export Power BI dataset to Excel PowerPivot

The Power applications are hitting the Dynamics 365 space by storm. Lots of interest there. 

Whether its a customer wanting to set up some Power BI dashboards or trying to figure out how to get data out of my own company's Power BI 'dataset' there can be some hurdles. 

When I jumped into PowerBI, I was overwhelmed. Its easy to create reports when you know the application as well as the data that you need to pull from. Problem is, if you don't know the data, you can't get very far. 

I can figure out how to create BI if I know the table structure and have an idea of what the tables are and how they link together (Figure 1). But if I don't, what now? I can click on these fields one by one and see them in PowerBI UI but I don't have the freedom to copy and paste the data for further analysis. 


I export the datasets to Excel (where I'm more comfortable) and use PowerPivot type concepts through the below. I'll go one by one and see the data and how they interact with the other datasets to really learn what we have at our disposal.

Hopefully this short but sweet technique will help get you up and rolling with your Power BI data. 


Wednesday, February 28, 2018

D365 Retail MPOS login error "The request passed to the service is not valid"


Dynamics 365 for Retail error that occurs when attempting to log in to the Modern POS (MPOS): "The request passed to the service is not valid"

This occurs when an existing shift is trying to be opened by the MPOS but it cannot.
This issue is usually because the user’s shift is open on another terminal and the user can only log into a single shift.

To recreate this, have two POS terminals for the same store. Open a new shift on terminal 1. Then, while the first shift is open, log in to the second shift. If you have your system configured to allow a single user, single shift, it will ask you to resume an existing shift, the one that you have open on terminal 1. The system will give you the error “The request passed to the service is not valid”.

This can also occur if you find yourself in a ‘stuck shift’ issue. That can happen when your system allows for shared shift drawers (hardware profile) and you are switching terminals. I am not sure in what order that you’ll have to do things to receive this ‘stuck shift’ issue, but it will result in your user, and the others who were using that shared shift that is now stuck, to receive that “the request passed…” error. Those users on that essentially hose them from the system. They can’t log in to any POS terminal for that store. Not fun...

For this stuck shift issue, look at the crt.RetailShiftUsersStagingTable and crt.RetailShiftStagingTable tables in SQL Express for the stuck shifts. You may need to do some magic here. Be extremely careful in what you do to fix the issue. While our team was able to resolve the issue, you may want to use Microsoft Support to assist with the issue. Shout out to the team for figuring out this issue! 

UPDATE 6/12/2018 - Check out my buddy Duc Le's blog post about this very issue: http://ducdax2012retail.blogspot.com/2017/02/cant-close-shift-error.html. Duc was a colleague of mine a while back so check out his blog! He focused on retail as well. Thanks for the comment below and miss working with you, dude. Hope all has been well!

Saturday, December 16, 2017

Microsoft Paint 3D - The new Paint?

One of the most valuable tools to me as a consultant is Microsoft Paint. I will use Photoshop or GIMP (open source: https://www.gimp.org/) for more complex image creation/editing, but Paint is about 75% of my time.

MS added a new paint program called Paint 3D. Its being highlighted in the new 3D Holiday campaign so I thought I would check it out. There was always a rumor that Paint was going away and would be replaced by something new. Paint is not gone (nor heard rumor of it going away) but it is replaced by the equally capable and enhanced Paint 3D. It was released in Windows 10 Creator Addition sometime in Q2'17.

Paint 3D is a windows store app (.appx) so it'll have that look and feel. Its nice to have that native feel especially when using the pens in the Surface family. But it'll take a bit of time to get used to I think. 

I haven't done much playing around with it yet outside of the below picture but it does appear to support transparent backgrounds and a (somewhat inaccurate) magic wand. There are predefined objects you can turn 3D as well as build in a 3 dimensional area. 

There is a 3D model search capability built in which appears like a clip art-like place for 3D models. That'll be handy I think. And textures you can use in images right out of the gate. 

I'll post more about this as I find more applications to use it for my work. This is part of what I want to learn in 2018. That and focus on VR/AR. How can this help with business processes and ERP consulting? Probably not much outside of sales and button images but who knows now with new applications and envisioning stores, displays, etc. 

Here is what I made tinkering around with it. You can export things out in 3D or 2D. 

Stay tuned.

Saturday, November 4, 2017

Dynamics 365 for Finance and Operations Certification Exams

Microsoft finally has new certification exams out. There are new ones that are usually released without any major announcement or fanfare. You basically have to keep your eyes peeled on their official list to see new ones when they come out.

If you are using Dynamics 365 for Finance and Operations Enterprise Edition, you probably noticed there weren't any certifications for that. Microsoft had plenty for the other D365 exams, but nothing for FOEE. 


Here is the official list. Check it often!

currently, these are the exams out there:
  • MB6-894: Development, Extensions and Deployment for Microsoft Dynamics 365 for Finance and Operations [GETTING RELEASED 12/5/2017 apparently]
  • MB6-895 - Financial Management in Microsoft Dynamics 365 for Finance and Operations
  • MB6-896 - Distribution and Trade in Microsoft Dynamics 365 for Finance and Operations
  • MB6-897 - Microsoft Dynamics 365 for Retail





Monday, September 11, 2017

Find product attributes and values for an item in AX 2012 via X++

In the event you need to see what the product attributes are while debugging some stuff, run the below script.

This is for AX 2012 but probably works for D365, I'm not sure. Give it a shot.

It literally takes an item id and gives you the attributes and values in those attributes. Pretty straight forward

static void DAXGetProductAttributes(Args _args)
{
    EcoResProductAttributeValue ecoResProductAttributeValue;
    EcoResAttribute             ecoResAttribute;
    EcoResValue                 ecoResValue;
    ItemId                      itemId      = 'A10021'; // This is a sample Item Id
    InventTable                 inventTable = InventTable::find(itemId);

    while select RecId from ecoResProductAttributeValue
         where ecoResProductAttributeValue.Product   == inventTable.Product
         join Name from ecoResAttribute
             where ecoResAttribute.RecId                 == ecoResProductAttributeValue.Attribute
             join ecoResValue
               where ecoResValue.RecId                     == ecoResProductAttributeValue.Value
    {
        info(strFmt("%1 - %2 - %3", InventTable.ItemId, ecoResAttribute.Name, ecoResValue.value()));
    }
}

Saturday, June 3, 2017

MPOS Error: Creating device token failed

A little nugget of information:
In  Microsoft Dynamics AX 2012 R3 MPOS, if you receive an 'Creating device token failed' error when attempting to activate the POS or while doing transactions, you'll be halted from proceeding with what you are doing. The error will also say "- The value of Content-Type on server response is not supported."

A common culprit to this is that there is another terminal being used with that exact same Device profile.

The MPOS application can only be installed and activated on a per user basis, not for all users logging into a machine. So Sally can't log into the PC with her credentials and then the MPOS with her information while Tommy doing the same thing only under his PC AD credentials.

As a best practice, the users should all log into a generic account for that store/terminal where the MPOS is activated and then log into the MPOS under their own IDs.

UPDATE: You can have users log into their own respective accounts and have different MPOS Terminal instances. But they are not the same terminal.

Check the different users and see who is logged into what from a PC (Not POS) perspective as well as anyone in the backoffice or other stores.

Here is a scenario in which this could occur:
Someone may have accidently registered terminal 2 at store 52 as Terminal 2 at store 25, which would cause the store25 terminal 2 to get this error. Also, the person activating the device in the self-service model could've installed/activated the device under THEIR AD account, not the proper stores AD account.

Hopefully this helps!