Sie sind auf Seite 1von 37

Time Zone Support for Oracle

JD Edwards EnterpriseOne
Tools Release 9.1
December 2011

Time Zone Support for Oracle JD Edwards EnterpriseOne

PURPOSE STATEMENT
This document addresses time zone support for the Oracle JD Edwards EnterpriseOne solution. As many
technology concepts and advanced CNC concepts are leveraged in the implementation of a time zone solution
individuals who implement this solution should have the following qualifications:

An understanding of network and operating systems management concepts.

A knowledge of EnterpriseOne Common Foundation and System Administration.

A familiarity with any integrated third-party product interacting with JD Edwards EnterpriseOne to
evaluate whether the mechanisms that are put in place might alter or compromise its use.

Important: The time zone implementation methodology described herein requires as a minimum JD Edwards
EnterpriseOne tools release 9.1.

Important: An IDDA (based upon bug 13466311) is required when implementing the time zone solution on
little endian platforms, e.g. Microsoft Windows and Linux built on JD Edwards EnterpriseOne tools release
9.1.n.n preceding tools release 9.1.0.2. Tools release 9.1.0.2 contains the little endian platform fix.

Important: The time zone implementation methodology described herein does not apply to database table
triggers. JD Edwards EnterpriseOne uses database table triggers for 21 CFR Part 11. Thus, audit records will be
entered to the database based upon the database system's time clock.

Important: The time zone implementation when applied against the IBM i platform requires special package
build / deploy considerations described within Appendix C found in this document.

Important: The time zone methodology described herein when applied against a server using a high available
'active-active' or load-balancing cluster solution requires special considerations described within Appendix D
found in this document. An 'active-active' or load-balancing cluster solution is one where two or more active
physical node servers sharing a common logical cluster name are made available via a 'load-balancing' intelligent
network appliance.
This document is intended for information purposes only, and may not be incorporated into any contract. It is
not a commitment to deliver any material, code, or functionality, and should not be relied upon in making
purchasing decisions. The development, release, and timing of any features or functionality described for
Oracles products remains at the sole discretion of Oracle. Updates and enhancements are provided in
accordance with Oracles Technical Support Policies at:
www.oracle.com/support/collateral/oracle-technical-support-policies.pdf

Time Zone Support for Oracle JD Edwards EnterpriseOne  Page i

Time Zone Support for Oracle JD Edwards EnterpriseOne

Table of Contents
Introduction .................................................................................................................................... 1
Time Zone Implementation (Historical Methodology) ................................................................................ 1

OVERVIEW....................................................................................................................................... 2
EnterpriseOne Requirements .................................................................................................................... 3

Configuring EnterpriseOne for Time zones........................................................................................ 4


Configuring the Enterprise (Logic / Application / Batch) Server .................................................................. 4
Adding a Virtual IP and Virtual Hostname to the Server .................................................................................................. 4
Adding the Time Zone Specific Virtual Host Servers to JD Edwards EnterpriseOne ......................................................... 5
Create New JD Edwards EnterpriseOne System Foundation Instances on the Server ..................................................... 6
Create an Operating System Time Zone Specific User Accounts ...................................................................................... 8

Configuring EnterpriseOne JAS HTML JVMs for Different Time Zones ....................................................... 12
Configure the Application Server JAS HTML JVM to use a Specific Time Zone............................................................... 12
Configuring the IBM WebSphere Application Server ..................................................................................................... 13
Configuring the Oracle WebLogic Server ........................................................................................................................ 15
Configure the JD Edwards EnterpriseOne JAS INI Files ................................................................................................... 19

JD Edwards EnterpriseOne CNC System Administration Considerations.................................................... 20


Time Zone Configuration Code Specific Considerations ................................................................................................. 20
Create Time Zone Specific Environments Logic Directed to Virtual Host ....................................................................... 20

APPENDIX A: REPLICATING YOUR SYSTEM FOUNDATION INSTANCE ............................................... 22


APPENDIX B: ENTERPRISEONE TABLES WITH HOSTNAME REFERENCES ........................................... 26
APPENDIX C: Package build AND Deploy considerations ................................................................. 28
Package Deployment Considerations ............................................................................................................................. 28
Package Deployment for the IBM i Platform .................................................................................................................. 28

APPENDIX D: HIGH AVAILABILITY LOAD BALANCING CONSIDERATIONS .......................................... 30


High Availability Load Balancing Background ................................................................................................................. 30
Time Zone High Availability Load Balancing Considerations .......................................................................................... 31

Time Zone Support for Oracle JD Edwards EnterpriseOne  Page ii

Time Zone Support for Oracle JD Edwards EnterpriseOne


INTRODUCTION
Many JD Edwards EnterpriseOne customers need transactions to reflect their users local time zones. EnterpriseOne does
not have explicit built-in local time zone support. This document describes a technique that may be used to provide time
zone support for EnterpriseOne users. It allows customers to configure EnterpriseOne to support multiple time zones on
a single operating system image. Thus eliminating the need to purchase and manage a multiple servers for the purpose of
providing multiple time zone support for their end-users.

Time Zone Implementation (Historical Methodology)


Historically JD Edwards EnterpriseOne customers needing to support multiple time zones have added two time zone
specific server roles for each desired time zone, e.g. a JD Edwards Enterprise Server and Java Application Server (JAS)
HTML Server. As EntepriseOne Business Functions are executed and data is written to the database, the transaction's
date-time-stamp is based upon the server's time clock. For the Enterprise Server this required a dedicated server in the
form of additional hardware or a virtual server/logical partition. The Enterprise Server's system time clock is set to the
desired time zone. For the HTML Server the desired time zone is set via an HTML instance specific Java argument. Thus,
multiple HTML instances each with a unique time zone could exist on a single server. Each Enterprise Server and HTML
Server combination will be coupled via settings in the JAS.INI file and OCM mappings.
For instance, an EnterpriseOne user is assigned to a particular HTML server. Their EnterpriseOne user role will be
assigned to an environment whose OCM mappings for BSFN logic and UBEs are directed to their time zone specific
EnterpriseOne Server.
Figure 1: Historical Time Zone Support Methodology

Time Zone Support for Oracle JD Edwards EnterpriseOne  Page 1

Time Zone Support for Oracle JD Edwards EnterpriseOne


The implementation costs for the above listed time zone support methodology can quickly grow when you consider that
each specific time zone Enterprise Server requires dedicated hardware (or virtualized hardware) with redundant shared system
components, e.g. an operating system, database client software, compiler (optional), and potentially other bolt-on products.
Also consider the cost in employee-hours required to maintain each server independently, e.g. patching the operating system.

OVERVIEW
The techniques outlined in this document leverage various technology concepts. Although these technology concepts exist
across supported EntepriseOne server platforms, the implementation of any particular technology may differ from one
platform to another. This document is intended to provide guidance and will not address the configuration of each
technology concept by specific platform.
When an EntepriseOne Business Function (BSFN) is executed and data is written to the database, the transaction record's
date-time-stamp is based upon the server's time clock. For BSFNs executed on an HTML server the solution is simple as
one can modify the Java argument by instance (Java Virtual Machine, a.k.a. JVM) so that the HTML specific instance uses
a particular time zone.
Similar logic can be applied to the EnterpriseOne services by assigning a time zone environment variable (or locale setting)
to the operating system user account used to start the JD Edwards EnterpriseOne services. When these services are
started they will inherit the time zone attribute associated with the OS user account. This can be put into practice by
creating multiple operating system user accounts each assigned to a different time zone. These accounts can then be
associated to a time zone specific JD Edwards EnterpriseOne system foundation instance(s) installed on a single server.
For JD Edwards EnterpriseOne a system foundation instance is made up of a JDE.INI file, the file system, and binaries
of a specific tools release used in conjunction with an application foundation, e.g. PD900. Generally when a new
'foundation' is added to a server running another foundation, it requires that the network port be unique as is found in a
multi-foundation implementation. In taking such a tact (where each foundation has a unique port) we eliminate the ability
to leverage and easily manage a common JD Edwards EnterpriseOne server package and diminish the ability to view
reports across the enterprise, etc.
For each JD Edwards EnterpriseOne system foundation instance to share a common network port a few things must
happen. First, the server on which the JDE foundations are installed must have a virtual IP address created for each
supported time zone. Second, a virtual hostname must be created and assigned to each time zone specific virtual IP address.
Third, each installed JDE foundation's JDE.INI file would direct its server network traffic to a time zone specific virtual
hostname and the foundation would be assigned to a time zone specific OS user account. Fourth, a JD Edwards 'Add
Server' plan must be created and executed for each added virtual hostname. Fifth, JD Edwards EnterpriseOne code changes
have been introduced to make it possible for the JD Edwards EnterpriseOne logic to execute and remain scoped to a
particular virtual hostname. Time zone support begins with JD Edwards EnterpriseOne Tools Release 9.1.
Each HTML Server Instance and Enterprise (Logic) Server combination sharing a common time zone will be linked via INI
based configuration settings and OCM mappings. When an EnterpriseOne user is assigned to a particular HTML server,
their EnterpriseOne user role will be assigned to an environment whose OCM mappings for BSFN logic and UBEs are
directed to their time zone specific EnterpriseOne Server.
The aforementioned methodology makes it possible for a single physical server sharing a common operating system image
to support multiple time zone specific JD Edwards EnterpriseOne logic servers. Each logic server will be known by its
virtual hostname, have its own virtual IP address, be tied to an HTML server instance which shares a similar time zone, and use
a time zone specific operating system user account to start its services. Figure 2 shown below depicts a JD Edwards
EnterpriseOne solution logically delineated by three time zones.

Time Zone Support for Oracle JD Edwards EnterpriseOne  Page 2

Time Zone Support for Oracle JD Edwards EnterpriseOne

Figure 2: Virtual Host Time Zone Support Methodology


JDE EnterpriseOne
Database Server

Time Zone Offset (-7 GMT):


E1 Services OS User Account:
JDE900TZ7N

Time Zone Offset (-6 GMT):


E1 Services OS User Account:
JDE900TZ6N

Time Zone Offset (-5 GMT):


E1 Services OS User Account:
JDE900TZ5N

export TZ="/usr/share/zoneinfo/America/Denver"

export TZ="/usr/share/zoneinfo/America/Chicago"

export TZ="/usr/share/zoneinfo/America/New_York"

Virtual IP & Hostname: JDESRVR03

Virtual IP & Hostname: JDESRVR02

Virtual IP & Hostname: JDESRVR01

JDE.INI
[JDENET]
serviceNameListen=6015

JDE.INI
[JDENET]
serviceNameListen=6015

JDE.INI
[JDENET]
serviceNameListen=6015

Single Physical Server with Single Operating System Image - Hostname: JDEENTSRV

JAS.INI:

JAS/HTML
Server
TZ -7 GMT:
HTML01

JAS.INI:

JAS/HTML
Server
TZ -6 GMT:
HTML01

JAS.INI:

JAS/HTML
Server
TZ -5 GMT:
HTML01

[PACKAGE BUILD]
PackageDomainServer=JDESRVR03
PackageDomainPort=6015

[PACKAGE BUILD]
PackageDomainServer=JDESRVR02
PackageDomainPort=6015

[PACKAGE BUILD]
PackageDomainServer=JDESRVR01
PackageDomainPort=6015

Serialized Objects Data Source: SerObj_03

Serialized Objects Data Source: SerObj_02

Serialized Objects Data Source: SerObj_01

JVM Generic Argument:


-Duser.timezone=GMT-7

JVM Generic Argument:


-Duser.timezone=GMT-6

JVM Generic Argument:


-Duser.timezone=GMT-5

Intelligent Switch *or* Network


Deployment / Web Cache Cluster
Switched Ethernet

User Community

EnterpriseOne Requirements

This technique is currently limited to JD Edwards EnterpriseOne tools release 9.1 and higher. This technique requires
special considerations for a JD Edwards EnterpriseOne Enterprise/Logic/Batch server using an 'active-active' or loadbalancing cluster solution. An 'active-active' or load-balancing cluster solution is one where two or more active physical node
servers sharing a common logical cluster name are made available via a 'load-balancing' intelligent network appliance; see
Appendix D found in this document for more details.
Important: License program 5761SS1, option 21 "Extended NLS Support" is an IBM i platform requirement.

Time Zone Support for Oracle JD Edwards EnterpriseOne  Page 3

Time Zone Support for Oracle JD Edwards EnterpriseOne


CONFIGURING ENTERPRISEONE FOR TIME ZONES
This section provides an overview of the steps necessary to configure JD Edwards EnterpriseOne for time zones. Where
applicable it will include steps for configuring the operating system for the IBM i platform. As this document is intended
to provide guidance it will not address the configuration of operating system technology concepts by specific platform.
In essence, the following must be completed to configure an EnterpriseOne time zone instance on an IBM i server (single
operating system image).

Configuring the Enterprise (Logic / Application / Batch) Server


For the purpose of clearly defining configuration differences between hostnames, user accounts, library names, etc. the
name suffixes used within this document reflect the time zone difference from Greenwich Mean Time (GMT), e.g.
xxxxxTZ7N for GMT time zone minus (negative) seven hours. For instance the Enterprise Server's virtual name is
JDE900TZ7N for GMT-7 (DENVER time zone). The Enterprise Server's physical name is JDE900SVR.
Note: Use QSECOFR or an equivalent user account (user profile) when configuring the IBM i platform operating system.
Adding a Virtual IP and Virtual Hostname to the Server

Add a virtual IP address, one per time zone, and associate this to the system's NIC card. Start the newly added TCP
interface. Then verify the configuration making certain the virtual IP addresses were successfully added and active.
cmd: ADDTCPIFC INTNETADR('10.123.123.51') LIND(ETHERNET) SUBNETMASK('255.255.254.0')
cmd: ADDTCPIFC INTNETADR('10.123.123.52') LIND(ETHERNET) SUBNETMASK('255.255.254.0')
cmd: ADDTCPIFC INTNETADR('10.123.123.53') LIND(ETHERNET) SUBNETMASK('255.255.254.0')
cmd: STRTCPIFC INTNETADR('10.123.123.51')
cmd: STRTCPIFC INTNETADR('10.123.123.52')
cmd: STRTCPIFC INTNETADR('10.123.123.53')
cmd: CFGTCP Option 1 | F11
Work with TCP/IP Interfaces
System:

JDE900SVR

Type options, press Enter.


1=Add

2=Change

4=Remove

5=Display

9=Start

10=End

Internet

Subnet

Interface

Alias

Opt

Address

Mask

Status

Name

__

_______________

__

10.123.123.49

255.255.254.0

Active

*NONE

__

10.123.123.51

255.255.254.0

Active

*NONE

__

10.123.123.52

255.255.254.0

Active

*NONE

__

10.123.123.53

255.255.254.0

Active

*NONE

__

127.0.0.1

255.0.0.0

Active

LOCALHOST

__

192.168.5.1

255.255.255.0

Active

*NONE

Time Zone Support for Oracle JD Edwards EnterpriseOne  Page 4

Time Zone Support for Oracle JD Edwards EnterpriseOne


Add time zone specific virtual hostnames using the previously created virtual IP addresses. Then verify the hostname
configuration making certain the virtual IP and hostname entries were successfully added. The first command entry below
combines the physical machine's hostname JDE900SVR with the time zone specific virtual hostname JDE900TZ7N .
cmd: CHGTCPHTE INTNETADR('10.123.123.49') HOSTNAME((JDE900SVR.DOMAIN.COM) (JDE900SVR)
(JDE900TZ7N.DOMAIN.COM) (JDE900TZ7N))
cmd: ADDTCPHTE INTNETADR('10.123.123.51') HOSTNAME((JDE900TZ6N.DOMAIN.COM) (JDE900TZ6N))
cmd: ADDTCPHTE INTNETADR('10.123.123.52') HOSTNAME((JDE900TZ5N.DOMAIN.COM) (JDE900TZ5N))
cmd: ADDTCPHTE INTNETADR('10.123.123.53') HOSTNAME((JDE900TZ0N.DOMAIN.COM) (JDE900TZ0N))
cmd: CFGTCP Option 10
Work with TCP/IP Host Table Entries
System:

JDE900SVR

Type options, press Enter.


1=Add

Opt

2=Change

4=Remove

5=Display

Internet

Host

Address

Name

________________________________

::1

10.123.123.49

7=Rename

IPV6-LOOPBACK
IPV6-LOCALHOST
JDE900SVR.DOMAIN.COM
JDE900SVR
JDE900TZ7N.DOMAIN.COM
JDE900TZ7N

10.123.123.51

10.123.123.52

10.123.123.53

JDE900TZ6N.DOMAIN.COM
JDE900TZ6N
JDE900TZ5N.DOMAIN.COM
JDE900TZ5N
JDE900TZ0N.DOMAIN.COM
JDE900TZ0N

Important: The local WINS and/or DNS server(s) must be updated to resolve each newly added virtual
hostname to its associated virtual IP address.
Adding the Time Zone Specific Virtual Host Servers to JD Edwards EnterpriseOne

Add libraries (schemas), one per time zone, to the DB2/400 database. Label them for ease of reference as shown below.
cmd: CRTLIB LIB(SVM900TZ6N) TEXT(JDE900TZ6N_ENTSRVR_TZ_NEG_6_CHICAGO)
cmd: CRTLIB LIB(SVM900TZ5N) TEXT(JDE900TZ5N_ENTSRVR_TZ_NEG_5_NEWYORK)
cmd: CRTLIB LIB(SVM900TZ0N) TEXT(JDE900TZ0N_ENTSRVR_TZ_NEG_0_LONDON)

From the Deployment Server login to the JDEPLAN environment run "Add-on Servers Plan" to add the new virtual
server(s) to EnterpriseOne. Create a new 'Add-on Servers' plan, validate the plan, and execute it via the workbench.
Note: Running R9840C prior to executing the plan will copy your current system configuration from the SY900 database to the Deployment
Server local database. This ensures the information pushed from the local database to the server is accurate and date relevant.

Time Zone Support for Oracle JD Edwards EnterpriseOne  Page 5

Time Zone Support for Oracle JD Edwards EnterpriseOne


Figure 3: Virtual Time Zone Server Information

SERVER
JDE900TZ7N
JDE900TZ6N
JDE900TZ5N
JDE900TZ0N

PORT
6015
6015
6015
6015

SYSTEM
FOUNDTION LIBRARY
SVM900
SVM900TZ6N
SVM900TZ5N
SVM900TZ0N

SERVER MAP DATA SOURCE


JDE900TZ7N - 900 Server Map
JDE900TZ6N - 900 Server Map
JDE900TZ5N - 900 Server Map
JDE900TZ0N - 900 Server Map

TIMEZONE
Denver
Chicago
NewYork
London

Note: System Foundation library is equivalent to the Unix install path: /u01/app/JDEdwards/e900_tz0.
Create New JD Edwards EnterpriseOne System Foundation Instances on the Server

Replicate an existing system foundation instance by saving and restoring (Unix tar) the system foundation library (including
the IFS directory structure). See Appendix A of this document for instructions on how to replicate the System Foundation
through save and restore commands. Use the Server Manager Console register the instance, e.g. click Create New Managed
Instance & select "Register an Existing Enterprise Server". It is also possible to use the Server Manager
Console to install a new System Foundation instance; e.g. click Create New Managed Instance and select "Install New
Enterprise Server".
Figure 4: Virtual Time Zone Server Manager Instance Information
SERVER MANAGER INSTANCE
NAME
JDE900TZ7N_EntSrvr_TZn7_De
nver
JDE900TZ6N_EntSrvr_TZn6_Ch
icago
JDE900TZ5N_EntSrvr_TZn5_Ne
wYork
JDE900TZ0N_EntSrvr_TZn0_Lo
ndon

SYSTEM
FOUNDATION

SERVER
HOST NAME

PORT

START
IPC

SERVER MAP
LIBRARY

SERVER MAP DATA SOURCE

E900SYST7N

JDE900TZ7N

6015

0001

SVM900

JDE900TZ7N - 900 Server Map

E900SYST6N

JDE900TZ6N

6015

2101

SVM900TZ6N

JDE900TZ6N - 900 Server Map

E900SYST5N

JDE900TZ5N

6015

4201

SVM900TZ5N

JDE900TZ5N - 900 Server Map

E900SYST0N

JDE900TZ0N

6015

6301

SVM900TZ0N

JDE900TZ0N - 900 Server Map

Each System Foundation instance must have a dedicated set of PATHCODE replicated TAM SPEC objects. On the IBM i
platform this includes IFS TAM SPEC files and binary libraries, e.g. '/PD900' & QSYS/PD900. Because the IBM i
platform's QSYS libraries exist in a flat hierarchical structure it is not possible to have two distinct PD900 libraries. This is
unlike Windows and Unix platforms where these install paths could exist on unique mount points, e.g.
/u01/app/JDEdwards/e900_tz0/PD900. As a result for the IBM i platform it is necessary for the replicated
PATHCODE objects to be defined with an addendum that is unique to each supported time zone system foundation
instance. This addendum is defined in the time zone system foundation's JDE.INI file.
The JDE.INI ApplicationPathAddendum addendum (TZnN) is concatenated as a suffix to the replicated objects
common name (PD900). The resulting replicated object names will be PD900TZ0N, PD900TZ5N, and PD900TZ6N.
Below are instructions for generating unique sets of replicated objects via IBM i platform save and restore commands.
cmd: ADDLIBLE E900SYS
cmd: ENDNET
cmd: CLRIPC

Time Zone Support for Oracle JD Edwards EnterpriseOne  Page 6

Time Zone Support for Oracle JD Edwards EnterpriseOne


cmd: CRTLIB TZLIB
cmd: CRTSAVF TZLIB/PD900IFS
cmd: CRTSAVF TZLIB/PD900
cmd: SBMJOB CMD(SAVLIB LIB(PD900) DEV(*SAVF) SAVF(TZLIB/PD900)) JOB(PD900)
cmd: SBMJOB CMD(SAV DEV('/QSYS.LIB/TZLIB.LIB/PD900IFS.FILE') OBJ(('/PD900'))
SUBTREE(*ALL)) JOB(PD900IFS)
cmd: CRTLIB PD900TZ0N
cmd: CRTLIB PD900TZ5N
cmd: CRTLIB PD900TZ6N
cmd: CHGOBJOWN OBJ(PD900TZ0N) OBJTYPE(*LIB) NEWOWN(ONEWORLD)
cmd: CHGOBJOWN OBJ(PD900TZ5N) OBJTYPE(*LIB) NEWOWN(ONEWORLD)
cmd: CHGOBJOWN OBJ(PD900TZ6N) OBJTYPE(*LIB) NEWOWN(ONEWORLD)
cmd: GRTOBJAUT OBJ(PD900TZ0N) OBJTYPE(*LIB) USER(*PUBLIC) AUT(*CHANGE)
cmd: GRTOBJAUT OBJ(PD900TZ5N) OBJTYPE(*LIB) USER(*PUBLIC) AUT(*CHANGE)
cmd: GRTOBJAUT OBJ(PD900TZ6N) OBJTYPE(*LIB) USER(*PUBLIC) AUT(*CHANGE)
cmd: MKDIR '/PD900TZ0N'
cmd: MKDIR '/PD900TZ5N'
cmd: MKDIR '/PD900TZ6N'
cmd: CHGOWN OBJ('/PD900TZ0N') NEWOWN(ONEWORLD)
cmd: CHGOWN OBJ('/PD900TZ5N') NEWOWN(ONEWORLD)
cmd: CHGOWN OBJ('/PD900TZ6N') NEWOWN(ONEWORLD)
cmd: CHGAUT OBJ('/PD900TZ0N') USER(*PUBLIC) DTAAUT(*RWX) OBJAUT(*ALL)
cmd: CHGAUT OBJ('/PD900TZ5N') USER(*PUBLIC) DTAAUT(*RWX) OBJAUT(*ALL)
cmd: CHGAUT OBJ('/PD900TZ6N') USER(*PUBLIC) DTAAUT(*RWX) OBJAUT(*ALL)
cmd: SBMJOB CMD(RSTLIB SAVLIB(PD900) DEV(*SAVF) SAVF(TZLIB/PD900)
RSTLIB(PD900TZ0N)) JOB(PD900TZ0N)
cmd: SBMJOB CMD(RST DEV('/QSYS.LIB/TZLIB.LIB/PD900IFS.FILE')
OBJ(('/PD900' *INCLUDE '/PD900TZ0N')) SUBTREE(*ALL)) JOB(PD900ITZ0N)
cmd: SBMJOB CMD(RSTLIB SAVLIB(PD900) DEV(*SAVF) SAVF(TZLIB/PD900)
RSTLIB(PD900TZ5N)) JOB(PD900TZ5N)
cmd: SBMJOB CMD(RST DEV('/QSYS.LIB/TZLIB.LIB/PD900IFS.FILE')
OBJ(('/PD900' *INCLUDE '/PD900TZ5N')) SUBTREE(*ALL)) JOB(PD900ITZ5N)
cmd: SBMJOB CMD(RSTLIB SAVLIB(PD900) DEV(*SAVF) SAVF(TZLIB/PD900)
RSTLIB(PD900TZ6N)) JOB(PD900TZ6N)
cmd: SBMJOB CMD(RST DEV('/QSYS.LIB/TZLIB.LIB/PD900IFS.FILE')
OBJ(('/PD900' *INCLUDE '/PD900TZ6N')) SUBTREE(*ALL)) JOB(PD900ITZ6N)

Time Zone Support for Oracle JD Edwards EnterpriseOne  Page 7

Time Zone Support for Oracle JD Edwards EnterpriseOne


Edit the new time zone specific System Foundation instance JDE.INI file. Modify the JDE.INI file's [SVR]
ApplicationPathAddendum value to be equivalent to the time zone specific addendum, e.g.
ApplicationPathAddendum=TZ0N.
Below is an example of the required change for a single System Foundation instance. This process must be repeated for
each time zone specific System Foundation instance.
cmd: EDTF '/E900SYST0N/INI/JDE.INI'
cmd: EDTF '/E900SYST5N/INI/JDE.INI'
cmd: EDTF '/E900SYST6N/INI/JDE.INI'

Figure 5: Modify the JDE.INI ApplicationPathAddendum


Edit File: /E900SYST0N/INI/JDE.INI
Record :
58
of
758 by 10
Control : F ApplicationPathAddendum
CMD ....+....1....+....2....+....3....+....4...
ApplicationPathAddendum=TZ0N
<-- MODIFY TO TIMEZONE OFFSET TZ0N
HelpPath=helps
[INSTALL]

Create an Operating System Time Zone Specific User Accounts

License program 5761SS1, option 21 "Extended NLS Support / library QSYSLOCALE" is a IBM i platform
requirement. This license program makes it possible to define time zone offsets via locale settings.
The process outlined below creates locale specific objects which can be associated with IBM i platform user account (user
profiles) used to start JD Edwards EnterpriseOne services.
Create time zone specific source file members. These will be edited and compiled for each supported time zone instance.
cmd: CRTPF FILE(QGPL/MYLOCALES) RCDLEN(112) FILETYPE(*SRC) MAXMBRS(*NOMAX)
cmd: CPYF FROMFILE(QSYSLOCALE/QLOCALESRC) TOFILE(QGPL/MYLOCALES) FROMMBR(EN_US)
TOMBR(EN_US_ET) MBROPT(*ADD)
cmd: CPYF FROMFILE(QSYSLOCALE/QLOCALESRC) TOFILE(QGPL/MYLOCALES) FROMMBR(EN_US)
TOMBR(EN_US_CT) MBROPT(*ADD)
cmd: CPYF FROMFILE(QSYSLOCALE/QLOCALESRC) TOFILE(QGPL/MYLOCALES) FROMMBR(EN_US)
TOMBR(EN_US_MT) MBROPT(*ADD)
cmd: CPYF FROMFILE(QSYSLOCALE/QLOCALESRC) TOFILE(QGPL/MYLOCALES) FROMMBR(EN_GB)
TOMBR(EN_GB_GMT) MBROPT(*ADD)

Time Zone Support for Oracle JD Edwards EnterpriseOne  Page 8

Time Zone Support for Oracle JD Edwards EnterpriseOne


Edit each time zone specific source physical file member. Set the tzdiff, tname, and dstname values for each time zone.

tzdiff - The time zone difference to the desired value a positive number represents the difference from GMT

tname - The name of the time zone during standard time

dstname - The name of the time zone during daylight savings time

dststart - The start of daylight savings time

dstend - The end of daylight savings time

dstshift - The daylight savings shift

In the example below for the United States Eastern Time Zone, the value (tzdiff) should be set to 300. This represents 300
minutes (5 hours) after Greenwich Mean Time. The name of the time zone during Standard time (tname) is EST. The
name of the time zone during Daylight savings time (dstname) is EDT. Daylight saving time (dststart) starts the third
month of the year, the beginning of the second week, the first day of the week, and 7200 seconds (120 minutes) after
midnight local standard time. Daylight saving time ends (dstend) the tenth month of the year, the beginning of the third
week, the sixth day of the week, and 0 seconds after midnight local standard time. The daylight savings change (dstshift) is
3600 seconds or 1 hour.
cmd: WRKMBRPDM QGPL/MYLOCALES EN_US_ET
Figure 6: Modify the Locale Time Zone Specific File (EN_US_ET)
Columns . . . :

Edit

1 100

SEU==>
FMT **

...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+...

0005.57 END LC_MESSAGES


0005.58
0005.59 LC_TOD
0005.60
0005.61 tzdiff

300

0005.62 tname

"EST"

0005.63 dstname

"EDT"

0005.64 dststart 3,2,1,7200


0005.65 dstend

10,3,6,0

0005.66 dstshift 3600


0005.67
0005.68 END LC_TOD
****************** End of data **************************************

As each time zone specific locale member is edited, the locale specific object must be generated. The commands below
will create the locale specific objects.
cmd: CRTLOCALE LOCALE('/QSYS.LIB/QGPL.LIB/ENUS_GMTN5.LOCALE')
SRCFILE('/QSYS.LIB/QGPL.LIB/MYLOCALES.FILE/EN_US_ET.MBR') CCSID(37)
TEXT('US - Eastern Time : New York GMT Negative 5')
cmd: CRTLOCALE LOCALE('/QSYS.LIB/QGPL.LIB/ENUS_GMTN6.LOCALE')
SRCFILE('/QSYS.LIB/QGPL.LIB/MYLOCALES.FILE/EN_US_CT.MBR') CCSID(37)
TEXT('US - Central Time : Chicago GMT Negative 6')

Time Zone Support for Oracle JD Edwards EnterpriseOne  Page 9

Time Zone Support for Oracle JD Edwards EnterpriseOne


cmd: CRTLOCALE LOCALE('/QSYS.LIB/QGPL.LIB/ENUS_GMTN7.LOCALE')
SRCFILE('/QSYS.LIB/QGPL.LIB/MYLOCALES.FILE/EN_US_MT.MBR') CCSID(37)
TEXT('US - Mountain Time : Denver GMT Negative 7')
cmd: CRTLOCALE LOCALE('/QSYS.LIB/QGPL.LIB/ENGB_GMT.LOCALE')
SRCFILE('/QSYS.LIB/QGPL.LIB/MYLOCALES.FILE/EN_GB_GMT.MBR') CCSID(37)
TEXT('GB - Greenwich Mean Time : London')

When the locale specific objects are generated, user profiles (user accounts) can be created and associated to their
appropriate time zone locale object. This is described immediately below. Notice below that each user has been assigned
'JDE' as its group profile and 'ONEWORLD' as its supplemental group profile. These new users will inherit the authorities of
and have access to all objects owned by users 'JDE' and 'ONEWORLD'.
cmd: CRTUSRPRF USRPRF(NEWYORK) USRCLS(*PGMR) INLPGM(JDEOW/BV3C)
TEXT('ONEWORLD - GMT_Minus_5') SPCAUT(*JOBCTL) JOBD(QGPL/ONEWORLD) GRPPRF(JDE)
OWNER(*GRPPRF)

SUPGRPPRF(ONEWORLD) LOCALE('/QSYS.LIB/QGPL.LIB/ENUS_GMTN5.LOCALE')

cmd: CRTUSRPRF USRPRF(CHICAGO) USRCLS(*PGMR) INLPGM(JDEOW/BV3C)


TEXT('ONEWORLD - GMT_Minus_6') SPCAUT(*JOBCTL) GRPPRF(JDE) JOBD(QGPL/ONEWORLD)
OWNER(*GRPPRF) SUPGRPPRF(ONEWORLD) LOCALE('/QSYS.LIB/QGPL.LIB/ENUS_GMTN6.LOCALE')
cmd: CRTUSRPRF USRPRF(DENVER) USRCLS(*PGMR) INLPGM(JDEOW/BV3C)
TEXT('ONEWORLD - GMT_Minus_7') SPCAUT(*JOBCTL) GRPPRF(JDE) JOBD(QGPL/ONEWORLD)
OWNER(*GRPPRF) SUPGRPPRF(ONEWORLD) LOCALE('/QSYS.LIB/QGPL.LIB/ENUS_GMTN7.LOCALE')
cmd: CRTUSRPRF USRPRF(LONDON) USRCLS(*PGMR) INLPGM(JDEOW/BV3C)
TEXT('ONEWORLD - GMT') SPCAUT(*JOBCTL) GRPPRF(JDE) JOBD(QGPL/ONEWORLD)
OWNER(*GRPPRF)SUPGRPPRF(ONEWORLD) LOCALE('/QSYS.LIB/QGPL.LIB/ENGB_GMT.LOCALE')

With the time zone specific user profile created, each time zone specific System Foundation instance can be modified to
use the time zone specific user as shown below. This change will start the EnterpriseOne services with specified user.
cmd: CHGJOBD JOBD(E900SYST0N/NETJOBD) USER(LONDON)
cmd: CHGJOBD JOBD(E900SYST5N/NETJOBD) USER(NEWYORK)
cmd: CHGJOBD JOBD(E900SYST6N/NETJOBD) USER(CHICAGO)
cmd: CHGJOBD JOBD(E900SYS/NETJOBD) USER(DENVER)

Third party products connecting to the EnterpriseOne database but bypassing EnterpriseOne services can leverage
platform operating system user accounts whose LOCALE specific setting matches the desired time zone. The command
below creates users with 'JDE' assigned as their group profile and 'ONEWORLD' as their supplemental group profile.
These new users will inherit the authorities of and have access to all objects owned by users 'JDE' and 'ONEWORLD'. Further by
setting OWNER to *GRPPRF this ensures that any objects created by these users will be owned by user 'JDE'.
Note: The EnterpriseOne proxy (system) users must also be updated to use the user profile
LOCALE('/QSYS.LIB/QGPL.LIB/xxxx.LOCALE') attribute. This will ensure that all UBE database table updates and the

UBE Submitted Job table's run time properly represent the user's associated time zone.
cmd: CRTUSRPRF USRPRF(OWJDEGMT) USRCLS(*PGMR)
TEXT('E1 DB USER - GMT') SPCAUT(*JOBCTL) GRPPRF(JDE) OWNER(*GRPPRF)
SUPGRPPRF(ONEWORLD) LOCALE('/QSYS.LIB/QGPL.LIB/ENGB_GMT.LOCALE')

Time Zone Support for Oracle JD Edwards EnterpriseOne  Page 10

Time Zone Support for Oracle JD Edwards EnterpriseOne

cmd: CRTUSRPRF USRPRF(OWJDETZ5N) USRCLS(*PGMR)


TEXT('E1 DB USER - GMT_Minus_5') SPCAUT(*JOBCTL) GRPPRF(JDE) OWNER(*GRPPRF)
SUPGRPPRF(ONEWORLD) LOCALE('/QSYS.LIB/QGPL.LIB/ENUS_GMTN5.LOCALE')
cmd: CRTUSRPRF USRPRF(OWJDETZ6N) USRCLS(*PGMR)
TEXT('E1 DB USER - GMT_Minus_6') SPCAUT(*JOBCTL) GRPPRF(JDE) OWNER(*GRPPRF)
SUPGRPPRF(ONEWORLD) LOCALE('/QSYS.LIB/QGPL.LIB/ENUS_GMTN6.LOCALE')
cmd: CRTUSRPRF USRPRF(OWJDETZ7N) USRCLS(*PGMR)
TEXT('E1 DB USER - GMT_Minus_7') SPCAUT(*JOBCTL) GRPPRF(JDE) OWNER(*GRPPRF)
SUPGRPPRF(ONEWORLD) LOCALE('/QSYS.LIB/QGPL.LIB/ENUS_GMTN7.LOCALE')
Figure 7: Work with Active Jobs (Subsystems by Time Zone)
Work with Active Jobs

JDE900SVR
07/27/11

CPU %:

.0

Elapsed time:

00:00:00

Active jobs:

23:05:22

395

Current
Opt

Subsystem/Job

User

Type

__

JDEE900

QSYS

SBS

CPU %
.0

Function

Status
DEQW

__

JDENET_K

DENVER

BCI

.0

PGM-JDENET_K

DEQW

__

JDENET_K

DENVER

BCI

.0

PGM-jvmStartPa

DEQW

__

NETWORK

DENVER

BCH

.0

PGM-JDENET_N

SELW

__

JDE900TZ0N

QSYS

SBS

.0

__

JDENET_K

LONDON

BCI

.0

PGM-JDENET_K

DEQW

__

JDENET_K

LONDON

BCI

.0

PGM-jvmStartPa

DEQW

LONDON

BCH

.0

PGM-JDENET_N

SELW

QSYS

SBS

.0

...

DEQW

...

__

NETWORK

__

JDE900TZ5N

__

JDENET_K

NEWYORK

BCI

.0

PGM-JDENET_K

DEQW

__

JDENET_K

NEWYORK

BCI

.0

PGM-jvmStartPa

DEQW

__

NETWORK

NEWYORK

BCH

.0

PGM-JDENET_N

SELW

__

JDE900TZ6N

QSYS

SBS

.0

__

JDENET_K

CHICAGO

BCI

.0

PGM-JDENET_K

DEQW

__

JDENET_K

CHICAGO

BCI

.0

PGM-jvmStartPa

DEQW

PGM-JDENET_N

DEQW

...

DEQW

...

__
__

NETWORK
QBATCH

CHICAGO

BCH

.0

QSYS

SBS

.0

SELW
DEQW

Time Zone Support for Oracle JD Edwards EnterpriseOne  Page 11

Time Zone Support for Oracle JD Edwards EnterpriseOne


Configuring EnterpriseOne JAS HTML JVMs for Different Time Zones
This section provides an overview of the steps necessary to configure EnterpriseOne JAS HTML JVMs and JAS INI files
for specific time zones.
Configure the Application Server JAS HTML JVM to use a Specific Time Zone

The JVMs can be configured with a time zone offset and should be configured to execute business logic in an
EnterpriseOne instance where the time zone matches that of the JVM. Changes to the JVM must be applied to the Java
arguments associated with the Application Server's instance, e.g. via the IBM WebSphere Administrative Console.
Figure 8: Java Generic Arguments for Time Zone Offset by JAS HTML Instance
VIRTUALSERVER

JAS HTML

Java Generic Argument

TIMEZONE

JDE900TZ7N

I507WAS792

-Duser.timezone=GMT+7

Denver

JDE900TZ6N

I507WAS798

-Duser.timezone=GMT+6

Chicago

JDE900TZ5N

I507WAS797

-Duser.timezone=GMT+5

NewYork

JDE900TZ0N

I507WAS796

-Duser.timezone=GMT

London

Important: Different distributions of java and even varying java release levels derive time zones differently. When adding a java
argument (-Duser.timezone=GMT+7) to offset the Java Virtual Machine's (JVM) time one may find that time is derived as a
factor of system time compensated by the added java offset. In other cases time is a factor of Greenwich Mean Time (GMT)
coupled with the java argument offset, where GMT is calculated as the system's time compensated by the system's defined time
zone. Thus, it is important to check the JVM's specific job logs to ensure they represent the intended time zone.
Note: The JVM log messages shown below are from an Oracle WebLogic server; it includes the GMT offset notation as part of
the date-timestamp. This GMT offset notation does not appear in an IBM Websphere Server log date-timestamps.
Figure 9: Java Virtual Machine Logging Messages

Time Zone Support for Oracle JD Edwards EnterpriseOne  Page 12

Time Zone Support for Oracle JD Edwards EnterpriseOne


Configuring the IBM WebSphere Application Server

a.

Login to the IBM WebSphere Administrative Console. From the left-hand entry menu expand the Servers node,
Server Types, and click on WebSphere application servers. Select the web container associated with the
JVM that will use the MT time zone.
Figure 10: Modify the Application Server Configuration(s)

b. Scroll down and expand the Java and Process Management node found under the Server
Infrastructure heading; click Process Definition.
Figure 11: Navigate to the Java and Process Management | Server Infrastructure | Process Definition

Time Zone Support for Oracle JD Edwards EnterpriseOne  Page 13

Time Zone Support for Oracle JD Edwards EnterpriseOne


c.

Click the Java Virtual Machine hyperlink found under Additional Properties. Scroll downward to the bottom of the
web page and locate the Generic JVM arguments field. Add the time zone value offset to the value(s) already
found in this field. For instance: , -Duser.timezone=GMT+7 would be added to the existing value making the
value string: -Djava.awt.headless=true, -Duser.timezone=GMT+7. Note that the , (comma or
semicolon) delimiter may vary depending upon the operating system platform on which the WebSphere Application
Server is running.
Figure 12: Modify the Java Virtual Machine | Generic JVM arguments to use a specific Time Zone

d. Click the Apply button (shown in the figure above). Then click the Save button two more times from different
Save forms (shown below). Stop and restart the web server, then check the server's logs to ensure the timestamp
value represents the intended time.
Figure 13: Save and Apply the Change Made to the Application Server

Time Zone Support for Oracle JD Edwards EnterpriseOne  Page 14

Time Zone Support for Oracle JD Edwards EnterpriseOne

Configuring the Oracle WebLogic Server

a.

Login to the Oracle WebLogic Administrative Console. From the left-hand menu control Domain Structure
expand the Environment node and click the Servers hyperlink.
Figure 14: Navigate to the Configured Domain Servers

b. Select the server (web container) associated with the JVM that will use the MT time zone, e.g. dendell06_html_7003.
Figure 15: Select the Web Container for Modification

15

Time Zone Support for Oracle JD Edwards EnterpriseOne


c.

Navigate to the upper left-hand corner of the Oracle WebLogic Administrative Console page and click the Lock &
Edit button.
Figure 16: Select Server Start Tab

d. Click the Server Start tab to change the server's configuration focus. Scroll downward to the bottom of the web
page and locate the Arguments field. Add the time zone value offset to the value(s) already found in this field.
For instance: , -Duser.timezone=GMT+7 would be added to the existing value making the value string: XX:MaxPermSize=128m -Xms32m -Xmx768m -Duser.timezone=GMT+7. Note: Take care not to
introduce a carriage return. The arguments must be read as a contiguous string without any edit controls.
Figure 17: Modify the Java Arguments Found in the Server Start Tab

16

Time Zone Support for Oracle JD Edwards EnterpriseOne


e.

Scroll down and click the Save button found at the bottom portion of the Server Start screen.
Figure 18: Click the Save Button Found at the Bottom of the Server Start Tab

f.

Click the Activate Changes button.


Figure 19: Click the Activate Changes Button

g.

Click the Summary of Servers hyperlink.


Figure 20: Navigate to Summary of Servers

17

Time Zone Support for Oracle JD Edwards EnterpriseOne


h. Click the Control tab. Click the check-box that precedes the server entry that was changed in the previous steps.
Click the Shutdown button (a forced shutdown may be necessary). The server will be shutdown. As before click the checkbox that precedes the web container server entry and click the Start button to restart the server. Check the server's
logs to ensure the timestamp value represents the intended time.
Figure 21: Shutdown & Restart the Server

18

Time Zone Support for Oracle JD Edwards EnterpriseOne


Configure the JD Edwards EnterpriseOne JAS INI Files

Each JD Edwards EnterpriseOne JAS server should be linked to a JD Edwards EnterpriseOne Enterprise Server with a
similar time zone setting. Ensure that the JAS.INI & JDBJ.INI file's are set to the time zone specific values as shown
directly below. These values should match the targeted Enterprise Server.
JAS.INI
[SECURITY]
NumServers=1
<-- Set the value to a time zone specific EntSrvr hostname, e.g. London

SecurityServer=JDE900TZ0N
[JDENET]

<-- Set the appropriate connect port (based on targeted EntSrvr)

serviceNameConnect=6015
[OWWEB]
PathCodes=('PD900')

DefaultEnvironment=JPD900LON
[PACKAGE BUILD]

<-- Set the value to a time zone specific environment, e.g. London JPD900LON

<-- Recommended for independent package deployments between multiple instances

;PackageDomainServer=DEFAULT
;PackageDomainPort=0
PackageDomainServer=JDE900TZ0N

<-- Set the value to a time zone specific environ, e.g. London JPD900LON

PackageDomainPort=6015

JDBJ.INI
[JDBj-SPEC DATA SOURCE] <-- Recommended separate serialized objects | independent of package deployments between instances
databaseType=I
serverPort=0
name=SEROBJ900 PD900 LONDON
database=
server=DENI507B
physicalDatabase=PD900LON7
owner=
lob=true
unicode=true
user=JDE
password=OR@CL3Z0N3
[JDBj-BOOTSTRAP SESSION]
user=JDE
password=OR@CL3Z0N3
role=*ALL
environment=JPD900LON

<-- Set the value to a time zone specific environment, e.g. London JPD900LON

19

Time Zone Support for Oracle JD Edwards EnterpriseOne


JD Edwards EnterpriseOne CNC System Administration Considerations
This section provides an overview of the CNC considerations to configuring EnterpriseOne for use with delineated
System Foundation time zone instances.
Time Zone Configuration Code Specific Considerations

JD Edwards EnterpriseOne tools release 9.1 introduced code changes making it possible for the JD Edwards
EnterpriseOne Services to bind its listening port to a time zone specific virtual IP address and virtual hostname. A new
JDE.INI file setting has been introduced, e.g. stanza and statement [JDENET] listenOnSpecificIP. When the
listenOnSpecificIP statement is enabled the EnterpriseOne JDENET Services will bind only to the virtual
hostname's IP address named as the JDE.INI [CLUSTER] PrimaryNode value. If the JDE.INI file's [JDENET]
listenOnSpecificIP is disabled, the JDENET port (6015) binding occurs at the global IP address level 0.0.0.0; this
global IP binding affects all physical and virtual IP addresses found on the local machine.
JDE.INI
[JDENET]
listenOnSpecificIP=1

<-- ENABLE THIS FOR TIMEZONE SUPPORT

[CLUSTER]
PrimaryNode=JDE900TZ0N

<-- TIMEZONE SPECIFIC VIRTUAL HOST NAME

Create Time Zone Specific Environments Logic Directed to Virtual Host

One can use JD Edwards EnterpriseOne OCM or environments to isolate users to a particular set of time zone servers.
Isolating users to a particular time zone by environment creates a more clear delineation between time zone users and
servers. The instructions below explain the environment delineation approach.
1.
2.

From the Deployment Server login to the DEP900 environment and copy an existing environment to a time zone
specific environment, e.g. JPD900 to JPD900LON for London, JPD900 to JPD900NYC for New York City, etc.
Modify the EnterpriseOne Object Configuration Manager (OCM) so that Logical Data Source mappings use the
appropriate target time zone server. For instance the JPD900LON environment would direct its logic to
JDE900TZ0N. These changes must be made to System 'System - 900' and ALL Server Map data sources
'JDE900TZ0N - 900 Server Map'. A filtered listing of System OCM mappings is shown directly below.
SELECT T0.OMENHV, T0.OMOBNM, T0.OMDATP, T0.OMUGRP,
T0.OMFUNO, T0.OMSTSO
FROM SY900.F986101 T0, SY900.F98611 T1
WHERE T1.OMOCM1 = 'SVR' AND T0.OMDATP = T1.OMDATP
AND T0.OMOBNM = 'DEFAULT'
ORDER BY T0.OMENHV, T0.OMDATP

OMENHV

OMOBNM

OMDATP

OMUGRP

OMFUNO

OMSTSO

JPD900CHI

DEFAULT

JDE900TZ6N

*PUBLIC

UBE

AV

JPD900CHI

DEFAULT

JDE900TZ6N - Logic

*PUBLIC

BSFN

AV

JPD900DEN

DEFAULT

JDE900TZ7N

*PUBLIC

UBE

AV

JPD900DEN

DEFAULT

JDE900TZ7N - Logic

*PUBLIC

BSFN

AV

JPD900LON

DEFAULT

JDE900TZ0N

*PUBLIC

UBE

AV
20

Time Zone Support for Oracle JD Edwards EnterpriseOne

3.

4.

JPD900LON

DEFAULT

JDE900TZ0N - Logic

*PUBLIC

BSFN

AV

JPD900NYC

DEFAULT

JDE900TZ5N

*PUBLIC

UBE

AV

JPD900NYC

DEFAULT

JDE900TZ5N - Logic

*PUBLIC

BSFN

AV

PD900CHI

DEFAULT

JDE900TZ6N

*PUBLIC

UBE

AV

PD900CHI

DEFAULT

JDE900TZ6N - Logic

*PUBLIC

BSFN

AV

PD900DEN

DEFAULT

JDE900TZ7N

*PUBLIC

UBE

AV

PD900DEN

DEFAULT

JDE900TZ7N - Logic

*PUBLIC

BSFN

AV

PD900LON

DEFAULT

JDE900TZ0N

*PUBLIC

UBE

AV

PD900LON

DEFAULT

JDE900TZ0N - Logic

*PUBLIC

BSFN

AV

PD900NYC

DEFAULT

JDE900TZ5N

*PUBLIC

UBE

AV

PD900NYC

DEFAULT

JDE900TZ5N - Logic

*PUBLIC

BSFN

AV

Create EnterpriseOne time zone specific roles. Associate the time zone specific environment to the time zone specific
role. Each EnterpriseOne user (role) is associated only with those environments that are linked to the user's respective
time zone.
Associate the EnterpriseOne user to the time zone specific role.
Figure 22: Time Zone Specific Environments / Roles / Users Assignments

VIRTUAL
SERVER

TIMEZONE

E1
TIMEZONE
ENVIRON

E1 USER
TIMEZONE
ROLE

JDE900TZ7N

Denver

JPD900DEN

JDETZ7N

JDE900TZ6N

Chicago

JPD900CHI

JDETZ6N

JDE900TZ5N

NewYork

JPD900NYC

JDETZ5N

JDE900TZ0N

London

JPD900LON

JDEGMT

E1 USER ACCT ASSOCIATED


WITH TIMEZONE ROLE

MANISH, KELLI, SEAMUS,


CHARUNEE, SOLANGE,
KATE, TIM, CRYSTAL,
SERGIO, BECKY,
SRINI, DONNA, SYDNEY,
ROBERTA, CAROLINE,
PREETI, BRENDON, KARA,
SUZANNE, COLIN,

SERVER MAP
LIBRARY

SVM900
SVM900TZ6N
SVM900TZ5N
SVM900TZ0N

SERVER MAP DATA SOURCE

JDE900TZ7N - 900 Server


Map
JDE900TZ6N - 900 Server
Map
JDE900TZ5N - 900 Server
Map
JDE900TZ0N - 900 Server
Map

21

Time Zone Support for Oracle JD Edwards EnterpriseOne


APPENDIX A: REPLICATING YOUR SYSTEM FOUNDATION INSTANCE
Use the instructions directly below if you wish to replicate your current System Foundation instance to another. Substitute
the target System Foundation instance name and values as needed.
cmd: CRTLIB JDETEMP
cmd: ADDLIBLE E900SYS
cmd: ENDNET
cmd: CLRIPC
cmd: CRTSAVF JDETEMP/E900SYS
cmd: CRTSAVF JDETEMP/E900SYSIFS
cmd: SBMJOB CMD(SAVLIB LIB(E900SYS) DEV(*SAVF) SAVF(JDETEMP/E900SYS)
OMITOBJ((*ALL *SQLPKG))) JOB(E900SYS)
cmd: SBMJOB CMD(SAV DEV('/QSYS.LIB/JDETEMP.LIB/E900SYSIFS.FILE')
OBJ(('/E900SYS')) PATTERN(('*.PDF' *OMIT)) SUBTREE(*ALL))JOB(E900SYSIFS)
cmd: MKDIR '/E900SYST0N'
cmd: MKDIR '/E900SYST0N/LOGS'
cmd: CHGOWN OBJ('/E900SYST0N') NEWOWN(ONEWORLD) SUBTREE(*ALL)
cmd: CRTLIB E900SYST0N
cmd: CHGOBJOWN OBJ(E900SYST0N) OBJTYPE(*LIB) NEWOWN(ONEWORLD)

Wait for the above listed jobs to end successfully.


cmd: SBMJOB CMD(RSTLIB SAVLIB(E900SYS) DEV(*SAVF) SAVF(JDETEMP/E900SYS)
RSTLIB(E900SYST0N)) JOB(R900SYS)
cmd: SBMJOB CMD(RST DEV('/QSYS.LIB/JDETEMP.LIB/E900SYSIFS.FILE')
OBJ(('/E900SYS' *INCLUDE '/E900SYST0N') (PATTERN)) PATTERN(('*.PDF' *OMIT))
SUBTREE(*ALL)) JOB(R900SYSIFS)

Edit the System Foundation instance JDE.INI file.


Change references to the System Foundation instance specific values, e.g. E900SYST0N, addendum TZ0N, start IPC
6301, bootstrap data source JDE900TZ0N - 900 Server Map, DatabaseName2 SVM900TZ0N, instanceName
JDE900TZ0N_EntSrvr_TZ_neg_0_London, etc.
Figure 23: Virtual Time Zone Server Manager Instance Information
SERVER MANAGER INSTANCE
NAME
JDE900TZ7N_EntSrvr_TZn7_De
nver
JDE900TZ6N_EntSrvr_TZn6_Ch
icago
JDE900TZ5N_EntSrvr_TZn5_Ne
wYork
JDE900TZ0N_EntSrvr_TZn0_Lo
ndon

SYSTEM
FOUNDATION

SERVER
HOST NAME

PORT

START
IPC

SERVER MAP
LIBRARY

SERVER MAP DATA SOURCE

E900SYST7N

JDE900TZ7N

6015

0001

SVM900

JDE900TZ7N - 900 Server Map

E900SYST6N

JDE900TZ6N

6015

2101

SVM900TZ6N

JDE900TZ6N - 900 Server Map

E900SYST5N

JDE900TZ5N

6015

4201

SVM900TZ5N

JDE900TZ5N - 900 Server Map

E900SYST0N

JDE900TZ0N

6015

6301

SVM900TZ0N

JDE900TZ0N - 900 Server Map

22

Time Zone Support for Oracle JD Edwards EnterpriseOne


cmd: EDTF '/E900SYST0N/INI/JDE.INI'
Figure 24: Edit the JDE.INI Replacing the System Foundation Library Name
Edit File: /E900SYST0N/INI/JDE.INI
Record :
1
of
758 by 10
Control : c /E900SYS/ /E900SYST0N/ all

Column :

CMD ....+....1....+....2....+....3....+....4....+....5....+....6....+....7.
************Beginning of data**************
; JD Edwards initialization file INI(JDE)
; AS/400 specific version - E900
[JDE_CG]
CLASSPATH=/E900SYS/classes/xalan.jar:/E900SYS/classes/xerces.jar:/E900S
ServerPackageSleep=60
[DEBUG]
Output=FILE

Repeat the change all (search / replace).


Figure 25: Edit the JDE.INI Replacing the Logging Directory Path
Edit File: /E900SYST0N/INI/JDE.INI
Record :
9
of
758 by 10
Control : c /JDE900/ /E900SYST0N/LOGS/ all

Col

CMD ....+....1....+....2....+....3....+....4....+....5....+...
[DEBUG]
Output=NONE
Trace=FALSE
DebugFile=/JDE900/JDEDEBUG
JobFile=/JDE900/JDE.LOG
JDETSFile=/JDE900/JDETS.LOG
LogErrors=1
ClientLog=0
KeepLogs=1

Find CLUSTER and set the value to the Virtual Hostname.


Figure 26: Edit the JDE.INI to Modify the PrimaryNode Value
Edit File: /E900SYST0N/INI/JDE.INI
Record :
670
of
689 by 10
Control : F CLUSTER
CMD ....+....1....+....2....+....3....+....4....
[CLUSTER]
PrimaryNode=JDE900TZ0N
<-- SET TO VIRTUAL HOSTNAME
[THREADS]
ThreadStackSize=2097152
[MANAGEMENT]
jdeHome=/JD Edwards/JDE_HOME

23

Time Zone Support for Oracle JD Edwards EnterpriseOne


Go to the top of the file; type a 'T' in the 'Control: _' field and press ENTER. Find [JDENET]
listenOnSpecificIP and replace the value.
Figure 27: Edit the JDE.INI to Modify the [JDENET] listenOnSpecificIP Value to '1'
Edit File: /E900SYST0N/INI/JDE.INI
Record :
99
of
690 by 10
Control : F JDENET]

Colum

CMD ....+....1....+....2....+....3....+....4....+....5....+....6
internalQueueTimeOut=30
FilePacketBufferSize=32768
netTemporaryDir=/JD Edwards/JDE_HOME/targets/JDE900TZ0N_EntSr
listenOnSpecificIP=1
<-- SET TO '1' FOR TIMEZONE SUPPORT
[JDENET_KERNEL_DEF1]
krnlName=JDENET RESERVED KERNEL
dispatchDLLName=JDENET
dispatchDLLFunction=JDENET_DispatchMessage
maxNumberOfProcesses=1
numberOfAutoStartProcesses=0

Go to the top of the file; type a 'T' in the 'Control: _' field and press ENTER. Find startIPCKeyValue and
replace the value.
Figure 28: Edit the JDE.INI to Modify the startIPCKeyValue
Edit File: /E900SYST0N/INI/JDE.INI
Record :
73
of
689 by 10
Control : F startIPCKeyValue
CMD ....+....1....+....2....+....3....+....4
startIPCKeyValue=6301
<-- MODIFY TO UNUSED SEGMENT, e.g. 6301
avgResourceNameLength=40
maxMsgqEntries=1024
maxMsgqBytes=65536
ipcTrace=0
[JDENET]
serviceNameListen=6015
serviceNameConnect=6015

<-- VERIFY PORT, e.g. 6015


<-- VERIFY PORT, e.g. 6015

Go to the top of the file; type a 'T' in the 'Control: _' field and press ENTER. Find DatabaseName2 and
replace the value.
Figure 29: Edit the JDE.INI to Modify the Server Map Library Name
Edit File: /E900SYST0N/INI/JDE.INI
Record :
278
of
689 by 10
Control : F DatabaseName2
CMD ....+....1....+....2....+....3....+....4....+....5...
DatabaseName2=SVM900TZ0N
<-- MODIFY TO SVM900TZ0N
DatabaseInstance=
ServerPort=0
JDBNETUse=N
UnicodeFlag=Y
LOBFlag=Y
DatabaseProgramMax=-1
DatabaseProgramInitial=10

24

Time Zone Support for Oracle JD Edwards EnterpriseOne


Go to the top of the file; type a 'T' in the 'Control: _' field and press ENTER. Find
ApplicationPathAddendum and replace the value.
Figure 30: Modify the JDE.INI ApplicationPathAddendum
Edit File: /E900SYST0N/INI/JDE.INI
Record :
58
of
758 by 10
Control : F ApplicationPathAddendum
CMD ....+....1....+....2....+....3....+....4...
ApplicationPathAddendum=TZ0N
<-- MODIFY TO TZ0N
HelpPath=helps
[INSTALL]
;POSTSCRIPT_ONLY=1
DefaultSystem=E900SYST0N
B9=
Double_Byte=0
LocalCodeSet=US_EBCDIC

Go to the top of the file; type a 'T' in the 'Control: _' field and press ENTER. Find instanceName and
replace the value.
Figure 31: Edit the JDE.INI to Server Manager Instance Name
Edit File: /E900SYST0N/INI/JDE.INI
Record :
675
of
689 by 10
Control : F instanceName
CMD ....+....1....+....2....+....3....+....4....+....5....
instanceName=JDE900TZ0N_EntSrvr_TZ_neg_0_London
<-- MODIFY THIS VALUE
[BSFN MEMORY DIAGNOSTICS]
bmdLevel=0
allocFrequency=15000
memThresholdMB=100
bsfnName=
bsfnLevel=2

Press F3 twice to Save the file and Exit.


cmd: CHGDTAARA DTAARA(E900SYST0N/BUILD_VER (21 4)) VALUE('E900')
cmd: CHGDTAARA DTAARA(E900SYST0N/BUILD_VER (721 10)) VALUE('E900SYST0N')

Ensure you are logged in as QSECOFR or have equivalent authority.


cmd: RMVLIBLE E900SYS
cmd: ADDLIBLE E900SYST0N
cmd: CRTOWSBS SUBSYSTEM('JDE900TZ0N') SYSLIB('E900SYST0N')

25

Time Zone Support for Oracle JD Edwards EnterpriseOne


APPENDIX B: ENTERPRISEONE TABLES WITH HOSTNAME REFERENCES
The tables below are core to EnterpriseOne and must be properly configured to identify each added virtual hostname.
Tables not named here are those related to UBE scheduling, real time events, etc.
Data Source Master Table (F98611) found in SY900 & SVM900:
SELECT SUBSTR(OMDATP, 1, 27) OMDATP, SUBSTR(OMSRVR, 1, 12) OMSRVR, SUBSTR(OMDATB, 1, 27),
OMOCM1 FROM SY900.F98611;
OMDATP

OMSRVR

OMDATB

Business Data - PROD

JDE900SVR

Business Data - PROD

OMOCM1
DB

Business Data - TEST

JDE900SVR

Business Data - TEST

DB

Central Objects - DV900

JDE900SVR

Central Objects - DV900

DB

Central Objects - PD900

JDE900SVR

Central Objects - PD900

DB

Control Tables - Prod

JDE900SVR

Control Tables - Prod

DB

Control Tables - Test

JDE900SVR

Control Tables - Test

DB

JDE900TZ7N

JDE900TZ7N

JDE900TZ7N - 900 Server Map

SVR

JDE900TZ7N - 900 Server Map

JDE900SVR

JDE900SVR - 900 Server Map

DB

JDE900TZ7N - Logic

JDE900TZ7N

JDE900SVR - 900 Server Map

SVR

JDE900TZ7N - RTE

JDE900TZ7N

JDE900SVR - 900 Server Map

SVR

JDE900TZ7N - XAPI

JDE900TZ7N

JDE900SVR - 900 Server Map

SVR

Data Dictionary - 900

JDE900SVR

Data Dictionary - 900

DB

JDBTSTLIB

JDE900SVR

JDBTSTLIB

DB

JDE900TZ0N

JDE900TZ0N

JDE900TZ0N - 900 Server Map

SVR

JDE900TZ0N - 900 Server Map

JDE900SVR

JDE900TZ0N - 900 Server Map

DB

JDE900TZ0N - Logic

JDE900TZ0N

JDE900TZ0N - 900 Server Map

SVR

JDE900TZ0N - RTE

JDE900TZ0N

JDE900TZ0N - 900 Server Map

SVR

JDE900TZ0N - XAPI

JDE900TZ0N

JDE900TZ0N - 900 Server Map

SVR

JDE900TZ5N

JDE900TZ5N

JDE900TZ5N - 900 Server Map

SVR

JDE900TZ5N - 900 Server Map

JDE900SVR

JDE900TZ5N - 900 Server Map

DB

JDE900TZ5N - Logic

JDE900TZ5N

JDE900TZ5N - 900 Server Map

SVR

JDE900TZ5N - RTE

JDE900TZ5N

JDE900TZ5N - 900 Server Map

SVR

JDE900TZ5N - XAPI

JDE900TZ5N

JDE900TZ5N - 900 Server Map

SVR

JDE900TZ6N

JDE900TZ6N

JDE900TZ6N - 900 Server Map

SVR

JDE900TZ6N - 900 Server Map

JDE900SVR

JDE900TZ6N - 900 Server Map

DB

JDE900TZ6N - Logic

JDE900TZ6N

JDE900TZ6N - 900 Server Map

SVR

JDE900TZ6N - RTE

JDE900TZ6N

JDE900TZ6N - 900 Server Map

SVR

JDE900TZ6N - XAPI

JDE900TZ6N

JDE900TZ6N - 900 Server Map

SVR

LOCAL

LOCAL

Planner - 900

SVR

Local - DV900

(local)

EnterpriseOne SSELocal

DB

Local - DV900 Specs

(local)

EnterpriseOne SSELocal

DB

Local - PD900

(local)

EnterpriseOne SSELocal

DB

Local - PD900 Specs

(local)

EnterpriseOne SSELocal

DB

OWJRNL

JDE900SVR

OWJRNL

DB

Object Librarian - 900

JDE900SVR

Object Librarian - 900

DB

System - 900

JDE900SVR

System - 900

DB

System - 900NJ

JDE900SVR

System - 900NJ

DB

Versions - DV900

JDE900SVR

Versions - DV900

DB

26

Time Zone Support for Oracle JD Edwards EnterpriseOne


Versions - PD900

JDE900SVR

Versions - PD900

DB

WAS7PDTZ0N

JDE900SVR

WAS7PDTZ0N

DB

WAS7PDTZ5N

JDE900SVR

WAS7PDTZ5N

DB

WAS7PDTZ6N

JDE900SVR

WAS7PDTZ6N

DB

WAS7PDTZ7N

JDE900SVR

WAS7PDTZ7N

DB

Job Queue Control Status Master Table (F986130):


SELECT SUBSTR(QCEXEHOST,1,12) QCEXEHOST, QCPORTNM, QCJOBQUE FROM SY900.F986130 ORDER BY 1, 3
QCEXEHOST

QCPORTNM

QCJOBQUE

JDE900SVR

6015

QBATCH

JDE900TZ0N

6015

QBATCH

JDE900TZ5N

6015

QBATCH

JDE900TZ6N

6015

QBATCH

JDE900TZ7N

6015

QBATCH

Active Deployed Pathcode Package Server Detail (F96511):


SELECT SUBSTR(SKMKEY, 1, 12) SKMKEY, SKPORTNUM, SKPATHCD, SKMCHDETTYP, SKSERSHP FROM
SY900.F96511
SKMKEY

SKPORTNUM

SKPATHCD

SKMCHDETTYP

SKSERSHP

JDE900SVR

6015

PD900

31

PD900FC

JDE900SVR

6015

PD900

33

Central Objects - PD900

JDE900TZ0N

6015

PD900

31

PD900FC

JDE900TZ0N

6015

PD900

33

Central Objects - PD900

JDE900TZ5N

6015

PD900

31

PD900FC

JDE900TZ5N

6015

PD900

33

Central Objects - PD900

JDE900TZ6N

6015

PD900

31

PD900FC

JDE900TZ6N

6015

PD900

33

Central Objects - PD900

JDE900TZ7N

6015

PD900

31

PD900FC

JDE900TZ7N

6015

PD900

33

Central Objects - PD900

Other Enterprise Server tables with specific references to the virtual host name(s).
Table Description:

SQL Statement:

Software Package Build Header:

SELECT * FROM SY900.F96021

Software Package Build Header - History:

SELECT * FROM SY900.F96215

Software Package Build Detail:

SELECT * FROM SY900.F9622

Software Package Build Detail - History:

SELECT * FROM SY900.F96225

Machine Master:

SELECT * FROM SY900.F9650

Machine Detail:

SELECT * FROM SY900.F9651

Table and Data Source Sizing Table:

SELECT * FROM SY900.F986115

Default Printer Table:

SELECT * FROM SY900.F986167

Package Deployment on Servers Information:

SELECT * FROM SY900.F98826

27

Time Zone Support for Oracle JD Edwards EnterpriseOne


APPENDIX C: PACKAGE BUILD AND DEPLOY CONSIDERATIONS
When building a package use the JDE.INI [BSFN BUILD] DoCompression=1 option to compress the 'server'
package. This setting is defined on the client/deployment workstation. See the "Package Management Guide" for more
information related to compressing server packages. Once a server package has been built, deployed, and certified for use
it can be deployed to other time zone specific virtual server(s).
Note: Use of the Server Package Compression feature for the time zone solution is recommended for all JD Edwards EnterpriseOne server
platforms with the exception of the IBM i platform. See "Package Deployment for the IBM i Platform" further below.
Package Deployment Considerations

Each time zone instance should have an EnterpriseOne JDE CNC user whose OCM mappings point to the correct time
zone specific server. The Deployment Server's local database should also have a record of each JDE CNC time zone
instance user(s). When deploying a package, login to the Deployment Server with the appropriate user, e.g. JDENYC.
This user should be used to deploy a package against its associated time zone specific server.
Note: Failure to use a time zone specific JDE CNC user to deploy a package could lead to unpredictable mutex wait
locking. For example, a user logs in as JDE to deploy a package to virtual host JDE900TZ6N. Following a successful
deploy the same user deploys a package against virtual host JDE900TZ0N. Because JDENET communication is now
active between the workstation and two servers, e.g. JDE900TZ6N, JDE900TZ0N potentially both servers will throw a
mutex wait to suspend all activity so that the package can be successfully deployed. To mitigate this JDENET crosscommunication opportunity, login with the appropriate JDE CNC user to deploy a package on each virtual server.
Package Deployment for the IBM i Platform

Since the IBM i platform has a flat QSYS library and IFS structure there can only be 'one' package location, e.g.
QSYS/PD900FE and /OneWorld/Packages/PD900FE. If one were to use the compressed package option on the IBM i
platform where more than one host or virtual host EnterpriseOne foundation instance share a common package, the
deploy process will step over itself. This occurs as the deploy process attempts to replace the pre-existing package library
and IFS folder objects.
On the IBM i platform build a single package without the compression option, choosing either the primary host or a
virtual host. For example package PD900FE is built against the primary time zone server's hostname. Three other virtual
host EnterpriseOne instances are active on the same IBM i platform server. Each have their own application foundation
runtime SPECs (via the INI addendum). To deploy a common package to each virtual server we must first manually
create a 'build' record for each of these virtual host servers. The instructions that follow create the server package records
necessary for package deployment. This process mimics the record creation process that would occur were a successful
package build were performed against each additional virtual host server(s).
Package PD900FE is built against the primary server, e.g. JDEENTSVR.
10.123.123.51

JDE900TZ6N.DOMAIN.COM JDE900TZ6N

10.123.123.52

JDE900TZ5N.DOMAIN.COM JDE900TZ5N

10.123.123.53

JDE900TZ0N.DOMAIN.COM JDE900TZ0N

10.123.123.54

JDEENTSVR.DOMAIN.COM JDEENTSVR JDE900TZ7N.DOMAIN.COM JDE900TZ7N

<-- Package built on this server

28

Time Zone Support for Oracle JD Edwards EnterpriseOne


1.

Manually create a record(s) in the F96021 table for each time zone specific virtual host server. The yellow highlighted
font represents the target virtual host names, while the blue highlighted font identifies the package name and build server
name.

INSERT INTO SY900/F96021


(SELECT T3.BHPKGNAME, T3.BHPATHCD, 'JDE900TZ0N' BHDATP, T3.BHBLDSTS, T3.BHPKG1, T3.BHBLDDTE,
T3.BHBLDPCK, T3.BHBLDFUNC, T3.BHBLDTYPE, T3.BHCLRDST, T3.BHACCUMLOG, T3.BHSTOPBUSBLD,
T3.BHSTOPBLD, T3.BHBLDDOC, T3.BHCMPPKG, T3.BHALLCOMP, T3.BHALLSPEC, T3.BHTRNNOBLD,
T3.BHPKGBULFUT1, T3.BHPKGBULFUT2, T3.BHPKGBULFUT3, T3.BHPKGBULFUT4, T3.BHPID, T3.BHJOBN,
T3.BHUPMJ, T3.BHUPMT, T3.BHUSER FROM SY900/F96021 T3 WHERE T3.BHPKGNAME =

'PD900FE' AND

T3.BHDATP = 'JDEENTSVR' AND BHBLDSTS = 50)


INSERT INTO SY900/F96021
(SELECT T3.BHPKGNAME, T3.BHPATHCD, 'JDE900TZ5N' BHDATP, T3.BHBLDSTS, T3.BHPKG1, T3.BHBLDDTE,
T3.BHBLDPCK, T3.BHBLDFUNC, T3.BHBLDTYPE, T3.BHCLRDST, T3.BHACCUMLOG, T3.BHSTOPBUSBLD,
T3.BHSTOPBLD, T3.BHBLDDOC, T3.BHCMPPKG, T3.BHALLCOMP, T3.BHALLSPEC, T3.BHTRNNOBLD,
T3.BHPKGBULFUT1, T3.BHPKGBULFUT2, T3.BHPKGBULFUT3, T3.BHPKGBULFUT4, T3.BHPID, T3.BHJOBN,
T3.BHUPMJ, T3.BHUPMT, T3.BHUSER FROM SY900/F96021 T3 WHERE T3.BHPKGNAME =

'PD900FE' AND

T3.BHDATP = 'JDEENTSVR' AND BHBLDSTS = 50)


INSERT INTO SY900/F96021
(SELECT T3.BHPKGNAME, T3.BHPATHCD, 'JDE900TZ6N' BHDATP, T3.BHBLDSTS, T3.BHPKG1, T3.BHBLDDTE,
T3.BHBLDPCK, T3.BHBLDFUNC, T3.BHBLDTYPE, T3.BHCLRDST, T3.BHACCUMLOG, T3.BHSTOPBUSBLD,
T3.BHSTOPBLD, T3.BHBLDDOC, T3.BHCMPPKG, T3.BHALLCOMP, T3.BHALLSPEC, T3.BHTRNNOBLD,
T3.BHPKGBULFUT1, T3.BHPKGBULFUT2, T3.BHPKGBULFUT3, T3.BHPKGBULFUT4, T3.BHPID, T3.BHJOBN,
T3.BHUPMJ, T3.BHUPMT, T3.BHUSER FROM SY900/F96021 T3 WHERE T3.BHPKGNAME =

'PD900FE' AND

T3.BHDATP = 'JDEENTSVR' AND BHBLDSTS = 50)

2.

Create an INF file for each 'virtual host' server based upon the original INF file.

cp \\<DepSrvrNme>\E900\PD900\package\PD900FE\AS400V7R1M0\JDEENTSVR.INF
\\<DepSrvrNme>\E900\PD900\package\PD900FE\AS400V7R1M0\JDE900TZ0N.INF <-- edit server name w/i file
cp \\<DepSrvrNme>\E900\PD900\package\PD900FE\AS400V7R1M0\JDEENTSVR.INF
\\<DepSrvrNme>\E900\PD900\package\PD900FE\AS400V7R1M0\JDE900TZ5N.INF <-- edit server name w/i file
cp \\<DepSrvrNme>\E900\PD900\package\PD900FE\AS400V7R1M0\JDEENTSVR.INF
\\<DepSrvrNme>\E900\PD900\package\PD900FE\AS400V7R1M0\JDE900TZ6N.INF <-- edit server name w/i file

3.

Edit the virtual host INF files replacing the original build machine name with the virtual host name.

NOTEPAD

\\<DepSrvrNme\E900\PD900\package\PD900FE\AS400V7R1M0\JDE900TZ0N.INF

[SERVER PACKAGE]
PackageName=PD900FE
Type=FULL
Platform=AS400V7R1M0
BuildMachine=JDEENTSVR <-- change to JDE900TZ0N
BuildPort=6015
...

29

Time Zone Support for Oracle JD Edwards EnterpriseOne


APPENDIX D: HIGH AVAILABILITY LOAD BALANCING CONSIDERATIONS
An 'active-active' or load-balancing cluster solution is one where two or more active physical node servers sharing a common
logical cluster name are made available via a 'load-balancing' intelligent network appliance. This type of solution is generally used
by businesses which run in a 24/7 (twenty four hours a day, by seven days a week) around the clock environment. Time zone support for
servers using an 'active-active' or load-balancing cluster solution require the configuration of additional virtual node servers.
Note: Oracle JD Edwards does not explicitly support high availability active-active load balancing cluster solutions for the JD Edwards
Enterprise Server (application/logic/batch server). These types of solutions rely heavily on the use of specially architected third-party hardware
and software products. That said, there are many Oracle customers who run both JD Edwards EnterpriseOne JAS/HTML and application
servers in a high availability cluster arrangement.
High Availability Load Balancing Background

The figure below depicts a high availability 'active-active' load balancing cluster solution. In this example there are two server
groups shown in delineated node group sets. Associated with each node group is a JDEdwards EnterpriseOne Enterprise
(Logic) Server and JAS HTML Server. Each Enterprise Server is known by its physical node name (JDESRVA) and its
logical cluster name (JDEENTSRV). The importance of pairing a logical server and JAS HTML server into a set will soon
be made clear.
Figure 32: Standard High Availability 'Active-Active' Load Balancing Cluster

30

Time Zone Support for Oracle JD Edwards EnterpriseOne


Referring to figure above, consider the following standard Package Deployment scenario for a high availability server
running JDEdwards EnterpriseOne E812 and higher. During a package maintenance cycle we must perform the following
after successfully building a full or update package that is error free:
1) A server set (Server Group B) will be made ineligible to new users via an intelligent network appliance/switch.
2) Optional to pre-generate serialized objects: The new full/update client package is deployed to the web generation
machine. The web generation machines JDBJ.INI file must be updated pointing to a serialized objects database
location that is not currently in use. The web generation process commences.
3) When activity within Server Group B is quiesced (free of users and all batch activity), the JAS HTML server(s) are
shutdown. The Package Deployment process is submitted to the Logic Server.
4) Optional to pre-generate serialized objects: Update the HTML Server JDBJ.INI files setting the serialized objects
location to that used in step 2 above.
5) Review the logs to validate a successful package deployment and web generation process.
6) Start the JDEdwards EnterpriseOne Enterprise Server and JAS/HTML servers.
a. At application releases 8.12 and higher when packages are deployed which include SPEC updates there
exists a spec auto-discovery process. This auto-discovery process compares the manifest information found
in the serialized object tables to that associated with the server via table F96511.
b. If the serialized object's manifest and F96511 table record for the server are in sync nothing changes.
c. If the serialized object's manifest and F96511 table record differ: (1) in the case of an update package(s) the
specific package item records are deleted from the serialized object tables (2) in the case of a full package the
serialized object tables are truncated.
d. For servers that use a 'logical cluster name' it is recommended that the auto-discovery process be overridden
by updating the HTML server's INI files. The value defined as the PackageDomainServer will be used in
lieu of the 'logical cluster name'. By overriding the auto-discovery process it is possible to update a node
server without impacting the opposing node server. Additionally it is recommended to use a unique set of
serialized objects for each node server.
JAS.INI:
[PACKAGE BUILD]
;PackageDomainServer=DEFAULT
;PackageDomainPort=0
PackageDomainServer=JDESRVB
PackageDomainPort=6015

JDBJ.INI:
[JDBj-SPEC DATA SOURCE]
...
name=SerObj_B2
database=
server=JDEE1DB
physicalDatabase=SEROBJB2
...

Important: Failure to override the auto-discovery process may cause the serialized objects of an 'active'
server to be unexpectedly truncated due to a perceived SPEC mismatch.
7) Test the server set by connecting to the HTML servers by physical IP address (as opposed to the logical IP
address) so as to bypass the load-balancing mechanism.
8) Once the server set is certified, make the server set eligible for use within the cluster.
9) Repeat this process for each server set until all sets have been updated with the new deployed package.

Time Zone High Availability Load Balancing Considerations

The figure further below depicts a time zone specific high availability 'active-active' load balancing cluster solution. In this
case the logical server name is based upon the time zone that is represents, e.g. LONDON. Consider too that additional
multiple virtual host servers will exist on each physical server, e.g. CHICAGO, TORONTO, DENVER. For purposes of
discussion we will focus on a single time zone server named LONDON. As before the two server groups are shown in
delineated sets. All aspects of the time zone high availability 'active-active' load balancing cluster solution's layout are
identical to those in a standard load balancing configuration with one significant exception, the ability to address a specific
virtual node server.
To explain this difference consider that when updating one server node without impacting another one must deploy a
package to the server's physical host name rather than its logical cluster name. Since each server may have multiple virtual
servers we cannot use the server's true physical server name to deploy a package. Rather we must use a host name alias to
31

Time Zone Support for Oracle JD Edwards EnterpriseOne


distinguish one time zone server node from another, e.g. LONDONA and LONDONB. In the figure below notice that
the common logical server name is LONDON, while the server's physical names are JDESRVA & JDESRVB, and the node
server names are LONDONA & LONDONB, respectively.
Figure 33: Time Zone High Availability 'Active-Active' Load Balancing Cluster

To accomplish this server package deployment segmentation we must do the following:


1) Ensure that each physical host server defines within its own hosts table the common logical time zone server name and
specific time zone node alias, e.g. LONDON and LONDONA as shown directly below.
Host Table - Server Node A:
10.123.123.51

CHICAGO.DOMAIN.COM CHICAGO CHICAGOA.DOMAIN.COM CHICAGOA

10.123.123.52

TORONTO.DOMAIN.COM TORONTO TORONTOA.DOMAIN.COM TORONTOA

10.123.123.53

LONDON.DOMAIN.COM LONDON LONDONA.DOMAIN.COM LONDONA

10.123.123.54

DENVER.DOMAIN.COM DENVER DENVERA.DOMAIN.COM DENVERA

32

Time Zone Support for Oracle JD Edwards EnterpriseOne


Host Table - Server Node B:
10.123.123.91

CHICAGO.DOMAIN.COM CHICAGO CHICAGOB.DOMAIN.COM CHICAGOB

10.123.123.92

TORONTO.DOMAIN.COM TORONTO TORONTOB.DOMAIN.COM TORONTOB

10.123.123.93

LONDON.DOMAIN.COM LONDON LONDONB.DOMAIN.COM LONDONB

10.123.123.94

DENVER.DOMAIN.COM DENVER DENVERB.DOMAIN.COM DENVERB

2) The WINS and/or DNS server must distinguish between the node specific host names, while the common logical
server name uses a logical IP address. From the perspective of all client servers, the time zone servers are accessible via
their logical IP addresses. Traffic to this logical IP address is routed by the intelligent network appliance to the appropriate backend
node server. The logical IP address is then transformed to the physical IP address via network address translation (NAT). 'Sticky IP' is
used to create an affinity between the client and backend node server so that communication persists between these
two servers.
WINS DNS Perspective:
10.123.123.11

CHICAGO.DOMAIN.COM CHICAGO

<-- Logical IP address - load balanced by intelligent network switch (NAT)

10.123.123.12

TORONTO.DOMAIN.COM TORONTO

<--

Logical IP address load balanced by intelligent network switch (NAT)

Logical IP address load balanced by intelligent network switch (NAT)

10.123.123.13

LONDON.DOMAIN.COM LONDON

<--

10.123.123.14

DENVER.DOMAIN.COM DENVER

<-- Logical IP address load balanced by intelligent network switch (NAT)

10.123.123.51

CHICAGOA.DOMAIN.COM CHICAGOA

10.123.123.52

TORONTOA.DOMAIN.COM TORONTOA

10.123.123.53

LONDONA.DOMAIN.COM LONDONA

10.123.123.54

DENVERA.DOMAIN.COM DENVERA

10.123.123.91

CHICAGOB.DOMAIN.COM CHICAGOB

10.123.123.92

TORONTOB.DOMAIN.COM TORONTOB

10.123.123.93

LONDONB.DOMAIN.COM LONDONB

10.123.123.94

DENVERB.DOMAIN.COM DENVERB

3) Use the JD Edwards EnterpriseOne 'Add Server' plan to create and execute a plan to add each virtual node hostname, e.g.
LONDONA, LONDONB, TORONTOA, TORONTOB, CHICAGOA, CHICAGOB, DENVERA, DENVERB.
4) Server packages should then be deployed against the specific virtual node hostname, e.g. LONDONA. This will ensure
that while one high availability 'active-active' load balancing cluster node is updated, the other remains running without
incident.

33

Time Zone Support for Oracle JD Edwards EnterpriseOne

Time Zone Support for Oracle JD Edwards EnterpriseOne


December 2011
Author:
Contributing Author:

Michael Guerra, Oracle JD Edwards


Steve Fillipi, Oracle JD Edwards

Oracle Corporation
World Headquarters
500 Oracle Parkway
Redwood Shores, CA 94065
U.S.A.
Worldwide Inquiries:
Phone: +1.650.506.7000
Fax: +1.650.506.7200
oracle.com
Copyright 2011, Oracle. All rights reserved.
This document is provided for information purposes only and the
contents hereof are subject to change without notice.
This document is not warranted to be error-free, nor subject to any
other warranties or conditions, whether expressed orally or implied
in law, including implied warranties and conditions of merchantability
or fitness for a particular purpose. We specifically disclaim any
liability with respect to this document and no contractual obligations
are formed either directly or indirectly by this document. This document
may not be reproduced or transmitted in any form or by any means,
electronic or mechanical, for any purpose, without our prior written permission.
Oracle, JD Edwards, PeopleSoft, and Siebel are registered trademarks of Oracle
Corporation and/or its affiliates. Other names may be trademarks
of their respective owners.

34

Das könnte Ihnen auch gefallen