# CHAPTER 2: Empress Manual Set

## 2.1 Introduction

This section is designed to present a brief overview for each manual; it also contains the following information:

- What does the manual contain?
- When to read it?
- What order should it be read?

Empress Manual Set comes with the distribution CD-ROM in HTML format and is organized in the following fashion:

                 Trade Marks and Copyright

                 Trade Marks

                 Version Notes

                 V8.62 Version Notes

                 General

            A1   Documentation Roadmap
            A2   Manual Pages

                 SQL

            A3   SQL User's Guide
            A4   SQL Reference

                 Utilities

            A5   Database Administrator's Guide

                 Report Writer

            A6   Report Writer

                 C/C++ API

            B1   Command Language Interface
            B2   C/C++ Interface - mx Routines
            B3   C/C++ Kernel Level Interface - mr Routines
            B4   User Defined Functions
            B5   The SQL Precompiler

                 JDBC API

            B6   JDBC Interface

                 Fortran API

            E1   Fortran Language Interface

                 Web API

            H1   Web HTML Toolkit: Application Developers Guide

                 Server

            D1   Database Server
            D2   ODBC Interface

                   Replication

            F1   Replication User's Guide

                 4GL

            C1   4GL User's Guide
            C2   4GL Programmer's Guide
            C3   4GL Tools Reference
            C4   4GL Language Reference
            C5   4GL Administrator's Guide

                 GUI

            G1   GUI C API
            G2   GUI Script Language Reference
            G3   GUI Tools Reference
            G4   GUI User's Guide

## 2.2 Trade Marks

This document contains trade mark and copyright declaration.

## 2.3 V8.62 Version Notes

This document provides information on the latest features, enhancements and the compatibilities of the new release for both software and the documentation. This is useful for the current users to obtain updated information quickly without reading massive materials that s/he already knew.

Current users should read this version notes before working with the new release.

For the new users, this sets up an example of what information should you expect to get from Empress when you upgrade the product.

## 2.4 Documentation Roadmap

This manual is provided to guide users through the Empress Manual Set and the accompanied documentations.

Since manuals are valuable resources when working with a software product. It is important to find the necessary tools to be productive. New users should always read this manual first.

## 2.5 Manual Pages

This manual contains information on all commands that invoke Empress products and utilities. Each man page provides the following information:

- Name of the command and brief description
- Command syntax (its usage)
- Description of the command
- Type of files this command is invoking
- Reference documents
- Error diagnostic
- Copyright
- Addition notes (if any)

This manual can be used as a central point of all other manuals.

## 2.6 SQL User's Guide

This manual provides the following information:

- It explains the structure of Empress database.
- It shows examples of creation and accessing the database.
- It explains the operation of Empress SQL's Interactive Interface.
- It lists the frequently used Empress variables.
- It discusses some important query language topics.

If you are unfamiliar with SQL or the relational database concept, consult this manual and try the numerous examples provided.

## 2.7 SQL Reference

This manual contains a list of all SQL commands along with their command syntax, explanations, notes, and examples. The SQL commands are classified under the following sections:

- Data Definition Commands
- Data Manipulation Commands
- Data Control Commands

In addition to the command references, Empress data types, the Interactive Interface and the Executive Interface are also explained in detail.

Experienced Empress users should consult this manual when looking up command syntax or data type parameters.

## 2.8 Database Administrator's Guide

This manual provides information necessary to perform database administrative tasks. Administrative tasks may include the following:

- Installation of Empress system.
- Modifications, or viewing of the data dictionary (system tables within Empress).
- Changing administrative and system variables of Empress.
- Engaging the various logging activities such as the audit trail and the recovery log.
- Database backup.
- Importing and exporting database data using ASCII files.
- Loading fixed format ASCII data into the database using the Empress Database Loader.
- Performing a warm restart.
- Administrating, maintaining and customizing on-line help files.
- Administrating, and customizing shared memory setups, and how to use the shared memory features to enhance performance.
- Performing database integrity checking and repairing.
- Optimizing database access performance.

Database Administrator should consult this manual for the administrative tasks.

## 2.9 Report Writer

Empress has the ability to generate customized reports that can contain data either from an Empress database or from an ASCII file.. A report is generated and formatted via a Report Writer script. The syntax and semantics of the script language are explained in detail in this manual.

Users can use examples provided in this manual as templates for creating reports. Formatting tips and conventions are also available.

## 2.10 Command Language Interface

In addition to the interactive interfaces that Empress provides for ad hoc SQL queries, operating system command line interfaces, and C language interfaces are also provided.

Operating system interfaces allow Empress users to interact with the database at the prompt level of the command shell.

The Standard C language interface involves simple interaction with the database by passing SQL statements via C function calls. The result is later retrieved from a dump file.

## 2.11 C/C++ Interface - mx Routines

In addition to the Command Language Interfaces, a series of Empress C library routines called the mx routines are available for C/C++ development. These library routines provide Empress users the capability of manipulating and retrieving Empress data on a record-by-record basis. This manual provides a reference section for all the mx routines. Examples are included in addition to the standard syntax and synopsis description so this manual can be used as a simple tutorial as well as a reference guide for mx routines.

The mx library routines enable you to develop simple C/C++ applications that can interface with Empress databases and which require record-at-a-time processing.

## 2.12 C/C++ Kernel Level Interface - mr Routines

Empress also provides another set of library routines called the mr routines. These routines are used for C/C++ development to produce fast and efficient code. These library routines are more complex than mx routines; it provides lower level interface to the kernel. This manual provides a reference section for all the mr routines. Detailed examples accompany each routine that can be compiled and run. This manual can also be used as a tutorial as well as a reference guide for mr routines.

The mr library routines enable you to develop performance critical C/C++ applications that can interface with Empress databases and which require record-at-a-time processing.

## 2.13 User Defined Functions

Empress has the ability to incorporate user defined functions, operators, procedures and aggregate functions as User Defined Functions or Persistent Stored Modules.

This manual outlines the procedure for the implementation of user defined functions, operators, procedures and aggregate functions. It expects the reader is knowledgeable in C programming and database concepts.

## 2.14 The SQL Precompiler

The SQL Precompiler enables users to embed SQL statements into C programs. The SQL Precompiler program can be either Static SQL (consists of SQL statements with the composition that are known beforehand) or Dynamic SQL (consists of SQL statements their composition will be created at execution time and can be changed while the application is running).

This manual describes how static and dynamic statements can be used in C programs to access Empress databases.

## 2.15 JDBC API

JavaSoft has developed a standard SQL database access interface, the JDBC API. Empress JDBC Interface is developed based on this standard which provides Java programmers with an interface to Empress databases.

If you are building Internet/RDBMS applications, you should consider using this interface. This interface requires user to have the following knowledge:

- C programming
- Java Programming
- Object Oriented Design
- ODBC API

## 2.16 Fortran Language Interface

The Fortran Language Interface is intended for users who write Fortran (either f77 or f90) applications and want to access an Empress database through their applications.

This manual describes three different Fortran language interfaces:

- Standard Interface

  SQL statements are executed against the Empress database by a single Fortran call. Results from the query are optionally retrieved to a dump file. The Fortran program can then access the database values by reading the dump file.

- SQL Precompiler (Static SQL)

  SQL statements are embedded with the Fortran code. The SQL Precompiler then translates the SQL statements within the code into valid Fortran code. The resulting code is then compiled, linked and run.

- Database Manipulation Language Interface (mf routines)

  A library of Fortran routines is provided by Empress. Fortran programmers can use these routines to retrieve records from Empress tables a record at a time.

The above three interfaces are listed so that the complexity and efficiency grow from the top of the list. This manual contains examples that can be compiled and run, so users using the Fortran Interface for the first time can have some hands-on experience. The manual also serves as a reference guide to the Fortran Interface.

*** Empress Fortran Language Interface is not available for Win32.

## 2.17 Web HTML Toolkit: Application Developers Guide

The Empress Web HTML Toolkit is a set of CGI programs which perform operations on databases using input from HTML forms. They also allow HTML pages to be built up "on the fly" from the results of database queries and from user input.

Applications using the Toolkit are designed to use an HTML browser as the user interface, and to communicate with an Empress databases.

This manual provides general guidelines for invoking the toolkit CGI utilities and as a reference guide for Internet/Browser application developers. Empress expects user of this toolkit is familiar with the Hypermedia Text Markup Language.

## 2.18 Database Server

With the Empress Database Server, you can access remote databases residing on database servers that maybe on different types of machines. Once the Empress Server is installed and setup, users can then access selected remote databases (on other machines) as if the database existed on their own machines. All functionality of Empress is transparent to the server.

This manual contains in-depth information relating to the Empress Database Server. The following topics are covered:

- General Database Server Concept
- Heterogeneous Database Server
- Setup of the Database Server
- Client and Server Communication
- Database Server Administration
- Database Server and Shared Memory

*** Empress Database Server is not available for Win32.

## 2.19 ODBC Interface

Empress ODBC Interface consists of a set of standard (Microsoft's Level 2 ODBC API standard) ODBC application programming interface and a driver. It allows PC client applications running from Windows 95, Windows NT and Unix Client Applications to access data from (or to) Empress databases and other ODBC compliance software products. This includes: MS Access, MS Word, MS Excel, MS Query, Visual Basic, Visual C++, Lotus 123, Lotus Approach, S-Designor, Crystal Report, PowerBuilder, and etc.

This manual describes the concept, the usage and the operational parameters of the Empress ODBC Interface.

## 2.20 4GL User's Guide

Empress 4GL is a window-based development environment, using a powerful event driven 4GL language.

This manual presents an overview of Empress 4GL to the first time user. It explains the conventions used in Empress 4GL and provides general 4GL concept. The 4GL programming language and development tools are introduced along with examples. If you are new to Empress 4GL, it is strongly recommended that you read this manual to grasp the necessary paradigm.

*** Empress 4GL is not available for Win32.

## 2.21 4GL Programmer's Guide

Each chapter of this manual covers an element of the 4GL concept or component in such a way that will help a programmer develop 4GL applications.

Where the 4GL User's Guide gives an introduction to the 4GL concept, the 4GL Programmer's Guide is designed to complete the learning cycle and provide you with in-depth knowledge of 4GL operations. This manual also provides suggestions on how to design and write 4GL applications and outlines recommended programming style and sequence.

*** Empress 4GL is not available for Win32.

## 2.22 4GL Tools Reference

Once you have obtained the knowledge of how to design and write a 4GL application, you will need the necessary tools to develop your 4GL applications. Empress 4GL tools are integrated in the 4GL environment. These tools are described in detail in this manual.

*** Empress 4GL is not available for Win32.

## 2.23 4GL Language Reference

This manual is a technical reference to all Empress 4GL statements and functions. For each statement or function, a syntax entry, special notes, and examples are provided. Consult this manual when searching for Empress 4GL functionality provided by 4GL functions or statements.

For ambitious programmers, reading this manual alone is not sufficient to understand the Empress 4GL language. The 4GL language is heavily integrated with the tool set provided by the 4GL environment. A thorough understanding of 4GL concepts and the tool sets are required prior to actually using the 4GL language.

*** Empress 4GL is not available for Win32.

## 2.24 4GL Administrator's Guide

The Empress 4GL environment is very flexible and offers room for customization. This manual describes the areas of 4GL that can be customized. It also explains the internals of Empress 4GL. Questions such as the ones below are answered:

- How does 4GL store its applications?
- What are some relevant system variables?
- How do you create new terminal definitions and customize old ones?
- How do you run Empress 4GL in X Window?
- How to write user defined functions for Empress 4GL?

*** Empress 4GL is not available for Win32.

## 2.25 GUI C API

This manual is a complete reference to the functions provided in the C application programming interface for the Empress GUI Builder. It is intended for programmers who want to use the C language with Empress GUI Builder applications. It assumes that the reader is an experienced C programmer. Familiarity with the Empress GUI Builder is also required. Knowledge of X Window and Motif programming is not necessary.

Several complete examples are included in this manual, together with explanations.

*** Empress GUI Builder is not available for Win32.

## 2.26 GUI Script Language Reference

This manual contains an alphabetical listing of Empress GUI Builder script statements and functions. Entries contain syntax diagrams, notes, and examples.

*** Empress GUI Builder is not available for Win32.

## 2.27 GUI Tools Reference

This manual describes the tools and facilities provided by Empress GUI Builder development environment. It is intended as a reference manual. The user who wants to find out how to use a specific tool can read the parts of this manual dealing with that tool.

The manual assumes that the reader understands the nature and properties of the various Empress GUI Builder entities, as described in the GUI User's Guide manual. The reader should also understand the basic mouse operations of clicking, selecting, dragging, etc., described in the GUI User's Guide.

*** Empress GUI Builder is not available for Win32.

## 2.28 GUI User's Guide

This manual is designed for application developers, (designers, programmers and analysts), who want to learn how to create applications with Empress GUI Builder. It explains what Empress GUI Builder is all about, its concepts and usage. It also provides some examples to show how to create Empress GUI Builder applications.

This manual assumes that the reader has some basic systems expertise with Graphical User Interfaces (GUI). It is also assumed that the reader is familiar with Empress RDBMS.

*** Empress GUI Builder is not available for Win32.

## 2.29 Replication User's Guide

This manual describes the features of Empress Replication. It provides an introduction to Empress Replication, its benefits and usages. Possible usages of Empress Replication are explained through some scenarios with an example of a company that wants to use Empress Replication to distribute its data to its branches. A glossary for the commonly used words in this manual is also provided. The Replication References gives details of the usage of SQL commands and the utilities that are used for replication purposes.