[Emerald] Emerald 2.5 RC1 Now Available

Support ( support@iea-software.com )
Thu, 26 Nov 1998 21:26:57 -0800

Emerald 2.5 Release Candidate 1 is now available to all registered
Emerald customers. It may be downloaded from the IEA Software website
at www.iea-software.com. Following are the release notes for Emerald
2.5.

------------------------------------------------------------------------
Emerald Release Notes Emerald Management Suite
Version 2.5 IEA Software, Inc.
November 25, 1998 www.iea-software.com
------------------------------------------------------------------------

1. OVERVIEW
DOCUMENTATION UPDATES

2. NEW FEATURES
MDI WINDOW LAYOUT
WEB BROWSER
ADVANCED SEARCHING OF USERS
MORE CC BATCH FORMATS
GROUP SPECIFIC ITEMS
DISPLAY/SORT ORDER ADDED FOR MOST ITEMS
PAYMENTS NOW INCLUDE A USER SELECTABLE TYPE AND COMMENT
CHARGE TYPES
TAX SUPPORT
BILLING CYCLES
BALANCE FORWARD SUPPORT
AUTO BATCH
UNIQUE GROUP LOGINS
GROUPS CAN HAVE THEIR OWN INVOICE FOR PRINTING AND EMAILING
PAYMENTS ARE NOW SHOWN ON THE NEXT INVOICE
INCIDENT TYPES, ACTIONS, E-MAILING
DIRECTORY LIMIT SIZE PER ACCOUNT TYPE
DEFAULT FTP DIRECTORY PER GROUP
DEFINABLE INTERVAL PER RATE FOR BILLING
DEFINABLE SALES PERSONS LIST
DEFINABLE REFERRED BY LIST

3. CHANGES
LICENSE POLICY
LICENSE OVERFLOW HANDLING
CASE SENSITIVE DATABASE SUPPORT
PAY METHODS CONSOLIDATED TO A SMALLER SET
E-MAIL INVOICES ARE NOW BASED ON CRYSTAL REPORTS
EACH INVOICE LINE ITEM NOW HAS ITS OWN QUANTITY AMOUNT
BLANK LOGIN, SHELL OR EMAIL FIELDS ARE NOW STORED AS NULL
CRYSTAL REPORTS 6.0 PRINT ENGINE
NEW SECURITY MODEL

4. RADIUSNT
RADIUS VENDOR SPECIFIC ATTRIBUTE SUPPORT FOR RADIUSNT
CALLER-ID AND CONNECTINFO NOW SHOWS IN CALLS ONLINE
DEFAULTS FOR SEVERAL RADIUSNT FIELDS
SNMP SUPPORT FOR RADIUSNT
DNIS CALL RESTRICTIONS PER ACCOUNT TYPES
SERVER AND SNMP TYPE TRACKED PER RADIUS SERVER

5. RADIUSNT 2.5.200 FEATURES
SMART CACHING
ACCOUNTING QUEUING
RADLOGS CALLERID
MULTIPLE ODBC DSNS SUPPORTED

6. UPGRADING
OVERVIEW
DATABASE UPGRADE ASSISTANCE SERVICE
COPYING YOUR DATABASE
UPGRADING YOUR DATABASE
MANUALLY UPGRADING YOUR DATABASE
UPGRADE SCRIPTS

------------------------------------------------------------------------

1. Overview

Welcome to the Emerald 2.5 release. Please take a moment to read the
entire release notes before upgrading or installing Emerald 2.5.

These release notes are broken down into three sections. The first two
sections describe what is new and what has changed since Emerald 2.1.
The last section talks about how to upgrade an Emerald 2.1 database to
Emerald 2.5.

Documentation Updates

Emerald 2.5 includes a brand new set of documentation split out into
specific areas. The following list summarizes the full documentation
set.

Emerald User's Guide

The Emerald User's guide has been re-written to include more details,
examples and references for the basic operations of using the Emerald
client.

Emerald Administrator's

The Emerald Administrator's Guide is brand new and includes in-depth
detail of installing, maintaining, and administering Emerald. This also
include a full explanation and breakdown of all tables and fields in the
Emerald database, which is an invaluable resource for writing reports or
interfacing an external application to Emerald.

RadiusNT User's Guide

The RadiusNT User's guide has been updated to include in depth details
concerning installing and using RadiusNT with Emerald. All of the
advanced Enterprise features of RadiusNT, which is included with an
Emerald license, are also explained in detail.

Emerald Billing Guide

The Emerald Billing guide is new to Emerald 2.5 and specifically focused
towards the billing aspects of Emerald. It is designed as a step-by-step
guide to quickly and easily walk you through configuring the billing
portions of Emerald and billing your customers.

------------------------------------------------------------------------

2. New Features

MDI Window Layout

Emerald now has a multi-document interface, so that all windows and
screens are contained in one application. Multiple child windows can be
opened at the same time to allow for easier and faster access to the
areas of Emerald used the most. Web Browser

A web browser is now included in the Emerald Client and Admin to allow
for convenient access to web sites and local HTML documents. Several
menu options are also defined for one-click access the Emerald
documentation and IEA Software web site search engine. In order for the
web browser to work, you must have Microsoft's Internet Explorer 4.0 or
higher installed on the machine. If IE is not installed on the machine,
the installer will disable the built in browser. Advanced Searching of
Users

More search options for users are now available. These include a simple
search, a more flexible search for MBR and Services, as well as advanced
searching. The advanced searching included options like open incidents,
expired accounts, free services/MBRs, inactive services/MBRs, custom
billing, and serviceless MBRs. More CC Batch formats

Emerald 2.5 now supports 10 different Credit Card processing systems for
batch processing of credit cards.

System Name Batch Support AVS Support
--------------- -------------------- -----------
Soft Deposit Batch Out/Batch In
MAPP-PC Batch Out/Batch In AVS
MAPP-PC 9.x Batch Out/Batch In AVS
Card Soft Batch Out/Batch In
TelePC Batch Out/Batch In
PTC Batch Out/Batch In AVS
PC-Batch Batch Out/Batch In
IC Verify Batch Out/Batch In AVS
CyberCash Batch Out/Batch In AVS
PC Authorize Batch Out/Batch In AVS
Domain POS Batch Out AVS
PC Transact_IT Batch Out

Emerald also supports a new generic format for those systems where you
can define the import and export formats.

Group specific items

You can now specify where an item can be globally available to all
groups or only available to a specific group. In order to Emerald to
work properly, you must have at least one global item in each type, or
have a group specific item for each group. Group specific items are
available for the following areas: AccountTypes, ChargeTypes,
InvoiceTypes, Regions, Discounts, PayMethods, and PayPeriods.

Display/sort order added for most items

When Emerald displays a selection list or drop down box, it will now
sort the items based on the sort order value for each item. The items
are sorted from lowest to highest. This replaces the old behavior of
alphabetical order. Payments now include a user selectable type and
comment

When a payment is now made, you can select one of the definable payment
types as well as making a comment about the payment (usually the check
number). Charge Types

There is now a new section to define Charge Types. A Charge type may be
manually applied to an MBR at any time while editing the MBR. You can
also associate a charge type to be the setup charge for a service type.
Tax Support

The tax support for Emerald 2.5 has been completely re-written to handle
taxes from single, dual, and piggyback. You are allowed to define any
number of tax entries needed, which include the type and percentages of
the tax. Then you can associate those tax entries to Charges and
Services. These tax entries will show up in detail on the invoices. All
tax items are track by their original type for easy reporting. Billing
Cycles

You can define Billing Cycles, which are a set of rules on how and when
to bill a user. This includes whether the user is a balance forward or
renewal, and how far in advance to bill the customer based on whether
they are paying via an electronic method or are being invoiced. Billing
cycles are the base of the new Auto batch feature. Balance Forward
Support

Each MBR now has a running balance. When the billing cycle for the MBR
is configured for Balance forward, the user is automatically billed
unless their balance is greater than the defined limit of the MBR. The
previous balance is listed on the invoice along with any previous
payments and new charges. A new field, BilledThru, is also available to
show when the MBR has been billed up to, since the expiration date is
not used for billing in balance forward. Auto Batch

Since Emerald now knows how and when to bill each user, a new feature is
available called Auto Batch. This feature will find any users that need
to be billed (based on their Billing cycle information) and
automatically run a batch for those users. Unique group logins

Each group can be configured to allow logins to be unique for that group
or for the logins to be globally unique (can not match a login in
another group). This allows installations where full logins are used to
have the same login in different groups. Groups can have their own
invoice for printing and emailing

Each group can have their own specific invoice for printing and
emailing. If a group specific invoice is not defined, the system-defined
invoices will be used. Payments are now shown on the next invoice

When a payment is entered in Emerald, it will show up on the user's next
invoice or renewal notice. Incident Types, Actions, E-Mailing

Incident Types can now be defined in the Emerald Admin. When an Incident
is created, the Operator can pick a type for that incident. Each
incident type can have a default e-mail address associated to it as
well. When the incident is saved, a copy of the Incident will be mailed
to the e-mail address. Incident Actions are now supported as well. This
allows for operators to add additional or follow-up information about an
incident. This is also commonly used to document the steps for service
turn-ups. The actions can be e-mailed like the original incident was as
well.

Directory Limit Size per account type

You can specify a Home Directory limit per service. This is used by
EmerAuth to enforce mailbox and FTP directory limits. Default FTP
directory per Group

Each Group can have its own default FTP directory. If the group's FTP
directory is blank, the system default FTP directory will be used.
Definable interval per rate for billing

Rates are no longer based on per-hour usage. You can now define the
interval for each rate, in seconds. This allows you to charge per
second, per minute, per hour, or whatever other interval you want to
bill. You should check your rates after the update to verify they are
correct. If you change the interval, you must also change the charges to
reflect the new changes.

Definable Sales Persons List

You can now define a list of Sales Persons in the Emerald Admin that
will be available in the drop down list.

Definable Referred By List

You can now define a list of Sales Persons in the Emerald Admin that
will be available in the drop down list.

Database Maintenance

The Emerald Admin now includes a Database Maintenance section. This
allows you to check your database, upgrade your database and perform
operations such as deleting old call records and expired accounts.

------------------------------------------------------------------------

3. Changes License Policy

The license policy for determining the number of Master Billing Records
has been changed from counting each MBR to only counting those MBRs that
are active License Overflow Handling

If Emerald finds the number of MBRs are more than the number of MBRs you
are licensed for, it will allow you to manage the current accounts, but
not add new accounts for run billing. Case sensitive database support

Emerald has been modified to support case sensitive databases. This
includes changes not only to the executables, but also to the database
creation scripts and procedures.

Pay Methods Consolidated to a smaller set

The Pay Methods have been consolidated to allow for simpler and faster
processing. This includes changing all of the Credit Card types from
their respective names to just "Credit Card". The type of the credit
card type is not required for CC processing. Other changes include
removing the spaces from before the other pay methods. E-Mail invoices
are now based on Crystal Reports

Email invoices are now based on Crystal Reports. This allows you to
completely customize (including making it HTML) the invoices that are
emailed. A new Email client has been written for Emerald to send the
emails with that is significantly faster than the only method. Each
invoice line item now has its own quantity amount

A quantity field on each line item has replaced the invoice months
field. This resolves total calculations that could have been incorrect
in previous versions. Blank Login, shell or Email fields are now stored
as NULL

The login, shell and email fields are now correctly set to NULL when
they are left blank in the client. The old clients set them to a single
space, which caused a potential security issue. Crystal Reports 6.0
Print Engine

The Crystal Reports 6.0 print engine is now included in the Emerald
distribution. If you install a previous version of Crystal Reports on
your computer, you may need to re-install Emerald for printing to work
again. All of the reports distributed with Emerald are also version 6.0
reports. New Security Model

The security model has been completely changed from the Emerald remote
layout. The new model allows for each operator to be in an Operator
Group, and then for you to specify permissions per operator group. This
is based on a new set of views to increase security.

Create Database Enhanced

The Create Database section has been greatly enhanced to check the
validity of the information entered before starting. This includes
making sure the information entered does not conflict with a current
object in the database.

Calls Table Modifications

The calls table has been modified to include three new fields, ServerID
(matches ServerID in the Servers table), AccountID (matched AccountID in
the SubAccounts table), and Status (set to NULL initially, and 99 when
the record has been processed by the consolidation procedure).

Scheduled Tasks

Several scheduled tasks are now included in the insttask.sql script.
This script is not installed by default or by the update procedure. When
creating the Emerald database, you can check the "Install Tasks" to have
the tasks installed (only if the database name is "Emerald").

Two of the main functions of the scheduled tasks are to update the new
ServerID and AccountID fields in the Calls table. These are scheduled
for the night. If you calls table has a lot of records, you may want to
manually command in those tasks before scheduling them. Other tasks
include a weekly Check Database, and two tasks to delete start records
from the Calls table and trim out old records from your RadLogs table.

Consolidation Procedure

The Consolidation procedure has changed completely. Rather than trying
to do all the users in one query (which required a large tempdb), the
consolidation does one user at a time. The consolidation does not delete
the records anymore either. It simply marks them as already been
processed. You can use the new database maintenance feature to delete
the records at a later time.

While the consolidation is running, you will see a progress bar, status
information about the current user being consolidated, the total number
of users to be consolidated, and the number of call records processed so
far. There is also a stop button to stop the consolidation. Stopping the
consolidation will not cause any problems, since it marks the processed
records as it goes (allowing the next run to pick up where it left off
from). Running the consolidation should not cause any problems with
RadiusNT either (authentication or accounting).

------------------------------------------------------------------------

4. RadiusNT

Emerald 2.5 fully supports all features of RadiusNT 2.5. If you have
RadiusNT 2.5.124 already installed, there should be no problems
encountered after the upgrade.

A new version of RadiusNT (2.5.200) is included in the Emerald 2.5
archive that adds several new features, which are listed in the next
section. If you encounter any problems with RadiusNT 2.5.200, please
revert back to using RadiusNT 2.2.124.

RADIUS Vendor Specific Attribute Support for RadiusNT

Vendor Specific Attribute (VSA) support has been added to the Emerald
Admin to add Vendors, VSAs, and VSAs to the Service Type Defaults and
user specific attributes. Caller-ID and ConnectInfo now shows in Calls
Online

The Calls Online view will now include the Caller-ID and ConnectInfo
RADIUS attributes, if the NAS sends those attributes in Accounting
requests. Defaults for several RadiusNT Fields

Defaults have been added to several of the Calls table fields to support
those clients that do not send the required fields in Accounting
requests. One example of this is Lucent ComOS 3.8, which sends admin
Accounting requests without a NAS-Port attribute. SNMP Support for
RadiusNT

When editing a Server and Server Port you can specify optional SNMP
settings. RadiusNT uses these for SNMP concurrency checking. DNIS call
restrictions per Account Types

You can define a DNIS group, which includes a set of DNIS numbers. If
you specify a DNIS group for an Account Type, any service of that
Account Type can only call from one of those DNIS numbers. Server and
SNMP Type tracked per RADIUS server

The server type for each RADIUS server is now tracked. These are used
for re-porting the server and allowing RadiusNT to properly handle the
SNMP concurrency control.

------------------------------------------------------------------------

5. RadiusNT 2.5.200 Features

RadiusNT 2.2.200 includes several new features to improve performance.
Not all of these features have been fully regression tested, so please
test this new version carefully before putting it into production. Smart
Caching

Smart Caching allows RadiusNT to cache information from the database so
that it does not have to do a lookup each time. This can greatly improve
the authentication performance of RadiusNT while lightening the burden
on SQL Server as well. Accounting Queuing

When RadiusNT is receiving a large number of accounting requests in a
short amount of time, it may queue the accounting requests to improve
speed. It will then send all of the accounting requests to the database
when it either reaches the maximum number of records allowed to queue,
or when the requests slow down.

RadLogs CallerID

If CallerID is sent to RadiusNT in the Authentication request and the
Authentication Request fails, RadiusNT will include the CallerID in the
RadLogs entry. The RadLogs table must have the CallerID field whether
the NAS sends CallerID or not.

Multiple ODBC DSNs Supported

RadiusNT can now use multiple ODBC connections, in a fail over
configuration. Although this is not a supported configuration by the
RadiusNT Admin, you can specify multiple ODBC DSNs in the ODBCDataSource
registry entry, space delimited. The preference of use is indicated by
the order of the entries. The first one will always be used unless it is
not available. Otherwise RadiusNT will try the next one until a good
connection is found.

------------------------------------------------------------------------

6. Upgrading Overview

Emerald 2.5 is backward compatible with 2.1/2.2 in the sense that 2.1
clients should still function. However, they will NOT be able to take
advantage of the additional billing options. Once you have started
billing with 2.5, we do not guarantee that you can go back to billing
with pre 2.5. There are several new fields that need to be taken into
account which pre 2.5 does not know about.

You should also carefully look at your customer configuration if you
change your billing from renewal to balance forward. The main problem is
with the balance field. This field usually is not correct and will cause
errant invoices for customers the first time you billing with Emerald
2.5.

Database Upgrade Assistance Service

IEA Software is offering a database upgrade assistance service for those
customers who do not feel comfortable with upgrading their database or
want help. If you are interested in this service, please contact IEA
Software sales to arrange a time for this. The service is available for
a nominal fee.

Copying your database

Before doing anything, create a copy of your database to test against.
Do not just try and upgrade your production database without first
testing the upgrade on a copy. You should always have a backup of your
Emerald database as well.

The following procedure is the same whether you are creating a second
database on the same SQL Server or on another SQL Server. The only
difference is that during the transfer stage you will pick the second
SQL server rather than the same one.

1. Run SQL Enterprise manager and Connect to your SQL Server.

2. Select Manager...Database Devices from the pull down menu and click
the new database device button (the first one on the tool bar).

3. For the name of the new Database device, call it Emerald25. The
location should be where you typically store your SQL database device
files (like d:\mssql\data or where ever you have enough disk space).
Remember this, because when you eventually delete the database and
device, you will have to remove the file itself manually.

The size of the database device should be larger than the size of the
currently used portion of your Emerald database, although it doesn't
have to be the same size of what is allocated for the database. You can
find this out by double-clicking your emerald database and subtracting
the used from the total size). Give yourself a few extra megabytes for
breathing room.

4. Once the device is created, close the database device box, and select
"Manage...Databases" from the pull down menu and click the new Database
button (the first one on the toolbar).

5. For the name enter Emerald25. For the database device, select the
Emerald25 database device you create in step 3. The size should be the
full amount of the database device.

6. Click the "create now" button. Once the database is created, double
click the bar of the database to bring up the edit database window. On
the options tab, check Select/Into bulk copy, no checkpoint on recovery,
and truncate log on checkpoint and click ok.

7. Now that you have your test database created, you need to copy your
production database to it. Close the Manage Database window, and choose
the Tools...Database/Object transfer option.

8. When the transfer window opens, make sure the source server is your
current SQL Server and the source database is your current Emerald
database. The destination server should be your current SQL Server also,
unless you are transferring to another server (in which case it should
be the new server). If the other server isn't listed, click the new
destination button and register it. The Destination database should be
the database you created above.

9. Once you have the settings correct, select the "Start Transfer"
button. You will see the progress of the transfer. When the transfer is
completed, you may receive a message noting there were errors. If so,
you can click the View Logs button to see the errors. Most likely the
errors are with the ServerAccess table, which is not real problem
(remember above we recommended dropping it).

Upgrading your Database

The Emerald Admin includes a new feature to automatically upgrade your
database. This is basically just an automated version of the manual
steps listed below. The Emerald Admin includes a new section in the
Database pull down menu called maintenance. This is where you can run a
check on your database, update your database, or clear out old records.

The first thing you should do after making a backup of your database,
and before doing any of the upgrade steps, is to run the check database
option in the Emerald Admin. This will run the SQL Server Database
Consistency Checker to make sure there are no problems with your
database before the upgrade.

Once you have run the Check Database option, you can run the upgrade
option. You should make sure that no one else is accessing the database
when the upgrade is running. The upgrade can takes from several minutes
on small systems to over an hour on larger systems.

Manually Upgrading your Database

These steps outline what is necessary to update your database, if you do
not use the update option in the Emerald Admin. If you have done custom
modifications to your database, you should look through the dropold.sql
and updttabs.sql scripts very carefully.

1. Drop the tables listed at the top of the dropold.sql script. These
include a couple of tables that are no longer used and several others
that have either been replaced or had problems.

2. Drop your Consolidation and DeleteCalls stores procedures. Both have
changed (even from the original 2.5 scripts sent to people) and needs to
be updated or consolidation will fail.

3. Run the insttabs.sql, updttabs.sql, codetabs.sql, instproc.sql and
instview.sql scripts in isql_w (or the SQL EM query tool). See below for
a description of the changes in these scripts. All of the scripts have
been enhanced to only change the database as needed.

4. You will need to apply permissions to the new objects. If you have a
generic setup, run the instperm.sql script. Otherwise use SQL EM and
edit the group permissions for the different groups. Several new groups
have been added in the instperm.sql script for the new security model as
well.

Upgrade Scripts

The main portion of the upgrade is handled via the same scripts that
create the Emerald database. The scripts have been heavily modified to
prevent most problems that might occur with running them against 2.1,
2.2 or beta 2.5 database.

insttabs.sql

This is the normal script that comes with Emerald to create the tables
in the database. Running this script on an earlier database will cause
any missing tables to be added.

Before running this script, you should check several tables. If these
tables exist, drop them. They are old and have been replaced:

- RadRoams - RadRoamServers

There is a secondary script (not part of the main update) for updating
the RadiusNT tables from Emerald 2.2 and lower to work with RadiusNT
2.5's Vendor Specific Attribute support. If you will not be using VSA
support, you do not need to run the additional script.

The ServerAccess Table has changed, with a new primary key. It is
strongly recommended that you drop your current ServerAccess table and
allow this script to re-create it.

When this script is run, you may receive errors concerning "object
already exists in the database". Those can be safely ignored. Any other
error needs to be noted and corrected, as it will cause problems in
other steps. The scripts must be ran in the order listed, or they will
not work correctly.

updttabs.sql

This is the update script to add missing fields to existing tables. You
MUST run insttabs.sql first, since some fields that will be added are
dependent upon new tables to be added first.

This script will also update data in a couple of tables to correct
database consistency issues. You should look over this script before
running it if you have made any changes to your database structure
outside of Emerald.

codetabs.sql

This is the update script that populates all the tables in the database
with default information. It will not re-populate tables that already
have data in them.

instproc.sql

This is the normal script that comes with Emerald to create the stored
procedures. Running this script on an earlier database will cause any
missing tables to be added.

You must drop your Consolidation and DeleteCalls procedure so that the
new one in this script can be installed. The Consolidation script for
2.2 and lower is not compatible with Emerald 2.5.

instview.sql

This is the normal script that comes with Emerald to create the security
views. Running this script on an earlier database will cause any missing
views to be added.

instperm.sql

This is the normal script that comes with Emerald to set permissions on
the objects. Since new tables and procedures where added to your
database, you should re-run this script to set permissions correctly. If
you have changed permissions on your database to be other than the
default layout (Emerald group) you may need to manually update the
permissions.

insttrig.sql

This is the normal script that comes with Emerald to add a trigger to
the calls table. It is recommended that you drop the trigger on your
calls table and re-create it with the one in this file.