Sunday, April 2, 2017

Modern POS Navigation Hierarchy Setup

The Modern POS is great. I really like it. But there are a lot of new setups in relation to the previous 'Enterprise POS'. One of these features is the POS navigation hierarchy.

There is only one 'Retail Product Hierarchy' in AX but there can be multiple 'Supplemental Navigation Hierarchy' records you can configure. These supplemental hierarchies can be attached to your store POS.

If you wish to do this, you can do it through the 'Channel categories and product attributes' form. The user should select their appropriate channel and change the 'Category hierarchy' field to the hierarchy of their choice.

Some times you will make this change and switch over to the POS and not see the hierarchy immediately. You will need to make sure to run the appropriate distribution job to push the data to the store, then make sure the store refreshes this hierarchy. If its not done refreshing, it may show up blank initially. Waiting will usually resolve this issue. I am not aware of a way to speed this process up at the moment.

Figure 1 - The Modern POS navigation setup

Figure 2 - The setup for the POS hierarchy

Wednesday, March 15, 2017

Dynamics 365 for Operations - Determine table/field/datasource name on form and query of data

Things have changed since AX 2012 R3 in regards to navigation. The days of navigating to the AOT from the front end are over. The fluid connection before front and back has been separated, for good reason. But that has created some challenges in the new navigation.

If you see a field in Dynamics 365 for Operations and need to navigate out to it, you can do the process in Figure 1 below. You right click on the field of interest, hover over 'Form information' option, and then click the 'Form Name: ....' option.

You'll see the 'Form name' window appear which contains a wealth of information. It shoudl be fairly similar but you will notice a few additions. In Figure 2 below, you'll see:

  • Control Information
    • Datasource = the name of the datasource (not the table name but generally is. The table name 'should' be fairly similar. You'll want to look for the query statement to confirm)
    • Data field = the name of the datasource field (generally table field name)
  • Form Information
    • Form name = the form that the menu item is tied to
    • Menu item name = the name of the menu item as it is in the AOT
    • Menu item display = the type of the menu item (display/output/action)
  • Query Statement
    • The query for the datasource. This is nice to see on the front end. No need to dig for it in the back end with the QueryBuildDataSource in code. 

Hope this helps!

Figure 1 - Navigation to the form information 

Figure 2 - The information on the form information

Monday, March 6, 2017

Dynamics 365 for Operations Error - 'The user is not associated with a Worker. You need to associate the user with a Worker and then try again'

Hello Blogger, my old friend. 
I've come to post to you again. 
Because of issues softly creeping
Left its chaos while I was sleeping
And the anxiety that was planted in my brain
Still remains
Within the sound of typing...

The issue
I was attempting to create a new catalog in Dynamics 365 for Operations and got the error message 'The user is not associated with a Worker. You need to associate the user with a Worker and then try again' (Figure 1). I had associated my user with a worker identity which is required for the POS activation process but wasn't sure what this was.

The fix
You need to associate a 'person' to your user (Figure 2). So navigate to System Administrator > Users > [your user]. You'll probably notice that the Person field is missing. Enter into your user (as I couldn't edit this from the grid), click 'Edit' in the toolbar. You'll be able to click the drop down of that field and see the users in the system (Figure 3)

I'd recommend that you make this the same user as the one with the associated identity you use in retail.

Hope this helps!!

Figure 1 - The error 'User is not associated...' 

Figure 2 - The missing worker association

Figure 3 - Select the worker

Friday, January 20, 2017

Dynamics 365 for Operations Filtering grid changes from AX 2012

Those who have used Dynamics AX for years may be experts in the ways to filter data via a grid and export to excel for ad hoc reporting. Its a significant value add process which many cannot live without. Then you jump to Dynamics 365 for Operations and its likely blank stares when it comes to filtering...

The client experience has changed dramatically from AX 2012 to Dynamics 365 for Operations (use #D3FO on twitter for this name). From a 32-bit desktop client to embedded web client. That transition required form controls to change and thus how filtering occurs.

So the ultimate question: How do you filter grids in Dynamics 365 for Operations?

Refer to the following documentation for these changes: https://ax.help.dynamics.com/en/wiki/filtering-in-dynamics-ax-7/

This documentation is fluid so please check it out for the latest information. The below is reposted and summarized for point in time reference and quick reference (for me).

Here are the operations for using a the Filter Operator vs the AX Query Syntax method (e.g. "advanced query" or "Crtl+G on grid and 'X..Z'").

Figure 1 - Filter expressions 'Filter Operator' vs 'Dynamics AX query syntax'

Its very important to note that '*' will literally look for an asterisk in the name. So you don't need that. The commands are more literal and in a natural language rather than syntax. It may seem to take longer to adapt but you'll adapt quicker than you think if you go into it with an open mind.

Hopefully that helps!

Saturday, January 14, 2017

Dynamics 365 and you for 2017: Helpful hints, insights, and resources

Dynamics ERP friends,

Microsoft is on the move quickly with their ERP systems. Time is changing and so is the Dynamics world. Here are just a few things I want to note for this year. This is my informal, full of information/opinions/suggestions/humor note for 2017. 

Big Milestone
First and foremost, I greatly appreciate everyone who reads my blog even in passing. Its a fun and creative outlet for me to grow and the fact it helps people helps motivate me to keep it going.

I recently hit 1 million page views on my blog. Yay! [smiley face with party hat]. No clue what I'll hit next year but I'm excited to find out.

New Roadmap Portal
For roadmaps in the past, there would be an image that Microsoft would often show at keynotes at Convergence which would get passed around and reposted. It was a static image with Microsoft working being a veil of mystery.

While the above still exists, there is now an interactive roadmap that shows more than just concepts; it provides deep insights into the entire Dynamics 365 suite. https://roadmap.dynamics.com/ You'll want to bookmark this site and keep up to date on what all is going on.

It breaks down 'What's New', 'In Development', and 'Previously Released' features for all of the Dynamics 365 products and modules within those products. Keep in mind there are two editions now: Dynamics 365 Enterprise (D365 for Sales, D365 for Customer Service, D365 for Field Service, D365 for Project Service Automation, D365 for Operations) and Dynamics 365 for Business (Dynamics 365 for Financials [SMB]). The Enterprise/Business is just a way to bundle the products between Enterprise level solutions and solutions for the SMB market.

Searching for things via search engines
Culturally, we have adopted 'Google' for searching much like asking for a 'Kleenex' for a tissue or a 'Coke' for a soda. 'Did you Google it' is significantly more common that 'Did you Bing it?'. I use 'Bing' in my demos and people snicker with the fan boy jokes flying. For better or worse, that's just how it is.   
Rumor has it, you will find more data on Dynamics 365 using Bing vs other search engines due to how Microsoft optimized the search engine and metadata or something. I don't know the details but its what I've heard from multiple people in different departments at Microsoft. My experience over the past 6 months verifies these claims. Maybe I do a side by side analysis post later this year??

Product education resources
While we're on the topic of search results, MSDN and TechNet were great resources for the Dynamics AX products. Give https://ax.help.dynamics.com/ a look. It is where all the newest information is going to be found and maintained. LCS is also a great spot to research potential issues without opening a ticket while also providing valuable tools for the lifecycle of your implementation.

One interesting note is its 'ax.help...' but AX is not the branding anymore, even though it does still cover AX products. I'm ok with that since my alias is DAX Dude and a number of companies have AX embedded in the name. I refuse to become D3FO Dude (pronounced as 'Dee-foh Dude'?). I'm officially DAX Dude, who works on D3FO.

Mobility and resource development
Mobility will be so important going forward. We are already seeing the beginning pushings for it in the Dynamics space. Cloud/browser based ERPs add significantly more value with mobile applications to supplement functionality. 

I'd recommend getting up to speed on how/why companies will use mobility and what technologies to start growing resources for. You can buy great resources for a premium, but if your company wants homegrown experts, the one thing you can't buy is time. Invest in your employees. Give them the resources to grow with the technology and innovate. Its one of the things I really love about the company I work for. Its not cheap but its worth it. Blue Horseshoe is hiring top talent btw ;-) Inquire within

Product Specific naming
Make a resolution to only refer to the products by the full name ('Dynamics 365 for Operations' or some abbreviation like 'Operations', 'D3FO', 'D3 for Ops', 'Ops 1611 (the version)', etc. Just saying Dynamics 365 will not fly. I talked to a sales person last year who really want to talk to me about a great ISV add-in for 'my Dynamics solution'. The conversation was literally: "Great! Which products is it for?" "Y'know, Dynamics... the Microsoft product?" [Looks at me all sketched out] "I'm good thanks! I'll check it out online" [Grabbed branded pen, product flyer, and walked away].

Also, the product should not be called AX 7 or AX when referring to the new version. This is the same transition as from Axapta to Dynamics AX. Now its Dynamics 365 for Operations. All the cool kids are calling it by the new name. You don't want to be the dude who says Axapta 2012 do you? Coincidentally, that's the same guy who orders the gluten-free wine or a gin and root beer with a celery stick at the bar... Don't those sound yummy? Don't be that guy :-)

Thanks everyone and have a wonderful start to 2017!!!

Look forward to seeing old friends and making new ones!


Friday, January 13, 2017

D3FO/AX 2012 Password field display control encryption explanation

I was in an internal meeting where new consultants were discussing functionality in the Dynamics 365 for Operations. One of the 'off the cuff' topics was that they were not sure why the password entered, which was three digits, looked like way more characters. Everyone in the room was assured that the password was saved correctly behind the scenes.

Its important to know why the system is functioning the way it is. Thought I share some info.

The reason why this is the case is that form object masks the password and encrypts it when its entered. The presentation of the field is a generic 'mask' as to not give any indication about what characters there are on the field.

Certain pieces of information can make things easier to hack such as:

  • Number of characters
  • Valid alpha-numeric characters
  • Valid special characters
  • Personal information about the user (birthday, street address, full name, pets, first date location, etc). 
  • Does the person care about security (will have a bad password more than likely...)
To prevent giving any information on the password, its a best practice, which is reflected in the control, to provide as little data as possible to the end user. If the field masked only the characters which were entered, I would know exactly how many characters I need to guess. Now its like playing a more complicated version of Wheel of Fortune with no characters revealed.

Also, you can't just go into the AX DB and pull the data out. Its stored encrypted. Nice try.


Figure 1- Password entered before it is saved into the DB
Figure 2 - Password entered after it is saved into the DB (field is not showing anything about data)

Thursday, December 15, 2016

AX Retail - Require the user to enter in a price for a zero priced item

In the event you have a zero priced item (intentionally or unintentionally), you may want the user to key in the price if its zero. This can be setup store by store and is located in the POS Functionality Profiles record.

Requiring the zero priced item to have a new price can be helpful at the beginning of a project, but can also create a lot of headaches so make sure you have a process in place to identify zero priced items rather than rely on this setting. It shouldn't be used as a catch all magic button for those issues.

I always struggle to remember where the setting is so I'm posting about it for next time I put it in the search engine.