Applicable to Dynamics AX2012 version 3.13 or older.
To enable the handheld clients to be able to access the Tasklet Factory WMS service, it is necessary to grant the client access to this service. The following describes how to install and configure this access in Microsoft AX.
Dynamics AX 2012 installation, having access to the Microsoft Dynamics AX Management shell (PowerShell).
Application Integration Framework (AIF) is installed using IIS.
Hint: When installing the IIS Role – install “IIS Management Scripts and Tools” (found under “Web Server(IIS)/Management Tools”). The tools are used by the AIF installation to configure the Web server.
Install AX Model Process
AX Models are imported using the Microsoft Dynamics AX Management Shell. This is a PowerShell with AX related commands available.
Ideally, the PowerShell is started on the AOS that hosts the environment you want to install in. This is typically the DEV environment.
Important: If multiple environments are hosted on the same server, you must make sure that you target the environment you expect.
The top level steps in the process are:
- Copy the signed AX model file
Copy the signed AX model file containing the "TF Mobile" model to the server where the installation is performed. The model file is supplied by Tasklet Factory.
- Stop the AOS(s)
It is a best practice to stop the AOS(s) before importing the model.
Use the "Online Users" screen in AX to determine if you are alone on the server.
Install the AX Model
Start the AX Management Shell and run the command to import the model:
This will import the model in the VAR layer and push any conflicts into a new model in the VAP (the patch layer for VAR)
It is expected that the menu will conflict.
- Restart the AOS(s)
Correction for Dynamics AX2012R3 CU8 or Newer
A method in AX must be changed if you are running CU8 or newer.
If the method signature looks like [ public static TransDate getDateInvent(Common _record) ]
It must be changed to [ public static client server TransDate getDateInvent(Common _record) ]
Recompile AX Application
Do a full recompilation + CIL compilation + DB synchronization
Since AX2012R2 CU7 it has been possible to recompile the AX application in multiple threads. This will reduce the compile time from hours to minutes.
The expected multi threaded compile time is about 10-15 minutes.
See http://msdn.microsoft.com/en-us/library/dn528954.aspx for details.
The CIL compilation still needs to be performed from the AX client.
The DB synchronization is also performed from the AX client.
Setting up Dynamics AX
This section describes the tasks that are performed once per AX installation.
Add Mobile WMS Menu
Start Dynamics AX, open the development environment. In the AOT, open the “Menus” node.
Find the “Main menu”.
Drag the menu “Mob” into the “Main menu”.
Save the changes.
Deploy Service Group
Unfold the “Service Groups” node.
Find the “MobService”, right-click and choose “Deploy Service group”.
This will do two things.
- Create a “Service operation” called “MobDocumentService.submit”.
- Create an “Inbound port” called “MobDocumentService”.
This port cannot be used, because it has a wrong adapter type.
So it must be replaced.
Verify Web Site
Open the “System administrator” menu.
Verify website is created (this is done as a part of AIF installation).
Open “Setup / Service and Application Integration Framework / Web sites” menu.
Click “Validate”, and verify the “Info-log” that there is no errors.
If you create your own website, remember “Virtual directory share path” and “URL” must not end with a “/” nor “\”.
Setup "Inbound Port"
Open “Setup / Service and Application Integration Framework / Inbound ports”
Find the “MobService”, deactivate and delete it.
Create a new “Inbound port”:
- Port name “MobileDocumentService”
- Adapter “HTTP”
- URI Select the preferred one.
- Expose service operations “MobDocumentService.submit”
- Process requests in parallel Checked
- Validate document XML Unchecked
- Replace existing documents on create Checked
Save the “Inbound port”. Do not activate just yet. First we need to configure the adapter.
Click the “Configure” at adapter “HTTP”.
For both “Bindings/basicHttpBindingWithWindowsAuth” and “Bindings/wsHttpBindingWithWindowsAuth”,
the “MaxBufferSize” and “MaxReceivedMessageSize” must be corrected to be suffient enough.
Default it is 64Kb, adding two zeros “00” – should make it large enough.
Close the editor and click “Yes” to save the changes.
Back in “Inbound ports”, click “Activate” and verify the “Info-log” that there is no errors.
When using Mobile WMS the user must have below roles assigned.
Machine Operator (Report As Finished)
Machine Operator (Report As Finished)
|Full rights to Business Connector on the user groups.|
Based on the user roles required when using Mobile WMS, you can assess which license is needed. Learn the latest definitions from Microsoft by clicking the link here:
The short version is Operations-Activity or Operations-Device licenses will cover these functions listed below.
|Shop Floor||One device used for manufacturing shop-floor functions:|
|One device used for warehousing functions:|
Solving Installation Problems
These problems are commonly seen.
Possible cause / How to solve
The Mobile WMS client can connect to the service (get an error of result is not in “text/xml” format)
The AIF/Webservice is not running, or the app.config does not point to it. (An error message from IIS is not in “text/xml” format).
If not – try to disable/delete the “Inbound port” and create it again. See “Setup Inbound port”.
If yes – start web-browser on mobile device and verify the address works.
Mobile WMS device connectes – but nothing happens
Check the app.config points to a correct company in AX.
The Mobile WMS – can connect. (resolve host)
Check the app.config file – the address is wrong or the device can’t access the address.
Menu is empty
The user is allowed to login – but is not assigned to a user group with any menu setup.
Check that the table ‘MobDocumentAccessRights’ is empty.
Pick/Receive is choosen – but nothing is shown
Check if the Warehouse dropdown – shows any warehouses – the user (group) is not assigned any warehouses.
On the page: