Every application developer has to deal with multiple clients using various versions of Acumatica. And of course, as a result, challenges arise on how to manage them in a single development environment. In older ERP (Enterprise Resource Planning) implementations, this required a large set of Virtual Machines or a Windows Hyper-V platform where you clone or build operating systems to create individual virtual environments for each client. As you take on more clients and more upgrades occur, this becomes more difficult to manage and is unsustainable over time.
In my first post, back in November of 2021 on setting up local instances of Acumatica, I received some really good feedback and thought it would be valuable to address those in an additional post on the subject. I’ll address all the various topics that came up as a result, here in Part 2.
Snapshots
Let’s review the scenario of when loading the correct version of snapshot with the version of the Acumatica instance. For developers working locally, needing the latest data from production, this can be a common occurrence. When a client does a build upgrade, sometimes the local instances get left behind in build versions.
If the snapshot is XML-based, you can find a file named Manifest.xml and open it in Notepad or your favorite text editor. See the version, change it, save and put it back into the snapshot.
<packageManifest> <generalInfo version="22.102.0054" type="Erp" date="04/22/2022 16:47:51" name="Sanbox_2022-04-22_16-47" description="ACU 20220422" exportMode="Full" host="" master="" IsSafe="True" Size="24809784" customization="SalesDemoDashboards2022R1" /> </packageManifest>
When creating the snapshot, be sure to set the export format to XML. Then make sure the data is safe by scheduling a lockout of the system under the “Apply Updates” [SM203510] screen.
It’s safe among versions of the same release but not between major releases.
Another regular occurrence can be when the snapshot is too big for a local instance. This is a friendly reminder to review the blog post on snapshot restrictions here:
/blog/snapping-the-acumatica-snapshot-restrictions/
I find loading up snapshots via the wizard a lot more reliable in the long run.
ERP Installation
Acumatica’s Debugger Tools is useful for a local developer instance when installing Acumatica. It gives you the necessary pdb files that allow you to troubleshoot code at the Acumatica Framework level. Additional switches are available when you install from the command prompt.
From there, we can use the following handy command (run command prompt as Administrator) to do a silent install of Acumatica.
You can add the parameter ADDLOCAL=DEBUGGERTOOLS to the command line.
For example:
msiexec /a "D:\AcumaticaInstallers\AcumaticaERPInstall21.116.0049.msi" ADDLOCAL=DEBUGGERTOOLS /qb targetdir="D:\Acumatica ERP\Acumatica ERP 2021 R1 21.116.0049"
The /a switch specifies administrative installation. The /qb switch invokes a quiet install with a basic interface. We need to specify the targetdir to be a location with the Acumatica version. The installation of Acumatica is all self-contained which means that there will be no issues regarding any outside dependencies.
You can potentially use the Command Line tool to install the Acumatica instance:
https://help-2021r2.acumatica.com/Help?ScreenId=ShowWiki&pageid=b4770bd0-deda-403a-aeb6-e3ddbbbfabb1
Hardware Requirements
When we configure laptops for our newest developers, we typically steer the IT Team to give them the following configuration:
- i7 processor
- Minimum of 32 GB RAM.
- 2 SSD Drives (one for OS and one for the data)
- NVMe drives the offering the fastest throughputs at the moment
The installation guide for Acumatica only mentions 2 cores, 3.5 GHz. There is no mention of the i5 or i7 processor which can spark a series of conversations among the developer community.
https://acumatica-builds.s3.amazonaws.com/builds/21.1/PDF/AcumaticaERP_InstallationGuide.pdf
Based on this link (https://www.guru99.com/i5-vs-i7.html), we can justify the need for i7.
Core i5 line is ideal for business users or home users who want to use a computer for office work or want to do regular gaming. However, If you want your system to be almost like a server with supercomputing power, then you must opt for the system with the i7 Processor.
Visual Studio
Visual Studio 2022 also requires a significant amount of resources. With VS2022 being 64-bit, we will need to visit the hardware requirements here as well:
https://docs.microsoft.com/en-us/visualstudio/releases/2022/system-requirements
A quad-core or better processor is recommended.
In the latest Acumatica Developer Conference, Dmitrii Naumov mentioned that once we move to .NET Core, there may be advantages for performance improvements while developing. One way to take advantage of quicker compile times using Visual Studio is to use the Hot Reload feature recently introduced in VS 2019 (version 16.11 or newer) and VS 2022. It allows you to “modify your app’s managed source code while the application is running”. As suggested in Dmitrii’s session, this can work well on smaller Acumatica customizations but not against the larger ones they implement. You can watch his session by going to the DevCon landing page.
As a reminder, the latest version of the Visual Studio extension Acuminator simplifies development with the Acumatica Framework and is now supported in Visual Studio 2022.
Summary
Building instances of Acumatica locally help with troubleshooting client issues, testing integrations via the REST API, and testing your customizations. As partners of Acumatica, we have several clients on a number of product instances and we need to ensure quality control throughout the process.
I hope this post will help you with installing and managing multiple instances of Acumatica, thus making your developer life just a little bit better. Please review my first post on this topic and for additional tips, please review Acumatica’s Onboarding New Acumatica Developers page.
Happy Coding!