Saturday, December 19, 2015

A simple customization in MPOS (Blank Operation) with AX7

Hi All,

I recently had to add a Blank Operation to Modern POS (MPOS) to open a url from MPOS.

Blank Operation as you may already be aware enable you to extend Microsoft Dynamics Retail for POS by adding custom logic that can be triggered from the Retail POS Register buttons. The way to implement Blank Operations in MPOS  is different from Enterprise POS as MPOS is a modern app as compared to EPOS which is a windows forms based app.

So lets explore a very simple customization i.e. we want to open a URL on triggering a button from MPOS.

1. We would need to start with AX to add a button to the layout of MPOS. If you do not want to disturb the standard layouts its better to copy one of the existing layouts and then modify it using the designer. Please note the designer only opens in Internet Explorer so it will save you time by not trying to open it in other browsers e.g Chrome

2. Next we need to add this layout to the Store where we intend to use it, in my case I have choosen Houston Store

3. We need to modify the screen layout in the worker setup.

Next run jobs 1060,1070, 1090 to push the worker,store configuration and the new screen layout respectively to Channel DB.

Lets run MPOS SDK code from Visual Studio and check if the changes are reflected.

As you can see we have a new button in MPOS which can be used to invoke custom logic. Currently on triggering the button gives us a message "The blank operation identifier is invalid"

Please click here to read the entire post


  1. i am starting with MPOS as tech developer, what are languages i need to learn?

  2. Hi Nagasai, from a purely MPOS perspective you need to learn Javascript, HTML, CSS and how these are used in the context of a windows store app.
    If you need to learn the end to end flow how MPOS interacts with AX you would need to understand the middle tier primarily which is the Commerce Run Time and for which you need to learn C#. Have a look at the videos in the links of this post to learn more about these.