Script tab

Use this tab to specify properties of the session's UI script and to link libraries to the session.

To edit or view the UI script, go to the Source tab.

General Information
Standard Script
The session's standard script type.
Allowed values:
No

No standard script is used. You must specify a UI script in the UI Script field.

If you change the Standard Script from 'Type 1/2/3' or 'Type 4' to value 'No', the editor will automatically generate a script name.

Type 1/2/3 (With M.Table) The session is based on a main table and uses a standard script.
Type 4 (Without M.Table) The session is not based on a main table, but uses a standard script
Note: 
  • If you specify a standard script, you cannot specify a UI script.

  • When you specify a non-standard script (value 'No'), the editor creates a session reference that can be used as an alias for the session's script.

Allowed values:

No

UI Script
The name of the program script.

A script is identified by its unique name, which is the combination of the package code, the module code, and a script code.

The name and description of the script generally corresponds with the name and description of the session, with the exception of existing sessions with an anomalous name. When you add a script to a script-less session, the session editor will automatically generate a script (skeleton) with a name and description derived from the associated session.

Example:
Package Code: ti LN Manufacturing
Module Code : pcf Product Configuration
Script Code : 0110 Maintain Features

The total identification of the program script is: tipcf0110

Session reference
The session that owns the UI script of the current session. Click Browse and select the session from the list.
UI script ownership

Each session, which does not use a standard script, is linked to a UI script. Each UI script is owned by a session.

A UI script can be used by multiple sessions, but has only one owner. For example, sessions tetst0101m000 and tetst0101s000 both use the UI script tetst0101. Session tetst0101m000 is the owner of the script. For both sessions, the following properties apply:

Session UI Script Session reference
tetst0101m000 tetst0101 tetst0101m000
tetst0101s000 tetst0101 tetst0101m000
Note: 
  • You can only edit a UI script via the session that owns the script.
  • When you create a new session with a UI script, LN Studio automatically assigns the new session as the owner of the new script.
  • If a script is not owned by a session, use the Check and Convert UI-Script Ownership (ttadv2930m000) session to assign a session as the owner of the script.

    If a script is already owned by a session, you can use this session to assign a different session as the owner of the script.

To change the session reference

When you change the session reference, the UI Script field is automatically updated and filled with the script code of the referenced session. This referenced session must be a script owner.

In the Session reference field, you can specify the code of the current session itself. If you do this, a new, unique, script is assigned to the session. The new script is a copy of the script that belongs to the previously referenced session. The code of the new script is identical to the code of the current session.

If the Session reference field is filled with the code of the current session, you cannot change the session reference, because this would leave the script without an owner.

Expire / Unexpire sessions

A session can only be expired if there is no reference to it from another not-expired session.

A session cannot be unexpired if it has a session reference to an expired session.

Script Type
Specifies the use or nature of the session's program script.
  • You can only edit a UI script via the session that owns the script.
  • When you create a new session with a UI script, LN Studio automatically assigns the new session as the owner of the new script.
  • If a script is not owned by a session, use the Check and Convert UI-Script Ownership (ttadv2930m000) session to assign a session as the owner of the script.

    If a script is already owned by a session, you can use this session to assign a different session as the owner of the script.

This field only applies if the session does not use a standard script, which implies that the Standard Script field is set to 'No'.

For sessions without standard scripts, you can use the following script types:

UI Script with Database handling A 4GL user interface script is used for display and maintain sessions. The script is called by the 4GL engine (standard program) on certain events.
UI Script for Print/Processing Sessions A 4GL user interface script is used for print and processing sessions. The script is called by the 4GL engine (standard program) on certain events.
3GL (Without 4GL Engine) A 3GL script has no interaction with the 4GL engine (standard program). Therefore, all logic of the program must be included in this script.

Examples of 3GL scripts are the well-known General Table (ttaad4100/ttaad4500) sessions.

Compile Flags
The compile flag.

In (3GL and 4GL) sources, use compile flags to compile a part of the source depending on certain conditions. This is called conditional compiling. For more information on conditional compiling and other compile options, see the "Preprocessor" and "Compiler" sections of the Infor ES Programmers Guide (Infor Customer Portal KB2924522).

Example:
 | Compile Flag: -DMYTEST | Source ... #if MYTEST message(Some debug information) #endif ...
				

You can specify several compile flags separated by a space " ". For example:

Compile Flags: -DMYTEST -DVERSION_1 -DVERSION3.0 
Note: The preprocessor only works during compilation of a 3GL source. This is because the standard generator std_gen6.2 does not have a preprocessor pass. Therefore, you cannot use 4GL events in a #if, #ifdef or #ifndef.
Tools Interface Version
The Tools Interface Version (TIV) number of the script/library.

This is used to guarantee backward compatibility and is related to a particular version of the porting set, the Enterprise Server and the 4GL Tools. For example, the TIV number for Enterprise Server 7, delivered together with LN 6.1 FP1, is 1010. When you insert a new library, the TIV is automatically set to the highest supported TIV number.

Setting a TIV number for each object can result in the behavior of these objects being different. This can occur for incompatible features executed with different versions of the porting set or the LN 4GL Engine.

For example, the "set.synchronized.dialog" function was changed in TIV 1000. Therefore objects in which this function is used, show different behavior for different TIVs:

  • If the object's TIV is less than 1000, a synchronized dialog is started when a record is inserted or duplicated in an editable grid.
  • If the object's TIV is 1000, no synchronized dialog is started when a record is inserted or duplicated: the new record is entered directly in the grid.

For details about the TIV, see the Infor ES Programmers Guide (Infor Customer Portal KB2924522).

License
Product ID Source
The product ID for which a license is needed to compile the object. If the field is empty, no license is needed to compile the object.
Note: This field only applies to internal Infor development systems. For other development environments, this field is not available.
Allowed values:

To select a product ID, click Browse.

Product ID Object
The product ID for which a license is needed to run the object. If the field is empty, no license is needed to run the object.
Note: This field only applies to internal Infor development systems. For other development environments, this field is not available.
Allowed values:

To select a product ID, click Browse.

Linked Libraries
This list contains the records of all libraries linked to the UI script of the current session.
Sorting
  • To sort the libraries by position, name, or description, click the corresponding column header.
  • When you sort by position, the sort mode is always ascending. When you sort by name or description, click the involved column header to toggle between ascending and descending sort mode.
  • When you sort by name or description, the Up and Down commands are disabled.
Add / remove libraries, change linking order
You can only perform the following actions if you sort the libraries by position.
  • To add a library, click Add. Then, press CTRL+SPACE in the Name field and select a library from the select dialog box.
  • To remove a library, right-click a library and, on the shortcut menu, select Remove.
  • To change the linking order of the libraries, move them up or down the list.
Note: To edit a library, click the icon behind the library name.
Pos
The library sequence number (Position). This field indicates the linking order of the libraries.

This field is read-only. It is filled automatically when you link a library.

Name
The name of the library.
Allowed values:

To specify this attribute, press CTRL+SPACE and select a library from the select dialog box.

Description
The description of the library.
Allowed values:

This field is read-only. LN Studio automatically fills in the library description after you specified the Name of the library.

Documentation
Release Notes
Use this field to specify the release notes of the UI script.
Technical Documentation
Use this field to specify the technical documentation of the UI script.