A typical QBO3 includes:
For a DEV installation, the SQL, IIS and qbo Queue Service may run on the same server. Production installation should following standard Microsoft guidelines on scalability.
Installation order includes:
Quandis uses a Visual Studio SQL Project (.sqlproj) to manage the QBO database. The database solution can be found in Quandis source: Trunk > qbo.3 > qbo.DB > qbo.DB.sln. This solution may be use to publish directly to a SQL server, or to generate a script to update a target SQL server to the current version of the QBO schema.
As of this post, the qbo.DB solution includes 4 projects:
Installing qbo.Mortage will include all qbo.Standard components.
To set up a QBO database:
Large QBO installations can push a SQL server pretty hard. To optimize performance, Quandis has created several FileGroups to help manage SQL Server's performance. In a PROD environment, the files for each file group should be on a different physical drive. For a DEV environment, this is far less important. However, the QBO schema will create the file groups, regardless of environment. The SQL projects in the qbo.DB solution will prompt you for a physical location for the files in each of the file groups that the schema will create.
Quandis' application and web tiers are built in C# and ASP.NET project files. The core solution can be found in Quandis source: Trunk > qbo.3 > qbo.Core > qbo.Core.sln. The web projects in this solution may be used to publish directly to an IIS server. Quandis recommends publishing using Web Deploy, either directly or via a Web Package.
As of this post, the qbo.Core solution is broken into the following main folders:
To set up a QBO web server:
Using Packages or Powershell
Unlike the data tier, there are a lot of web tier and plugin projects comprising QBO. Developers will quickly grow tired of publishing many projects to a target web server, particularly if you have multiple web servers to target.
In such a case, consider using Powershell to build a Web Package (.zip file), and installing the package using IIS.
QBO contains several configuration files that will need to be created or updated to make a QBO installation work correctly. The web.config file will be found in the root of the web application, but all other configuration files will be found in the Config folder just under the root.
By default, the QBO web projects do not including several required .config files as content. This is a pattern we adopted to allow developers to publish without worrying about overwriting a custom configuration.
For an initial installation, copy the web.config found in qbo.Core > Web tier > qbo.ApplicationWeb to your web application root. Settings to consider tweaking:
For an initial installation, copy the ConnectionStrings.config found in qbo.Core > Web tier > qbo.ApplicationWeb > Config to your web application's Config folder.
Typical setup include two entries:
This file contains the "system" credentials used to communication between the QBO application tier an resources that required credentials. Examples include:
A sample can be found in qbo.Core > Web Tier > qbo.ApplicationWeb > Config.
This file determine where document images are saved. This must always be customized to your site. See a sample file in qbo.Core > Web Tier > qbo.AttachmentWeb > Config.
Typically, you should include:
This file determine where outbound emails are sent. This must always be customized to your site. See a sample file in qbo.Core > Web Tier > qbo.MessageWeb > Config.
The qbo Queue Service is a Windows services that handles all asynchronous processing for QBO. The MSI for this service can be found in Trunk > qbo.3 > Installation.
The qbo.QueueService.exe.config file must be modified to point to the web.config file that you configured for the web site.
Plugins are generally optional components of QBO. Not every installation needs to read and write files from Amazon, generate PDFs from WebSupergoo, or mail merge documents with Aspose Words. Some plugins require third party software installation or configuration. Examples include:
Plugins are constantly being created and updated by the Quandis team. If you have questions about the installation or configuration of a plugin, please contact firstname.lastname@example.org.
A given installation may be verified from Design > Specifications, Application > Configuration. This spec will fetch a list of all installed modules, and instantiate each, do a search against the db, and report any errors encountered. It is intended to catch:
Note that not all errors reported by this spec may pose a problem for you installation. For instance, if you have configured the Entity view to ignore some modules, the Summary check for the module will fail.