6 Building Packages

This chapter contains the following topics:

6.1 Understanding the Package Build Process

After you assemble a package, you must define the package build before you can build and deploy it to the workstations and servers. The build process reads the central objects data source for the path code that you defined in the package. This information is then converted from a relational database format to replicated objects, which are put in the package itself.

This section discusses:

  • Directory structure for packages.

  • Package build tasks.

  • JD Edwards EnterpriseOne Package Build Definition Director.

  • Business function builds during package build.

  • Package compression.

  • Verification of a package build.

6.1.1 Directory Structure for Packages

When a package is built, a directory structure with the name of the package is created within the appropriate path code directory. This directory contains the package information.

6.1.1.1 Example: JD Edwards EnterpriseOne Deployment Server Directory Structure

The E920 (release name) directory structure looks similar to this example.

This is an example of the directory structure for PD920 (path code name)\Package\<package name> on the Deployment Server:

bin32

include

java

lib32

obj

pkgspec

res

serverlogs

source

spec

work

<operating system name of enterprise server (for example, INTEL5.2)

This is an example of a directory structure that has a 64-bit enabled path code:

bin32 OR bin64

include

include64

java

lib32 OR lib64

obj OR obj64

pkgspec

res

serverlogs

source

source64

spec

work

When you build a client-only package, the directories under the package name are populated. Files for the source/source64 and include/include64 directories are retrieved from the repository, F98780R table. For server/client packages, the include and source are copied from the primary build server checkin/include for 32-bit, checkin/include64 for 64-bit and checkin/source for 32-bit, checkin/ source 64 for 64-bit folders. Information for all other directories comes from central objects. The bin32/bin64, lib32/lib64, and obj/obj64 directories are populated with the output of the business function build process.

6.1.1.2 Example: JD Edwards EnterpriseOne Enterprise Server Directory Structure

The E920 (release name) directory structure looks similar to this example.

Note:

Any references to 64-bit apply to Release 9.2.3 or higher only.

This is an example of the directory structure for PD920 (path code name)\Package\<package name> on the Enterprise Server:

bin32 OR bin64

CompileLogs

compress

GeneratedNER_logs

include

checkin\include

checkin\include64

lib32 OR lib64

obj OR obj64

res

checkin\res

source

checkin\source

checkin\source64

spec

text

work

<operating system name of enterprise server (for example, INTEL5.2)

6.1.2 Package Build Tasks

The process that you perform to build a package might take several hours. For this reason, it is recommended that you initiate the actual package build at the end of the working day, if possible. Complete these tasks when you build a package:

  • Transfer objects.

    Ensure that all of the objects that you want to include in the build have been transferred to the appropriate path code.

  • Ensure that the database for the package has the most current replicated data.

  • Build a package.

    Build a package using the path code to which objects were transferred.

  • Deploy the software to these machines:

    • Workstations and servers

    • Tiered deployment locations

Caution:

If the jdeproperties.log in the \system\classes folder is set to perform logging, the package build process will take even longer to complete. Logging should be turned off during package builds to improve performance.

6.1.3 Package Build Definition Director

Like the Package Assembly Director, the Package Build Definition Director simplifies and expedites the build definition process by displaying a series of forms that guide you through the process. As with the Package Assembly Director, you can either click Next to continue to the next form or Previous to go back to the previous form. You can cancel the build definition process by clicking Cancel.

Like Oracle's JD Edwards EnterpriseOne Package Assembly application, Oracle's JD Edwards EnterpriseOne Package Build application defaults to Express mode. You can use a processing option to switch the JD Edwards EnterpriseOne Package Build application to Director mode.

This table summarizes the function of each form in the Package Build Definition Director:

Form Description
Package Build Definition Director Use this form to review introductory information about the Package Build Definition Director.
Package Selection Use this form to select the defined package that you want to build. The status of the package must be Assembly-Definition Complete.
Package Build Location Use this form to specify whether you want to build the package for the client workstation, one or more servers, or both clients and servers. For server packages, also specify the shared specifications data source.
Server Selection Use this form to specify the server location. (The server location is required when you build a package for a server.) If you only select one server, this server becomes the primary build server. If you select more than one server, you must also select the primary build server from the list of servers.
Build Specification Options Use this form to specify whether you want to include all specification tables or only selected tables in the package. The option to build individual specifications is useful if a build fails and the package error log indicates that an individual specification file needs to be rebuilt.
Individual Specification Selection Use this form to include only selected specifications in the package.
Business Function Options Use this form to build business functions. You can also specify the build mode, the severity level at which to interrupt the build process, whether to build business function documentation, and whether to clear the output destination before building.
Compression Options Use this form to specify package compression for client or server packages and to specify whether to compress directories (all or individual), data, and foundation.
Individual Directory Selection Use this form to select the individual directories that you want to compress.
Build Features Use this form to enter file set and compression information for features that you added to the package. A feature is a set of files or configuration options, such as registry settings, that must be copied to a workstation or server to support an application or other function.
Package Build Revisions Use this form to review or change any of the options that you have specified for the package.

You can access the Package Build Definition Director from either the Package Assembly menu selection or the Package Build menu selection. The advantage of accessing the Director from the Package Assembly menu selection is that the system automatically enters the package name and other information. If you access the Director from the Work With Package Build Definition form, you must manually specify the name of the package that you want to build.

Before you launch the Package Build Definition Director, you can use the Work with Package Build Definition form to review information about any previously designed packages. For example, you can review the properties, build options, business function options, and compression options for the package. As on any other parent/child form, you can click the plus (+) symbol to view more information about the package or click the minus (-) symbol to view less information about the package.

6.1.3.1 Viewing Package Build History and Resubmitting Builds

After you submit the package build, you can track the build status using Oracle's JD Edwards EnterpriseOne Package Build History program (P9622). This application also enables you to view logs that are associated with the build process to determine if any errors occurred during the build process.

If the build did not complete successfully, you can resubmit the package and resume building from the point where the build stopped. Alternatively, you can reset the status of the specifications and objects and then build the package again.

6.1.4 Business Function Builds During Package Build

When you build business functions as part of the package build, the system performs the same process as if you had manually run Oracle's JD Edwards EnterpriseOne BusBuild program (selected Build from the Global Build menu) after you built the package.

Note:

Any references to 64-bit apply to Tools Release 9.2.3 or higher.

The system retrieves source and header information from the package (from the source/source64 and include/include64 directories), compiles it, and stores it in the bin32, obj, and lib32 directories or bin64, obj64, and lib64 if building with a 64-bit package. The system builds business functions in the package, not on the workstation. If you select the Compress Package option, the system compresses the business functions after it builds them.

These guidelines apply to the path code, foundation, and destination for the business function build:

  • When building business functions, use the path code that you defined in the package.

  • The foundation is either the same as the foundation that is included in the package or, for an update package, it is the foundation for the parent package.

  • Build output is directed to the bin32, obj, and lib32 directories of the package itself; or if building a 64-bit package, then the bin64, obj64, and lib64 directories of the package.

  • When building a full package, or when building an update package that includes a business function, always build business functions; otherwise, the consolidated DLLs included in the package will not be current.

    For update packages, the system builds each business function individually. After it builds an individual business function, the system performs a global link for that object and all other objects that are in the same consolidated DLL. The global link affects all objects in the check-in location for the path code of that package.

6.1.5 Package Compression

You can compress a server package or client package.

6.1.5.1 Compressing Server Packages

If you plan to deploy a package to an enterprise server, which you did not build the package on, you must build the package on the same type of server, with compression selected. The directories are compressed into file types that are compatible with the type of enterprise server to which you are going to deploy. For NT servers, the file extension is .cab, for UNIX the file extension is .z, and for IBM i, the file has no extension.

When the server builds a compressed package, it stores the compressed files on the primary build server in subdirectories, such as \bin32 or bin64, then they are copied to the package path on the deployment server, \package\package name\server type\, where package name is the name of the package and server type is the type of server for which the package is compressed.

The compression process creates a new file called compressed.inf in the server type directory. This file includes the information that the system needs to deploy the compressed files. This table shows the type of compressed file that the process creates for each type of server:

NT UNIX IBM i
.cab .z SAVF

When you deploy the package to another enterprise server, the system reads the compress.inf file and uses this information to copy the compressed files from the package directory on the primary build server to the enterprise server.

Specs are no longer compressed. When they are deployed, the spec.ini is set to the package name for that path code.

6.1.5.2 Compressing Server Update Packages

When you select the option to compress the server package, the program creates a compressed file in the package name\server type\bin32 or bin64 directory. Specifications are not compressed. They are merged directly from the update package spec repository tables into the parent package spec repository tables.

6.1.5.3 Compressing Client Packages

When you compress directories, the application objects that are included in the package are automatically compressed. The system also creates an entry in the package INF file that indicates whether the foundation, data, and application objects are compressed.

6.1.6 Verification of a Package Build

After you assemble a package or define a package build, you can verify whether the package can be built successfully. You can use this verification to test the package before you submit the build, or troubleshoot problems with the build process if the package build fails.

During the verification process, the program verifies that:

  • Disk space is adequate.

  • Central objects and package build tables are accessible.

  • User has permissions to create directories on the deployment server and enterprise server.

  • Required service pack is installed.

  • Required Microsoft Data Access Components (MDAC) are installed.

  • Machine tables are set up.

  • Required compiler version is installed.

  • Server port is accessible.

  • Debug levels of the jde.ini files are adequate for the client and enterprise server.

Note:

You cannot verify the specification database data source. Only enterprise servers and clients can be verified.

6.2 Building a Package

This section lists prerequisites and discusses how to:

  • Set processing options for the Package Build Definition Director.

  • Define a package build.

  • Review package build selections.

  • Build a package.

6.2.1 Prerequisites

Before you complete the tasks in this section:

  • Verify that the User ID that is used to perform the package build has drop table and create table rights.

    If you are using a Oracle, SQL, or DB2 for Linux, UNIX, and Windows, and you are running with security server turned on, you must add a security override so that the package build process can create the metadata repository table in central objects.

    See Adding a Security Override for Package Build.

  • For customers adopting Microsoft Visual C++:

    All JD Edwards EnterpriseOne Windows machines receiving application foundation packages built with Microsoft Visual C++ require the corresponding runtime libraries to be installed.

  • Assemble the package and verify that the status of the assembled package is Assembly-Definition Complete.

  • Verify that Oracle's JD Edwards EnterpriseOne Object Configuration Manager (OCM) mappings are correctly set for the JD Edwards EnterpriseOne Package Build (R9621) and Server Package Build (R9622) programs, which the system generates as part of the package build process.

    For example, if you want the programs to run locally, ensure that the OCM mappings point to Local for the environment in which the package build is running.

  • Verify that logging is turned off during the package build.

    When the jdeproperties.log file is set for logging in the \system\classes folder and a package build is submitted, the build process is slowed down.

  • Modify the jde.ini for package build to work properly.

    Update both the jde.ini on the deployment server (c:\Windows\jde.ini) and the client jde.ini template under <deployment server>\<release>\OneWorld Client Install\misc by adding the "allowedFileExtensions" to the JDENET section of the jde.ini as shown:

    [JDENET]

    allowedFileExtensions=.c;.h;.hxx;.ddb;.xdb;.cab;.Z;.log;.imp;.txt;.spc;.gif;.bmp;.jpg;.avi;.ico;.h_old;.c_old;.inf;.sts;.err;.tpl;.db;.cur;.rgs;.avi;.tdl;.rc2;.rc;.rh;.inf;.vss;.vst;.dll;.png;.dlg;.fts;.htm; NONE;

    Also, through Server Manager, edit the jde.ini on all enterprise servers and make sure that all file types are listed in the entry as shown above. If you change the jde.ini, stop and start services on that server.

6.2.2 Forms Used to Build a Package

Form Name FormID Navigation Usage
Package Selection W9621C Package and Deployment Tools (GH9083), Package Build.

Click Add, and then click Next.

Select a package to define a build.
Package Build Revisions W9621B Package and Deployment Tools menu (GH9083), Package Build.

Select a package, and deactivate it by selecting Active/Inactive from the Row menu. Select Build Revisions from the Row menu.

Review and change package build options.
Work With Package Build Definition W9621L Package and Deployment Tools (GH9083), Package Build Add a package build definition.

Build a defined package.


6.2.3 Setting Processing Options for the Package Build Definition Director (P9621)

Processing options enable you to specify the default processing for programs and reports.

For programs, you can specify options such as the default values for specific transactions, whether fields appear on a form, and the version of the program that you want to run.

For reports, processing options enable you to specify the information that appears on reports. For example, you set a processing option to include the fiscal year or the number of aging days on a report.

Do not modify JD Edwards EnterpriseOne demo versions, which are identified by ZJDE or XJDE prefixes. Copy these versions or create new versions to change any values, including the version number, version title, prompting options, security, and processing options.

6.2.3.1 Processing Tab

Although processing options are set up during JD Edwards EnterpriseOne implementation, you can change processing options each time you run a program.

1. Changes

Enter a value to determine how changes will occur.

<Blank> means that changes will only be allowed at the package level and will apply to all servers selected.

Enter 1 to enable changes to the build definitions by individual server.

2. Mastering

Mark this processing option with a 1 if this process is for Mastering purposes. If the process is for all users, mark this processing option with <Blank>.

3. Build Verification

Mark this processing option with a 1 if the Build Verification UBE is to be run prior to building all packages. If the build verification fails, the package build UBE will not be run. Leave this processing option <Blank> if you do not want to run Build Verification.

4. Director or Express Mode

Use this processing option to switch between Director and Express modes.

5. ESU Build

Mark this processing option with a 1 if this is an ESU build.

6.2.4 Defining a Package Build

Access the Package Selection form.

Figure 6-1 Package Selection form

Description of Figure 6-1 follows
Description of ''Figure 6-1 Package Selection form''

  1. Find and select the defined package that you want to build.

  2. If the package definition has a status of In Definition, you must change the status to Assembly-Definition Complete before you build the package. To change the status, select the package and select Activate from the Row menu.

  3. On the Package Selection form, in the Express Option pane, select one of these options:

    Option Description
    Director Select this option if you want to configure the package build. Director enables you to navigate the package build definition forms.
    Express Select this option if you want to accept the default build parameters. Express enables you to accept the default options for the package build and skip the package build definition forms.

  4. If you selected the Express option, skip to the Reviewing Package Selections task. If you selected the Director option, continue with the next task.

  5. On the Package Build Location form, select one or both of these options:

    Option Description
    Client Select to indicate that the package is being built for installation on client workstations.
    Server(s) Select to indicate that the package is being built for installation on one or more servers.

  6. If you are building a package for client workstations only, click Next and proceed to step 10.

  7. If you are building a server package, you can specify the Shared Location for the shared spec database and click Next.

    Note:

    The default shared spec database is always the central objects data source for the package path code.
  8. To select a server on the Server Selection form, and then double-click the row header for the server.

    A check mark indicates your selection. You can select multiple servers.

    Note:

    Servers are automatically selected for an update package. They are selected based on the server selection of the parent package.
  9. Click Next.

  10. On the Build Specification Options form, select Build Options to take the package definition and copy and convert objects from the central data source to the replicated format used by workstations.

  11. Complete these fields and click Next:

    Field Description
    All Specification Tables Select this option if you want to build all specification tables into the package.
    Individual Specification Tables Select this option if you would like to select individual tables to include in the package. All of the tables listed on the Individual Specifications Selection form will be included in the package.
    Stop Build Option Indicate the point at which the system should stop the build. You can continue building on all errors, stop building on specification errors, stop building on business function errors, or avoid compressing when errors exist.
    Replace jde.ini For update packages, indicate if you want a new jde.ini file delivered with the package. Leave this unchecked unless the jde.ini file has changed. For example, the jde.ini may change when you perform upgrades or when you re-configure in release master.

  12. If you chose to build individual specification tables, the Individual Specification Selection form appears.

  13. To indicate that you do not want to build a specification table, clear its option.

    You can clear multiple options.

  14. Click Next.

    For a full package or for an update package that includes business functions or tables with table event rules, the Business Function Options form appears.

  15. Complete these fields and click Next:

    Field Description
    Generate NER Specify whether you want to generate the named event rules and table event rules into .c and .h files. This will generate n<xxxxxx>.h and n<xxxxxx>.c for the named event rules and f<xxxxxx>.hxx and f<xxxxxx>.c for table event rules.
    Build Functions Specify whether you want to build business functions. This will compile and link all the business functions, named event rules, and table event rules into a .dll to run in EnterpriseOne.
    Generate NER Headers for Opposite bitness Specify whether to generate the header files for the opposite bitness in which the package is being built.

    For example, if the package is building a 32-bit client or client/server package (system is 32-bit), and the path code has been converted to 64-bit, then when business functions are built on the client, the NER will be generated for the 64-bit header files. When the package is finished, there will be NER .h files in the include64 directory. These will be needed if a client package is installed and used for development work.

    This is automatically checked if Build Mode is Debug. If Build Mode is Optimize, it is not checked.

    Build Mode Specify the build mode, such as debug or optimize.
    Stop-Build Option Specify what action to take if errors occur while building business functions.
    Build BSFN Documentation Specify whether you want to build the documentation for the functions.
    Clear Output Destination First Indicate if you want the destination directory for the functions to be cleared before the build.

  16. On the Compression Options form, select Compress Client Options if you would like to compress the client package.

    • Select this option to compress the applications included in the package, and to specify options for the compression process.

    Important:

    After applying JD Edwards EnterpriseOne Tools 9.2, the Data.CAB needs to be compressed for the first full package for any path code where you are building a client package with Tools 9.2. Failure to do this will result in errors during the client installation because it will not be able to decompress the Data.cab.

    On the Compression tab, for Compression Options, select "Compress Data" in order to compress the data.CAB.

    Also, if you did not get the Tools Release through Server Manager, select "Compress Foundation".

    This only needs to be checked for the first package for each path code.

  17. If you are compressing the client package, select from these options:

    Option Description
    All Client Directories Select to compress all of the directories listed on the Individual Directory Selection form.
    Individual Client Directories Select to compress only certain directories which you specify.
    Compress Data Indicate whether to compress the data in a package after the package is created. Compress Data compresses the Supported Local Database that is associated with this package.
    Compress Foundation Indicate whether to compress the foundation files in the package after the package is created. Compress Foundation compresses the foundation that is associated with the package.

  18. Select Compress Server Options if you would like to compress the server package.

    • Select this option to compress the applications included in the package, and to specify options for the compression process.

      You should select Compress Server Options if you plan to build the package on one enterprise server and deploy it to another enterprise server.

  19. If you are compressing the server package, select from these options:

    Option Description
    All Server Directories Select to compress all of the directories listed on the Individual Directory Selection form.
    Individual Server Directories Select to compress only certain directories which you specify.

  20. Click Next.

    If you chose to compress individual directories, the Individual Directory Selection form appears.

  21. On the Individual Directory Selection form, indicate that you want to compress a directory for the client or server by clicking its option to select it and click Next.

    You can select multiple options.

  22. If the package does not include features, skip to the next task.

  23. On the Build Features form, if you want to build a feature.inf file with the package, select the Build Feature INFs option.

    When you select this option, the Compress and Build options become available.

    See Configuring Features During the Package Build Definition.

  24. Click Next.

  25. Review the package build selections and click End.

6.2.5 Reviewing Package Build Selections

Access the Package Build Revisions form.

Figure 6-2 Package Build Revisions form

This image is described in surrounding text.
  1. Review current build options, business function options, compression options, and feature options that you specified for the package.

  2. Click the tab for the type of option that you want to change, and make any changes.

    Only tabs for options that you selected appear on this form.

    See Defining a Package Build.

  3. When you are finished reviewing or changing the build options, click End to exit the Package Build Definition Director, or click OK to accept changes to an existing package.

  4. On Work With Package Build Definition, activate the package by choosing Active/Inactive from the Row menu.

    After you enter the build options for a package, you can easily revise any of those options using the Package Build Revision form. You do not need to go through all of the forms in the Package Build Definition Director to revise build options.

6.2.6 Building a Package

Access the Work With Package Build Definition form.

  1. Select Active/Inactive from the Row menu to activate the package.

  2. Select Submit Build from the Row menu when you are ready to initiate the package build.

  3. Select one of these options and click OK.

    • On Screen

    • To Printer

      The form closes and the system begins building the package. Build time varies, depending on the number and size of the items in the package. A build could take five minutes for a small package, or several hours for a full package that contains all applications. When the build finishes, the report either appears on the screen or prints, depending on the destination that you specified.

  4. Review the report to make sure that all components in the package were built successfully.

    If the report indicates any errors, review the error logs for more detail.

    If the package build finishes successfully, you can schedule the package for deployment.

6.3 Incorporating Features into Packages

This section provides overviews of the feature build and deployment process and the JD Edwards EnterpriseOne Feature Based Deployment Director and discusses how to:

  • Create a feature.

  • Define a file set.

  • Define a registry setting.

  • Define a shortcut.

  • Define additional package build processes.

  • Define additional install processes.

  • Define an initialization file.

  • Define a new open database connectivity (ODBC) data source.

  • Import an existing ODBC data source.

  • Review feature components.

  • Copy features.

  • Add a feature to a package.

  • Configure features during the package build definition.

  • Configure features for an existing package build definition.

6.3.1 Understanding the Feature Build and Deployment Process

A feature is a set of files or configuration options, such as registry settings, that is copied to a workstation or server to support an application or other functions. Like objects, features are built into a package and deployed to the workstations and servers that require the feature components.

Note:

Oracle's JD Edwards EnterpriseOne web development clients require a specific feature component to develop web-based objects.

Note:

Oracle's JD Edwards EnterpriseOne machines that run Microsoft Windows, use business functions built with a Microsoft Visual C++ 2008 or higher level compiler, and do not have the same level Microsoft Visual C++ compiler installed locally, require a specific feature that installs the appropriate Microsoft Visual C++ Compiler runtime libraries.

For the Tools Release 9.2.3, Microsoft Visual C++ 2013 or 2017 compiler is required.

See "Appendix: Using the Microsoft Visual C++ Compiler" in the JD Edwards EnterpriseOne Administration Guide

You might also want to include any of these features when you build a package:

  • ActiveX controls.

    The Application Design Aid tool enables you to include ActiveX controls in applications. If ActiveX controls are delivered with the software, you need a way to copy these controls to the workstation.

  • Open Data Access (ODA) data sources.

    ODA requires that additional ODBC data sources be created on any workstation or server that uses ODA.

  • Sales Force Automation databases.

    The Sales Force Automation feature requires that you install a separate Supported Local Database on the workstation so that it can be disconnected from the network during offline operation. You must also write a registry setting that indicates that the machine is used offline.

  • GenCorba, GenCom, and other third-party interfaces or products.

    Each of these products and interfaces requires additional components on the workstation and server in order to function. As functionality expands to support additional third-party products and interfaces, these products will each have their own set of supporting files.

For software releases prior to JD Edwards EnterpriseOne 8.10, custom programming was required to add feature components to the workstation and server. You can now use familiar tools such as the JD Edwards EnterpriseOne Package Assembly Director and Package Build Definition Director to create a package that contains the feature, and then you can deploy it using the JD Edwards EnterpriseOne Package Deployment Director or multitier deployment.

Because feature components are not objects, the process for incorporating feature components into a package is slightly different from the normal package build process. Specifically, you must first define the feature before you can add it to a package.

6.3.1.1 Feature Definition

Before adding the feature to a package, you must first define it using Oracle's JD Edwards EnterpriseOne Feature Based Deployment Director. During feature definition, you specify the feature name and type, enter a brief description, and specify installation parameters.

The forms in the JD Edwards EnterpriseOne Feature Based Deployment Director enable you to:

  • Create a file set.

  • Define registry settings.

  • Define a Microsoft Windows shortcut.

  • Enter initialization file information.

  • Add ODBC data sources.

  • Specify the feature build sequence.

  • Enter information for third-party products.

6.3.1.2 Feature Selection During Package Assembly

After you have defined the feature, it is ready to be included in a package. Use the Package Assembly Director to assemble the package as you would any other package. When you assemble the package, feature-specific forms enable you to specify the features that you want to include.

6.3.1.3 Feature Configuration During Package Build Definition

After you have assembled the package that contains the features, you can use the Package Build Definition Director to define the build for the package. Forms in this director enable you to select the file sets that will be compressed within the package, and to specify the processes that will be run before and after the feature is built.

6.3.1.4 Package Deployment

After you have built the package, you are ready to schedule it for deployment by using Oracle's JD Edwards EnterpriseOne Package Deployment Director. The procedure is the same as the procedure that you use to schedule packages that do not include features.

6.3.1.5 Workstation Installation and Deployment Server Installation

After you have deployed the package to workstations and deployment servers, use Oracle's JD Edwards EnterpriseOne Workstation Installation and Deployment Server Installation applications to install the package.

6.3.1.6 Feature Entries in the Package.inf File

When a package contains a feature, the package.inf file [Features] section provides the feature name and the location of the feature.inf file that the system creates for each feature. The feature.inf file contains information pertaining to the feature, such as shortcut information, registry settings, initialization file settings, and environment information.

6.3.1.7 Installation of Packages Containing Features

You install packages containing features on workstations and servers in the same way in which you install any other package: through the JD Edwards EnterpriseOne Workstation Installation and Deployment Server Installation applications.

When you launch either of these installations, you can select the Custom option to select the features that you want to install.

See Also:

6.3.2 Understanding the Feature Based Deployment Director

The JD Edwards EnterpriseOne Feature Based Deployment Director enables you to define the feature so that it can be included in a package and then deployed to workstations and servers. The forms in the director enable you to specify the name and type of the feature, as well as the different feature components. The Feature Information form enables you to select the types of components to include in the feature, and determines the subsequent forms that appear in the JD Edwards EnterpriseOne Feature Based Deployment Director.

For this release, the Platform value must always be 80 for CLIENT. Future releases will enable you to select alternative platforms.

Throughout the feature definition process, you can always proceed to the next or previous form by clicking Next or Previous. Also, regardless of where you are in the process, you can always cancel the feature definition by clicking Cancel.

6.3.2.1 Copying a Feature Definition

The JD Edwards EnterpriseOne Feature Based Deployment Director includes a copy function that enables you to copy an existing feature and rename it as a new feature. This feature is especially useful if you want to create a feature definition that closely matches an existing feature definition.

6.3.3 Forms Used to Incorporate Features into Packages

Form Name FormID Navigation Usage
Feature Information W9326C Package and Deployment Tools (GH9083), Package Assembly

Select Features from the Form menu.

Click Add.

Click Next.

Define a feature and add one or more components to the feature.
File Set Definition W9326J From the Feature Information form, select File Set and click Next. Enter information about any file sets that must be installed on the workstation or server for the feature to function properly.

A file set is a collection of files that must be installed on the workstation or deployment server for the feature to function correctly.

Registry Definition W9326D From the Feature Information form, select Registry and click Next until the Registry Definition form appears. Enter information that should be added to the Microsoft Windows registry as part of the feature installation. Registry information that you enter on this form will be delivered in the package that contains the feature.
Shortcut Definition W9326G From the Feature Information form, select Shortcut and click Next until the Shortcut Definition form appears. Use this form to add a shortcut for the feature to the Windows desktop. The system creates a shortcut on the desktop after the feature is installed.
Shortcut Advanced Options W9326P From the Shortcut Definition form, select Advanced from the Form menu. Enter advanced shortcut options.
Additional Package Build Processes W9326H From the Feature Information form, select Additional Package Build Processes and click Next until the Additional Package Build Processes form appears. Specify a batch application or executable program to run either before or after the package that contains the feature is installed.
Additional Install Processes W9326K From the Feature Information form, select Additional Install Processes and click Next until the Additional Install Processes form appears. Enter information about third-party applications that should be run when the package is installed.
Initialization File (INI) Definition W9326I From the Feature Information form, select Initialization Files (INI) and click Next until the Initialization File (INI) Definition form appears. Enter information that should be written to an initialization file (such as jde.ini) as part of the feature installation. The INI file is automatically updated when the package is installed.
ODBC Data Source Definition W9326N From the Feature Information form, select ODBC Data Sources and click Next until the ODBC Data Source Definition form appears. Enter information for any ODBC data sources that must be added to support the feature.
Local Data Sources W9326O On ODBC Data Source Definition, select Import from the Form menu. Select previously created data sources that reside locally on your machine.
Features Summary W9326L From the Feature Information form, click Next and add the each feature component.

After you add all the components, the wizard displays the Features Summary form.

Review and modify information that you entered on any of the Feature Based Deployments forms.
Feature Copy W9326M Package and Deployment Tools (GH9083), Package Assembly

Select Features from the Form menu.

Select the feature from which to copy the definition, and click Copy.

Copy an existing feature and rename it as a new feature. This function is useful if you want to create a feature definition that closely matches an existing feature definition.
Feature Component Selection W9601AB Package and Deployment Tools (GH9083), Package Assembly

Click Add to create a new package.

Enter the forms in the Package Assembly Directory until the Features Component form appears.

Click Browse.

Package and Deployment Tools (GH9083), Package Assembly

Select a package and then select Package Revisions from the Row menu.

On Package Component Revisions, click the Features button.

To add a feature, click Browse.

Add defined features to a new package.

Add defined features to an existing package that is open for revision.

Build Features W9621B Package and Deployment Tools (GH9083), Package Build

Click Add to launch the Package Build Definition Director.

Click Next and complete the screens until you come to the Build Features form.

Package and Deployment Tools menu (GH9083), Package Build Find and select the package that contains features.

Select Build Revisions from the Row menu.

Click the Build Features tab.

Enables you to specify whether the system builds feature INF files for the features in the package. If you defined a fileset component in the feature, you can select to compress it. If any additional package build processes are included in the feature, you must click Build Processes and select them before they will run during package build.

6.3.4 Creating a Feature

Access the Feature Information form and complete the following fields.

Feature

Enter a name for the feature.

Feature Type

Enter the feature type, if applicable.

Description

Enter a description of the feature.

Required

Select this option if the installation of this feature is mandatory for both Compact/Production and Typical/Development installs. Inclusion of this feature cannot be overridden when the package is installed.

Not Required

Select this option if the installation of this feature is optional. Whether the feature is installed depends on the options that you select (Compact/Production and Typical/Development). Inclusion of the feature can be overridden when the package is installed.

Compact/Production

Select this option if this feature is to be included in a Compact/Production install by default. This option can be overridden when the package is installed if Not Required is also selected.

Typical/Development

Select this option if this feature is to be included in a Typical/Development install by default. This option can be overridden when the package is installed if Not Required is also selected.

File Set

Select this option if the feature is a file set.

Registry

Select this option if the feature is a registry setting.

Shortcut

Select this option if the feature is a shortcut.

ODBC Data Sources

Select this option if the feature is an ODBC Data Source.

Additional Package Build Processes

Select this option if the feature is an additional process to be performed during the package build.

Additional Install Processes

Select this option if the feature is an additional process to be performed during the install process.

Initialization Files (INI)

Select this option if the feature is an initialization file.

6.3.5 Defining a File Set

Access the File Set Definition form and complete the following fields.

File Set

Enter comments or memoranda in this free-form text field.

File Set Description

Enter a description for the group of files.

Source Path

Enter the path that identifies the source location of the file set.

Compress

Select this option to compress the file.

Target Path

Enter a path to identify the target location of the file set.

The source path tells the system where to find the file set to be copied into the package, and the target path indicates the location to which the file set should be copied when the package is installed. Although a feature can have an unlimited number of file sets, each file set can have only one target path.

Note:

You can also use this form to modify or delete any previously defined file sets. Existing file sets appear in the tree structure on the right side of the form. To modify a file set, select the file set on the tree structure and modify any of the fields for the file set. To delete a file set, select the file set and click Delete.

Always select Save Node from the Form menu when you are finished adding file set information.

6.3.6 Defining a Registry Setting

Access the Registry Definition form and complete the following fields.

Registry

Enter an identifier for the registry modification.

Registry Root

Enter the root key in the registry.

Key

Enter the key for a registry value.

Name

Enter the registry value name.

Value

Enter the registry value.

Value Type

Enter the data type in which the value is stored in the registry.

Note:

You can also use this form to modify or delete any previous registry definitions. Existing registry definitions appear in the tree structure on the right side of the form. To modify a registry definition, select the item on the tree structure and modify any of the fields for the registry definition. To delete a registry definition, select the item and click Delete.

Always select Save Node from the Form menu when you are finished entering registry information.

6.3.7 Defining a Shortcut

To define a shortcut component, you enter a shortcut definition, and then you can enter advanced shortcut options.

6.3.7.1 Entering a Simple Shortcut Definition

Access the Shortcut Definition form and complete the following fields.

Shortcut

Enter a name that identifies a unique shortcut to a user's computer.

Name

Enter the name of the shortcut.

Target

Enter the path and file name of a target file.

6.3.7.2 Entering Advanced Shortcut Options

Access the Shortcut Advanced Options form and complete the following fields.

Arguments

Enter the parameters that are entered at the command line for the shortcut.

Description

Enter a description of the shortcut.

Hot Key

Enter a key sequence that, when pressed, automatically launches the shortcut.

Icon

Enter the path and name of the icon file, based on a relative target path.

Icon Index

Enter the icon index for a shortcut.

Show Command

Specify the size of the window after the shortcut is launched. For example, the window might be minimized or maximized.

Work Directory

Enter the identifier of the directory path or the working directory of a shortcut.

6.3.8 Defining Additional Package Build Processes

Access the Additional Package Build Processes form and complete the following fields.

Process Name

Enter the name of the build process.

Description

Enter a description of the build process.

Sequence

Enter a number to identify the order in which the process will be run relative to the other processes that run during the package build.

Synchronous Execution

Select this option to indicate whether the package build job waits for the process to finish before it continues.

Batch Application or Executable

Specify whether the process is an application or an executable.

UBE Name

Enter the name of the batch application. Only applies if batch application was selected.

UBE Version

Enter the version of the batch application. Only applies if batch application was selected.

Machine Name

Enter the name of the server or workstation on which the batch application will run. Only applies if batch application was selected.

Executable Name

Enter the name of the executable program that the system launches to install the third-party software. Only applies if executable program was selected.

Target Path

Enter the path and file name of a target file. Only applies if executable program was selected.

Parameters

Enter the executable parameters that the setup program uses to install the third-party software. Only applies if executable program was selected.

Note:

You can also use this form to modify or delete any previously defined processes. Existing processes appear in the tree structure on the right side of the form. To modify a process definition, select the item on the tree structure and modify any of the fields for the definition. To delete a process definition, select the item and then select Delete or Delete Node After from the Form menu, depending on whether you want to delete a process that is executed before or after the feature is installed. You can run the process either before or after the feature is built. When you are finished adding process information, select either Save or Save Node After from the Form menu, depending on when you want the process to run.

6.3.9 Defining Additional Install Processes

Access the Additional Install Processes form and complete the following fields.

Third Party

Enter the name of the third-party component.

Description

Enter a description of third-party software.

Sequence

Enter a number to identify the order in which this process will run relative to the other additional install processes.

Execute After the Install

The JD Edwards EnterpriseOne client install will run the third-party process after the client has installed.

Executable Name

Enter the name of the program that launches the third-party software.

Target Path

Enter the path to the executable file. Do not include the name of the file.

Parameters

Enter the executable parameters that the system passes to the third-party program.

Note:

Select Save from the Form menu when you finish adding third-party product information.

6.3.10 Defining an Initialization File

Access the Initialization File (INI) Definition form and complete the following fields.

Initialization INI

Enter the identifier of an initialization file component.

File Name

Enter the name of the initialization file.

Target Path

Enter the path of the INI file.

Section Name

Enter the name of the application section in an initialization file.

Key Name

Enter a key in the initialization file that is to be added, modified, or removed.

String

Enter the value of the key in an initialization file.

Option

Enter the option that identifies the action associated with the key in the initialization file.

Note:

You can use this form to modify or delete any previous initialization file definitions. Existing definitions appear in the tree structure on the right side of the form. To modify an initialization file definition, select the item in the tree structure and modify any of the fields for the definition. To delete an initialization file definition, select the item and click Delete.

When you finish adding initialization information, select Save Node from the Form menu.

6.3.11 Defining a New ODBC Data Source

Access the ODBC Data Source Definition form and complete the following fields.

ODBC Data Source

Enter the name of the data source.

Note:

When you select Save Node from the Form menu, the system activates the Microsoft Windows control panel applet that displays the ODBC Data Source forms where you can enter the data source information.

6.3.12 Importing an Existing ODBC Data Source

Access the Local Data Sources form.

  1. Press the Ctrl or Shift key to select one or several data sources, and click Select to add the data sources to the feature.

    The ODBC Data Source Definition form reappears.

  2. When you are finished adding data source information, select Save Node from the Form menu.

  3. Click Next.

  4. To modify existing data sources, enter the data source name and then select Modify from the Form menu. The ODBC Data Source Revisions form appears. Use this form to make changes to the data source.

  5. When you are finished, click OK to return to the ODBC Data Source Definition form.

6.3.13 Reviewing Feature Components

Access the Features Summary form.

Figure 6-3 Features Summary form

Description of Figure 6-3 follows
Description of ''Figure 6-3 Features Summary form''

  1. Select a component in the right pane and click the Revise button to review the information for that component.

  2. If needed, change the field values for the selected component and click Save.

  3. Repeat the previous steps to modify other components.

  4. When you are finished defining the feature, click End.

6.3.14 Copying Features

Access the Feature Copy form.

  1. Complete these fields:

    • Feature

    • Feature Type

    • Description

  2. Select one of these options:

    Option Description
    Required The installation of this feature is mandatory for both Compact/Production and Typical/Development installs. Inclusion of this feature cannot be overridden when the package is installed.
    Not Required The installation of this feature is optional. Whether the feature is installed depends on the options that you select (Compact/Production and Typical/Development). Inclusion of the feature can be overridden when the package is installed.

  3. Select one or both of the options that follow.

    If you chose Required, both of these options are automatically selected.

    • Compact/Production

      When selected, this feature is included in a Compact/Production install by default. This option can be overridden when the package is installed if Not Required is also selected.

    • Typical/Development

      When selected, this feature is included in a Typical/Development install by default. This option can be overridden when the package is installed if Not Required is also selected.

  4. Click OK.

  5. To revise the new feature definition, select the feature and select Revise Feature from the Form menu.

6.3.15 Adding a Feature to a Package

Access the Feature Component Selection form.

  1. Click Find to display the list of available features.

    Note:

    Before a feature is available for inclusion in the package, you must first define the feature.
  2. Use one of these methods to select one or more features to include in the package:

    • Select a feature and click the Select button.

      (Press the Ctrl or Shift key to select multiple features.)

    • Double-click each feature.

  3. When you are finished adding features, click Close to return to the Features Component form. The selected features appear.

  4. Click Next and complete the remaining forms to finish assembling the package.

    Note:

    To delete a feature that was previously included in the package, on the Features Component form select the feature and then click Delete.

6.3.16 Configuring Features During the Package Build Definition

Access the Build Features form.

Figure 6-4 Build Features form

This image is described in surrounding text.
  1. If you want to build a feature.inf file with the package, select Build Feature INFs.

    When you select this option, the Compress and Build fields become available if file sets or additional package build process components are included in the package.

  2. Continue with one or both of these tasks:

    • To compress file sets

    • To build processes

  1. Select Compress, and then select Compress File Sets from the Form menu.

  2. On the File Set Selection form, select each feature that you want to include by choosing a file set and clicking Select.

  3. When you are finished selecting file sets, click Close.

  4. Continue either by performing the next steps, or by clicking Next and completing the remaining forms to finish defining the package build.

  5. To build processes, select Build, and then click Select Build Processes.

  6. On the Build Processes Selection form, select each process that you want to build by choosing a process and clicking Select.

  7. When you are finished selecting processes to build, click Close.

  8. From the Form menu, select Build Processes and manually select each process to run during the package build.

    You must complete this step or none of the processes will run, even though they are included in the feature.

  9. Click Next and complete the remaining forms to finish defining the package build.

6.3.17 Configuring Features for an Existing Package Build Definition

Access the Build Features form.

  1. Modify or add to any of these existing build feature settings:

    • Build Feature INFs

    • Compress

    • Build

  2. If you select Compress, select Revise File Sets from the Form menu to modify file sets.

  3. When you are finished modifying file sets, click Close.

  4. If you chose Build, click Revise Processes to modify processes.

  5. When you are finished modifying processes, click Close.

  6. If you selected Build, from the Form menu, select Build Processes and manually select each process to run during package build.

    You must complete this step or none of the processes will run, even though they are included in the feature.

  7. Click OK to complete the package build definition.

6.4 Viewing Package Build Records and Resubmitting Builds

This section provides overviews of package build history and the build status and discusses how to:

  • View the package build history.

  • View log files.

  • Resubmit a package build.

  • Change the build status.

  • Reset the specification build and package build statuses.

6.4.1 Understanding Package Build History

The JD Edwards EnterpriseOne Package Build History program (P9622) enables you to view information pertaining to the build process, including the options and objects that you specified when you created the build definition. This program provides this build information:

  • Package name.

  • Path code.

  • Date and time built.

  • Name of the server for which the package was built.

  • Current build status and status description.

  • Current status of selected specification tables.

  • Number of specifications written.

  • Package records written and read.

The View Logs option on the Form menu enables you to view logs that contain additional information about the build process. Refer to these logs in the event that the build does not finish successfully and you need to review the errors that occurred during the build.

If a build does not finish successfully, you can use the Resubmit Build option to resume the build from the point at which the process stopped. Only the business functions and objects that did not build successfully will be built; the entire package will not be rebuilt.

In some cases, if a build is interrupted or otherwise unable to finish, you might need to reset the build status from Build Started to Build Definition Complete. Unlike the Resume Build feature, which continues the build from the point at which it failed, resetting the status enables you to start the build process from the beginning.

6.4.1.1 F96225 Table

The system maintains a history of the package build in the F96225 table. This table contains details about the package build statuses of any package components.

If you encountered errors during the build process and the package failed to build successfully, you can resubmit the package and continue building from the point at which the build failed. In this situation, the system reviews the F96225 table and rebuilds only the business functions or other package components that have a status of Not Built or Error. It does not build the entire package. This feature can save you a tremendous amount of time, especially if only a few package components failed to build successfully.

If you originally specified package compression, when you resubmit the package to resume building, the system automatically compresses the directories after it successfully builds the package.

6.4.2 Understanding the Build Status

In some cases, you might need to rebuild the package rather than resume the build from the point at which the build failed. Before you can do so, you must change the status of the package build from Build Started to Build Definition Complete.

When you reset the status of the package build, you can reset the status for the server only or for all servers and client workstations for which you want to build the package.

6.4.3 Forms Used to View Package Build History and Logs

Form Name FormID Navigation Usage
Work With Package Build History W9622A Package and Deployment Tools (GH9083), Package Build History Display information about the current build status and build options for selected computers.
View Logs W9622B Package and Deployment Tools (GH9083), Package Build History

Select View Logs from the Form menu.

Check logs for errors that occurred during the build process.
Work with Package Build Definition W9621L Package and Deployment Tools (GH9083), Package Build

W9621L

Change the package build status.
Reset Build Status W9622C From Work with Package Build History, find the package for which you want to reset the statuses, expand the package, and select an individual item.

Select Reset Status from the Row menu.

Reset the spec status and pack status for a package to the statuses that you specify.

6.4.4 Viewing the Package Build History

Access the Work With Package Build History form.

  1. Select CLIENT or the server or the spec data source to display information about the current build status for those computers.

    You can also expand the tree to view this information:

    • Build specification options

    • Compression options

    • Business function options

    • Objects

      These options and objects are those that you specified when you created the build definition for the package. For example, if you chose to build only selected specifications, you can determine the status for each specification, as well as other pertinent information.

      Note:

      Only specification options are built in the spec data source.
  2. When you are finished viewing build history information, click Close.

6.4.5 Viewing Log Files

Access the View Logs form.

Figure 6-5 View Logs form

This image is described in surrounding text.
Server Build Log - Client Log

Select this option to view client-side processing.

The SvrPkgBuild.log is located directly under the <package name> directory.

Server Build Log - Server(s) Log(s)

Select this option to view server-side processing.

The <server name>_SvrPkgBuild.log files are located in the <package name>\serverlogs\<server name> directory.

Server(s) .sts logs (30+ logs)

These are the status files for all of the dlls that were built on the enterprise server.

The <dll name>.sts files are located under the <package name>\serverlogs\<server name> directory.

Client Build Log

The client package build log lists the steps completed in building the client package, as well as any errors that occurred during the process. This log is created for a client-only or client/server package.

The ClientPkgBuild.log file is located in the <package name> directory on the deployment server.

Client Package Statistics

This report contains the size of the directories on the client, number of files in each directory, and the size of the local package database.

The BuildReport.txt file is located under the <package name>\work directory.

Client Business Function Errors

Select this option to view any errors that occurred during the business function build for this package. Both errors and warnings display in this report. A summary appears at the end of the report that indicates how many errors and warnings occurred for each dll. Use this information to determine if a rebuild is necessary.

Business functions that appear on this report might be business functions that are still in development and have not yet been checked in. Business functions that have never been checked in do not have source, and therefore, are listed in the missing business function source errors log.

The BuildLog.txt file is located under the <package name>\work directory.

Missing Business Function Source

Select this option to see a list of all .c files that were missing when the business function was created. The program attempted to find these members because each had a record in the F9860 table. However, a matching source could not be found in the source directory. To resolve these errors, either delete the Object Librarian record or provide a source member.

The NoSource.txt file is located under the <package name>\work directory.

Business Services Build Log

Select this option to be able to view the results of the business services build for this package.

These logs are located under the <package name>\work\sbf directory.

6.4.5.1 Where to Find the Error Logs

To review error logs without using Oracle's JD Edwards EnterpriseOne Package Build History program (P9622), locate the desired log in the correct directory.

You can view the error logs by accessing the appropriate directory and opening the log with Microsoft Notepad or a similar application that enables you to display text files.

6.4.6 Resubmitting a Package Build

Access the Work With Package Build History form.

  1. Select one of these options to find the package you want to resubmit:

    • Select a specific server to resubmit only the builds for that server.

    • Select the CLIENT heading to resubmit only the workstation builds.

  2. Select Resubmit Build from the Row menu.

    If you generated NERs when you initially submitted the build, the system displays a window that asks whether you want to regenerate the NERs.

  3. Click OK to regenerate NERs, or click Cancel to skip this process.

    Note:

    If you do not want to regenerate NERs, you can prevent this window from appearing by entering 2 in the Generate NER processing option for the Package Build History program.
  4. Select one of these destinations for the build report, and click OK:

    • On Screen

    • To Printer

      The form closes, and the system begins to build the package. Build time varies, depending on the number and size of the items in the package. When the build is finished, the report either appears on the screen or prints, depending on the destination you specified.

  5. Review the report to verify that the system successfully generated all components in the package.

    If the report indicates any errors, review the error logs for more detail.

See Also:

6.4.7 Changing the Build Status

Access the Work with Package Build Definition form.

  1. Find the package for which you want to reset the status.

    Below the package name, select the server or servers and client workstation for which you want to build the package.

  2. From the Row menu, select Advanced.

  3. On the Advanced Revisions form, click Reset to change the status of the package build from Build Started to Build Definition Complete.

  4. Click OK.

  5. If desired, select the package name and select Submit Build from the Row menu.

  6. The program asks whether you want to delete the current build or to continue without deleting it; select one.

6.4.8 Resetting the Specification Build and Package Build Statuses

Access the Reset Build Status form.

  1. Enter the desired statuses in the Spec Build Status and Pack Build Status fields.

    Both of these fields have a visual assist feature to help you determine the available statuses.

    Note:

    The values of these two fields are dependent on each other. If you change one value, be sure you understand the dependency on the other value.
  2. Click Reset.

  3. Click OK.