B Technical Procedures for Saving, Storing, and Restoring Data

This appendix contains these topics:

This document includes the definitions of the procedures used to save, store, and restore data in J.D. Edwards software.

B.1 Production Environment Definitions

A production environment is a group of libraries that define a consistent database from a software application standpoint.

Only one production environment is needed to use the software in production. However, several additional production environments can be defined for various purposes, such as:

Environment Explanation
Development A development environment can be used for the development and unit testing of specific programs. For example, a development environment might be used for creating interface programs or adapting existing programs to a company's specific needs.
Testing A test environment is a test location for new or modified functionality. A test environment also allows for testing advanced or alternative setup.
Pre-production A pre-production environment allows for the real scale testing of custom programs or functionality not yet used. The setup can be shared with the production environment. Only the transaction data is separated. In this case, tests cannot take place without a setup change. Implementation of this type of environment depends on the internal procedure for validating new added-on functionality, usually performed by end users.

B.1.1 Creating an Environment

An environment consists of several libraries. Source tables and executable objects are located in different libraries. Data tables should be distributed among three libraries; this file separation is not required but is strongly recommended.

The first library, or security library, contains user profiles, access and product's internal security definition tables. This library is common to all environments.

The second library will gather all of the technical setup data. This data is considered relatively stable.

The third library contains all transaction data.

B.1.2 Example of Library Organization for Each Environment

Environment Explanation
Production environment QTEMP IBM Temporary Library

CLTOBJ Custom Objects Library

JDFOBJ J.D. Edwards Objects Library

CLTCOM Custom Common Library

CLTDTA Custom Data Library

SECURITY Security Library

CLTSRC Custom Source Library (optional)

JDFSRC J.D. Edwards Source Library (optional)

QGPL IBM General Purpose Library

Test environment QTEMP IBM Temporary Library

TSTOBJ Custom Objects Test Library

CLTOBJ Custom Objects Library

JDFOBJ J.D. Edwards Objects Library

TSTCOM Technical Setup Library

TSTDTA Data Library

SECURITY Security Library

QGPL IBM General Purpose Library

Development environment QTEMP IBM Temporary Library

DEVOBJ Development Object Library

TSTOBJ Custom Objects Test Library

CLTOBJ Custom Objects Library

JDFOBJ J.D. Edwards Objects Library

TSTCOM Technical Setup Library

TSTDTA Data Library

SECURITY Security Library

DEVSRC Development Source Specific Library

TSTSRC Test Source Specific Library

CLTSRC Source Specific Library

JDFSRC J.D. Edwards Source Library (optional)

QGPL IBM General Purpose Library


The Technical Foundation class and its associated documentation provides further detail regarding the environment install procedure.

B.2 Data Backup Procedures

You must do data backups must be done using standard IBM tools: using the SAVLIB command or going through the IBM BACKUP menu.

B.2.1 IBM Recommendations for Backups

  • The recommended frequency of AS400 system data backups is provided by IBM. Generally, the frequency depends on the transaction volume of the company.

  • It is important to monitor the material quality of data backups. Recommended drive cleaning frequency and support renewal are specified by the manufacturer.

  • A printed document that details the contents of the backup must support any data backup. The printed document provides a verification of the backup.

  • Data backups must be stored in a safe place. You must protect yourself against theft, flooding, fire, and so on.

B.2.2 J.D. Edwards Recommendations for Backups

B.2.2.1 Daily Backup

You must perform a daily backup must be performed for the entire set of production environment libraries. No user should be connected to the production environment while the backup is being performed, except for sophisticated backup systems that use a separate machine or "Backup."

Library backups for other environments depend on different criteria, including:

  • Machine availability

  • Backup capability (drive type)

  • Environment utilization (obviously, it is essential to do a backup of the development library on a daily basis if archive development is in progress)

  • Environment contents (for example, if the test environment is a similar copy of the production environment at a certain date, the backup of this environment is not necessary)

  • If the test environment is used to test the implementation of a new setup, it is important to perform a backup of the environment

Daily backup supports can be reused periodically. The minimum recommended period between reuses is two weeks. However, if data input is mainly taking place around month's end, it is preferable to work over a two-month backup cycle.

Note:

No partial library backup is possible. This type of backup is unusable. See Section B.3, "Data Restoration Procedures."

B.2.2.2 Minimal Backup Procedure

If the operator realizes in the morning that the overnight backup malfunctioned, it is recommended to do a manual backup using the following procedure:

  • To prevent users from connecting themselves to the environment, temporarily rename the production environment (menu G944, option 5 - see the JD Edwards World Technical Foundation Guide). Only the user in charge of maintenance can access the environment.

  • The WRKOBJLCK AS400 command on file F0005 of the production transaction library identifies users who are already connected. Ask users to disconnect themselves from the system. Backup can start only after making sure that no user is connected.

  • The WRKACTJOB AS400 command on the JDE batch subsystem identifies active batch jobs. The backup will start only after these jobs have terminated. If jobs are printing, the operator can cancel them.

  • Run backup (SAVLIB command, QSECOFR user profile). It is important to know the backup runtimes involved in order to decide what must be saved. The ideal backup covers all production environment libraries. To minimize backup runtime, it is possible to perform a backup of the transaction data library only. Since other libraries are relatively stable, data loss if data restoration is needed should be minimal and easily recovered.

  • When the backup run is nearing completion, the operator can rename the production environment back to its original name and must inform users that they can signon.

B.2.2.3 Monthly Backup

You must keep monthly backup tapes for a specified amount of time.

Period Explanation
End of month backup The first monthly backup consists of storing the daily backup tape of the last day of the month. If an integrity problem occurs in the database, this type of backup can be used to identify the time when the problem occurred.
End of fiscal period back up A second monthly backup must be performed after the accounting closing of the period (general accounting closing).

B.2.2.4 Annual Backup

Two annual backups are recommended as follows:

Period Explanation
End of year backup A backup of all production libraries on the last day of the calendar year.
End of fiscal year backup A backup of all production libraries after the fiscal year's final closing.

B.3 Data Restoration Procedures

B.3.1 Global Restore

If a serious problem causes partial or total loss of data in the system, the recommended restore procedure follows:

  • Restore all libraries from the data backup. Use IBM standard procedure (RSTLIB command).

  • If all data entered since the last backup are lost and must be reentered, then follow this procedure:

    • For data entered from a hard copy document, it is important to organize these documents by data entry day in order to simply the reentry procedure.

    • For data entered from telephone information (non-accounting entries, such as invoices), if the entries have not been printed, the data could be completely lost. In this case, it is recommended to implement a procedure for printing entries when taking information on the phone to maintain a hard-copy version of all data entered. (This could be as simple as a screen print.)

    • For batch entry (such as automated cash receipts from alternate sources), you must restart the interface. The interface could be requested again to the originating source.

Note:

Implementation of system and software security should minimize these types of errors.

B.3.2 Partial Restore

If only one file has been damaged, for example because of user error, then evaluate the consequences of a partial restore.

  • If the file is a setup file, consider reestablishing the situation in restoring only that file. However, it is necessary to thoroughly test to validate this principle.

  • If the file is an accounting transaction file (journal entries or account balances), running a partial restore is strongly discouraged.

B.4 Accounting Data Storing Procedures

B.4.1 Accounts Payable Transaction Data

You can store the accounts payable transaction data as follows:

  • Option 14 from menu G0431 runs a process that purges the Accounts Payable transaction tables. Purge processes data with a posting date that is lower than the expiration date that you define.

  • The following Accounts Payable data is purged:

    • Paid invoices with a posting date that is the same as or lower than the expiration date.

    • Payments with a posting date that is the same as or lower than the expiration date.

  • The purged data is placed in the following separate tables:

    • F0411P - Invoices

    • F0413P - Payments

    • F0414P - Matching data

  • Save these tables, and then delete them from the system.

B.4.2 Accounts Receivable Transaction Data

You can store the accounts receivable transaction data as follows:

  • Option 14 from menu G0331 runs a process that purges the Accounts Receivable transaction tables. Purge processes data with a posting date that is lower than the expiration date that you define.

  • The following accounts receivable data is purged:

    • Paid invoices with a posting date that is the same as or lower than the expiration date.

    • Payments with a posting date that is the same as or lower than the expiration date.

  • The purged data is placed in the following separate file:

    • F0311P - Invoices, payments and matching data

Caution:

The storage of accounts payable and accounts receivable data is not associated with the storage of general accounting data. That is, when you store the accounts payable and accounts receivable data, you do not automatically store the general accounting as part of the process. J.D. Edwards strongly recommends that you store general accounting data before you store the data of auxiliary accounting systems. It is possible to store general accounting data for a fiscal year without storing the corresponding data in the auxiliary accounting systems.

B.4.3 Address Book Data (Supplier and Customer Information)

You can delete information in the Address Book if the auxiliary accounting systems do not contain any active transactions associated with the supplier or customer information that you are deleting. Consequently, if the company has not needed a supplier since the last storing date, purging the auxiliary data can mean the deletion of the supplier's information without a trace. To avoid the situation, proceed as follows:

  • Run reports to identify Address Book records without transactions before proceeding with the storing procedure, using option 21 from menu G0131. You can delete Address Book records through this option.

  • Run reports after the purge of transaction tables is complete.

Compare the two lists to help identify Address Book records that are not used anymore. The tiers should have a specific search criteria assigned to them (see Set Up User and Group Security in the JD Edwards World Technical Foundation Guide) to avoid any untimely deletion.

B.5 Storing General Accounting Data

You can store general accounting data on a fiscal year basis. Data storage can only take place on a closed period. Data storage can be processed in two different ways:

  • Option 14 from menu G09317 purges a period's entries and stores them in a file named F0911xx, where xx is the completed fiscal year.

  • Option 15 from menu G09317 purges the account balance records of a period and stores them in a file named F0902xx, where xx is the completed fiscal year.

You must save the stored F0911xx and F0902xx tables, and then delete them from the system.

B.6 Retrieving Stored Data

It is possible to reinsert stored data into the database at any time (provided that there is enough space on the system). To retrieve stored data, use the following procedure:

  • Restore the stored tables on the system

  • Make an additional copy of the stored tables to the corresponding database file:

    • F0411P to F0411

    • F0413P to F0413

    • F0414P to F0414

    • F0311P to F0311

    • F0911xx to F0911

    • F0902xx to F0902

B.7 Storing Data and Software Upgrades

A software upgrade causes changes in the database setup. If a data store takes place before a software version upgrade, the procedure to retrieve stored data does not apply. In order to use procedure to retrieve stored data, a conversion of the stored file through the upgrade tools (UPGRADE) is required. You can use the versions upgrade tools to retrieve stored data.

Note:

You can upgrade stored tables at a different time than the upgrade of the production environment.

B.8 Computerized Tax Audit

During a tax audit of an information system for a fiscal year that has been stored, you will be asked to provide the auditor with the production environment compliant with the audited period. To meet this requirement, restore all production libraries from the backup of the end of the fiscal year in a separate environment.

If a software upgrade has been implemented in the meantime, it will be necessary to keep both versions on the system.