Sprinterra is proud to introduce the Acumatica development workflow automation tool: ACUCustomizationutil. Initially created as an internal tool, its core purpose is to streamline the development process. For public access, the primary repository is available at ACUCustomizationUtil.
To deep-dive into this utility’s technical aspects, here are the documentation resources:
Engineered with C# .NET version 7, the utility integrates several packages, including:
System.CommandLine | 2.0.0-beta4.22272.1 |
Spectre.Console | 0.47.1-preview.0.6 |
Serilog.Sinks.File | 5.0.1-dev-00947 |
Serilog.Sinks.Console | 4.1.1-dev-00910 |
Serilog.Extensions.Hosting | 7.0.0 |
Microsoft.Data.Sqlclient | 5.2.0-preview1.23109.1 |
FluentValidation | 11.5.2 |
Dapper | 2.0.123 |
ACU is a CLI-based tool crafted to simplify routine tasks surrounding Acumatica customizations. It presents a command structure, categorically organized for ease of use. Each command is further detailed in the Command Reference.
It encompasses four command groups corresponding to actions with:
-?
, -h
, and --help
. A sample request for background information is provided below. Show the initial section of the help system:
PS C:\Users\aslusar> acu /?
Acumatica customization util – tool for work with customization
Copyright Sprinterra(c) 2023
Usage:
acu [command] [options]
Options:
–config <config> An option of path to configuration file [default: acu.json]
–user-config <user-config> An option of the path to the user configuration file [default: acu.json.user]
–version Show version information
-?, -h, –help Show help and usage information
Commands:
erp Work with an Acumatica ERP.
site Work with an Acumatica instance.
src Work with a source code of customization.
pkg Work with a customization package.
“`
Display the erp command’s help section, one would use:
PS C:\Users\aslusar> acu erp /?
Acumatica customization util – tool for work with customization
Copyright Sprinterra(c) 2023
Usage:
acu erp [command] [options]
Options:
–config <config> An option of path to configuration file [default: acu.json]
–user-config <user-config> An option of the path to the user configuration file [default: acu.json.user]
-?, -h, –help Show help and usage information
Commands:
download Download ERP installation.
install Install ERP.
delete Delete ERP.
Display the help system section of the src command of the make subcommand:
PS C:\Users\aslusar> acu src make /?
Acumatica customization util – tool for work with customization
Copyright Sprinterra(c) 2023
Usage:
acu src make [options]
Options:
–source Directory <sourceDirectory> Customization source items directory
–pkgName <pkgName> Package name
–pkgDirectory <pkgDirectory> Package destination directory
–mode <mode> Mode for make package: QA|ISV
–config <config> An option of path to configuration file [default: acu.json]
–user-config <user-config> An option of the path to the user configuration file [default: acu.json.user]
-?, -h, –help Show help and usage information
Configuration in ACU consists of various elements:
Detailed information on configuration elements is available in the Configuration Reference Guide and Command Reference. Please note: if using default file names, there’s no need to repeatedly specify them (--config
and --user-config
) via command line options.
Using the configuration is a breeze. Just create the acu.json file, and if required, the acu.json.user file, and position them in the root directory of the configuration. These serve as the foundation for your customized settings and preferences.
There may be a time where you operate the utility without the configuration files or need to make a one-time adjustment to an existing configuration. In cases like this, command options come to the rescue. They offer the flexibility to adapt on the fly, ensuring the utility responds to your immediate requirements.
It’s worth noting that when multiple configuration items are activated simultaneously, a hierarchy is observed. Command options always take precedence, holding the top spot. On the other hand, the acu.json file sits at the base of the priority ladder, ensuring that your foundational settings are kept unless explicitly overridden.
For example, in the configuration below, the summary value would be C:\Acumatica\Sites\AcutestUtil
But, in a configuration using only configuration files, the result will be different
D:\ACU\inst\AcuTestUtil
The philosophy behind the tool’s design is focused on user convenience and efficiency. After establishing configurations and saving them into a file, users can now rely on intuitive commands to navigate and fulfill required tasks. This efficiency means less time searching for the correct command and more time concentrating on Acumatica customization.
Moreover, we understand the value of on-the-spot assistance. That’s why we’ve embedded an interactive help system directly within the utility. No matter where or what you’re doing, guidance is a keystroke away.
Here is the Acumatica Customization Development Workflow flowchart from the first part of this series. When viewed through the lens of automation powered by ACUCustomizationUtil, the entire process takes on a new dimension.
As you can see, once tedious tasks – be it customizing the workspace or repetitive actions like building packages or extracting customization source code – have been transformed into automated processes, all thanks to the capabilities of the ACUCustomizationUtil utility.
Now you are familiar with the core functionalities of ACUCustomizationUtil – an intuitive yet powerful tool. Its seamless integration of command options and flexibility can be a game-changer for various project setups. Want to see it in action? Stay tuned for the third part, where we’ll demonstrate real-world automation examples using this tool!
Get the latest insights on exponential technologies delivered straight to you
© 2024 Sprinterra. All rights reserved.