timezones for enterpriseone 91

37
Time Zone Support for Oracle JD Edwards EnterpriseOne Tools Release 9.1 December 2011

Upload: raveskirza

Post on 11-Nov-2015

39 views

Category:

Documents


4 download

DESCRIPTION

This document explains how to setup timezones for JD Edwards EnterpriseOne 9.1 ERP

TRANSCRIPT

  • Time Zone Support for Oracle

    JD Edwards EnterpriseOne

    Tools Release 9.1

    December 2011

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    Time Zone Support for Oracle JD Edwards EnterpriseOne Page i

    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

    Time Zone Support for Oracle JD Edwards EnterpriseOne Page ii

    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

    Time Zone Support for Oracle JD Edwards EnterpriseOne Page 1

    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

    Time Zone Support for Oracle JD Edwards EnterpriseOne Page 2

    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

    Time Zone Support for Oracle JD Edwards EnterpriseOne Page 3

    Figure 2: Virtual Host Time Zone Support Methodology

    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 load-

    balancing 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.

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

    Switched Ethernet

    User Community

    Intelligent Switch *or* Network Deployment / Web Cache Cluster

    JAS/HTML

    Server

    TZ -7 GMT:

    HTML01

    JAS/HTML

    Server

    TZ -5 GMT:

    HTML01

    JAS/HTML

    Server

    TZ -6 GMT:

    HTML01

    JDE EnterpriseOne

    Database Server

    Time Zone Offset (-5 GMT):

    E1 Services OS User Account:JDE900TZ5Nexport TZ="/usr/share/zoneinfo/America/New_York"

    Virtual IP & Hostname: JDESRVR01

    JDE.INI[JDENET]

    serviceNameListen=6015

    JAS.INI:[PACKAGE BUILD]

    PackageDomainServer=JDESRVR01

    PackageDomainPort=6015

    Serialized Objects Data Source: SerObj_01

    JVM Generic Argument:

    -Duser.timezone=GMT-5

    Time Zone Offset (-6 GMT):

    E1 Services OS User Account:JDE900TZ6Nexport TZ="/usr/share/zoneinfo/America/Chicago"

    Virtual IP & Hostname: JDESRVR02

    JDE.INI[JDENET]

    serviceNameListen=6015

    JAS.INI:[PACKAGE BUILD]

    PackageDomainServer=JDESRVR02

    PackageDomainPort=6015

    Serialized Objects Data Source: SerObj_02

    JVM Generic Argument:

    -Duser.timezone=GMT-6

    Time Zone Offset (-7 GMT):

    E1 Services OS User Account:JDE900TZ7Nexport TZ="/usr/share/zoneinfo/America/Denver"

    Virtual IP & Hostname: JDESRVR03

    JDE.INI[JDENET]

    serviceNameListen=6015

    JAS.INI:[PACKAGE BUILD]

    PackageDomainServer=JDESRVR03

    PackageDomainPort=6015

    Serialized Objects Data Source: SerObj_03

    JVM Generic Argument:

    -Duser.timezone=GMT-7

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    Time Zone Support for Oracle JD Edwards EnterpriseOne Page 4

    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

    Time Zone Support for Oracle JD Edwards EnterpriseOne Page 5

    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 2=Change 4=Remove 5=Display 7=Rename

    Internet Host

    Opt Address Name _ ________________________________

    _ ::1 IPV6-LOOPBACK IPV6-LOCALHOST _ 10.123.123.49 JDE900SVR.DOMAIN.COM JDE900SVR JDE900TZ7N.DOMAIN.COM JDE900TZ7N _ 10.123.123.51 JDE900TZ6N.DOMAIN.COM JDE900TZ6N _ 10.123.123.52 JDE900TZ5N.DOMAIN.COM JDE900TZ5N _ 10.123.123.53 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

    Time Zone Support for Oracle JD Edwards EnterpriseOne Page 6

    Figure 3: Virtual Time Zone Server Information

    SERVER PORT

    SYSTEM

    FOUNDTION LIBRARY SERVER MAP DATA SOURCE TIMEZONE

    JDE900TZ7N 6015 SVM900 JDE900TZ7N - 900 Server Map Denver

    JDE900TZ6N 6015 SVM900TZ6N JDE900TZ6N - 900 Server Map Chicago

    JDE900TZ5N 6015 SVM900TZ5N JDE900TZ5N - 900 Server Map NewYork

    JDE900TZ0N 6015 SVM900TZ0N JDE900TZ0N - 900 Server Map 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

    SYSTEM

    FOUNDATION

    SERVER

    HOST NAME PORT

    START

    IPC

    SERVER MAP

    LIBRARY SERVER MAP DATA SOURCE

    JDE900TZ7N_EntSrvr_TZn7_De

    nver E900SYST7N

    JDE900TZ7N 6015 0001 SVM900 JDE900TZ7N - 900 Server Map

    JDE900TZ6N_EntSrvr_TZn6_Ch

    icago E900SYST6N

    JDE900TZ6N 6015 2101

    SVM900TZ6N JDE900TZ6N - 900 Server Map

    JDE900TZ5N_EntSrvr_TZn5_Ne

    wYork E900SYST5N

    JDE900TZ5N 6015 4201

    SVM900TZ5N JDE900TZ5N - 900 Server Map

    JDE900TZ0N_EntSrvr_TZn0_Lo

    ndon 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

    Time Zone Support for Oracle JD Edwards EnterpriseOne Page 7

    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

    Time Zone Support for Oracle JD Edwards EnterpriseOne Page 8

    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

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    Time Zone Support for Oracle JD Edwards EnterpriseOne Page 9

    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 . . . : 1 100 Edit 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

    Time Zone Support for Oracle JD Edwards EnterpriseOne Page 10

    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

    Time Zone Support for Oracle JD Edwards EnterpriseOne Page 11

    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 23:05:22 CPU %: .0 Elapsed time: 00:00:00 Active jobs: 395 Current

    Opt Subsystem/Job User Type CPU % Function Status __ JDEE900 QSYS SBS .0 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 DEQW __ JDENET_K LONDON BCI .0 PGM-JDENET_K DEQW __ JDENET_K LONDON BCI .0 PGM-jvmStartPa DEQW ...

    __ NETWORK LONDON BCH .0 PGM-JDENET_N SELW __ JDE900TZ5N QSYS SBS .0 DEQW __ 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 DEQW __ JDENET_K CHICAGO BCI .0 PGM-JDENET_K DEQW __ JDENET_K CHICAGO BCI .0 PGM-jvmStartPa DEQW ...

    __ NETWORK CHICAGO BCH .0 PGM-JDENET_N SELW __ QBATCH QSYS SBS .0 DEQW

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    Time Zone Support for Oracle JD Edwards EnterpriseOne Page 12

    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

    Time Zone Support for Oracle JD Edwards EnterpriseOne Page 13

    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

    Time Zone Support for Oracle JD Edwards EnterpriseOne Page 14

    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

    15

    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

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    16

    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

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    17

    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

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    18

    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 check-box 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

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    19

    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 SecurityServer=JDE900TZ0N

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    20

    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

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    21

    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

    3. 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.

    4. 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

    E1 USER ACCT ASSOCIATED

    WITH TIMEZONE ROLE

    SERVER MAP

    LIBRARY SERVER MAP DATA SOURCE

    JDE900TZ7N Denver JPD900DEN JDETZ7N

    MANISH, KELLI, SEAMUS,

    CHARUNEE, SOLANGE, SVM900

    JDE900TZ7N - 900 Server

    Map

    JDE900TZ6N Chicago JPD900CHI JDETZ6N

    KATE, TIM, CRYSTAL,

    SERGIO, BECKY, SVM900TZ6N

    JDE900TZ6N - 900 Server

    Map

    JDE900TZ5N NewYork JPD900NYC JDETZ5N

    SRINI, DONNA, SYDNEY,

    ROBERTA, CAROLINE, SVM900TZ5N

    JDE900TZ5N - 900 Server

    Map

    JDE900TZ0N London JPD900LON JDEGMT

    PREETI, BRENDON, KARA,

    SUZANNE, COLIN, SVM900TZ0N

    JDE900TZ0N - 900 Server

    Map

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    22

    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

    SYSTEM

    FOUNDATION

    SERVER

    HOST NAME PORT

    START

    IPC

    SERVER MAP

    LIBRARY SERVER MAP DATA SOURCE

    JDE900TZ7N_EntSrvr_TZn7_De

    nver E900SYST7N

    JDE900TZ7N 6015 0001 SVM900 JDE900TZ7N - 900 Server Map

    JDE900TZ6N_EntSrvr_TZn6_Ch

    icago E900SYST6N

    JDE900TZ6N 6015 2101

    SVM900TZ6N JDE900TZ6N - 900 Server Map

    JDE900TZ5N_EntSrvr_TZn5_Ne

    wYork E900SYST5N

    JDE900TZ5N 6015 4201

    SVM900TZ5N JDE900TZ5N - 900 Server Map

    JDE900TZ0N_EntSrvr_TZn0_Lo

    ndon E900SYST0N

    JDE900TZ0N 6015 6301

    SVM900TZ0N JDE900TZ0N - 900 Server Map

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    23

    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 Column : 1 Control : c /E900SYS/ /E900SYST0N/ all

    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 Col Control : c /JDE900/ /E900SYST0N/LOGS/ all

    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

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    24

    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 Colum Control : F JDENET]

    CMD ....+....1....+....2....+....3....+....4....+....5....+....6 internalQueueTimeOut=30 FilePacketBufferSize=32768 netTemporaryDir=/JD Edwards/JDE_HOME/targets/JDE900TZ0N_EntSr listenOnSpecificIP=1

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    25

    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

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    26

    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 OMOCM1 Business Data - PROD JDE900SVR Business Data - PROD 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

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    27

    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

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    28

    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 cross-

    communication 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

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    29

    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 \\\E900\PD900\package\PD900FE\AS400V7R1M0\JDEENTSVR.INF \\\E900\PD900\package\PD900FE\AS400V7R1M0\JDE900TZ0N.INF

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    30

    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

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    31

    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

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    32

    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

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    33

    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

  • Time Zone Support for Oracle JD Edwards EnterpriseOne

    34

    Time Zone Support for Oracle JD Edwards EnterpriseOne December 2011

    Author: Michael Guerra, Oracle JD Edwards Contributing Author: 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.