Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

T - Syntax test by SDF

&pagelevel(3)&pagelevel

The statement code T passes the specified line – possibly together with continuation lines (as used by SDF) – to the SDF system component which verifies the command and statement syntax.

If the SDF option GUIDANCE=MIN|MED|MAX is set then the user is taken to a guided SDF correction dialog if incorrect SDF syntax is found.

If the user aborts the correction dialog or if no such dialog is possible then the line is displayed at the topmost window position (where it can be overwritten) and an error message is output as in the case of the @SDFTEST statement.

If the SDF syntax is correct or has been corrected then the text is entered in the work file. The format in which the statement is taken over depends on the SDF LOGGING option (see the description of the command /MODIFY-SDF-OPTIONS).

The current SDF settings apply. These can be modified with /MODIFY-SDF-OPTIONS.

Statement code

Key

T

[DUE] or [F2]

EDT distinguishes between 3 types of record content:

  1. Records which start with (a single) '/' in column 1:

    These are checked for command syntax in accordance with the SDF syntax file hierarchy. Admissibility in terms of privileges or system environment is determined on the basis of the current user and the current environment.

  2. Records which start with '//' :

    These are passed to SDF for statement verification. The external or internal program name must be preset using the statement @PAR SDF-PROGRAM as otherwise the statement code is rejected with the message EDT5320. The program name must also be known in a current SDF syntax file. Otherwise, the statement code is rejected with the message EDT5321.

  3. Other data lines

    The specification of T is ignored for other data lines.

Lines that start with '/' or '//' and have the continuation character ('–') as their last character are chained with the continuation line if this also starts with '/' or '//' and the two lines are passed to SDF together when the statement code T is executed. It is not necessary to specify the statement code T in continuation lines. The specification in the first line is enough.

The verified command or statement overwrites the old command or statement in the work file together with all the continuation lines. If the command or statement is modified during verification by SDF (for example because LOGGING=INVARIANT was set in a preceding /MODIFY-SDF-OPTIONS command) then the affected lines are reformated and split into multiple continuation lines if necessary. The continuation character is set in the 72nd column.

The following lines are renumbered if necessary. Line numbers are assigned using the procedure “Insertion between two lines” (see section “Line number assignment”). If the lines generated by SDF cannot be inserted, the execution of the statement code is aborted with error message EDT5365.

If a verified command or statement contains errors and no successful correction dialog is conducted then EDT issues the message EDT4310 and aborts verification, i.e. any further selected commands and statements are not verified.

If the work file containing the lines that are to be checked has a character set other than EDF03IRV then it is necessary to take account of certain peculiarities when using SDF. In particular, characters which do not form part of the EBCDIC kernel are naturally only permitted in literals or comments. Furthermore, SDF always conducts the correction dialog in the character set defined for it with /MODIFY-TERMINAL-OPTIONS and also always interprets the byte sequences passed to it in this character set.

Consequently, if the currently defined GUIDANCE-MODE permits a correction dialog, EDT converts statements and commands into the character set defined in /MODIFY-TERMINAL-OPTIONS before passing them to SDF. If this fails, the statement code T is aborted with the message EDT5327.

If no correction dialog is possible, EDT performs conversion in accordance with other (less constraining) rules. If the work file possesses an EBCDIC character set then this is used without conversion. If the work file has an ISO character set then the corresponding EBCDIC reference character set is used. In all other cases, EDT uses the character set UTFE. If conversion is not possible then the statement code T is rejected with message EDT5453.

If SDF returns data then this is converted back into the work file's character set. If this is not possible then the statement code T is rejected with message EDT5453.

Note

If GUIDANCE=EXPERT then EDT simply displays errors reported by SDF in the form EDT4310. For a more precise error analysis, it is advisable to set GUIDANCE=MIN, MED or MAX.

Passwords and other operands that have been defined using OUTPUT=SECRET-PROMPT are replaced by P if the GUIDANCE setting is MIN, MED or MAX.

SDF does not detect invalid operands in ISP commands.

If /MODIFY-TERMINAL-OPTIONS has been used to define the character set UTFE then the screen layout in the SDF correction dialog is shifted if characters which are not present in EDF03IRV are used. This is due to the fact that SDF does not currently support Unicode. However, it does not generally lead to any functional limitations.

A command or statement must not exceed the maximum length of 16379 bytes either on input or output. Otherwise, the statement code T is aborted with the message EDT5325 or EDT5326.

Example 1

The EXPERT form of the non-guided dialog is set for SDF.

Lines 1.00 to 8.00 are to be checked by SDF for correct syntax.

The position is set to the first line of the invalid command and the command lines are output in overwritable form.

Example 2

The guided dialog with minimum help level is set for SDF.

Lines 1.00 to 8.00 are to be checked by SDF for correct syntax.

The user sees the guided SDF error dialog.

The user corrects the error.

Lines 2.00 to 4.00 are replaced by lines 2.00 to 3.00 and are reformated.