Posts

Showing posts from 2017

Retail server DBCheck failing

After applying a MS update on our environment the retail server DBCheck failed when trying to activate MPOS or performing a health check like below. https://usnconeboxax1ret.cloud.onebox.dynamics.com/healthcheck?testname=ping This problem was due to user/role permissions being dropped and solved by adding the following user and role association. Also EXEC   sp_addrolemember   'UsersRole' , 'axretailruntimeuser' ;

CDX stopped working after update

After applying a update to a TEST environment the CDX sync stopped working with the following error. System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> Microsoft.Dynamics.Retail.CommerceDataExchange.ProcessDataPackageException: Error occurred when running SqlTargetRequestHandler. ---> Microsoft.Dynamics.Retail.CommerceDataExchange.GetFullTableNamesInDatabaseException: Error occured when trying to find full table names in database. ---> 'GETAFFECTEDTABLENAMESBYCDX', database ' ', schema 'crt'.  System.Data.SqlClient.SqlException: The EXECUTE permission was denied on the object The reason for this was that the update dropped the user/role assignment in the DB. After adding the following assignments back CDX started working again . EXEC sp_addrolemember 'DataSyncUsersRole' , 'axretaildatasyncuser' ;

Implementing offline support for D365 MPOS, the details MS didn't document

Image
If you haven’t discovered it on your own these are undocumented changes you need to do on top of the MS provided steps(See StoreHours example) to get offline custom entities actions working. Update SDK namespace Update the namespace for the C# proxy in RetailSDK_Dev\BuildTools\Microsoft.Dynamics.RetailSdk.Build.settings to match SDK namespace. The namespace change will break the SDK compile in many places. Do a search and replace for “namespace Contoso” in your SDK to your root namespace as you specified in the settings file. Specify adapter in MPOS request In the POS service request you’ll need to make sure that entityType is specified. When the MPOS core generates the request URL it will take the entityType value and append “Manager” to try construct the URL looking for your offline adaptor manager class. If entityType is missing POS core will look for your custom entity action in the StoreOperations adaptor In the example below the request would be po

RetailSDK build error

Image
This was a build error that occurred after trying to get the MPOS debugging working and changing build target in the RetailSDK MPOS solution. Build error: Could not copy the file \\POS\App\AppPackages\RetailModernPOS_x86_Test\RetailModernPOS_x86.appx See screenshot below.  The resolution was to open RetailSDK\POS\ModernPos.sln with a text editor and restore the build target using a clean copy of the RetailSDK\POS\ModernPos.sln.