Dimension Creation in AcuPOS:
AcuPOS requires the DimensionCreation customization package to be published(only once for the instance) and then the AcuPOS build to be published to the Acumatica ERP instance. The DimensionCreation customization package creates "WORKSTATION - POS Workstation" segmented key record in the Segmented Keys(CS202000). It is required to create a "WORKSTATION - POS Workstation" segmented key before the AcuPOS publishing. This operation can be done either manually or by the DimensionCreation customization package. In the case of creating a new tenant occurs a situation when in the new-created tenant the workstation segmented key is not created but the User Profile has a Workstation ID field to be selected.
PROBLEM:
For this reason if you try to create a new tenant while the AcuPOS packages are still published you will receive the following error:
Unable to cast object of type 'IGFS.DAC.IGFSUsersExt' to type 'PX.Objects.FS.FSxUser'.
at memberwiseCloneExtensions(Users , PXCacheExtensionx] )
at PX.Data.PXCache`1.CreateCopy(TNode item,CreateExtensionsDelegate _CreateExtensions,memberwiseCloneExtensionsDelegate _CloneExtensions, List`1 _ClassFields,GetValueByOrdinalDelegate _GetValueByOrdinal, SetValueByOrdinalDelegate_SetValueByOrdinal)
at PX.Data.PXCache`1.CreateCopy(TNode item)
at PX.Data.PXCache`1.Update(Object data, Boolean bypassinterceptor)
at PX.Data.PXCache`1.Update(Object data)
at PX.Data.PXSelectBase`1.Update(Table item)
at PX.SM.CompanyMaint.PersistUser(UPCompany company, Users user, PreferencesSecurity preferences, Boolean disableSchedulers, DbmsMaintenance maint, Dictionary`2 claims, Dictionary`2 directories)
at PX.Data.Services.CompanyService.PersistCompanyInfo(UPCompany company, Boolean disableSchedulers)
at PX.SM.CompanyMaint.PersistInserted(UPCompany master, List`1 inserted)
at PX.Data.PXLongOperation.<>c__DisplayClass18_0.b__0()
SOLUTION:
For the solution we have two variants.
1. Un-publish the AcuPOS package, than create the new tenant. You must re-publish the AcuPOS packages after the new tenant has been created.
2. Disable “Point of Sale powered by IIG” feature in the Enable/Disable Features entry, than create the new tenant.
Very Important: Please publish DimensionCreation customization package before the AcuPOS in the new tenant.