Embedded SQL in Design
Whittall, Conrad
Conrad.Whittall@Cognos.COM
Fri, 22 Mar 2002 13:48:58 -0500
This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.
------_=_NextPart_001_01C1D1D2.39A05230
Content-Type: text/plain;
charset="ISO-8859-1"
As Blue mentions, embedded SQL can dramatically improve the performance of
your PowerHouse application against relational databases...simply by
off-loading work from the application code to the database engine itself.
The example that Mark gave shows that you don't even need to declare a FILE
or CURSOR in your QDESIGN program to be able to get the database to perform
some work for you.
I have often seen customers use declared cursors to join a number of tables
and filter the data returned, so that a single read (FETCH) from the
database achieves what previously would have required multiple FILE
statements (with their associated ACCESS and SELECT statements). This is
particularly useful for reference data, or where the retrieval conditions
are particularly complex -- where the declared cursor can be used as the
non-updateable PRIMARY, and updateable SECONDARY records can be declared to
retrieve the underlying rows from the specific tables that we want the user
to be able to update.
Another area where customers often find that embedded SQL can be used to
improve performance when they move to a relational DBMS is where "WHILE
RETRIEVING" processing has been written into a QDESIGN program. It is often
possible to replace the entire WHILE RETRIEVING with just a single embedded
SQL statement. This is often much more efficient as the data to be processed
doesn't have to be read from the database into the application, potentially
then thrown away when a SELECT statement is applied, changed in the internal
PowerHouse buffers, and finally written back to the database (with the
re-read and checksum calculation automatically being done by PowerHouse to
ensure that nobody else changed the data while you were looking at it).
These techniques often have a more dramatic impact when your PowerHouse
application and the database engine are running on separate systems
connected via a LAN...such as with fat-client Axiant deployments. Using
embedded SQL here often dramatically reduces the volume of data that the
PowerHouse application has to retrieve from the database, and so reduces
traffic on the network between the two systems involved.
One small correction to what Blue mentioned (sorry Blue!). All of the
PowerHouse products on all currently supported platforms access Oracle
databases using the native Oracle Call Interface (OCI) API, not ODBC.
Similarly, they access Sybase Adaptive Server Enterprise (ASE) using the
native Client Library (CT-LIB) API, and access MS SQL Server (6.5, 7.0, and
2000) using the original, now mature, DB-LIB API. On OpenVMS, they access
Oracle Rdb through the database's native Digital Standard Relational
Interface (DSRI) API.
The PowerHouse products on Windows operating systems support the use of ODBC
for accessing other relational databases, such as IBM's DB2/400, Sybase
Adaptive Server Anywhere (ASA, formerly known as SQL Anywhere), and
additionally support the use of ODBC to access Microsoft SQL Server 2000 and
7.0. For anyone migrating existing applications to MS SQL Server 2000 it is
recommended that you use ODBC connections from the outset, as Microsoft is
no longer developing the DB-LIB API for this database and so new features of
this and future releases of the database may not be accessible through the
PowerHouse-provided DB-LIB connections.
You can see the complete list of build and test environments for all the
PowerHouse products on the Cognos Customer Support web site, at
http://support.cognos.com/support/products/ph_software_environments.html
<http://support.cognos.com/support/products/ph_software_environments.html> .
Best regards,
Conrad
Conrad Whittall
e-Learning Architect, Global Education Services
Cognos Incorporated, 3755 Riverside Drive, Ottawa, Ontario, K1G 4K9, Canada
-----Original Message-----
From: Edis, Bob [mailto:BEdis@usbnc.org]
Sent: Friday 22 March 2002 12:42
To: PowerHouse List (E-mail)
Subject: RE: Embedded SQL in Design
G'day Lorry
Depending on the platform you are using embedded SQL can dramatically
improve performance of you PowerHouse code. It generally is only available
if you are accessing a SQL aware DBMS (usually a RDBMS). An example is
accessing an Oracle 8 database with PowerHouse. This uses an inefficient
ODBC connection (SQLNet) that without using embedded SQL offers poor
performance. On the other hand an application accessing Oracle Rdb may not
benefit much from embedded SQL as PowerHouse uses (or at least use to) a
more direct database connection method than ODBC.
Regards,
Blue
-----Original Message-----
From: Lorry Litman [mailto:LLitman@exchange.hsc.mb.ca]
Sent: Friday, March 22, 2002 11:36 AM
To: 'Fry, Mark'; Deskin, Bob; powerh-l@lists.swau.edu
Subject: RE: Embedded SQL in Qdesign
Hi,
I've not used and am not that familiar with the embedded SQL, could someone
explain the why and when one would use this?
Is this to overcome some things that can't be done or is it more effecient
or ...?
Thanx
Lorry Litman
-----Original Message-----
From: Fry, Mark [mailto:Mark.Fry@COGNOS.com]
Sent: Friday, March 22, 2002 4:43 AM
To: Deskin, Bob; powerh-l@lists.swau.edu
Subject: RE: Embedded SQL in Qdesign
...and another example (not from the manual this time) is embedding SQL DML
directly into a procedure without declaring an SQL cursor, as in...
PROCEDURE PREUPDATE RECOVERABLE
BEGIN
SQL IN <databasename> &
UPDATE PERSONNEL &
SET SALARY = 1000000 &
WHERE EMPLOYEE_CODE = 'MF'
END
(<sigh>, if only!!!) :-)
Best Regards,
Mark Fry
Mark.Fry@Cognos.com
-----Original Message-----
From: Deskin, Bob [ mailto:Bob.Deskin@cognos.com
<mailto:Bob.Deskin@cognos.com> ]
Sent: 21 March 2002 19:21
To: powerh-l@lists.swau.edu
Subject: RE: Embedded SQL in Qdesign
I don't think a few examples are going to help in the generalized case. You
can download the manuals for free from www.cognos.com/powerhouse. But here's
an example from the manual.
> SET LIST SQL
> SQL DECLARE EMPLIST CURSOR FOR &
> SELECT EMPLOYEE, FIRST_NAME, LAST_NAME, &
> EMPLOYEES.BRANCH,BRANCH_NAME &
> FROM EMPLOYEES, BRANCHES
> SCREEN EMPBRANCHC
> CURSOR EMPLIST &
> WHERE (EMPLOYEES.BRANCH = BRANCHES.BRANCH) &
> PRIMARY KEY EMPLOYEE
> __ Sql after substitutions are applied:
__ SELECT EMPLOYEE, FIRST_NAME, LAST_NAME,
__ EMPLOYEES.BRANCH, BRANCHES.BRANCH,
__ BRANCH_NAME
__ FROM EMPLOYEES, BRANCHES
__ where EMPLOYEES.BRANCH = BRANCHES.BRANCH
Bob Deskin
PowerHouse Web Product Manager, Application Development Tools, Cognos Inc.
bob.deskin@cognos.com (613) 738-1338 ext 7268 FAX: (613) 727-1178
3755 Riverside Drive P.O. Box 9707 Stn. T, Ottawa ON K1G 4K9 CANADA
-----Original Message-----
From: John Hunter [ mailto:jthunter@nbnet.nb.ca
<mailto:jthunter@nbnet.nb.ca> ]
Sent: Thursday, March 21, 2002 2:18 PM
To: powerh-l@lists.swau.edu
Subject: Embedded SQL in Qdesign
Hi Gang,
Could some kind soul please show me an example of an embedded SQL in
Qdesign? I would RTFM but, alas, I don't have one. I think I'm close, but
am still running into problems. My platform is Powerhouse 820 on VMS.
Thanks,
-John
= = = = = = = = = = = = = = = = = = = = = = = = = = = =
Mailing list: powerh-l@lists.swau.edu
Subscribe: "subscribe" in message body to powerh-l-request@lists.swau.edu
Unsubscribe: "unsubscribe" in message body to
powerh-l-request@lists.swau.edu
http://lists.swau.edu/mailman/listinfo/powerh-l
<http://lists.swau.edu/mailman/listinfo/powerh-l>
This list is closed, thus to post to the list you must be a subscriber.
This message may contain privileged and/or confidential information. If you
have received this e-mail in error or are not the intended recipient, you
may not use, copy, disseminate or distribute it; do not open any
attachments, delete it immediately from your system and notify the sender
promptly by e-mail that you have done so. Thank you.
= = = = = = = = = = = = = = = = = = = = = = = = = = = =
Mailing list: powerh-l@lists.swau.edu
Subscribe: "subscribe" in message body to powerh-l-request@lists.swau.edu
Unsubscribe: "unsubscribe" in message body to
powerh-l-request@lists.swau.edu
http://lists.swau.edu/mailman/listinfo/powerh-l
<http://lists.swau.edu/mailman/listinfo/powerh-l>
This list is closed, thus to post to the list you must be a subscriber.
This message may contain privileged and/or confidential information. If you
have received this e-mail in error or are not the intended recipient, you
may not use, copy, disseminate or distribute it; do not open any
attachments, delete it immediately from your system and notify the sender
promptly by e-mail that you have done so. Thank you.
This message may contain privileged and/or confidential information. If you
have received this e-mail in error or are not the intended recipient, you
may not use, copy, disseminate or distribute it; do not open any
attachments, delete it immediately from your system and notify the sender
promptly by e-mail that you have done so. Thank you.
------_=_NextPart_001_01C1D1D2.39A05230
Content-Type: text/html;
charset="ISO-8859-1"
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
<TITLE>RE: Embedded SQL in Qdesign</TITLE>
<META content="MSHTML 5.50.4913.1100" name=GENERATOR></HEAD>
<BODY>
<DIV><SPAN class=413190318-22032002><FONT size=2>As Blue mentions, embedded SQL
can dramatically improve the performance of your PowerHouse application against
relational databases...simply by off-loading work from the application code to
the database engine itself. </FONT></SPAN><SPAN class=413190318-22032002><FONT
size=2>The example that Mark gave shows that you don't even need to declare a
FILE or CURSOR in your QDESIGN program to be able to get the database to perform
some work for you.</FONT></SPAN></DIV>
<DIV><SPAN class=413190318-22032002><FONT size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=413190318-22032002><FONT size=2>I have often seen customers use
declared cursors to join a number of tables and filter the data returned, so
that a single read (FETCH) from the database achieves what previously would have
required multiple FILE statements (with their associated ACCESS and SELECT
statements). This is particularly useful for reference data, or where the
retrieval conditions are particularly complex -- where the declared cursor can
be used as the non-updateable PRIMARY, and updateable SECONDARY records can be
declared to retrieve the underlying rows from the specific tables that we want
the user to be able to update.</FONT></SPAN></DIV>
<DIV><SPAN class=413190318-22032002><FONT size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=413190318-22032002><FONT size=2>Another area where customers
often find that embedded SQL can be used to improve performance when they move
to a relational DBMS is where "WHILE RETRIEVING" processing has been written
into a QDESIGN program. It is often possible to replace the entire WHILE
RETRIEVING with just a single embedded SQL statement. This is often much more
efficient as the data to be processed doesn't have to be read from the database
into the application, potentially then thrown away when a SELECT statement is
applied, changed in the internal PowerHouse buffers, and finally written back to
the database (with the re-read and checksum calculation automatically being done
by PowerHouse to ensure that nobody else changed the data while you were looking
at it).</FONT></SPAN></DIV>
<DIV><SPAN class=413190318-22032002><FONT size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=413190318-22032002><FONT size=2>These techniques often have a
more dramatic impact when your PowerHouse application and the database engine
are running on separate systems connected via a LAN...such as with fat-client
Axiant deployments. Using embedded SQL here often dramatically reduces the
volume of data that the PowerHouse application has to retrieve from the
database, and so reduces traffic on the network between the two systems
involved.</FONT></SPAN></DIV>
<DIV><SPAN class=413190318-22032002><FONT size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=413190318-22032002><FONT size=2>One small correction to what
Blue mentioned (sorry Blue!). All of the PowerHouse products on all currently
supported platforms access Oracle databases using the native Oracle Call
Interface (OCI) API, not ODBC. Similarly, they access Sybase Adaptive Server
Enterprise (ASE) using the native Client Library (CT-LIB) API, and access MS SQL
Server (6.5, 7.0, and 2000) using the original, now mature, DB-LIB API. On
OpenVMS, they access Oracle Rdb through the database's native Digital Standard
Relational Interface (DSRI) API.</FONT></SPAN></DIV>
<DIV><SPAN class=413190318-22032002><FONT size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=413190318-22032002><FONT size=2>The PowerHouse products on
Windows operating systems support the use of ODBC for accessing other relational
databases, such as IBM's DB2/400, Sybase Adaptive Server Anywhere (ASA, formerly
known as SQL Anywhere), and additionally support the use of ODBC to access
Microsoft SQL Server 2000 and 7.0. For anyone migrating existing applications to
MS SQL Server 2000 it is recommended that you use ODBC connections from the
outset, as Microsoft is no longer developing the DB-LIB API for this database
and so new features of this and future releases of the database may not be
accessible through the PowerHouse-provided DB-LIB
connections.</FONT></SPAN></DIV>
<DIV><SPAN class=413190318-22032002><FONT size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=413190318-22032002><FONT size=2>You can see the complete list
of build and test environments for all the PowerHouse products on the Cognos
Customer Support web site, at <A
href="http://support.cognos.com/support/products/ph_software_environments.html">http://support.cognos.com/support/products/ph_software_environments.html</A>.</FONT></SPAN></DIV>
<DIV><SPAN class=413190318-22032002></SPAN> </DIV>
<DIV><SPAN class=413190318-22032002></SPAN><SPAN class=413190318-22032002><FONT
face=Verdana size=2>Best regards,</FONT> <BR><B><I><FONT face="Times New Roman"
color=#000080 size=6>Conrad</FONT></I></B><I></I> </DIV>
<DIV><FONT color=#808080 size=1><STRONG>Conrad Whittall <BR>e-Learning
Architect, Global Education Services</STRONG></FONT></DIV>
<DIV><FONT color=#808080 size=1><STRONG>Cognos Incorporated, 3755 Riverside
Drive, Ottawa, Ontario, K1G 4K9, Canada</STRONG></FONT></DIV>
<DIV><STRONG><FONT size=1></FONT></STRONG></SPAN> </DIV>
<DIV class=OutlookMessageHeader dir=ltr align=left><FONT face=Tahoma
size=2>-----Original Message-----<BR><B>From:</B> Edis, Bob
[mailto:BEdis@usbnc.org]<BR><B>Sent:</B> Friday 22 March 2002
12:42<BR><B>To:</B> PowerHouse List (E-mail)<BR><B>Subject:</B> RE: Embedded SQL
in Design<BR><BR></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN class=283083717-22032002>G'day
Lorry</SPAN></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN
class=283083717-22032002></SPAN></FONT> </DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN
class=283083717-22032002>Depending on the platform you are using embedded SQL
can dramatically improve performance of you PowerHouse code. It generally
is only available if you are accessing a SQL aware DBMS (usually a RDBMS).
An example is accessing an Oracle 8 database with PowerHouse. This uses an
inefficient ODBC connection (SQLNet) that without using embedded SQL offers poor
performance. On the other hand an application accessing Oracle Rdb may not
benefit much from embedded SQL as PowerHouse uses (or at least use to) a more
direct database connection method than ODBC.</SPAN></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN
class=283083717-22032002></SPAN></FONT> </DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN
class=283083717-22032002>Regards,</SPAN></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN
class=283083717-22032002>Blue</SPAN></FONT></DIV>
<BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px">
<DIV class=OutlookMessageHeader dir=ltr align=left><FONT face=Tahoma
size=2>-----Original Message-----<BR><B>From:</B> Lorry Litman
[mailto:LLitman@exchange.hsc.mb.ca]<BR><B>Sent:</B> Friday, March 22, 2002
11:36 AM<BR><B>To:</B> 'Fry, Mark'; Deskin, Bob;
powerh-l@lists.swau.edu<BR><B>Subject:</B> RE: Embedded SQL in
Qdesign<BR><BR></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN
class=536323017-22032002>Hi,</SPAN></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN
class=536323017-22032002></SPAN></FONT> </DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN class=536323017-22032002>I've
not used and am not that familiar with the embedded SQL, could someone explain
the why and when one would use this?</SPAN></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN class=536323017-22032002>Is
this to overcome some things that can't be done or is it more effecient or
...?</SPAN></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN
class=536323017-22032002></SPAN></FONT> </DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN
class=536323017-22032002>Thanx</SPAN></FONT></DIV>
<DIV><FONT face=Arial color=#0000ff size=2><SPAN
class=536323017-22032002> Lorry
Litman</SPAN></FONT></DIV>
<BLOCKQUOTE style="MARGIN-RIGHT: 0px">
<DIV class=OutlookMessageHeader dir=ltr align=left><FONT face=Tahoma
size=2>-----Original Message-----<BR><B>From:</B> Fry, Mark
[mailto:Mark.Fry@COGNOS.com]<BR><B>Sent:</B> Friday, March 22, 2002 4:43
AM<BR><B>To:</B> Deskin, Bob; powerh-l@lists.swau.edu<BR><B>Subject:</B> RE:
Embedded SQL in Qdesign<BR><BR></DIV></FONT>
<P><FONT size=2>...and another example (not from the manual this time) is
embedding SQL DML directly into a procedure without declaring an SQL cursor,
as in...</FONT></P>
<P><FONT size=2>PROCEDURE PREUPDATE RECOVERABLE</FONT> <BR><FONT
size=2>BEGIN</FONT> <BR><FONT size=2> SQL IN <databasename>
&</FONT> <BR><FONT size=2> UPDATE PERSONNEL
&</FONT> <BR><FONT size=2> SET SALARY = 1000000
&</FONT> <BR><FONT size=2> WHERE EMPLOYEE_CODE =
'MF'</FONT> <BR><FONT size=2>END</FONT> </P>
<P><FONT size=2>(<sigh>, if only!!!) :-)</FONT> </P>
<P><FONT size=2>Best Regards,</FONT> </P>
<P><FONT size=2>Mark Fry</FONT> <BR><FONT size=2>Mark.Fry@Cognos.com</FONT>
</P>
<P><FONT size=2>-----Original Message-----</FONT> <BR><FONT size=2>From:
Deskin, Bob [<A
href="mailto:Bob.Deskin@cognos.com">mailto:Bob.Deskin@cognos.com</A>]</FONT>
<BR><FONT size=2>Sent: 21 March 2002 19:21</FONT> <BR><FONT size=2>To:
powerh-l@lists.swau.edu</FONT> <BR><FONT size=2>Subject: RE: Embedded SQL in
Qdesign</FONT> </P><BR>
<P><FONT size=2>I don't think a few examples are going to help in the
generalized case. You</FONT> <BR><FONT size=2>can download the manuals for
free from www.cognos.com/powerhouse. But here's</FONT> <BR><FONT size=2>an
example from the manual.</FONT> </P>
<P><FONT size=2>> SET LIST SQL</FONT> <BR><FONT size=2>> SQL DECLARE
EMPLIST CURSOR FOR &</FONT> <BR><FONT size=2>> SELECT EMPLOYEE,
FIRST_NAME, LAST_NAME, &</FONT> <BR><FONT size=2>>
EMPLOYEES.BRANCH,BRANCH_NAME &</FONT> <BR><FONT size=2>> FROM
EMPLOYEES, BRANCHES</FONT> <BR><FONT size=2>> SCREEN EMPBRANCHC</FONT>
<BR><FONT size=2>> CURSOR EMPLIST &</FONT> <BR><FONT size=2>>
WHERE (EMPLOYEES.BRANCH = BRANCHES.BRANCH) &</FONT> <BR><FONT
size=2>> PRIMARY KEY EMPLOYEE</FONT> <BR><FONT size=2>> __ Sql after
substitutions are applied:</FONT> <BR><FONT size=2>__ SELECT EMPLOYEE,
FIRST_NAME, LAST_NAME,</FONT> <BR><FONT size=2>__ EMPLOYEES.BRANCH,
BRANCHES.BRANCH,</FONT> <BR><FONT size=2>__ BRANCH_NAME</FONT> <BR><FONT
size=2>__ FROM EMPLOYEES, BRANCHES</FONT> <BR><FONT size=2>__ where
EMPLOYEES.BRANCH = BRANCHES.BRANCH</FONT> </P>
<P><FONT size=2>Bob
Deskin
</FONT><BR><FONT size=2>PowerHouse Web Product Manager, Application
Development Tools, Cognos Inc.</FONT> <BR><FONT size=2>bob.deskin@cognos.com
(613) 738-1338 ext 7268 FAX: (613) 727-1178</FONT> <BR><FONT size=2>3755
Riverside Drive P.O. Box 9707 Stn. T, Ottawa ON K1G 4K9 CANADA</FONT> </P>
<P><FONT size=2>-----Original Message-----</FONT> <BR><FONT size=2>From:
John Hunter [<A
href="mailto:jthunter@nbnet.nb.ca">mailto:jthunter@nbnet.nb.ca</A>]</FONT>
<BR><FONT size=2>Sent: Thursday, March 21, 2002 2:18 PM</FONT> <BR><FONT
size=2>To: powerh-l@lists.swau.edu</FONT> <BR><FONT size=2>Subject: Embedded
SQL in Qdesign</FONT> </P><BR>
<P><FONT size=2>Hi Gang,</FONT> </P>
<P><FONT size=2>Could some kind soul please show me an example of an
embedded SQL in</FONT> <BR><FONT size=2>Qdesign? I would RTFM but,
alas, I don't have one. I think I'm close, but</FONT> <BR><FONT
size=2>am still running into problems. My platform is Powerhouse 820
on VMS.</FONT> </P>
<P><FONT size=2>Thanks,</FONT> <BR><FONT size=2>-John</FONT> </P><BR>
<P><FONT size=2>= = = = = = = = = = = = = = = = = = = = = = = = = = =
=</FONT> <BR><FONT size=2>Mailing list: powerh-l@lists.swau.edu</FONT>
<BR><FONT size=2>Subscribe: "subscribe" in message body to
powerh-l-request@lists.swau.edu</FONT> <BR><FONT size=2>Unsubscribe:
"unsubscribe" in message body to</FONT> <BR><FONT
size=2>powerh-l-request@lists.swau.edu</FONT> <BR><FONT size=2><A
target=_blank
href="http://lists.swau.edu/mailman/listinfo/powerh-l">http://lists.swau.edu/mailman/listinfo/powerh-l</A></FONT>
<BR><FONT size=2>This list is closed, thus to post to the list you must be a
subscriber.</FONT> </P>
<P><FONT size=2>This message may contain privileged and/or confidential
information. If you</FONT> <BR><FONT size=2>have received this e-mail
in error or are not the intended recipient, you</FONT> <BR><FONT size=2>may
not use, copy, disseminate or distribute it; do not open any</FONT>
<BR><FONT size=2>attachments, delete it immediately from your system and
notify the sender</FONT> <BR><FONT size=2>promptly by e-mail that you have
done so. Thank you.</FONT> </P>
<P><FONT size=2>= = = = = = = = = = = = = = = = = = = = = = = = = = =
=</FONT> <BR><FONT size=2>Mailing list: powerh-l@lists.swau.edu</FONT>
<BR><FONT size=2>Subscribe: "subscribe" in message body to
powerh-l-request@lists.swau.edu</FONT> <BR><FONT size=2>Unsubscribe:
"unsubscribe" in message body to powerh-l-request@lists.swau.edu</FONT>
<BR><FONT size=2><A target=_blank
href="http://lists.swau.edu/mailman/listinfo/powerh-l">http://lists.swau.edu/mailman/listinfo/powerh-l</A></FONT>
<BR><FONT size=2>This list is closed, thus to post to the list you must be a
subscriber.</FONT> </P>
<P><FONT size=2>This message may contain privileged and/or confidential
information. If you have received this e-mail in error or are not the
intended recipient, you may not use, copy, disseminate or distribute it; do
not open any attachments, delete it immediately from your system and notify
the sender promptly by e-mail that you have done so. Thank
you.</FONT></P></BLOCKQUOTE></BLOCKQUOTE></BODY></HTML>
<BR>
<P><FONT SIZE=2 FACE="Arial">This message may contain privileged and/or confidential information. If you have received this e-mail in error or are not the intended recipient, you may not use, copy, disseminate or distribute it; do not open any attachments, delete it immediately from your system and notify the sender promptly by e-mail that you have done so. Thank you.</FONT></P>
------_=_NextPart_001_01C1D1D2.39A05230--