Consultor Eletrônico



Kbase P18434: How to connect to a Progress database from Actuate Developer
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   10/7/2004
Status: Verified

GOAL:

How to connect to a Progress database from Actuate Developer Workbench using SQL89 small client model.

FACT(s) (Environment):

Actuate

FIX:

----------------------------------
Preparing the Progress Environment
----------------------------------
There are a few steps that must be completed to prepare the Progress environment before attempting to connect to the Developer Workbench.

1. Set the following environment variables on both the CLIENT and SERVER machines:

PROCFG=C:\DLC\progress.cfg
PROMSGS=C:\DLC\promsgs
DLC=C:\DLC
PATH=C:\DLC;C:\DLC\BIN;%PATH%

Set the following environment variables on the SERVER machine:

On Unix systems:
PROOIBRK=<complete path>/dlc/bin/_prooibk
PROOIDRV=<complete path>/dlc/bin/_prooidv

On NT systems:
PROOIBRK=C:\DLC\BIN\OIBRKR32.EXE
PROOIDRV=C:\DLC\BIN\OIDRVR32.EXE

On VMS systems:
DEFINE PROOIBRK BIN:_PROOIBK.EXE
DEFINE PROOIDRV BIN:_PROOIDV.EXE

Where C:\DLC is the directory where you installed V8.2.

Note to users of Win NT 4.0:
NT environment variables must be specified in the following manner:
Right-click on My Computer -> Choose Properties -> Choose the
Environment tab. Define each environment variable in this screen.

2. Ensure that the file ESQL32.DLL is installed on the CLIENT machine.

3. Add a "tcp" entry to the SERVICES file for the OIB on both the CLIENT and SERVER machines.

4. Add a "tcp" entry to the SERVICES file for the Progress Client on both the CLIENT and SERVER machines.

5. Test the client connection to the Progress database, before attempting to connect from an Actuate report.

CLIENT Machine Setup
--------------------
On Win95 the Microsoft Service Pack 1 is required to run Actuate.

---------------------------------------------------------
Startup Parameters for a Progress DB and the Progress OIB
---------------------------------------------------------
Command-line parameters are shown below (for both UNIX and Windows NT) for starting a Progress database and the Progress Open Interface Broker on the SERVER machine.

On UNIX:

proserve -db <database-name> -S <db-port> -N <protocol>
-H <db-host>

prooibrk -SV -S <broker-port> -N <protocol> -H <broker-host>


On Windows NT:

_proserve -db <database-name> -S <db-port> -N <protocol>
-H <db-host>

oibrkr32.exe -SV -S <broker-port> -N <protocol> -H <broker-host>


On VMS:

prog/multi=start/service=<db-port>
etwork=tcp/host=<db-host> -
<database-name>

prog/oib=start/host=<db-host>
etwork=tcp/service=<broker-port>

NOTE:
To verify that the broker started correctly check the prooidrv.lg which should be in the same directory as you started the broker.

Where:

* <database-name> is the name of the database; eg., sports

* <db-port> is a registered TCP socket; it must use a different socket than <broker-port>

* <db-host> is the name of the host computer

* -SV triggers Small Client Behavior

* <broker-port> is a registered TCP socket (in both the server and the client(s) Services File)

* <broker-host> is the "host name" where OIB is installed

* <protocol> signals connection to OIB; use TCP/IP as the protocol

NOTE: The -SV parameter must be the first parameter when starting the broker.

NOTE: If you are starting the broker from an icon on NT, make sure that the Start In directory on the icon's Properties' Shortcut tab is the same as the directory where the database in located.

To shut the dat.abase or broker use "proshut" command on the command line (all platforms).

ex: proshut -db <dbname>
proshut -SV -S <broker-port> -N <protocol> -H <broker-host>


----------------------------------------------------
Connecting to a Progress DB from Developer Workbench
----------------------------------------------------

Databaselist: -db <database-name> OTHER PARAMETERS OPTIONAL see below
-------------------------------------------------------------
Dllpath: ESQL32.DLL
-------------------------------------------------------------
Password:
-------------------------------------------------------------
StartUpParameters: -SV -S <broker-port> -N <protocol>
-H <broker-host>
-------------------------------------------------------------
Username:
-------------------------------------------------------------


/* If there is no Client Networking, only Database license on SERVER*/
In this case, you must have the open interface broker/driver communicate with the database server as a self-service client.

To do this, the broker must be started in the same directory as the
database.
ex: cd dbdir
proserve -db <database-name>
prooibrk -SV -S <broker-port> -N <protocol> -H <broker-host>

In Actuate, removing all networking parameters from the database list will allow the connection between broker and database server to be a local, self-service connection.

ex:
databaselist: -db <database-name> NO PATH or EXTENSION

/* If Client Networking is installed on SERVER machine */
In this case, you have a choice to use the self-service client connection described above, or you can make this connection with all the network parameters.

ex:
databaselist: -db <physical-database-name> -S <db-port>
-N <protocol> -H <db-host>

Note that if the broker and database server are in the same directory on the same machine, a self-service connection will be faster. Also note that as long as Client Networking is installed on the SERVER machine, the database(s) do not have to be located on the same machine as the broker.

To connect to more than one database:

databaselist:-db <physical-database1-name> -S <db1-port> -N <protocol>
-H <db1-host>-db <physical-database2-name> -S <db2-port> -N <protocol>
-H <db2-host> etc.

NOTE: Optionally, the following two parameters can be added to the DatabaseList if Progress security is in place:

-U <username> (user name registered to Progress Security)
-P <password> (password for aforementioned user)

Also note that one can log onto multiple databases (using different user name/password combinations if desired) and subsequently accomplish cross-database joins, select statements, etc. using multiple -db sections.
For instance:
-db sports -H ahost -S asvc -U aname -P apass -db inventory
-S bsvc -U bname -P bpass

Note as well that if one fills in either the Username or Password in the connection box, both the Username and Password will be attached to each -db in the Database List automatically, using the -U and -P parameters.
For example, if one had the following defined:

DatabaseList: -db adb -H ahost -S asvc -db bdb -H bhost -S bsvc
Username: me
Password: apass

the DatabaseList internally will be sent as:

-db adb -H ahost -S asvc -U me -P apass -db bdb -H bhost -S bsvc
-U me -P apass.