PeopleSoft
installations have evolved over the years into a combination of technologies
that are used to develop and deliver PeopleSoft applications to desktop
Internet (HTML) browsers. PeopleSoft calls this its “Pure Internet
Architecture” (PIA).
The
Database PeopleSoft is designed to run on
various database platforms. The majority of installations are on Oracle, but
there are also many companies using IBM’s DB2 and Microsoft SQL Server, and a
few still use Sybase and Informix. Both the PeopleSoft
application and the application data are stored in the database:
•
The database catalogue describes all the objects
in the database.
•
The PeopleTools tables describe the application
data and contain the source code for much of the PeopleSoft application.
•
The application tables contain the users’ data.
The PeopleTools tables and the application tables
all coexist in the same database schema.
The
Application Designer
When
the Application Designer saves a development object, it writes to the
PeopleTools tables. When the application is executed, that information is
compiled into a cache format that is then interpreted by the application
server. Upon execution, much of the application SQL is generated dynamically,
based on the contents of the PeopleTools tables.
The Application Designer is also responsible for defining
data structures in PeopleSoft applications and for building database objects,
so it is inevitable that some of the PeopleTools tables that describe data
structures will correspond closely to the Oracle database catalogue views. This
means that in a PeopleSoft database we are dealing with two data dictionaries
rather than one: the database’s catalogue defines all of the objects that exist
in the database, and the PeopleSoft dictionary defines all the objects that
should exist in the PeopleSoft schema and that can therefore be referenced by
the application.
Tuxedo
Application Server
PeopleSoft
has selected various “best of breed” solutions for its system architecture,
including BEA Tuxedo for their application server.
At run time, the application server
interprets the application data in the PeopleTools tables, executes the
business logic of the application, and even generates the HTML pages that are
served up to the browser. The “publish and subscribe” technology that generates
and accepts XML messages has also been incorporated into the application
server.
The middleware and batch processes run on the major Unix
platforms and Windows. However, some components only run on
Windows.
PeopleTools
All of the PeopleSoft products listed
so far are developed using PeopleSoft’s proprietary development tools, namely
PeopleTools. The development tools are also available to PeopleSoft customers
so that they can develop their own customizations and apply PeopleSoft upgrades
and patches.
Following are some object and tools example
Defining records:
The data model for the application is defined in the Application Designer. A record
in PeopleSoft can correspond to a table or view on the database, or to a set of
working storage variables. The Application Designer will also generate the data
definition language (DDL) to build the database objects. Column definitions in
the DDL will differ on different database platforms. Different databases also
specify different physical attributes for objects.
Creating
PeopleCode: PeopleCode is PeopleSoft’s proprietary
programming language. It is used to perform additional processing in the PIA and
in some Application Engine batch processes. PeopleCode is specified on records
in the Application Designer. The Application Designer can also be used as an
interactive debugging tool in which you can step through the application
including PeopleCode programs as they are executed.
Defining pages: Page were drawn in the graphical design tool, and they corresponded
exactly with how they appeared in the Windows client. Then, at run time, HTML
pages are generated by the application server and are served up to the web
browser. Thus, the developer can produce a web application without having to
code any HTML or JavaScript, although additional HTML and Java can be included
in a PeopleSoft application.
Defining menus: The
Application Designer also maintains the menu navigation for the application.
Upgrading: The
Application Designer is used to migrate sets of source code, called projects,
between PeopleSoft systems.
Data Mover is capable of
exporting and importing data to and from a PeopleSoft database. It is used
during installation to import all the objects and the data they contain into
the database. PeopleSoft also uses Data Mover to deliver standing data to go
with patches. The same Data Mover export file can be imported into any
database platform. Therefore, it can be used to migrate a PeopleSoft database
from one platform to another, although it may not be fast enough for large
databases. It is also capable of running some SQL scripts. It only connects in
two-tier mode.
Application
Engine is PeopleSoft’s proprietary batch processing
utility.
SQR is used to perform some reporting and batch processing. It is a
procedural language into which SQL statements can be embedded.
PeopleSoft
Query tool (Query) still exists as a Windows client
utility, although this functionality is also available in the PIA. Users can
use this tool to develop and run ad hoc SQL queries without knowledge of SQL.
Queries can be migrated with the Application Designer.
Crystal Reports
is used for reports that require a sophisticated
look and that include graphics. Crystal is capable of connecting directly to
the database via an ODBC driver. Within PeopleTools it connects via a
PeopleSoft ODBC driver that presents PeopleSoft queries as database procedures.
The ODBC driver can connect in either two- or three-tier mode. Crystal only
runs on Windows, so reports can only be scheduled on a Windows process
scheduler.
nVision is a reporting
utility that plugs into Microsoft Excel. Although it can be used in any
PeopleSoft module, it is most extensively used in General Ledger reporting. A
user can drill down into a report, unrolling hierarchical data, such as a chart
of accounts.