Friday, June 15, 2012

Retail Solution for AX 2012 - Deployment (Part 1)

Scenario

Big Chain Stores is opening up a retail store in City Center and they want to consume Retail solution comes with MS Dynamics AX 2012. At this point, they only have one POS terminal in the store and they do not want to have an offline database for that terminal. All they need is to have a shared database residing on Store SQL machine. In this scenario, it is assumed that all the required information like customers, items, prices, sales tax etc. are already there in AX. 

Store


·         Make sure that SQL Server 2008 R2 is installed on Store machine
·         Install Retail Store Connect on Store machine (in my case same machine as the SQL is installed)
o   Retail Salt Utility will automatically be installed
·         Install Database Utility on Store machine
o   Create Store DB by providing names in SQL database and machine fields
o   Fill in Store ID, Terminal ID and Data Area ID fields with dummy values for now. However, later you should add records in Retail HQ (in AX) for the same values.
·        Please note that no “Microsoft Dynamics AX for Retail Offline Sync Service” is available on Store machine. This service is used to synchronize POS terminal offline database with Store database and get installed on POS terminal machine when POS terminal component is installed
·        Now you need to create the Store Connect message database in Store SQL server. For that, open up the Retail Store Connect Settings utility and click on Add. The system will ask you for server name and database name. Enter the server name and message database name (that will be created). Enter the account details which in my case were the user through which I accessed the Store machine. Make sure to enter the user name as domain\user
·       Once the message database is created in SQL, make sure the tables are there. Now select the Store Connect Service instance from Retail Store Connect Settings dialog and start the service.

HQ


·         Initialize the Retail HQ from Retail Parameters in AX



·       On both profiles, select the Retail Transaction Service profile and Retail Store Connect Upload options. You can create one upload option for both profiles, however, select different Retail Transaction Service profile in both store connect profiles. After you do this, send the configuration to respective servers. In Store Connect message database under SQL server, check the SCMMonitoringConfig table and it should have a record. This must be true for both HQ and Store SQL message databases.
·       Now you need to create the Store Connect message database in HQ SQL server. For that, open up the Retail Store Connect Settings utility and click on Add. The system will ask you for server name and database name. Enter the server name and message database name (that will be created). Enter the account details which in my case were the user through which I accessed the Store machine. Make sure to enter the user name as domain\user.
·        Once the message database is created in SQL, make sure the tables are there. Now select the Store Connect Service instance from Retail Store Connect Settings dialog and start the service.
·        Create AOS profile and use the Retail Store connect profile for HQ that you created in previous step in Retail Store Connect field. Make sure that you test the connection.
·        Create Database profile, select Store SQL machine name as Server name and Store database you created earlier as Database name. Select Store Connect profile that you created earlier for the Store in Retail Store Connect field. After creating the profile, test the connection.

·        Create the Store record using Retail Stores listpage in Retail module of AX. Name of the store should match with the Store ID that you specified in Database utility on Store machine.
·        Create hardware and visual profiles in Retail module. Use F1 help to create these profiles and more information.
·        Create POS Terminal record using Retail>Setup>POS>POS terminals form. The Terminal Number must match with what you have provided in the Terminal ID field specified in Database utility on Store machine.
·        Enter any other required information in HQ like hardware profiles, card type, till layouts etc. as mentioned in the official deployment guide by MS.
·       Check that a Distribution location (Retail > Setup > Retail scheduler > Distribution locations) is created corresponding to the Store record. Make sure to select the connection profile of type “Database” for the distribution location record. From Functions, select “Read design with Retail Store Connect” and accept the default values in following dialog. Click Ok. This will list down the tables in the Location tables form for this particular location. Now test the connection and send the configuration to Store server.
·       Access Distribution location list from Retail>Setup>Retail scheduler>Distribution location list and add the distribution location created in the previous step in Distribution locations grid.
·        Now open up Distribution schedule form from Retail>Periodic>Retail scheduler>Distribution schedule. By default, you should get the ‘A’, ‘N’ and ‘P’ jobs listed in the form.  Run all the ‘N’ jobs directly one by one. After all the jobs are executed, you should get the store database populated with data from HQ. Make sure you select the correct AOS connection profile against each job before running it. You will get a success message when a particular job is executed as shown below:


After the jobs are executed, the store database is populated with required information. Next step is to deploy the POS terminal on a separate machine (other than store). Wait for part 2 of this post...............

Friday, June 1, 2012

Domains in AX are no longer used

In AX2009 and previous versions, domains were used by administrators to group multiple companies and then assign user permissions to those companies. In AX 2012, the concept of Domains has been deprecated. Instead an Organization Hierarchy whose Purpose is Security is used.