[Edit, October 31, 2014] 2012 R2 and 2012 R3 use the same DevExpress components:
[Edit, January 14, 2012] This article was originally written for AX for Retail 2009. I've since done a little research on this subject with respect to the upcoming AX for Retail 2012 version. Our development team has recieved a newer build of the tools for our new version of the POS: WinForms v2009.2.110. Both of these versions are available by contacting DevExpress. Note that this new version incorporates a new installer and I'm happy to report that it no longer has the issue mentioned in this post. Gacthem and Ungacthem should not be needed moving forward!
We get quite a few questions about customizing visual elements of the POS in Dynamics AX for Retail. Most developers are aware that the POS application was built using third-party components from the DevExpress libraries, but there are a few details that you should know with respect to setting up a development environment with the DevExpress libraries.
All of the Windows forms in POS were developed using the product "DXExperience Winforms" created by DevExpress. If you plan on making any design-time visual changes to existing forms, you will need to purchase a license for this product for your developers. This can be done by visiting the DevExpress web site (www.devexpress.com). Although you do not need the DevExpress tools to create new POS forms from scratch, we strongly advise that you use them to keep a consistent look and feel with the rest of the product.
Once you have purchased the licenses, you will need to request a special build that was provided to the Dynamics AX for Retail product team: “DXperience WinForms Installer (without APTCA, Digitally Signed assemblies) v2009.2.109 / 13-Nov-2009”. If you open a support case with the DevExpress folks (https://www.devexpress.com/Support/Center/Issues/CreateIssue.aspx?issuetype=question) and tell them what product you are developing against, they will know what you need.
Unfortunately, there is a bug in the installer for this build of DXExperience Winforms: it will fail to install on any machine that has the .Net 4.0 Framework installed. For Windows 7, this pretty much means anything but the most vanilla box with no updates whatsoever. Because of this, these are the steps you need to perform to get everything installed correctly:
Once you have everything installed properly, you should see this when you open an existing form:
Which looks a lot nicer than this series of stack trace errors:
One additional note with respect to DevExpress components. If you are modifying a POS Plug-in that contains a Windows form (e.g.,the Customer plug-in), but are not making any visual changes to any forms in the plug-in, you do NOT need to purchase or install the DevExpress design-time library. You can just compile your customized version of the plug-in using the run-time DLLs that get installed with the POS and the form will look and function just fine. For instance, you could make changes to the AuthorizeCustomerAccountPayment() method in the Customer.cs file, and not worry about anything in frmCustomerSearch.cs.
I am wondering if it is the same build that I should request when modifying the soon to be released Ax 2012 For Retail?
Thanks for the question, Lars. I have updated the post with a note about the upcoming AX for Retail 2012 release.
In my case I need to create some extra Windows Forms to pop up when customer credit limt exceeded.. Can I do this in Normal Windows Forms ... and add it to the the Plug-in Project...
Note:- I do not want to modify the existing screens.. I just want to add some other forms and make then popup based on some condition in the Customer Payment Logic...
Thanks In advance...
Venu - you can definitely create standard Windows Forms and open them directly from POS plug-ins. The only thing you need the DevExpress license for is to make the forms a consistent look and feel with the rest of the POS application. If this is not important then you'll be fine without it.
We want to be able to do coded UI testing against the POS but the version of DevExpress used has some issues with its MSAA compatability that prevents it. I think it is particularly related to the XtraLayout control used in the POS as mentioned in this support post:
Do you know if and when there would be another drop of the POS that may use the updated DevExpress components that would in turn allow us to perform this coded ui testing?
Hi Simon - that's a very interesting thread. I'll share it with the development team to see if there are any plans on picking up a newer version of the DevExpress components in a future release. This is likely not something that would be included in any hotfix, but is possible for a Cumulative Update or (more likely) a Feature Pack.
I want to add Button on Retail transaction . How can I customize that page
shane can u provide me few customization in ax 2012 ?
Salman, Vinayaka: could you please provide more details on your requests? Thanks.
I want to add some custom fields to recall transaction grid. Can u please guide me on this?