How can I install and update QuickBooks using shell apps?
With the Shell Apps feature available in Nerdio Manager, you can script the install and uninstall of applications that were previously unscriptable. For example, with QuickBooks, this can be helpful during the tax season when you need to install updated versions of QuickBooks on a weekly (sometimes daily) basis.
Note: Consider the following notes and limitations:
Currently, only Enterprise and Premier editions of QuickBooks for the last three years are supported.
Once the app is installed, you need to manually sign in to the session hosts and select the industry-specific edition of QuickBooks.
If you want to install multiple versions of QuickBooks, such as Enterprise 2024, Premier 2023, or others, you need to create separate shell apps for each version and customize the inherited variables in each shell app. For details, see Prerequisites.
You need to set up a separate update task using a scripted action. For details, see Update QuickBooks.
Prerequisites
Before you install QuickBooks using Shell Apps, ensure you set up the following:
-
Create a Shell Apps repository at the MSP level. For details, see Unified Application Management: Manage Shell Apps.
Note: Currently, you can link only one Shell Apps repository per tenant.
-
Create Inherited variables at the MSP level. For details, see Scripted Actions - MSP-Level Variables.
Inherited Variables Limitations
The following are the limitations of inherited variables.
Variable Names
20-character limit
Alphanumeric characters are allowed
Hyphens - are allowed
Underscores _ are not allowed
Special characters and punctuation are not allowed (for example, ~!@#$%^&*()[]{},.<>/?\|`)
Variable Values
Alphanumeric, special characters, punctuation, underscores, and hyphens are all allowed
Note: If Inherited variables do not exist, you cannot import shell apps.
-
The default functionality requires the qblicensekey and qbproductkey Inherited variables with the following default values:
qblicensekey = XXXX-XXXX-XXXX-XXX
qbproductkey = XXX-XXX
The values can be a combination of different characters.
-
If you need to update multiple versions of QuickBooks, create a separate Inherited variable for each version. You can then update the shell app with the corresponding variable when you import the app. For example:
qblicensekeyent23
qbproductkeyent23
qblicensekeyprem22
qbproductkeyprem22
To add the QuickBooks shell app to your customer’s environment, complete the following steps:
Step 1: Import the QuickBooks app to Nerdio Manager
First, import the QuickBooks app from the Nerdio library.
To import QuickBooks:
At the MSP level, navigate to Applications > Shell Apps.
-
From the Add action menu, select Add from Nerdio Library.
In the new dialog box, from the Name drop-down menu, select Quickbooks.
-
Select OK.
The Import QuickBooks dialog box opens.
Step 2: Modify the shell app name and description
If you need to install or uninstall multiple versions of QuickBooks, adjust the app name to reflect the version of QuickBooks this shell app should be used for.
To modify the shell app name:
In the Import QuickBooks dialog box, go to the General tab.
In the Name field, edit the app name to reflect the version of QuickBooks.
In the Description field, provide more details about the shell app.
-
Turn the Public option On.
Step 3: Modify the detection script
Next, you need to modify variables in the detection script to reflect the needed version of QuickBooks.
To modify the detection script:
In the Import QuickBooks dialog box, go to the Detection tab.
-
Modify the qb_version_name variable to reflect the needed version of QuickBooks.
Note: Make sure you don't remove the double quotations marks.
-
Modify the qb_version_year variable to reflect the two-digit year of the needed version of QuickBooks.
Note: Make sure you don't remove the double quotations marks.
Step 4: Modify the install script
Adjust the install script variables.
To modify the install script:
In the Import QuickBooks dialog box, go to the Install tab.
If you have multiple versions of QuickBooks, adjust the qblicensekey and qbproductkey variables to match the variables you created in the Prerequisites section.
Update the qb_version_name variable with the value you previously set on the Detection tab.
-
Update the qb_version_year variable with the value you previously set on the Detection tab.
Tip: Right-click the value and select Change All Occurrences to update the value everywhere in the code. This option helps you prevent potential issues caused by missed updates. Alternatively, use Ctrl + H (Find and Replace) to update all instances of the value.
Step 5: Modify the uninstall script
Adjust the uninstall script variables.
To modify the uninstall script:
In the Import QuickBooks dialog box, go to the Unnstall tab.
If you have multiple versions of QuickBooks, adjust the qblicensekey and qbproductkey variables to match the variables you previously created in the Prerequisites section.
Update the qb_version_name variable to match the value you previously set on the Detection tab.
-
Update the qb_version_year variable to match the value you previously set on the Detection tab.
Tip: Right-click the value and select Change All Occurrences to update the value everywhere in the code. This option helps you prevent potential issues caused by missed updates. Alternatively, use Ctrl + H (Find and Replace) to update all instances of the value.
-
Select Import.
Note: If the Import button is disabled, do the following:
Ensure you have completed the necessary Prerequisites.
Scan your install script to ensure you don't have a typo in any of your Inherited variables.
Step 6: Assign the Shell App to an account
After you have created the shell app, you’re ready to assign it to your account(s).
To assign the shell app to an account:
-
Navigate to Unified Catalog, and then search for QuickBooks.
Tip: You can also filter apps by shell apps using the Repository dropdown.
-
Locate the app, and then from the Properties drop-down menu, select Assign.
-
Select Add Assignments, and then in the Select assignments field, select All or choose specific account(s) you want to assign the app to.
Select Confirm > Apply and close.
-
When prompted, select Confirm.
Step 7: Set the Account-level Inherited variable values
Once you have imported the QuickBooks shell app and assigned it to the account(s), you can set it up for the account(s).
The first step is to set at the Account level the actual Inherited variables values that you previously created at the MSP level. For details, see Scripted Actions - Account-Level Variables.
Step 8: Schedule the deployment policies
After the QuickBooks shell app is assigned to the account(s), and you’ve created the variables, you’re ready to schedule the deployment of that shell app. For more information about creating the deployment policies, see Unified Application Management: Manage Applications.
Update QuickBooks
Once QuickBooks is installed, it’s important to keep it up to date. You can automate this process as well using a free scripted action.
For more details, contact your Partner Success Manager.
Comments (0 comments)