DBC installation overview and best practices

This is a plain English, IT-oriented overview of DBC programs and their general maintenance.

This document applies to all DBC programs. There are specific references to DBC Debt Manager because it is the only DBC program that uses a database. All other DBC programs use a proprietary file format (i.e. not a database). References to SQL Anywhere, databases and ODBC datasources only apply to DBC Debt Manager.

[Include DBC Debt Manager specific information]     [Exclude DBC Debt Manager specific information (default)]

[Show Table of Contents]     [Hide Table of Contents (default)]

Installation

DBC provides installation instructions. DBC programs can be installed, re-installed or updated over any existing installation. No un-install is necessary. Except when installing or updating DBC programs, the program files can be write-protected. We have tested DBC programs on all commercially available desktop versions of Windows.

DBC supports all versions Windows that are still supported by Microsoft. If Microsoft no longer supports a specific version of Windows, neither will DBC. DBC no longer supports Windows Vista. DBC no longer supports Windows 7.

DBC program executable

All DBC programs are Windows programs. All DBC programs are "thick clients", meaning the DBC program is installed and runs at the client site. The DBC executable and supporting files (e.g. .dll files) are found in the same directory. DBC does not save any files to the Windows directory. DBC programs are still available as 32 bit programs. DBC Finance and DBC Debt Manager are available as x64.

DBC uses different licensing methods. But no matter which method is used, the executable file is the same. DBC does not distribute "custom" versions. All clients have the same executable.

 

User Permissions

Administrator permissions may be required to run the DBC installation programs. It is advised that Windows Vista and Windows 7 (or later) users check Run as administrator on the DBC program's shortcut icon. In other cases, rights manager software will prevent DBC programs from running unless an administrator password is provided. The user should provide the password or make sure DBC programs are not prevented from running.

DBC programs need to be able to spawn iupdate.exe which installs program updates.

See Windows Registry and user preferences for more information.

If the license is programmed on a USB port license key, administrator permissions are required to install the USB drivers.

Windows 7 (or later) will write-protect the samples and tutorial directories. In that case, those directories should be copied to another location (e.g. the Windows Desktop). Both directories contain datafiles. Some programs can't open a datafile if it is write-protected. For more information, see http://dbcinc.com/dbcsupport/samptut.php.

 

Windows Registry and user preferences

No Registry changes are required to install DBC programs. Since it is common for multiple users to run a DBC program from a common directory, Registry changes are made when a user is running the DBC program. DBC does not require Registry changes to be "pushed".

When running a DBC program for the first time, the Update Registry dialog pops up to associate file extensions (which is for the user's convenience). In DBC Finance, the Update Registry function also registers OLE documents. The dialog can also be invoked manually from the Tools menu.

Your IT may have restrictions that prevent you from successfully performing the Update Registry function. For example, access to \\HKCR and \\HKLM may be restricted. Using Run as administrator may suffice. After updating the Registry, the administrator privileges can be removed.

If the Registry is not updated, the Update Registry dialog may pop up every time the user starts the DBC program. Users need ongoing privileges to update the \\HKCU\Software\DBC branch which stores the user preferences.

The USB driver installation will modify the Registry.

Except for DBC PortOpt, preferences may be exported to a .sys file and imported back.

DBC programs assume they can create and/or modify Registry keys. Any software that restricts access to the Registry will inconvenience the user.

For DBC Finance only, the Update Registry function may be performed from the command-line without a license being in force. For example:

finance.exe -updateregistry

 

System/hardware requirements

For minimum system requirements, refer to the minimum requirements for your version of Microsoft Windows. DBC programs will run fine on just about any "off the shelf" PC made in the last 5 years. But a PC with a faster processor and more memory is better than otherwise.

DBC has tested on all desktop versions of Windows for PCs. DBC supports all versions Windows that are currently supported by Microsoft.

DBC programs are not threaded. Additional processors or cores do not necessarily improve performance.

There were users that ran DBC programs on Macs with success (e.g. Mac OS 10.3 with Virtual PC 6.1 running XP Home Edition). But DBC does not test on Macs and does not claim that any DBC program will run on a Mac. There may be a Windows virtual machine that runs on Macs. Note, it is the responsibility of the Windows emulator or virtual machine to provide compatibility.

 

DBC software footprint

The actual executable for a DBC program is about 5 - 10 MB. Depending on the program, a complete installation may take 20 - 50 MB of disk space, not including user data.

See License footprint for more information.

 

DBC program directory

In the past, regardless of a 32 bit or x64 OS, the default directory for DBC programs was C:\Program Files\DBC\[program].

Going forward, for a 32 bit OS, the default directory for DBC programs is still C:\Program Files\DBC\[program]. But for an x64 OS, the default directory for DBC programs is C:\Program Files (x86)\DBC\[program].

 

User data footprint

DBC does not provide data. Users input, import or create their data.

In general, DBC programs do not require user data to be installed in any specific directory. DBC programs use data files in a proprietary format. User data does not have to be in the same location as the DBC program. Users are responsible for being able to locate their data files. Users are responsible for making sure their data is regularly backed up. Data files are not databases in the way many people think about them.

On average, a user will not use more than 25 MB per year for additional data storage. 100 MB per year is on the extreme high side.

 

Data versioning

DBC program updates usually include new prompts or options. Users can assume program updates are backwards compatible with existing data. There is no need for a separate step that converts existing data so it is compatible with a DBC program update. Program updates will "roll up" existing data so that it conforms to the new version.

 

License footprint

DBC licenses programs based on the maximum number of concurrent users allowed to run each program or module. DBC does not distribute different executables based on the licensing method used, the same executable can use any licensing method.

DBC provides an Internet based license method or specially programmed USB port license keys. DBC will provide the USB device drivers which should be installed on any PC that has a license key plugged into it. The driver installation program will modify the Windows directory and Registry. Administrator privileges are required to install the drivers.

The Internet license is installed in the Registry under \\HKCU\Software\DBC. The same person using different PCs must install the license on each PC. Different people using the same PC must install the license separately. The Internet license method uses HTTP on port 80 to reach dbcinc.com. The Internet license method is not available for unlimited, "super-corporate" licenses.

The USB port license keys can be programmed for either of these licensing schemes:

  • A single user USB port license key is plugged into the user's PC. The DBC program acquires a license by reading the license key.
  • A network USB port license key is plugged into some PC on the network running the DBCAppServer program. The network license key is programmed with the maximum number of licenses for 1 or more DBC programs. The DBC program requests a license from DBCAppServer. DBCAppServer is a Windows service. DBCAppServer fills license requests until the maximum is reached. DBCAppServer does not have to be running on an actual server. The DBCAppServer program runs as a service and is less than 1 MB. Each DBC program will maintain an open TCP/IP socket to DBCAppServer until the license is released. Every few minutes, less than 1K of data is transmitted between the DBC program and DBCAppServer. DBCAppServer can run on a virtual machine and should have control of the USB port.
 

Internet access

All DBC programs access the Internet via HTTP on port 80. The HTTP Proxy user/password can be entered in the Internet Settings tab.

Regardless of the license method, DBC programs may access the Internet for license validation purposes.

The user may initiate Internet access from DBC programs for the following:

  • Checking/downloading software updates - If an update is available, the user will be prompted whether or not to download/install the update from dbcinc.com.
  • Requesting support from DBC and e-mailing data - Data is "wrapped up" and e-mailed to DBC via dbcinc.com. Users should specify their name, company, e-mail address and phone number in the Internet Settings tab under Preferences or System Preferences. If SMTP server is specified, the support e-mail will bypass dbcinc.com.
  • Internet license authentication - The DBC program will use dbcinc.com for different licensing functions.

DBC Finance and DBC PortOpt will access the Internet to download:

  • SLGS rates - The DBC program will download State and Local Government Securities rates from the US Government's Bureau of Public Debt (treasurydirect.gov or slgs.gov). SLGS rates are issued once daily on every US Treasury business day. No account is required. SLGS downloads are saved in .slg files. A .slg file is generally less than 5 K. SLGS rates may be entered by hand but are downloaded for the user's convenience.
  • OMS pricing - The DBC program will download end of day Open Market Securities pricing information from dbcinc.com. OMS accounts (username/password) are provided by DBC for current clients as part of annual support/maintenance (i.e. no additional cost). OMS pricing is updated on stock market trading days. The .oms files are in a proprietary format that is readable by the DBC programs. An .oms file is generally less than 20 K. DBC does not download live feeds. The source of our OMS pricing is Street Software Technology (sstbond.com) who also provides data published in the Wall Street Journal. Our agreement with Street Software Technology allows for 1 account for each client's office. Each account is allowed 60 downloads per calendar year. Entering the OMS account information in the DBC program makes for easier downloading. OMS pricing may be entered by hand but is downloaded for the user's convenience. The terms of use for the OMS pricing are located at: http://www.dbcinc.com/general/omsterms.php
DBC Finance will access the Internet to download:
  • MMD scales - DBC Finance will download securities yield curves and volatility information from tm3.com. This requires an account provided by Thomson Municipal Market Monitor, a third party.
 

Networking / firewall / router

For network license keys, the connection between the DBC program and DBCAppServer (which manages the license) uses port 4046.

For the Internet license method, the DBC program will use HTTP on port 80 to invoke links on dbcinc.com.

 

Suggested software

Adobe Acrobat Reader should be installed on PCs running DBC Finance. The tutorials are .pdf files and forms are .fdf files.

 

Virtual environments

DBC programs can run on virtual PCs. It is possible to remotely access the USB port key over a network.

Consult Belkin to decide if the device is suitable for your environment.
http://www.belkin.com/networkusbhub/ Product may be discontinued.

Consult Digi to decide if the device is suitable for your environment.
http://www.digi.com/products/usb/anywhereusb.jsp#overview

 

Best practices

As users need to update their DBC programs or PCs and input more data, they should be aware of a few housekeeping tasks.

DBC data

DBC programs and data do not have to be on the same machine. DBC data files are not databases so there is no database backend.

The DBC data file extensions and corresponding DBC programs are:

  • .df2 - DBC Finance
  • .df - DBC Housing, DBC Student Loan, DBC Multi-Family/Health Care
  • .wf - DBC PortOpt

DBC does not provide data. Data is created by the users. On average, a user will not use more than 25 MB per year for data. 100 MB per year is on the extreme high side.

In general, DBC programs do not require data files to be stored in any specific location. There is no way to force the user to store data files in a specific location. Users are responsible for locating their data.

In general, data files should not be accessed simultaneously by multiple users. While running, DBC programs keep the data file open to maintain exclusive access. Multiple users accessing the data would cause data corruption.

DBC Finance requires read/write access to open data files, even if the user does not intend to change the data.

For all DBC file extensions, refer to http://dbcinc.com/dbcsupport/dbcfiletypes.php.

 

Time to load DBC programs

The actual executable for a DBC program is about 5 - 10 MB. DBC programs and data do not have to be stored on the same PC. It is not uncommon for users that have DBC programs installed on their personal PCs especially if they are laptops.

It may be beneficial to have all users running the same version of the DBC program. One way of accomplishing this is to have all users access the same DBC installation in some commonly accessible network directory. Depending on the network's capacity, traffic and distance traveled, it may take some users more time to load the program. For users that open and close DBC programs several times a day, this may be frustrating. One way of alleviating the problem is to have local or regional installations that are updated at the same time.

 

Performance

Any PC made in the last 5 years is acceptable. But a PC with a faster processor and more memory is better than otherwise. Except for computation time, which is dependent on data and other variables, DBC program performance is impacted by accesses to data. An Open or Save function (performed by the user or by the program itself) may take longer depending on the network's (or PC's) capacity, traffic and distance traveled.

DBC programs are not threaded. Additional processors or cores do not necessarily improve performance.

In DBC Finance when solving a Refund case and SLGS rates file is set to Current, make sure Current SLGS determination method is set to Date implied by .SLG file name (ddMMMyy.slg).

Otherwise, if the method is set to Date embedded in .SLG file contents, there is a negative performance impact when there are a lot of .slg files in the SLGS directory. This is because every .slg file must be read in order to determine which file in the directory contains the most recent SLGS rates. Timestamps and naming conventions are ignored. To determine which .slg file contains the most current rates, all .slg files have to be read. SLGS rates downloaded by DBC Finance will follow a ddMMMyy.slg naming convention. For example, July 2, 2014 SLGS rates will be downloaded to a file named 02Jul14.slg. The July 2, 2014 SLGS rates could also be contained in a file named xyz123abc.slg. The data in the actual file is used to determine which has the most current rates. There is generally no reason to maintain multiple years of .slg files in a single directory. Organize older .slg files by year in subdirectories to reduce processing time. In any case, the Bureau of Public Debt puts historical SLGS rates online so users do not need to archive .slg files.

 

Backing up data

Users should save their data to the network where regular backups are assumed. In addition, users may want to take advantage of the automatic backup features in DBC programs. Backup options are located in the user preferences section of the DBC programs. The backup option in DBC programs is not intended to replace an organization's backup policy.

 

Combining/prioritizing multiple license methods

For various reasons, licenses may be divided between single user license keys (plugged into the user's PC), network license keys (plugged into some PC on the network) and Internet licenses. Prioritize the possible licenses in the .set file. The .set file will have the same name as the DBC programs executable file. For example, for DBC Finance, the executable is finance.exe and the .set file must be named finance.set.

An example .set file can look like:

USB_BLOCK
LICENSE_SERVER 111.111.111.111 4046
INET_LICENSE

The DBC program will try to acquire a license in the order it appears in the .set file. If the DBC program does not find license, it will use the license information in the next line.

In general, the USB_BLOCK line should be first so it will check for a single user license key plugged into the PC. If no single user license key is found, it will fail over to the LICENSE_SERVER (network license key) line then the INET_LICENSE line (Internet license). The USB_BLOCK line should be first because it will fail over very fast. The LICENSE_SERVER line will take much longer to fail/timeout if DBCAppServer is not reachable or there is no network/Internet connection.

The user should make sure the drivers are installed if they expect to use a USB license key. Go to the Help | About dialog, hit the Details button to determine which license is being used.

For unlimited, "super-corporate" licenses, multiple license keys may be issued for disaster recovery purposes. Each instance of DBCAppServer should be listed in the .set file. If the first DBCAppServer is not reachable, the DBC program will fail over to the second DBCAppServer.

LICENSE_SERVER 111.111.111.111 4046
LICENSE_SERVER 222.222.222.222 4046

For more information, see http://dbcinc.com/dbcsupport/setfile.php.

 

DBC program updates

Users with ongoing support contracts should take advantage of DBC program updates. Program updates include updated Help and readme notes. The readme notes are popped up when the user runs an update for the first time. Afterward, access the readme notes from the Help menu. The readme notes contain program changes since the last general release.

DBC does not schedule program updates in advance except for internal testing and documentation purposes. In general, DBC will not give advance notice of program updates. Users can request to be added to the e-mail notification list. E-mails (including update instructions and readme notes) are sent soon after the update is available on dbcinc.com.

DBC does not "push" program updates. Update files (.upd extension) must downloaded from dbcinc.com. Users can initiate downloads from the Help menu in DBC programs.

DBC programs can be set up to automatically check for an update every time the program starts. If an update is available, the user must confirm the download/installation of the update. No other users should be running the DBC program during the update process. The program files must not be write-protected otherwise the update procedure will abort.

Program updates will contain any new/updated files since the last general release. There is no formal definition of a general release except that the version number ends with 00 or 000. In general, users do not have to install previous versions before installing the current version. The current update file will include changes to all previous versions. In general, unless otherwise indicated, all updates are "roll-up" updates and no prerequisite updates are required.

For more information, see http://www.dbcinc.com/dbcsupport/h2update.php.

 

User preferences

Users need ongoing privileges to update the \\HKCU\Software\DBC branch which stores the preferences.

Except for DBC PortOpt, preferences may be exported to a .sys file and imported back.

Note, by default, Windows does not display .sys files.

 

User requests

Almost all the program enhancements are driven by user comments and/or the DBC support staff to serve the users' business needs.

All well thought out comments/requests are welcome. Users should communicate via e-mail so we can save the first hand information. Users should be prepared to provide supporting information for their requests.

User requests are evaluated and prioritized in relation to other requests.

The development list is not available outside of DBC.