Environment Variables

$LADBDIR, $GENDIR, and $LAWDIR are Environment variables that represent the three main directories where Environment data and files are stored. You have the option of defining these directories with names you find useful.

In this manual, an Environment variable preceded by a dollar sign ($) indicates that you should replace the variable with the name that you assigned to the associated directory. For example, if your $GENDIR directory is /gen, replace $GENDIR with /gen.

The following diagram shows the names and the relationship of the directories that application software uses. (In 8.1 and later application product lines, the pdlib and wslib directories are placed within the system code src directories.)

The $LADBDIR Directory

The $LADBDIR directory contains the data files that applications use. The default for $LADBDIR is baseDirectory/db. This directory has two types of subdirectories:

  • A directory for each product line, data area, and data ID. The name of each directory (/productline) is the uppercase product line, data area, or data ID name. If you are using the Lawson database, each of these directories contains all the data and index files that the product line, data area, or data ID uses. If you are using a relational database management system, these directories are only for environment data and the database reorganization history files.

  • A directory for all data dictionaries. The /dict directory contains a data dictionary file for each product line. This dictionary is a single file that contains a map (description) of the data files in a product line. In addition, if you are using multiple data areas and/or data IDs, a dictionary file containing database location and size information exists for each data area and data idea. The data dictionary file names are the product line, data area, or data ID names written in uppercase.

The $GENDIR Directory

The $GENDIR directory contains Environment objects: utilities, modules, or programs such as the Batch Job Scheduler or Program Definition. The default for $GENDIR is baseDirectory/gen. Because you do not need to access these files, the detail for this directory is not discussed in this manual.

The $LAWDIR Directory

The $LAWDIR directory contains the application source and object files and the configuration files. The default for $LAWDIR is baseDirectory/law. This directory has several subdirectories:

  • Two directories that contain source code for routines that are global (that is, all programs can use them regardless of product line). The procedural code for global routines is stored under /pdlib and the working storage data definitions are stored under /wslib.

  • A directory, /print, for the application programs print files. This directory contains many subdirectories that are used to separate application print files.

  • A directory for each product line. The name of each product line directory is the product line name written in lowercase.

    Each product line directory contains the source and object code for that product line. This directory also has several subdirectories:

    • A source code directory for each system in the product line. The name of each directory, /systemcodesrc, is the system code (written in lowercase) followed by src (for example, the source code directory for the General Ledger system is /glsrc).

      If you have an 8.0.3 application product line, there are two directories that contain source code for routines that are global to the product line (that is, all programs in the product line can use them regardless of system). The procedural code for global product line routines is stored under /pdlib and the working storage data definitions are stored under /wslib.

      If you have an 8.1 or later application product line, the pdlib and wslib directories are in each source code directory. The pdlib and wslib directories are named systemcodepdlib and systemcodewslib.

    • A directory, /sdlib, for all form (screen) definition (ProgramCode SD) libraries in the product line. This directory is normally empty because form definitions are created at compile time and deleted at the end of the compilation process.

    • A directory, /rdlib, for all report definition (ProgramCode.rd) libraries in the product line. This directory is normally empty because report definitions are created at compile time and deleted at the end of the compilation process.

    • A directory, /work, for all temporary work files that programs in the product line create and use. This directory is normally empty because the temporary files only exist for the duration of a job.

    • A directory, /obj, for all the object code in the product line.

  • A directory for each data area and data ID, if you are using multiple data areas and/or data IDs. Each data area and data ID directory contains a work directory for the temporary files associated with the processing of data for the data area or data ID. For more information on product lines, data areas, and data IDs, see the Lawson data access manual for your database.