Summary
With Nerdio’s Shell Apps feature, you’re able to script the install and uninstall of applications that were previously unscriptable (i.e. QuickBooks).
This can be a game changer for Tax Season where you’re needing to install updated versions of QuickBooks on a weekly (sometimes daily) basis.
This post covers the steps to add the QuickBooks Shell App to your customer’s environment.
NOTE: At the time of writing, there are the following limitations:
- This currently only supports Enterprise and Premier editions of QuickBooks for the last 3 years
-
There is NOT a way to do an in-place upgrade of QuickBooks with this Shell App.
You will need to follow the Updating QuickBooks from a Shell App post to configure updates. - After install, someone will need to manually logon to the session hosts and choose the Industry-Specific Edition of QuickBooks
- You need separate Install and Uninstall deployment policies
- If you want to update multiple versions of QuickBooks (i.e. Enterprise 2024, Premier 2023, etc.) you will need to create multiple versions of the shell app and customize the inherited variables in the Shell App (more on this in the prerequisites)
Prerequisites
-
A ShellApps repository must be created at the MSP Level (Settings>Integrations>Unified Application Management>Add>Shell Apps (repository type)
NOTE: You’re currently limited to one Shell App repository per MSP Tenant.
See UAM Shell Apps for more info
-
Inherited Variables created at the MSP level (see MSP Level Variables)
NOTE: If these variables do not exist, you will not be able to import the Shell App.
The out of the box functionality requires the qblicensekey and qbproductkey inherited variables with the following default values
qblicensekey = ****-****-****-***
qbproductkey = ***-***
NOTE: The values are just place fillers and don’t really matter what characters you use. 🙂
-
If you’re needing to update multiple versions of QuickBooks, you will need to create multiple variations of the variable and update the ShellApp with the corresponding variable when you import it
Examples:
qblicensekeyent23
qbproductkeyent23
qblicensekeyprem22
qbproductkeyprem22
Instructions
- At the MSP level of NMM, expand out Applications and choose Shell Apps
-
Click the Add drop-down and choose Add from Nerdio Library
- Select QuickBooks from the Name drop-down
-
Click OK
Modify the Shell App Name and Description
This is an optional step.
If you’re going to be installing/uninstalling multiple versions of QuickBooks, it’s best to make signify which version of QuickBooks this Shell App will be used for.
- Click the General tab
- Edit the Name to reflect the version of QuickBooks
- Edit the Description to give more details about the Shell App
-
Toggle Public to be On
Modify the Detection Script
- Select the Detection tab
-
Modify the qb_version_name variable to reflect the correct version of QuickBooks
NOTE: The double quotations marks MUST be there. -
Modify the qb_version_year variable to reflect the two digit year of the correct version of QuickBooks
NOTE: The double quotations marks MUST be there.
Modify the Install Script
- Select the Install tab
-
**OPTIONAL**
If you have multiple versions of the QuickBooks, you will need to adjust the qblicensekey and qbproductkey variables to match what you created in the prerequisites section - Update the qb_version_name variable to match the value you set on the Detection Script tab
-
Update the qb_version_year variable to match the value you set on the Detection Script tab
NOTE: Because there are multiple references to the code, right-clicking on the value and choosing Changing All Occurrences can save future headaches and head scratching when you forget to update a variable. Alternatively, you can use Ctrl+H (Find and Replace) to update all of the values.
Modify the Uninstall Script
- Select the Uninstall tab
-
**OPTIONAL**
If you have multiple versions of the QuickBooks, you will need to adjust the qblicensekey and qbproductkey variables to match what you created in the prerequisites section - Update the qb_version_name variable to match the value you set on the Detection Script tab
-
Update the qb_version_year variable to match the value you set on the Detection Script tab
NOTE: Because there are multiple references to the code, right-clicking on the value and choosing Changing All Occurrences can save future headaches and head scratching when you forget to update a variable. Alternatively, you can use Ctrl+H (Find and Replace) to update all of the values.
-
Click Import
NOTE: If the Import button is greyed-out, it’s likely you haven’t completed the necessary prerequisites or have a typo in one of your Inherited Variables in the Install script.
Assign the Shell App to the Account(s)
After you have Created the Shell App, you’re ready to assign it to the necessary account(s).
- Choose Unified Catalog
-
Search for QuickBooks
NOTE: Optionally, you can filter by Shell Apps in the Repository drop-down. -
Choose Assign from the drop-down for the App
- Click Add Assignments
- Choose All or the desired account(s)
- Click Confirm
-
Choose Apply and close
-
Confirm you want to make the assignments when prompted
Set the Account-Level Inherited Variable Values
Once you have imported the Shell App and Assigned it to the account(s), you’re able to get it setup for the account.
The first step is to set the actual values for the Inherited Variables you created at the MSP Level.
See Account Level Variables
Schedule the Deployment Policies
After the Shell App is assigned and you’ve created the variables, you’re ready to schedule the deployment of the shell app.
See Deploy Applications for more information on creating the deployment policies.
Comments (1 comment)