
Programmers Guide
And
Internationalization Options
Version 4.01
May 2003
© 2002, 2003 Internet
Software Sciences
Chapter 1 Introduction
Chapter 2 Database Tables, relationships and tools
Chapter 4 ASP Programming and customizations
Chapter 5 ASP Page Security systems and monitoring options
Chaper 6 Importing data into the Web+Center Database
Chapter 8 Graphical and User Interface Changes
Chapter 9 Migrating from Access to SQL*Server/SQL 2000 databases
Chapter 10 Customer Authentication Login Methods (optional)
Chapter 11 Customizing Web+Center Labels and Internationalization
Options
Chapter 12 Hosting Multiple Web+Center systems on a single server
Welcome
to the Web+Center Programmers Guide. To
help advanced Web+Center user to expand, customize or integrate the Web+Center
web-based support suite into their own business processes, we determine that a Web+Center Programmers Guide was
necessary for advanced users who wished to exploit the customization features
of the product.
Web+Center
does not have to be customized by programmers to be operational, and this guide
should only be referenced by very technically capable Web+Center administrators
and configurators who wish to expand the functionality of the product or
perform some customizations required for their support or business processes.
This
guide is designed for Web+Center users who are capable of customizations to the
product using the ASP (Active Server Pages) programming language. User must also have some knowledge of
databases, tables and the SQL query language.
Customizations,
enhancements, and any changes made to the software will not be supported by Internet Software Sciences for
licensed or un-licensed customers. If
necessary, the ISS Consulting Group can provide fee based consulting services
to help develop and or debug your changes if necessary.
Any
changes you make to the system must be integrated by you if new versions are
released. Included in this document are
suggestions on how to minimize the changes that would be required when
integrating a new Web+Center version with your system if you have made changes.
Included
in the Appendix is a list of related on-line and book based programming guides
we recommend for learning the ASP programming language.
The Web+Center product is a web-enabled database application. Web based scripts written in ASP (MS Active Server Pages) and ASAPI (scripts written in compiled C++) form the code base to the Web+Center application. The application scripts performs database lookups, inserts, deletes and updates against the database and then outputs the necessary HTML based pages back to the individual users browser.
The database consists of tables which contain columns which hold the Web+Center data. The database is the central repository for all of the web+center information and system configurations. Changing any of the tables, columns or even the data itself may cause database problems including referential integrity and user application errors.
Since the database is central to all functions of the Web+Center, it should NOT be modified by the user. If additional information is required, it should be stored in new database tables that you add to the Web+Center database. If you need to relate the new data to the existing customer, case or tech data, it should be linked to existing Web+Center data by using appropriate key indexes. This will also help when upgrading to new Web+Center versions in the future.
Table 2-1 lists all of the Web+Center 4.0 tables and their description
|
Table Name |
Description |
|
AssetAssigment |
Asset assignment for customers, techs, other assets |
|
Assets |
Individual Asset information |
|
Bconfiguration |
Business+Center configuration information |
|
Cases |
Case Information |
|
Case_Text_Field_Labels |
Optional case text box labels |
|
Categories |
Categories for cases |
|
Configuration |
Web+Center system configurations |
|
CustomerNotes |
Additional customer information and customer note logs |
|
CustomerTechAssignment |
Business+Center Contact Rep customer assignments |
|
DeleteList |
Customers that have requested not to be sent emails |
|
Email_Text |
Text for automatic email notifications to customers/techs |
|
EmailCategory |
Customer user categories |
|
EmailCategoryLinks |
Normalized table showing customers and user categories |
|
EmailText |
Email Messages that can be sent from Business+Center |
|
Email_text |
Notification messages text and TechCenter User Screen |
|
Escalation |
Escalation configuration options |
|
Event_Attending |
Normalized table showing attendees for scheduled events |
|
Event_Type |
Types of events |
|
Group_List |
Staff Member Group Assignments |
|
Groups |
Group Definitions |
|
KBConfiguration |
Knowledge Base Configuration options |
|
KBMap |
Knowledge Base Word Mapping |
|
KBWords |
Knowledge Base Words defined |
|
Priority |
Priority Definitions |
|
Result_Detail |
Customer Surveys Detail Results Table |
|
Schedule |
Calendar events scheduled |
|
Survey |
Master customer survey table |
|
Survey_Results |
Results of customer surveys |
|
Tech_Staff |
Staff Member table |
|
Top_Cases |
Stores the Customer FAQ list of cases |
|
|
|
Table
2-1 Web+Center Table Definitions
The 21 Web+Center database tables are constructed within a Relational Database Management System (RDMS) such as Access, or SQL*Server, that allows for relationships and efficient querying access to the data. Figure 2-2 shows the database relationships between the various tables and relational primary keys to join the tables.
The database has been constructed for 3rd normal form optimization for query efficiency and data storage optimization.

Figure
2-2 Web+Center Version 3.5 Database Relationships
Database View,
Design and Access Tools
The tables can directly be viewed and edited using tools provided with Access or SQL*Server. We do not recommend you use these tool for editing any table information, since there may be application specific filtering and database creation algorithms that are done by the application that will not be done if you directly add, edit or delete data from the database. The DESIGN of the tables and columns can also be viewed and modified with tools provided by the Database vendor. We highly recommend you DO NOT modify the design or structure of any of the database tables.
The Web+Center application also provides a low level, web-based, direct table view tool in the Business+Center application under Business+Center Administration. This option, called the Web+Center Table Builder, is only available for System Configurator level users that have logged into the Business+Center.
To access the Web+Center table builder, log into the Business+Center with your System Configurator account and press the Administration button. Then click on the Web+Center Table Builder Menu option to view or edit the Web+Center tables.
This Web+Center Table Builder is only meant to display and perform table edits for special situations. Editing, adding or deleting a table column without understanding all of the implications can cause some database referential integrity and potential application errors. Use this tool with extreme caution.
Directories:
The Web+Center application is installed into 8 directories consisting of:
Techcenter – The directory for all of the Tech+Center application code and graphics
Customercenter – The directory for all of the Customer+Center application code.
BusinessCenter – The directory for all of the Business+Center application code.
Language – This directory contains all of the common page label definitions, graphics, banners, etc. For version 4.0, all of the labels of the various application prompts have been placed in a few include files here to allow for easy customization and internationalization.
Pocket – The directory for all of the Pocket+Center application code.
Database – Contains the Access seed database (webcenter40.mdb) and the SQL scripts to create the SQL*Server seed database.
Language – The directory for all of the Web+Center labels and buttons graphics. All of the definitions have been placed into this directory for easy language text substitutions and internationalization of the Web+Center product for languages other than english.
SMTPUtils – Contains the Software Artisans SMTP mail utility that enables mail to be sent from the ASP applications
When the Web+Center is installed, it is installed by default into:
C:\program files\Internet Software Sciences\webcenter 4.0X\…
The four Web+Center application directories (Techcenter, customercenter, pocket and businesscenter) contain a combination of the following types of files:
*.asp Active Server Pages Scripts
*.gif GIF web graphics
*.inc Activer Server Pages INClude files included by ASP module
*.jpg JPEG web graphics
*.dll ISAPI (Compiled C++) DLL
*.htm HTML files
Each of the applications have a default “home page” with a file called default.htm which the webserver configured as the default page for a particular virtual directory.
For example, the Tech+Center home page that is accessed when you enter the URL of
http://<hostname>/tech30/ will display the default.htm page in the techcenter directory.
The database directory contains:
*.mdb Web+Center Database in Access 97 Format
*.sql SQLServer scripts to create Web+Center Database
*.asp Some database upgrade scripts.
The SMTPUtils directory contains the SA SMTP utility that must be separately installed.
Determining which
script is called
To determine which ASP or DLL script is being called, review either the link in the Browser URL window, or the URL link as you move over the link. For HTML form based pages, one will have to perform a View Frame Source File option or a View Source option on the preceding HTML page and search for the <form action=….> HTML tag. This will tell you what page the form is calling.
The basic file naming convention is that first form page for a particular function like registration is called “registration.asp”. The following HTML submit processing page for that form is called “DoRegistration.asp”, where the word “Do” has been added in front of the preceeding ASP file name. Many of the ASP File names can be found by “mousing over” the button panel and viewing the URL listed at the bottom of the browser.
All of the ASP scripts (*.asp and *.inc) are ASCII based files that can be edited with a plain ASCII editor such as NotePad or Textpad. Do not edit these ASP scripts with an HTML editor such as DreamWeaver or a word processor like Microsoft Word. We recommend the TextPad editor which can be downloaded from the web at their website: http://www.textpad.com.
One of the advantages of the Web+Center Customer Support/Help Desk Product over other web-based support products is that it is customizable to a very large degree since we provide you the scripting code for most of the application.
The
Web+Center application is written in a combination of ASP scripts and compiled
C++ ISAPI dll’s to perform the web functions.
A
small percentage of the Tech+Center
administrative functions are written in C++ and compiled into an ISAPI DLL that
can not be modified by the end user.
Most of the Web+Center functions are written in the Microsoft Visual
Basic (VB) based Active Server Pages (ASP) scripting technology that comes
installed with the MS Internet Information Server (IIS).
The
ASP web scripting language is very easy to learn, easy to debug, and very fast
for development and deployment of customizations to the Web+Center product.
What
makes this language easy for development is its error reporting and error
parsing that instantly tells what module is at fault, the line number where the
run time or parsing error occurred, and it will even point out where in the
line the error is found.
To
make changes to the code, simply edit the ASP file (registration.asp for
example) with your ASCII editor, edit and save the change. The next time that ASP script is reference
by the web, the modified script will be called and executed. No compiler or compilations are required.
ASP
modules are combinations of HTML code and embedded script code. The script and logic code is separated from
the HTML code with the special code delimiters tags like “<% and %> tags.
For
example, a simple ASP file that writes 15 numbers to the page might be:
<html>
<head>
</head>
<body>
Here are 10 numbers created
by an ASP script:
<% ‘ Here is the code
For I = 1 to 15
Response.write (I) & “,”
Next
%>
That’s it !
</body>
</html>
This
would display an HTML page that looks like
Here are 15 numbers created
by an ASP script: 1,2,3,4,5,6,7,8,9,10 That’s It!
The
VB language is a fairly functionality complete programming language that is
sufficient to customize your Web+Center application for your particular
business requirements.
There
are numerous resources on the ASP programming language available on-line or in
book format. Here is a very short list
to get your started.
On-Line
Websites about ASP programming:
http://www.w3scripts.com/asp/
http://www.learnASP.com
http://www.asplists.com
http://www.aspwire.com
http://www.coveryourasp.com
http://www.aspguild.org
Lists of many ASP site
http://www.learnasp.com/links/
Books:
Active Server Pages 2.0 or 3.0 by Wrox Press
ASP in a Nutshell by O’Reilly Press
VB Script in a Nutshell by O’Reilly Press
VBA for Dummies Quick Reference (VBA guide but close
to VB Script)
The book Active Server Pages Professional by Wrox
Press is really overly complex unless you are already very proficient at ASP
programming and the Beginning Active Server Books are more than sufficient to
learn and implement custom ASP solutions for Web+Center.
Customizations:
The
easiest approach to creating new ASP code
is to copy and paste existing Web+Center modules into new modules that
you create. Existing Web+Center modules
have the necessary overall ASP/HTML structure, and database connection code,
security and permission code, and include some required basic configuration
files.
Once
you create, test and debug a new module, you can link it to the existing site
in several ways. In the Tech+Center
application, there exists a hidden “Custom” button that you can enable by
replacing that clear hidden Custom button with a regular button. A blank button called (blank_button.gif) is
available in the Tech+Center directory.
Using a graphic tool of your choice, one can put the lettering on the
blank button graphic and then rename your newly created button
ts_custom_button.gif to make it appear in the button panel.
If
you edit and modify the ASP modules, the next time you upgrade to another
version you will need to merge in your changes into new version.
To
determine if your Web+Center ASP modules and techsupp.dll ISAPI code is current
or not with the most currently released software, ISS has developed a special
Version server and each version of Web+Center comes with companion software to
check your versions against the currently released version. To run this file version check utility, run
the script call CheckVersions.asp which is located in the each of the
Techcenter, customercenter and businesscenter directories.
For
example, to check if you Tech+Center application is current, with your browser
run the URL:
http://<your host
name>/tech30/checkversions.asp
The
other applications versions can be checked by running:
Customer+Center:
http://<your host
name>/customer30/checkversions.asp
Business+Center:
http://<your host
name>/business30/checkversions.asp
This
will provide a report showing what files are newer, older or modified by
you. You can individually download and
install versions that are out of date by clicking on the appropriate file name
link.
Once
you have downloaded the file, you will need to compare it to your existing
version and if necessary integrate your custom changes into the new
module. There is a tool called
“WinDiff.exe” that comes with the MS developers tools that provides a good line
by line file comparison utility to help merge in any changes.
If
you plan on doing extensive changes to a module, we recommend that you copy and
paste the whole module into newly renamed module, maybe a module name that has
your company or organization name it like RegistrationMyCompany.asp. Then make all of your changes to that
module.
Then search the ASP files in that directory that are called the original module (registration.asp for example) and modify the pages that call Registration.asp to now call RegistrationMyCompany.asp. The TextPad editor available from www.textpad.com has Find In File feature to make this search across the directory easy to find.
Another
option if you plan on doing extensive modification or even new ASP code to
perform functions not already provided by Web+Center code base is to create and
test the new code and then add a link or button to that module from somewhere
in the application where it is appropriate.
Additional
Tech+Center reports can also be added to the Report.asp main page module by
simply adding another link to the reports.asp file.
All three of the appplications (Tech+Center, Business+Center and Customer+Center) use a cookie based method of login security.
When a Tech Staff member, Business+Center user or customer logs into the Web+Center application, the application sends an browser based “Cookie” back to user web browser from the server that authenticates the user if the correct Login ID and password were passed in the Login form. This cookie is unique for each of the applications and does not allow a user to run mutiple Tech+Center or Business+Center logins at the same time. with the same browser.
As each Customer+Center, Business+Center or Tech+Center page is executed, it first checks that the user has previously successfully logged into the application by checking for the correct “Cookie”. For some Tech+Center applications, it not only checks for the Login cookie, but it also check the security level for that user by checking with the database to get the current security settings. For example, when the Tech Staff member runs the reports page (reports.asp), it check for the cookie and then performs a database security level lookup on the logged in user and verify that the user is at least Administrative level. For certain Tech+Center pages including reports, administration and configuration pages, the user must have “Administrator” or “Configurator” level accounts. If the program detect that this page is attempted to be called by either an un-authenticated user (no cookie detected) or if the user does not have the right security level, a special INVALID USER page will be displayed to the user.
The invalid user page will display large red text to the user about the access violation. If you wish to edit the text that is displayed when this error occurs, edit the invaliduser.inc file with your own security access message.
Another option if users attempt to access pages they are not provided links to is to enable some email logging options in the invaliduser.inc page. Simply add some code to create an email message that specifies the page that is being attempted to be accessed, the user ID (obtained from the cookie) and time and date of the access violation. Once that message is created, send off an email to Web+Center administrator using the SendEmail() function that is provided for you in the invaliduser.inc page.
You could provide additional information by grabbing the IP address of the user if the user does not have their cookie set properly and they are still attempting to access pages they do not have permission to access.
When a user logs in, they should only be shown buttons and links that they have permission to use and users should not get this page without hacking attempts. If a user book marks a page within the application, and closes the browser and comes back they will also get this error page. Users should be told not to Browser book mark pages within the application since the call on server may change without notice to the end user.
Cookies will automatically be lost when the browser is closed or if they press the Logout option. Web+Center Cookies are not saved in the disk based cookie files (like cookies.txt) since we tell the browser to save them only as long as the browser session is active. This provides a fairly good level of security from persons attempting to duplicate a logged in cookie setting.
Browsers must have their “cookies” enabled for any of the applications to work. A Tech+Center user will experience three frames with errors if cookies are not enabled on the browser.
There are no other cookies that are set by the Web+Center application besides these Login ID cookies.
To monitor and log web pages hit by users, enable the Web Server logs or the Extented server logs. Every HTTP request for ASP pages, or graphics will be defined in the web server logs. Enabling web server logs is available in the Default WebSite Properties window near the botton. Check the Enable Logging option and select anActive Log Format from the choice of logging options available.
One of the benefits of the Web+Center Help Desk product is the open architecture and straight forward design of the database and the application. The table names, columns and database relationships are meant to be self documenting for those that wish to integrate custom applications into the Web+Center suite of products.
Although the tables, columns and relationships are easy to understand, certain rules and data requirements must be followed to ensure database consistency and maintain database referential integrity. Referential integrity is lost, for example, when a customer record is deleted, but other records who have customer_ID keys pointing to that customer record still exist.
We DO NOT recommend you import data into your Web+Center database table using import filters provided by Microsoft or other vendors. Instead of using tools provided by the database vendor, we recommend you use or create new ASP “scripts” that directly connect to the database tables and then modify and insert the data into the database as needed on a record by record basis. This allows for far better control of the data being inserted and you can add additional logic to set default fields to certain values when special conditions exists.
Importing Customer
Records
Internet Software Sciences has already written 2 customer import scripts that exist in the Tech+Center (techcenter) directory. Customize or review these scripts for information on how to create and perform proper customer record imports.
The two scripts (ImportFilter.asp) and (ImportLDAP.asp,
DoImportLDAP) are a starting point to develop your own customer import
code. Open up the scripts using an
ASCII editor and review, edit and customize them to your requirements. They will not run properly without your
customizations. Before running any imports, back up your database completely and be
prepared to run the import process a few times before you get it working
correctly.
The ImportLDAP.asp and DoImportLDAP.asp scripts were originally created to import a table of customers created by an LDAP export. This script will still work for other customer imports as well.
Customer records are stored in the “Customers” table. The only required field for this table is the customer_id field, which is a 20 character text primary key field. This field is created in the Web+Center application as the customer’s Last Name + “underscore” + First Name. For example, if Mary Smith were the customer’s name, the customer_ID field created for that customer would be: “Smith_Mary”. If there already exists a Mary Smith in the database, the application will add a 3 digit random number at the end of the string to create a unique Customer_ID index. This Customer_ID field is required and indexed and must be unique. Although the other fields are not required at the database level, we recommend, as a minimum, populating the contact_fname (first name), contact_lname (last name) and email fields with information when performing any imports.
Importing Asset
Records
We currently don’t provide any asset import scripts but asset imports can be created using the existing customer import scripts and editing the script to handle asset imports rather than customer imports.
The table that the asset information will be inserted into is the Assets table. This table is driven by an Auto-number Integer primary field key called Asset_Number. As soon as you attempt to insert a new record, a new asset_number will be created for that asset.
This table has one required integer field called “dummy” and it must be filled in with some integer value when inserting new records. This field exists to maintain compatibility with previous versions.
Although the other fields are optional at the database level, we recommend populating the equipment_type field as a minimum. If you put any information into either the property_tag, ip_address, serial_number, monitor_serial_number or the computer_id fields, they must be unique values or left as NULL. These fields are indexed and must be unique. You will get a database insert error if this unique condition is not met on any of these fields.
There are also 5 custom asset fields (custom_field1… custom_field5) where you can store information that does not match the current asset column definitions. To change the label in front of the field, simply edit the AssetInfo.asp ASP module with your field names.
Asset assignments are stored in a separate table called AssetAssignment. You must first add and obtain the index (asset_number) for the asset before you can assign the asset to a customer, tech or to another asset. To assign an asset to a customer, insert the original asset and obtain the asset_number created by the auto-number feature of this field. Then add a new record into the AssetAssignment table setting the Asset_number field to the newly created asset_number, and setting the customer_id field to the customer_id of that customer.
Importing Cases
We currently don’t provide any case import scripts but case imports can be created using the existing customer import scripts and editing the script to handle case imports rather than customer imports.
Importing cases is fairly complex since you can only add case records with a valid Customer_ID field and there are required fields, and special date/Time formats required.
The case table is driven by the case_number field which is an auto-number integer primary key field. There are 6 required fields that must be populated when inserting a case record. If one of these fields are blank, you will get an database error and the record will not be inserted. The required fields are:
Customer_id – key back to customers table for customer. If you are importing previous cases without association to a specific customer, set this to a generic customer_id that you create in the database first.
Open_date – this is a required text field that stores the date the case was first opened or created. It must be in the format of YYYYMMDD where YYYY = year, MM = month, and DD is day (01-31).
Open_time – This is a required text field that stores the time the case was first opened in the format of HHMMSS where HH = hour (01-23), MM= minutes (00-59) and SS=Seconds (00-59).
mod_date – this is a required text field that stores the date the case was last modified or for new cases, the date it was created. It must be in the format of YYYYMMDD where YYYY = year, MM = month, and DD is day (01-31).
mod_time – This is a required text field that stores the time the case was last modified or for new cases it stores the time open_date time. This field is in the format of HHMMSS where HH = hour (01-23), MM= minutes (00-59) SS=Seconds (00-59).
Group_ID – This stores the Groups_ID that points to the Group defined in the Group_ListTable. Every case must be assigned to a group. By default, you should assign it to the group defined as the “default” group. The Default group is group in the Group_List table that has the default_flag field set to 1. Only one group should be defined as the default group. This field can not be NULL.
Although not required at the database level, the following fields should be populated when importing any case records. Also, it may be necessary to parse the longer case detailed history information to remove any HTML Tag characters or special characters that may cause the HTML form to fail when the text is displayed by the browser. Also, the size should also be limited to the MaxCaseHistorySize variable in the configuration file.
Case_one_line – This is a text field describes the problem in 100 character or less.
Case_history – This is a memo type field that holds the running log with the detailed information about the case. Special characters sequences format the text into Red and Green fonts which make it more readable. Review the DoTCaseform.asp module to see how case history text is formatted with information on the date, time and user information.
Status – This should be set to one of the integer values below. It should not be left empty or NULL.
Valid Case Status Numbers
0 = Open (Active)
1 = Closed
2 = Open (Waiting)
3 = Open( On Hold)
A case can either “Open” (case status 0,2, or 3) or “Closed” (case status = 1). There are places in the code where we only determine if the case is Closed (status=1) or any Open state (0,2,3).
Severity (referred to as Priority) – This is an integer field that should be set to “0” if the priority is un-assigned, or to a value from 1 to 10 with 1 typically defined as the highest priority. The priorities are defined in a separate “Priority” Table. Only populate your cases with priority values that exist in the priority table.
Modified_flag is integer flag field that is set when a case is initially created or modified by the customer and then reset when the assigned Tech Staff member reads (opens up) the case ticket. The Tech Staff member does not have to update the case but only needs to view the case ticket to reset this field back to un-modified (0). This flag is used to enable the cases to appear in red font in the Open Cases windows so technicians can immediately identify cases that are new or updated. Set this to either 1 (modified) or 0 (un-modified or reviewed).
Category Fields C1, C2, C3, C4, C5…C100
The fields C1, C2, C3… C100 hold the category setting for each of the categories for that case. They should be left as NULL or set to 0 for the N.A. (Not Applicable) setting, or to a valid Category_ID for that category number.
Categories and their corresponding sub “category items” are defined in the Categories Table. The example table below shows how the Categories_table would be populated with two categories each with 3 category items.
Category Table Entries
|
Category_Number |
Item_number |
Category_name |
Item_name |
State |
|
1 |
1 |
Operating
System |
Windows
NT |
1 |
|
1 |
2 |
Operating
System |
Windows
2000 |
1 |
|
1 |
3 |
Operating
System |
Linux |
1 |
|
2 |
1 |
Computer
Type |
Dell |
1 |
|
2 |
2 |
Computer
Type |
Compaq |
1 |
|
2 |
3 |
Computer
Type |
HP |
1 |
Figure 6-1 Example Categories Table
The table above defines two categories that will create two category drop down boxes in the case form for the customer and tech staff member. The first category drop down box will be labeled Operating System with “Category Items” of Windows NT, Windows 2000 and Linux.
If a user selects the Windows 2000 item from the drop down box, the application will save the item number (2) into the C1 column in the case table. The column C1 is mapped by combining “C” plus the Category Number to create “C1”.
The database can store up to 100 categories although we don’t recommend using more than about 4-6 categories since the users or tech won’t fill them out at all if there are too many. Any category column (C1… C100) in the database not set to a category item value should be defaulted to “0”.
If you create an import script that set category values, you must analyze your categories table to determine the Category_Number and Item_Number values. There is example category setting code in the DoTCaseForm.asp module in the TechCenter directory.
browser
run the URL:
If
you feel you have found a bug in a particular ASP module, check the Version
Server to see if a new version of that file exists. If the CheckVersion.asp script determines that a newer version is
available, backup your current version, and replace that file with the new one
from the version server.
Each
major release (2.0. 3.0, 4.0 etc) of
Web+Center will have its own CheckVersion.asp script that will reference
updates in that release. The current major release version is 4.0.
When
version 4.0 is released, user must
perform a full upgrade to 4.0 before they will be able to access the 4.0
version server.
Licensed users must purchase the Software Support and Free Upgrade plan to upgrade their 3+ tech user systems to the new major version when it available. Updated License keys will be made available to users that have purchased the support/upgrade package.
To report problems to ISS, use the Web-based support option available on the main ISS support page (http://www.inet-sciences.com/support.html).
The Customer+Center provides two modules that are designed to be customized by the user to integrate their website look and feel into all of the Customer+Center pages. If you want to add banner navigation and footer links to the Customer+Center pages, do not edit the individual pages, but simply edit the CCHeader.inc and CCFooter.inc files with your customizations. You should be able to copy these pages into future versions for immediate compatibility with your current site. Graphics can also be replaced by your own graphics and the graphic files can be easily copied over. Refer to the User Guide and Getting Started Guide for more information on customizations.
The Business+Center also provides a similar set of modules named bcheader.inc and bcfooter.inc. These files will control the banner and footer content for most of the Business+Center pages.
The Web+Center application can be run with either the Access back-end database or a SQL*Server database. If you started with the Access database and wish to migrate all of your existing Access database to SQL*Server, we recommend you use the special database migration scripts written specially for this purpose. We recommend you DO NOT use the SQL*Server data export wizard to convert your database from Access to SQL since those scripts will not perfectly transfer all of the keys, constraints and other important database information and it is very difficult to attempt to fix up the database using this method.
To migrate from an Access back-end database to a SQL*Server Web+Center database, launch the script in the Tech+Center (Tech40) directory called ConvertToSqlServer.asp. This page will display explicit instructions on how to perform the conversion. Plan on about 30 minutes to perform and test the conversion. Perform this conversion when users are off-line so data is not lost during the conversion. Be prepared to revert back to Access database if your conversion is not successful.
Once the conversion is complete, there are no methods to go back to the Access database since there are NO scripts for converting from SQL*Server back to Access formats.
We typically recommend moving to SQL*Server if you have more than 25 techs using the system on a consistent basis or if you are running into other performance issues. You must separately purchase your SQL*Server/SQL 2000 license.
Customers log into the Customer+Center by providing a Login ID or customer username and a password. An optional method exists if all of the users are authenticated NT domain users.
If you want the Web+Center to directly log in users who are already authenticated on the domain with a single web page link click, follow these steps below:
Put your users NT login name into the customer_username field in the Web+Center customer database. The Web+Center customer_username field is limited to 20 characters. You can enter this information into the customer record using customer import tools like ImportLDAP.asp and DoImportLDAP.asp or they can be entered individually in the Tech+Center.
Change the file permissions on just the DoAuthLogin.asp file in the customercenter directory and set the permissions for this file to just domain users.
Create a web link to this file like http://<ip or domain>/customer40/DoAuthLogin.asp
This page login script works by grabbing the LOGON_USER value from the HTTP headers and using that for the Customer+Center login customer_username. This field is then checked with the Customer+Center Customers Username field. If it exists, then the user will log into the Customer+Center.
The most extensive change in Version 4.0 of the Web+Center application is the ability to easily change labels on any Web+Center ASP page. All of the labels of the Web+Center are now defined as string variables that are defined in *.inc (include) files that are located in the \language sub directory of the webcenter folder.
In addition to text labels defined in the language directory, all of the button graphics are also commonly located in this language directory as well.
The language include files and the graphics are referenced from the web+center application by two methods. First they are referenced as files using a relative physical directory file approach that goes up one directory from the (techcenter, customercenter, pocketcenter, etc) directory and then down into the language directory using the “parent Paths” method of referencing files. The second approach to referencing language files is through a virtual directory definition called “wclangauge”. Both access methods are used due to the architecture of ISS and ASP scripting language.
To customize the labels and buttons for another language or to simply change some of the text labels, try one of the two methods listed below:
(1)For English language customers, one may wish to change the labels to another set of words but do not want to change every ASP page code that uses them. In version 4.0, all of the labels are defined in a few label and word definitions files that are located in the language subdirector. All three of the applications (Customer+Center, Tech+Center, and Business+Center) all used the same language definition files so if a change is made to a common label, it is changed for all of the applications.
For example, the case status label of “Open (on-hold)” is now defined as phrase definition in the wclabels.inc include file as:
wc_Open_On_Hold = "Open (On-hold)"
To change this phrase definition to Open (Wait for Customer), edit this line in the wclabels.inc file to:
wc_Open_On_Hold = "Open (Wait for Customer)"
Now in all of the Web+Center applications that use this phrase, the “Open (On-hold)” label will now read “Open (Wait for Customer)”. These language definitions are included by all (3) of the applications so that any conversions only have to be performed in a single location.
(2) For non english language Web+Center users, the Web+Center can now be converted quickly to an new entire language. In addition to translating the text labels, all of the buttons have been moved to this common directory to allow the buttons to be recreated with translated text. See the table below describing all of the language dependent items that must be converted for a different language.
To convert Web+Center to a new language or if you plan to make extensive language changes, please use the following steps:
Step 1: First COPY and PASTE the whole \language directory into a new directory called “languagebackup” for backup purposes. Make any changes in the original language sub directory since the code will be attempting to reference files in the “language” using both relative file methods and virtual directory definitions. The “languagebackup” can be used as backup to recover original files if needed.
Step 2: Make any necessary language changes to the *.inc (include) files and graphic files listed below in the language directory. When making changes to the include files, only the string value should be adjusted, and DO NOT adjust the variable name.
For example to change the label “Customer” to “Staff Member” change:
Wc_Customer = “Customer”
To
Wc_Customer = “Staff Member”
File Type or Name |
Contents |
|
Wclabels.inc |
Most of the web+center language definitions |
|
Wclabel2.inc |
More Web+Center language definitions |
|
Wclabelsadmin.inc |