![]() |
Connection-Handler (Subtasks under CFS): General Remarks
The Connection Handler is a utility that allows multiple tasks to be carried out in parallel on a terminal, whereby each task has its own exclusive screen.
Connections in CFS are DCAM applications that communicate with, for example, $DIALOG or UTM applications.
Dialog via a CFS-Connection takes place in the same way to which users are accustomed. Only the initiation of a Connection in CFS differs from the original method of connection.
Instead of issuing an Open Command in Predialog, an Open Connection Command (OC...) is entered in the command field of CFS.
The following additional services are available to the user through the CFS Connection Handler:
1) Multiple parallel dialog sessions can be executed from a single terminal
2) Recording (Logging) and replaying (Restore) of dialog sessions
3) Regression test (Comparison of an actual dialog with a recorded dialog)
4) Simulation of recorded dialog sessions
5) Mask-controlled hardcopy of a dialog session (including UTM applications) to a printable file
6) Command memory: Reactivate previous user input
7) Prompting for parameters via a mask when starting DO procedures
Administration of the various dialog sessions is effected by the commands OC (Open Connection), CC (Continue in Connection) and DC (Disable Connection).
10 Connections (OC0 to OC9) can be opened per user.
In the following text, n stands for a Connection-Number 0 to 9.
Instead of OCn... and CCn, the shorthand n... and n can be used. Should no connection exist, the command executed is OCn, otherwise CCn.
Following a successful Open Connection, the user is connected with the requested application. In the case of a dialog session, a task with its own TSN is started under the requested user identification. Communication with the opened connection proceeds via CFS. Ending the program CFS will result in all connections opened via CFS being lost.
If the communication with a subtask needs to be interrupted, for example after starting a lengthy program or DO procedure, then press the K2-Key. The user can now switch to the basic CFS task, or to another connection. The user can resume communication with the open applications at any time by issuing the command CCn (Continue in Connection). Any messages received in the interim for that connection is buffered by the Connection-Handler and are all displayed on the screen following the CC command.
$CONSOLE: Connections to $CONSOLE result in all applicable console messages appearing on the screen as freerunning text. The user can input messages to the console by pressing the K2 key, and then entering the command when requested. Console commands like STA MSG can be given both in the full /STA MSG form as well as in the shortened STA MSG form. The command /TCHNG OFLOW= can also be given in a connection to $CONSOLE in order to control screen overflow.
Additional notes to Connections:
Screen output which is interrupted by the "Please Acknowledge" message must be completely displayed within the time set by the system administrator in the BS2000 command /BCTIMES LETT=. The connection will be cleared down (Connection Lost) is this does not occur.
CFS interprets any of the following input as internal commands, and therefore they are not passed to the communication partner: LOG / NLOG / RES / HC / NHC / - / -- / ^.
Establishing a Connection (Open Connection)
[OC] n [appl] [, trm] [, host] [, opt] [ /cmd]
The entry OC is optional and can be ommitted.
appl Application name.
e.g. $DIALOG, $CONSOLE or the name of a UTM/DCAM application.
Standard: $DIALOG (BS2000-Dialog task).
Notes:
UTM application:
Additional PTERM and LTERM statements need to be added to the KDCDEF during UTM generation to enable connection via CFS.
PTERM/LTERM statement format in UTM:
PTERM trm, PTYPE=pt, PROTOCOL=N, PRONAM=host, LTERM=trm
LTERM trm
trm freely selectable virtual terminal name that the user will enter in the OC command to access the UTM application (see below). Example: CFS1
host BCAM name of the host computer from which CFS will be called. The name of the host computer is displayed in the CFS mask header as HOST= ... .
The host name may not be replaced by the front-end processor (see status command).
pt Terminal type. For example, T9750 .
Unsolicited output from UTM should be acknowledged with the DUE2 transmission key. The DUE2 key may not be used for processing purposes by the UTM application. If this is nevertheless required, the transmission key for unsolicited output must be redefined by the CFS command M L'1307',X'nn'. X'nn' is the ASCII code for the remapped transmission key. M L'1307',X'3A' for example, remaps the DUE2 key to the K14. Further information about the transmission key codes can be found in the manual "TRANSDATA, Data Terminal 9750, Programmers Interface".
If the user wishes to open the connection to a UTM application with the option ES (OCn appl,trm,[host],ES), i.e. the connection should be handled like a physical screen, the PTERM/LTERM statements should be defined as follows:
PTERM trm,PTYPE=pt,PROTOCOL=STATION,PRONAM=host,LTERM=trm
LTERM trm
It is important that the PTYPE entry pt should correspond to the terminal type defined in the PDN generation for the terminal from which CFS will be executed. Further information on the ES option can be found in the description of the opt parameters (Additional information when establishing a connection).
Unsolicited output in ES mode should not be acknowledged with DUE2.
Terminal Pools: UTM allows multiple PTERMs to be defined on the same processor by means of the TPOOL statement. During the connection setup UTM allocates the next free PTERM/LTERM name to the current connection, so long as the generated maximum number of connections has not been exceeded. The standard CFS name can be used for the terminal name in the OC command when opening a connection (OCn appl,,[host] [,ES] ). Example of a TPOOL statement:
TPOOL LTERM=trm,PROTOCOL=N|STATION,PTYPE=pt,PRONAM=host, NUMBER=num
trm Constant prefix for the LTERM names, e.g. LTERM=CFS. The real LTERM names are assembled by attaching an increment to the prefix. No explicit LTERM statements are required when using TPOOL statements.
num maximum number of connections that can be processed by this Terminal Pool.
The transaction codes LOG../NLOG../HC../NHC../RES../O [ON|OFF] are processed internally by CFS, and are not passed to the application. Refer to the commands NECn (No Exit for Connection) Page 9-, and CRD (Connection Command Redefine) Page 9- for further information about this.
DCAM Applications:
The generation of the virtual CFS terminal is to be taken from the internal conventions of the DCAM application, assuming it is actually required.
When opening a connection to an application that is expecting the CCB property EDIT=SYSTEM, the option ES must be given at the OC command.
When opening a connection to an application that is expecting the RBP property OPTCD=(CS,SPEC), the option S must be given at the OC command.
For DCAM applications that expect a connection message, the option C must be given at the OC command.
A complete description of the OC command options is given below.
SAP Applications:
The SAP option must be given for SAP applications. In the case of UTM-SAP applications the SAP option should not be used.
$CONSOLE application:
When opening a connection to $CONSOLE, the name of an authorised user process (user-id without $ and full stop) and a password (if required) will be requested via a connection message: "Please enter connection message". The input should be in the form: user-id, C'passw'. To define an authorised user process, the UCC statement must be assigned in the BS2000 system generation. For further information, refer to the manual "BS2000 System Generation". An example of how procedure-controlled commands can be directed to the console can be found on page 19-.
trm Name of a virtual terminal under which the connection will be opened.
With UTM, and most DCAM applications, the virtual terminal name trm must be known to the application (Generation).
Standard: CFSntttt (n: Connection number, tttt: TSN of the task from which CFS was loaded).
The System Administrator can change the method by which standard terminal names are created. The alternative algorithm results in the physical terminal name being used with minor modifications for the terminal name for the connections.
This feature, important for LOGON-Systemexits, is activated via the USERMOD of CFS. See Appendix A2 "Interfaces for the System Adminstrator".
host Name of the host computer on which the application is running.
The user will be prompted for the host name if '?' is entered instead of the host name. An application example of this could be for a menu system for Connections providing similar Connections to different hosts.
Standard: own host.
opt Optional parameters for setting up the connection.
R Return switch. After successfully opening a connection, a branch is immediately made back to the basic level of CFS. This option is particularly important when opening a connection to $CONSOLE under control of a procedure.
C Connection message. Prior to the YOPNCON, a Connection message is requested from the user. The blanked entry can be given in the form xxx (unformatted input) or X'...' (hexadecimal format).
If this C option is not specified, CFS generates a Standard Connection Message. In cases where the connection message should actively be suppressed at the YOPNCON call (e.g. DCAM application ROUTE), the NC parameter should be used (see below).
When opening a connection to $CONSOLE, the name of an authorised user process (user-id and LOGON password) will be requested via a connection message: "Please enter connection message". The input should be in the form: xxx,C'...'. To define an authorised user process, the UCC statement must be assigned at BS2000 system generation time. For further information, refer to the manual "BS2000 System Generation".
NC On establishing a connection with YOPNCON, no connection message is generated.
UC Console-type connection. Asynchronous output is in line mode, input only possible by pressing the K2 key.
UCH like UC, but with Input Subsystem Header.
HC Only for console-type connections. Asynchronous output in Line mode is logged to a locally-connected hardcopy printer.
U UTM-type connection (rigid dialog in Format/Physical Mode).
S CFS makes the connection to the application with the attributes OPTCD=(CS,SPEC). Some DCAM applications, e.g. SAP only accept partners with OPTCD=(CS,SPEC). Standard: OPTCD=(CA,ANY).
A3 A3NOP-compatible mode. The user can perform data input from the first screen to be displayed (WRTRD call). The output following this initial screen is treated as asynchronous data (WROUT call). A Connection opened in A3 mode can only be closed from the main CFS screen by means of a DC command. The A3 mode is aimed at providing Connections to the A3NOP and VIDEO DCAM applications.
ES | ES1 | ES2 | ESO
EDIT=DSSIM: This option ensures that the connection is seen by the operating system as a real physical screen. It enables, for example, a connection to be established to the application VIDEO, as well as other "difficult" applications. See also page 9- "Troubleshooting failed connection setup". In ES mode, asynchronous output must not be acknowled with DUE2.
ES1 | ES2 ES1 and ES2 are particular variations of the ES mode for DCAM applications such as RDDIA/FTDIA. ES1 and ES2 differ only slightly in the handling of transmitted K2 messages.
ESO Edit System with Original Terminal name: This option can only be used for a Connection. It will cause the original physical terminal name from which CFS was started to be used instead of the virtual terminal name.
DCAM8 The Connection is opened in ACB (DCAM Application Control Block) mode, with DCAMVER=8.0. Standard: DCAM 7.0. This parameter is necessary if the primary process uses DCAMVER=8.0.
NES The configuration module of CFS can be used to open all Connections to $DIALOG automatically in ES mode.
In this case, the option NES will enable a non-ES mode Connection to be opened.
LC Lower Case. Only relevant for Connections to $VMCONS: Lower case letters will be passed to the application. Normally, console-oriented Connections will result in any lower case letters being converted to upper case.
Note: This option can only be used in VMCONS Connections for the administration of a Linux VM.
SAP [ [TTYPE=...] [/NP] ]
The specified application is a SAP application. The standard SAP connection message 'TTYPE=T9750___/NC' is prepared. The system administrator can amend the standard terminal type T9750 specified in the CFSMAIN module. SAP implies the U and S options, additionally with a standard Connection message being generated. The SAP option may not be specified if the SAP application is running under UTM. The following can be specified after the SAP option:
TTYPE= Terminal type that SAP should emulate, e.g. SAPTTYPE=T9756. By default, the T9750 will be emulated.
/NP Appending /NP will result in SAP not loading any P-keys, or only the keys P1 to P4. When using /NP, note that the terminal type Txxxx specification is 8 bytes long, and hence three blanks must be enetered before /NP.
Example: SAPTTYPE=T9756___/NP.
Multiple options can be given, each seperated by a comma.
Standard: None of the optional parameters are used.
/cmd A $DIALOG BS2000 task will be started, and the given BS2000 command will be executed. There are two different cases to consider:
a) /cmd = /LOGON user-id,acct,C'...'
The dialog task is started under the specified user id.
b) /cmd = any BS2000 command with the exception of LOGON.
A dialog task is started under the same user id (i.e. the user id from which CFS was started). The specified BS2000 command is then executed under this opened connection. If the user id contains a LOGON password, it will be requested by BS2000 while establishing the connection.
Examples:
OC1
Open Connection 1. Open a BS2000 dialog task on own host computer. On executing the OC1 command, the normal BS2000 logon message "....PLEASE LOGON ..." will appear. The user can log on to any user id as normal.
OC1,,host/LOGON user-id,acct,C'passw'
Establish a dialog task on specified host computer as Connection 1. The LOGON command in this example is specified in the OC command.
OC9/EXEC $EDT
Open dialog task (Connection 9) on own host and under own user id. Following successful LOGON, and after acknowledging the bulletin, the BS2000 command /EXEC $EDT is automatically executed.
OC2 TESTUTM,CFS1
Open Connection 2 to the application TESTUTM. The virtual terminal name for this connection is CFS1. There must be PTERM and LTERM statements for the name CFS1 in the KDCROOT. After establishing the connection, the UTM request to enter a KDCSIGN command will appear.
OC3 SAP,,VAR3,SAP
A connection will be made as number 3 to the DCAM SAP application SAP. The application runs on the host VAR3, and is not under UTM control. The optional parameter SAP flags CFS that this connection is to an SAP application.
OC4 UDSDB,,,UC
A connection is established under number 4 to the DCAM application for UDS administration. The administration password, if required, should be given in plain text when CFS prompts with the connection message. For example, a password in the format C'ABC' should be entered simply as ABC. When a successful connection has been established, commands can be passed to the administration program by pressing the K2 key.
Troubleshooting failed Connection setups.
Firstly, evaluate the DCAM Return Code (indicated in the comment line of the CFS mask: R15=X'.....' / R6=X'.....'). A listing of all Return Codes can be found in Appendices A-2/A-3 of the "DCAM Macro Calls" manual. If the DCAM Return Code does not give any information about the cause of the error, go through the following checklist.
UTM Applications:
Was the virtual terminal name given in the OC command?
Try the Connection option ES: OCn appl [, term] [, host],ES
Have the CFS terminal names been added to the KDCROOT (PTERM , LTERM)? (For more information see page 9-)
If the UTM application is on another host, has the correct name of this host been given in the OC command? Has the name of the host from which the CFS task was started been correctly defined in the KDCDEF PTERM statement of the UTM application?
Has the UTM application been loaded? (DCAM-Returncode X'0C4C0000')
DCAM Applications:
Try the OC command with one of the optional parameters ES, or ES1/ES2 (EDIT=DSSIM, simulating a physical screen). These options are important, for example with the VIDEO, TDSPOOL, RDDIA or FTDIA applications.
Try the OC command with optional parameter S (--> OPTCD=(CS,SPEC) ).
Is the application expecting a connection message? A connection message is given in the form O..., MSG=... when a connection is made from a physical terminal. If a connection message is required:
Try the OC command with optional parameter C, and when prompted, enter the connection message. Do not enclose the message in quotes as in the MSG= form.
If a connection message is not permitted (not even the CFS default connection message), e.g. for the DCAM application ROUTE, you may use the option NC (No Connection message).
If none of the above is applicable:
Try the OC command with optional parameter UC (console-type connection).
This is necessary, for example, with UDS database handlers, as well as VM2000 Console (Application $VMCONS).
Has the DCAM application been loaded? (DCAM Return Code X'0C4C0000')
If the OC command is not rejected, but there is also no reply from the application, try pressing the K2 key, then B (break).
Resume communication with interrupted dialog (Continue in Connection)
[CC] n[ /cmd] Continue in Connection n
The entry CC is optional, and can be left out.
Resume interrupted dialog with connection n. A branch is made from the basic level of CFS to the specified subtask.
cmd If the connection is to a BS2000 dialog task, a command for the subtask can be given in the CC command.
The command is executed immediately after branching to the subtask. If the connection user is in a mask or Physical Mode Input, cmd is not executed until the first Line Mode Input has been requested by the partner.
CFS-specific transaction codes such as LOG/NLOG/HC etc. are not recognised at this point, and are not executed. The Job Report System of CFS cannot be activated by entering the BS2000 command DO proc.
To execute these functions, use a two step process as follows: 1) CCn and 2) cmd
Additional input with the CC command can generally not be given to UTM applications.
[CC] nB Continue in Connection n. The 'B' parameter effects a break for this connection. Same effect as 'B' in the K2 query line (see below).
[CC]n,Rtt For Connections to $CONSOLE: Connection n will be invoked.
After tt seconds, a Return will be effected automatically to the initial level of CFS (the Command field). This variation of the CC command is specifically provided for CFS procedures.
[CC] n$RS Error Recovery: Occasionally, an erroneous situation can arise where data input appears twice, or an entry is only executed after a delay. In these situations, an error recovery process can be initiated by pressing K2 and R, and then resetting the internal Connection indicators by entering CCn$RS.
The commands OCn/CCn can also be shortened, whereby only the Connection Number need be entered. CFS will generate a CC command if a connection already exists, and an OC command if it does not.
Terminate dialog with Connection administratively (Disable Connection)
DC is entered at the basic level of CFS, and causes the specified connection to be terminated. If a BS2000 dialog task was still active under that connection, DCn will result in a console message "ABNORMAL TASK TERMINATION 22" (Line failure/ hardware error).
A subtask will also be terminated by the BS2000 /LOGOFF command.
Some connections, e.g. console-type connections, can only be terminated with a DC command.
The K2 key normally results in an immediate break to the command level of BS2000. In connections, it controls the switching from one connection to another, or to the basic level of CFS. When the K2 key is pressed, the following sequence of events takes place:
1) The current screen contents are saved.
2) If ACD (Automatic Connection Display) mode is switched on, all currently open connections are displayed (Standard).
3) A line is issued which indicates the connection in which the user currently operates.
4) The following message is issued:
"Return to CFS/Continue in Conn. n/Break ? (R/n/n cmd/B/BB/^cmd)"
Connections to $CONSOLE will result in the message:
"Console-input/continue in Conn. n/Break ? (input/R/n/^cmd/?)"
Connections to $CONSOLE in Asynchronous Mode (ACn) will result in the message:
"Input for Console n/Return to CFS ? (n input/R/^cmd/?)"
While in Connections to $CONSOLE and $VMCONS, the user has 2 minutes to answer messages. If nothing is entered during this time the display is switched back to console output. The system administrator can set this wait time in the CFSMAIN module, and it can be any value between 10 and 3600 seconds. If a value of 0 seconds is specified, this will cause CFS to wait for an unlimited period of time for input, as was the case in previous versions of CFS.
The following choices are available:
R Return to the CFS basic task. Entering the command CCn will switch the screen back to the connection number n.
input only applicable to a $CONSOLE connection: specified input is passed to console.
e.g.: tsn.INTR, STA MSG,ALL
n input only possible if multiple $CONSOLE connections have been established in Asynchronous Mode (Command ACn): specified input is passed to the console opened under connection n . e.g.: 1 tsn.INTR, 9 STA MSG,ALL
n Switch to the specified connection.
n is the number of a connection that has already been opened. n can also be the current connection again.
n cmd as above, but together with a command to be executed in the new connection (e.g. 2/STA L). n can also be the current connection again.
The cmd is executed immediately after branching to the subtask. If the connection user is in a mask or Physical Mode Input, cmd is not executed until the next Line Mode Input.
B Pass the K2 key to the communication partner. During extensive screen output, e.g. file entries following an FSTAT command, it can sometimes happen that K2 will only provide a BS2000 command prompt after many screens have scrolled by.
BB The K2 key will be simulated. In contrast to the option B (see above) the remaining extended messages (e.g. FSTAT listings) will be discarded.
^cmd CFS switches back to the basic task, executes the specified command (or sequence of commands), and, if possible, returns to the current connection. A detailed description of ^cmd is to be found in the next section "Escape Symbol in Connections".
The input ^2/ , for example, will open a connection 2 under the same userid, or branch to this connection if it is already open.
? Activating the Help System. The various input possibilities are described.
Notes:
Simply pressing DUE1 key without any parameters is the same as R (Return to CFS).
The special functions of the K2 key in CFS connections described above can be disabled for each connection seperately using the command DKCn (Direct K2-mode for Connection n). For further information, see page 9-.
Administration programs can also be run in connections under $DIALOG that require the K2 key to be pressed to receive an input request. To receive this input request in a CFS connection, press the K2 key, and then when asked, press B (Break).
It can happen in UTM/DCAM applications that K2 + n does not result in a branch to the desired connection n; rather, the switch is back to the basic level of CFS. If this happens, clear the screen with LSP (or Shift + Reset) after pressing K2, and only then enter the connection number n.
It can happen in UTM/DCAM applications such as OASE and ADABAS that the usual CFS Break query does not appear after pressing K2. There are two possibilities to resolve this problem:
- Clear the screen with LSP and then press K2.
- Use the escape symbol ^ / ^n to switch to the basic CFS task, or to another connection.
If the error message "Message cannot be displayed ..." appears in a $DIALOG connection, and the connection does not resume thereafter, pressing K2 and answering B (Break) will repeat the request. This may, under certain circumstances, have to be repeated many times, until the slash ("/"), or the SDF prompt ("KDO:" / "CMD:") appears.
The K2 key can be pressed at any time, for example during DO procedures, or while a program is running. On the other hand, the escape symbol (see next section), can only be entered when input is requested CFS.
Pressing the K2 key in a connection will show the Connection Display, as well as a line with information about the active connection. The user can then enter the relevant reply: R (return to CFS)/ n (Continue in Conn. n) / B (Break).
The experienced user can speed up this process by entering an escape symbol. The ^ character is the standard escape symbol. The escape symbol for connections in Level 2 (see below, "Nested connections") is set to the alternative ' character.
The escape symbol can be entered as the first input character in Line Mode, as well as in the first overwritable position of the screen (Home position) in Format Mode.
The escape symbol can only be entered when there is an input request in the connection. In contrast to the escape symbol, pressing the K2 key is independent of the input request, e.g. it can be pressed during a DO procedure , or while a program is running.
The following options can be entered together with the escape symbol:
^ Return to the basic CFS task.
^B Break for current connection. Equivalent to pressing K2 + B.
^n Switch from the current connection to connection n.
^n cmd Switch from the current connection to connection n. n can also be the number of the current connection. The specified command is first transfered to the new connection. Equivalent to the key strokes K2 + 'n cmd'. cmd is executed in the connection n subtask immediately. If the user is in a mask, or in Physical Mode Input, cmd is buffered until the first Line Mode Input is requested.
^cmd Switch to the basic task of CFS. The specified command, or series of commands (seperated by ';') is executed from there. Generally, a switch back to the current connection is made following successful execution of all commands. For a few commands, this does not make sense (e.g. new file selection with ^NP, or switch to another connection with ^n [ /cmd] ), and so CFS does not return to the current connection.
If the commands do not terminate successfully, CFS remains in the basic task of CFS and does not return to the connection.
^ : x Remap the escape symbol to another character.
The escape symbol is valid for all connections in the same nested level.
The system administrator has the option of generating CFS such that all CFS Connection Handler commands must be called with the escape symbol. The command memory, for example, would then have to be called by "^-", and not by "-". The LOG and RES functions would be activated by ^LOG and ^RES respectively. The hardcopy mode would be switched on with ^HC and switched off with ^NHC. To see whether the ^-option is activated, check the CRD mask using the CRD command.
Nested Connections
If CFS is loaded from a connection, and then another connection is opened from here, (Connection Level 2), there is an overlap if the same escape symbol is used between Level 1 and Level 2. If CFS is loaded from a connection, the alternative escape symbol ` (X'4A') is automatically used. If the user is in a connection in Level 2, the escape symbol ^ will return him to the CFS level that was first loaded i.e. Level 0. Entering the symbol ` will return him to the level from which this CFS was loaded i.e. Level 1. It makes sense, therefore, to leave nested connections by using the alternative escape symbol.
With regard to nested connections, it should be noted that pressing the K2 key in Level 2, and then entering R (Return) will return you to that level of CFS which was originally loaded (Level 0), and not to the level immediately below you (Level 1). Later, a command CCn will not enable CFS in Level 1, rather in the Level 2 that you left with K2. Pressing the K2 key and entering B (Break) in a connection in Level 2 will result in CFS in Level 1 returning its connection request "Return / Continue in Conn. n / Break ...".
Transmitting a HC-, LOG-, RES command in a nested connection will always result in the basic CFS task (Level 0) processing the command. LOG and hardcopy files are also always created in the userid from which CFS was called for the first time.
The symbol to activate the command memory (see next section) can be redefined for each connection level seperately by means of the CRD (Connection Command Redefine) command. The CRD command to change the symbol for all connections within a level should be entered in the command line of the CFS task that is directly controlling the affected connections, i.e. those in the level immediately below.
The processing of all CFS connection-specific commands such as HC, LOG, RES can also be prevented for a specified Connection x at Level n. To achieve this, enter the CFS command NEC x (No Exit for Connection x) at Level n-1.
The Connection Handler of CFS possesses a command memory facility. All Line Mode input, and certain Format/Physical Mode input for the connection are stored in an internal buffer. In particular, all BS2000 and EDT commands are saved for future recall. Any entries stored in the command memory can be recalled, and retransmitted unchanged, or after further modification. Access to the entries stored in the command memory can be achieved in two ways:
a) sequential:
-< DUE1. In Line Mode input, the last command entered in this connection is displayed in the 24th line. In addition to the current connection, entries for all other open connections will also be displayed.
b) associative:
-string< DUE1. The last command beginning with the specified character string string is displayed.
-*string< DUE1. The last command containing the specified character string anywhere is displayed.
The character < indicates the End Marker key (EM).
Pressing the Shift ENTER key displays the last, then the second last command, and so on.
If the input from the command memory appears that the user wishes transmitted, it must be sent be pressing the DUE1 key. Before being transmitted, the previous input can be modified. Further output of the command memory is stopped by pressing the DUE1 key. Pressing K1 will exit the command memory without transmitting anything.
The entries deposited in the command memory are activated as follows:
Firstly, the commands entered from the current connection are displayed. Going back further in the command memory will display the commands from connections 0 to 9, with the exception of those already displayed from the current connection. The command memory contents from all connections are chained with one another and are handled as a unit.
The symbol for activating the command memory, '-', can be redefined by the user: sym-old : sym-new. Example: -:]< DUE1
Redefining the command memory symbol is necessary if, for example, the user wishes to scroll back in EDT Line Mode. A redefined command memory symbol is valid across all connections.
Data Protection: Subsequent removal of particular entries in the command memory is achieved as follows: The command memory is activated by entering -< DUE1. The entry to be removed is displayed by repeatedly pressing Shift ENTER, and then erased by pressing the K3 key.
Notes:
Input that consists of only one or two characters are not stored in the command memory.
Mask input (Mode=Format/Physical) is not stored in the command memory, but EDT and KDC commands are.
EDT entries can be activated from the command memory by inserting a blank space:
_-< DUE1 | _-string< DUE1 | _-*string< DUE1.
The command memory can also be used with connections to $CONSOLE. To display previous console entries, press K2, and then enter -< DUE1 .
The comand memory can likewise be used in UTM applications for administration dialog. Previous entries are displayed by entering -< DUE1.
By setting an option, the system administrator can generate CFS such that all commands destined for the Connection Handler must be preceded by the escape symbol. The command memory is then activated by "^-" . To check if the ^ option is set, display the CRD mask (CRD command).
Loading command memory contents to P-keys.
Any entry from the command memory displayed on screen can be stored in a chosen P-key. The number of the P-key needs to be matched to the entry as follows: 'Px#' or 'Px:'. x designates the one to two digit number of the required P-key. The command memory entry displayed on screen is sent by pressing DUE1 or < DUE1 respectively. That entry is then stored in the specified P-key. In this case, the entry is not executed as a command.
By giving the prefix 'Px#', the character string stored in the P-key is terminated with < DUE1 . The prefix 'Px:' does not generate < DUE1 .
Example:
The entry STA 7813 is displayed on the screen from the command memory. Modifying the entry to P12#STA 7813 and sending it with DUE1 will result in STA 7813 being stored in the key P12. Pressing P12 will then cause the string to be sent automatically with End Marker and DUE1.
Full Screen Command Memory Output
--< DUE1
--string< DUE1
--*string< DUE1
If the command memory is activated by entering '--' , a complete screen (24 lines) of entries will be displayed. Previous entries can be displayed sequentially as well as associatively.
Activating one of the displayed entries is achieved by modifying any character in the required command. The command will be executed even if a character is overwritten by the same character.
With SDF, multiple commands can be activated by modifying the particular line on the screen. The individual commands will be executed in the order in which they appear on the screen.
Note:
One or more lines from the command memory can be loaded to any desired P-key equally well in Full Screen command memory mode. The procedure is the same as that described above ("Loading the command memory contents to P-keys").
The Calculator and Converter functions of CFS can also be used in connections. All Calculator and Converter input must begin with the character string ^= .
Arithmetic and logical Operations:
The four basic arithmetical functions + - * /, as well as % calculations and the logical operations .AND., .OR., .XOR. are provided. Operands can be entered in hexadecimal or decimal format. The mathematical expression should be entered as follows:
^=value [ op value ] ...
value Decimal or Hexadecimal value.
Values containing only the numbers 0 to 9 will be interpreted as decimal values. If the value contains the characters A to F, they will be treated as hexadecimal. Suffixing a decimal value with H or X (e.g. 10H) will cause it to be interpreted as a hexadecimal value.
op Arithmetic or logical operator. The following operators are available:
+ Addition
- Subtraction
* Multiplication
/ Division
% % calculationg
.+. Addition without regard to the sign (address calculation)
.-. Subtraction without regard to the sign (adress calculation)
.AND. logical AND function
.OR. logical OR-function
.XOR. logical Exclusive-OR
The individual operations are evaluated linearly. Example: ^=10+10*2 gives the result 40, and not 30 as would normally be expected. The same is true for all logical operations.
Examples:
^=16+80H
The value 144 in decimal and 90H in hexadecimal will be displayed in the system line as the addition result.
^=7FFFFD45.+.FFF
The value 80000D44 will be displayed as the result of this logical addition. The arithmetic addition =7FFFFD45+FFF will result in the error message 'result too big ...' , since the maximum positive hexadecimal value of 7FFFFFFF will have been exceeded (Fixed-point overflow).
^=1200%14+1200%85
This expression will be evaluated as follows:
14% of 1200=168, 168+1200=1368, 85% of 1368=1162.
^=7C
The decimal and hexadecimal representation of the given value will be displayed: 7C= 124 (7C)
^=1.OR.2.OR.4.OR.8
The four hexadecimal operands are logically OR-ed with one another The hexadecimal value F is displayed as the result.
^=AFFE.AND.5001H
The two hexadecimal operands are logically AND-ed with each other. The hexadecimal value 0H is displayed as the result.
^=7FFE.XOR.FF0
The two hexadecimal operands are logically XOR-ed with each other. The hexadecimal value 700EH is displayed as the result.
Character and Hexadecimal Conversion:
Strings entered in hexadecimal notation will be converted to character format. Character format strings will converted to hexadecimal format. Strings to be converted should be entered in the following format:
^=X'string' | ^=[C]'string'
Non-printable characters will be displayed as a '?' when converting to character format.
Examples:
^=X'C1C442'
The character equivalent C'AD?' for X'C1C442' will be displayed in the system line Non-printable characters in character format will be displayed as '?' .
^='AFFE'
The hexadecimal equivalent X'C1C6C6C5' for C'AFFE' will be displayed in the system line.
Parameter Mask for DO-Procedures in Connections
If a connection is opened on the same host computer, and under the same user-id as the CFS basic task, the following additional services are offered for DO commands:
The DO procedure parameters are checked for completeness. If any parameter defined in the PROC statement has not been assigned a value - either predefined in the PROC statement or in the DO command itself - a parameter mask will be displayed by CFS. All parameters defined in the PROC statement will appear in the parameter mask, together with any respective values. The parameters thus displayed can be entered or modified for that procedure run.
The parameter mask can also be sent without filling it in completely. In this case, the empty parameters have no value assigned to them and they will be requested in BS2000 by prompting.
For a quick check on what parameters are used by a DO procedure, a DO command can be entered in the following form: DO procedure,?
Notes:
The parameter mask for DO procedures can be provided under certain conditions even when the subtask has not been opened under the same userid. The prerequisite for this is that the DO procedure, or LMS library containg it, is accessible to the basic CFS task.
The parameter mask is not displayed if the procedure is stored as a temporary file.
To analyse the PROC statement of the DO procedure, CFS has to open the DO procedure in Read Mode. If the procedure or LMS library is protected with a READ password, CFS will ask for it.
The BS2000 DO Procedure that was last executed can be reactivated with the previous parameters by the command DO_< DUE1. The effect of the input DO, followed by a blank and End Marker wil be to redisplay the last entered DO parameter mask from any connection.
The parameters entered in the parameter mask can be saved in a file CFS.JRSAVE [.jobname] by means of the command SP %name. It can also be saved to a file allocated as follows: /FILE file, LINK=JRSAVE. The exact rule by which the JRSAVE file is named is described in Chapter 27 "Files created by CFS" (CFS.JRSAVE). The JRSAVE file name can also be given explicitly after %name: SP %name,jrsave. %name stands for any 1- to 44-character mnemonic.
A DO command saved with parameters under %name can be reactivated by the BS2000 command DO %name, or DO %name,jrsave. Further information on the subject "Saving DO Parameters" can be found on page 11-.
The automatic check of DO parameters, and the parameter mask option can be suppressed using the command NDP (No Do-Parameters), or by issuing the DO command with a leading slash i.e. /DO proc.
CFS handles the overflow control for each connection separately. In general, the overflow control of the basic task of the connection is used. By entering a TCHNG command inside a connection to $DIALOG or $CONSOLE, individual overflow control for each connection can be established.
TCHNG or MOD-TERM-OPT commands in connections must be visible to the Connection Handler, i.e. it must either have been entered via the keyboard, or else appear in some form on the screen. If this is not the case, a TCHNG command will have no effect in a connection.
Invisible TCHNG commands are those, for example, in a /PROC N DO procedure, or called from a user program. Invisible TCHNG commands have no effect in that connection.
A visible TCHNG command can, for example, appear as a BS2000 command in a /PROC C or /PROC A Procedure. Should the user not wish to work with /PROC C or /PROC A Procedures, the SDF command WR-T can be used to make the TCHNG command visible to the Connection Handler: /WR-T 'TCHNG ...'.
In a CFS connection, the user can extract all input and output messages to a file. Logging is started by entering the command LOG. BS2000 dialog sessions, as well as UTM and DCAM sessions can be logged.
Starting Dialog Logging
LOG {file | [lib] ([t/] element) | STD | B | BR | C} [, opt]
file Name of the file to which all input/output messages should be written. The LOG file will always be created in the CFS basic task.
lib ( [t/] element) Name of the PLAM library and element to which the input/output messages should be written. If not otherwise specified, the element type will be taken as S (Source).
([t/] element) If no library name is used, the CFS-userlib will be substituted. For a full description of the userlib, see Chapter 21.
STD CFS will use a standard name for the LOG file: CFS.LOG.yymmdd. hhmmss.tsn.
B Break. Logging will be suspended until the command LOG C (LOG Continue, see below) is entered.
BR Same as LOG B (see above), except that before suspending the logging a record is created in the LOG file containing a 'STEP BREAK'. If the dialog is later replayed (RES), the STEP BREAK record has the effect of suspending the replay until a RES C (RES Continue) command is entered. This allows the user to insert steps which were not contained in the original LOG file.
C Continue. The suspended process of logging input/output messages is continued. To interrupt the logging, see above. (B/BR parameter).
opt The type and scope of the message logging can be specified using this optional parameter.
I Input. Only the Input messages are captured (Standard).
S Special. Only the input messages are captured. (Difference to I: see Note 3).
O Output. Only the Output messages are captured.
IO Both. Input and Output messages are captured.
M preModify. With formatted screens, the contents of all input fields are saved, including those not modified by the user.
The M-option can be used in conjunction with the I-, S-, or IO-option, separated by a comma.
Ending Dialog Logging
NLOG The LOG file is closed. No further messages are captured.
Notes:
In a connection the LOG command can be used in both Line Mode as well as Mask Mode. With a mask, the LOG command should be entered in the first overwriteable field. An exception to this is in EDT, where the LOG command should be entered in the 24th line (command line). No other field may be modified in the same mask.
With screen masks whose first overwriteable field is too short to hold the full LOG command, the screen can be cleared before entering the LOG command with the LSP key.
When replaying a dialog captured with the S option, the generated input steps cannot be displayed on the screen. When replaying a dialog captured with the I option (Standard option), both input and output steps will be displayed on the screen. The S option has the effect of capturing pure input to the LOG file without any additional information for the internal use of CFS.
The M option (preModify) only has effect when capturing Mask or Formatted input (SAW: "read modified fields"). The M option causes the contents of all overwriteable fields, including those not modified by the user, to be written to the LOG file. The M option has no effect in Line Mode entry.
Example: EDT session in F mode. If a screen is made overwriteable by pressing the F2 key, the contents of all displayed data lines will be captured to the LOG file. The effect is thus the same as if the user had modified all data lines.
The commands LOG and NLOG will still take effect in a DO procedure if the statements /WR-T 'LOG...', or /WR-T 'NLOG' respectively are displayed on the screen as comment.
By setting an option, the system administrator can generate CFS such that all commands destined for the Connection Handler must be preceded by the escape symbol. The activating and deactivating of Logging will in this case be done by ^LOG and ^NLOG respectively. To check if the ^ option is set, display the CRD mask (CRD command).
After activating the logging, the statements STEP/ON/OFF/BREAK are interpreted internally by the Connection Handler as commands for a later Restore process, and are thus also saved to the LOG file. These statements are therefore not passed on to the communication partner.
STEP ON Activate Step Mode. When the dialog session is subsequently replayed (RES command), this dialog statement will activate the "Step Mode" (see page 9-). Step Mode will remain active until a statement is encountered with a STEP OFF command.
STEP OFF Deactivate Step Mode. When the dialog session is replayed (RES command), Step Mode is deactivated. The succeeding entries are, as in a normal Restore, sent without acknowledgement by the user.
STEP BREAK Temporary suspension of the RES process. When the dialog session is subsequently replayed (RES command), the RES process is interrupted, and switched to user input. As many user entries can be made as required. The RES process is continued from the interrupt point when the user enters a RES C command (RES continue).
The statements STEP ON/OFF/BREAK can also be entered in Mask formats (in the first overwriteable field). Because STEP ON/OFF/BREAK is not passed on to the communication partner by the Connection Handler, the user must enter his actual statements in an additional dialog step. The respective input request is repeated.
LOG files may be stored as Type S elements in PLAM libraries. The RES command is likewise applicable to Type S PLAM library elements (RES lib(element) ).
Replaying captured Dialog Sessions (RES)
A dialog session captured with a LOG command can be replayed, i.e. repeated with identical input, at any time in a connection. User input is then not taken from the keyboard, but from the LOG file. To replay a captured dialog session, enter the command RES (Restore).
The RES command has four variations, each causing a different type of replay.
In Batch Mode the dialog session to be replayed runs automatically, with no input required from the user.
RES [file | lib ( [t/] element) | element | C] [, d|ORIG]
file Name of the LOG file from which the dialog input will be replayed.
The specified file must be accessible from the basic task in CFS.
lib ( [t/] element) Name of a PLAM library and the respective element. The ISAM file created during the logging must first have been ADDed to the library. Element type S will be assumed, unless otherwise specified. In order to run the dialog, a temporary file is created from the library element.
element If the LOG file specified in the RES command does not exist in the CFS basic task, CFS assumes that the name refers to an element in the CFS-userlib. When processing the RES command, CFS attempts to select and process the element 'S/element' from the CFS-userlib. For a full description of the CFS-userlib, , see Chapter 21.
C Continue. A RES process suspended by a STEP BREAK is continued at the interrupt point. Suspending the RES process can be predefined during logging by entering the command LOG BR.
d Time Delay Factor.
The replayed entries from the LOG file are passed to the communication partner with a delay. This delay allows the dialog to be replayed more slowly than it was originally recorded. The dialog session rerunning automatically on the screen can thus be followed by the user at a more comfortable pace.
n: 0 - 100 Delay factor in seconds.
n: 100 - 999 Delay factor in milliseconds.
Standard: n=0. The entries are passed to the communication partner without any delay.
DELAY=ORIG The entries from the LOG file will be replayed at exactly the same speed as when they were first captured with the LOG command. The original delays and pauses between entries can thus be accurately simulated.
K2 In Batch Mode, pressing the K2 key results in the Restore switching to Step Mode (see below). By entering a delay factor, the dialog replay can be slowed down such that it is possible to press the K2 key between any two dialog steps.
Example:
RES CFS.LOG,2
Entries from the LOG file CFS.LOG are passed to the communication partner with a 2 second delay.
Notes:
The RES command can be entered in Mask Mode as well as Line Mode. In Mask Mode, the RES command should be entered in the first overwriteable field. An exception to this is in EDT, where the RES command should be entered in the 24th line (command line). No other field may be modified in the same mask.
For those screen masks that cannot hold the RES command in the first overwriteable field, the LSP key or Shift + Reset can be used to clear the screen and write the RES command in Line 1, Column 1. Usage of the LSP key is always possible in connections, even with formats that normally prevent clearing the screen buffer.
The command RES is also applicable in a DO procedure if the statement /WR-T 'RES...' appears on the screen as comment.
Entering 'RES ' (RES + space, without a filename) will start a Restore process using the file specified in the last LOG/RES command.
A dialog session that is replayed with Restore can be saved to a printable file by means of the Hardcopy command (HC). This is equally valid in the Phantom Mode of the Restore process (see below). For further information, also see page 9- "Hardcopy Mode in Connections".
Displaying the input provided by the RES process can be suppressed by SETSW ON=4 in the CFS basic task.
A dialog session can only be replayed using Restore if it was captured with option I (Input [= Standard] ), or IO (Input + Output).
By setting an option, the system administrator can generate CFS such that all commands destined for the Connection Handler must be preceded by the escape symbol. Activating the Restore process is done in this case by ^RES. To check if the ^ option is set, display the CRD mask (CRD command).
In Step Mode of the Restore, the input from the LOG file is sent to the communication partner only after confirmation from the user. The suggested input can be modified, so that the actual dialog may differ from the captured dialog.
RES [file | lib ( [t/] element) | element | C] , S [, d]
S Step Mode. This parameter causes the Restore process to run in Step Mode. In Step Mode, a single entry is read from the file and displayed on the screen. This entry can still be amended by the user, and then transmitted with DUE1.
d Time Delay Factor.
Entering a time delay in the Step Mode version of the Resore causes Line Mode output messages to be overwritten by the next input message (which might, for example, be in Format Mode) only after a predefined delay.
n: 0 - 100 Time delay in seconds.
n: 100 - 999 Time delay in milliseconds.
K and F Keys in Step Mode:
K1 Pressing the K1 key will end the Restore process prematurely.
F2 Sending the modified or unmodified input with the F2 key will result in the current input being offered again at the next dialog step i.e. the next record is not read from the LOG file. In this manner, additional steps that were not in the LOG file can be entered in the dialog.
F3 Sending the modified or unmodified input with the F3 key causes the Restore process to switch to Batch Mode.
Restore Version 3: Compare Mode (Regression test)
In the Compare Mode of the Restore the messages received from the communication partner are compared to those of the stored in the LOG file.
RES [file | lib ( [t/] element) | element] , C [, A] [, HC=file [, params] ]
C Compare Mode. The messages received from the communication partner are compared to the values in the LOG file. The LOG file must have been created with LOG file,IO.
A Automatic Regression. The Compare dialog runs automatically, i.e. to the end without user input. The parameter HC= should also be used with this A parameter.
Standard: No automatic regression test. The user must acknowledge each difference in the output of the tested programs.
HC=file [, params]
Store all output that differs from the captured Master dialog in a hardcopy file. The differing screen masks are stored in the specified file in the form NEW and DIF. All optional params (parameters) of the normal HC command can be given, e.g. T(Time Stamp) or L(Laser format).
Execution of the Compare Mode:
The Restore process runs automatically, i.e. the same as the normal Batch Restore (Version 1).
If differences are detected between the output messages contained in the LOG file and the actual messages, the user is informed via a message in the system line (Line 25) of the terminal. The Restore process is interrupted in a similar fashion to Step Mode.
The following K/F keys control the subsequent execution:
K3 Pressing the K3 key will switch the display from the current, actual output message to the output message stored in the LOG file. The respective messages are flagged by NEW and OLD in the system line. Pressing K3 again will result in a differential screen being displayed, wherein all positions in NEW are replaced by spaces, except where NEW differs from OLD. This screen is flagged in the system line with DIF.
K1 Pressing the K1 key during the NEW/OLD/DIF display causes the entire Restore process to be aborted.
DUE1 Acknowledging the NEW/OLD/DIF message with the DUE1/ENTER key will continue the Restore process.
F2 Pressing the F2 key will present the user with with a menu for additional test options.
Selection menu: Test Options
SN Skip New: The next output provided by the communication partner is compared to that presently obtained from the LOG file. This option is functionally equivalent to removing the output of the communication partner from the comparison message stream.
SO Skip Old: The next message contained in the LOG file is compared with the current message from the communication partner. This option is functionally equivalent to removing the output of the LOG file from the comparison message stream.
E Edit: Here, the user invokes the Compare Editor (see below). Using the Compare Editor, the output messages stored in the LOG file can be edited. In particular, fields can be removed from the comparison process (masked) by overwriting them with '#'. Upon leaving the Editor (by pressing the DUE1 key) the last comparison step is repeated.
R Return: Exit the "Test Options" menu.
The automatic Regression test mode is not tied to a terminal, and can be run in Batch mode. In this case, the masks are saved in the Hardcopy protocol not in a 1 to 1 screen format.
Example:
Command sequence to run the automatic Regression test in Batch:
/SYSFILE SYSDTA=(SYSCMD) /SETSW ON=(1,4) /EXEC CFS *002 FILE=NO OC1/LOGON ...... RES file,C,A,HC=CFS.HARDCOPY,O LOGOFF NOSPOOL END
The Compare Editor provides the facility for postediting the sample dialog captured for the Regression test. Particular messages or parts of messages (e.g. Date and Time in screen masks) can be excluded from a later comparison during the Restore.
The Compare Editor is called by a special version of the Restore command:
RES file , CE [, n]
CE The Compare Editor is activated to allow processing of the output messages stored in the LOG file. The entire output, in particular the protected fields, can be modified by the user.
Parts of the output messages can be excluded from a later comparison. This happens if the required message positions are overwritten (masked) with the '#' character.
If the entire message is to be excluded from the compare, a ';' should be written to the screen at Line 1, Column 1.
The Compare Editor process can be aborted at any time by pressing the K1 key.
In the Compare Editor the output messages stored in the LOG file are identified by an incremented number (001,002, ...).
n Id Number of message. n: 0 - 999
Entering an Id number in the RES ..,CE command will cause the Compare Editor to display the output message with that specified number directly.
Notes:
The CAP/LOW mode of the CFS basic task also operates in the Compare Editor: In CAP (=Standard) mode, lower case letters are converted to upper case. In LOW mode, lower case letters are not converted.
In screen formats it should be noted that the Compare Editor does not generally display the messages line- and column-justified. Use of the Tab key to move from one field to the other is not possible in Compare Editor Mode.
The Compare Editor is also suited to injecting differences in a later compare run. (Modification of message content).
Restore Version 4: Phantom Mode
The dialog captured in the LOG file is faithfully simulated on screen. No message traffic occurs between the simulation and the communication partner.
RES [file | lib ( [t/] element) | element] , P [, S] [, d]
P Phantom Mode. The entries stored in the LOG file are displayed on the screen, but are not passed to the communication partner. The output messages which are the normal reaction to the input are still read from the LOG file in Phantom Mode, and are displayed on the screen.
The Phantom Mode of the Restore is only possible if the LOG file to be used was created with the LOG file,IO option.
S The simulated dialog proceeds in Step Mode. The user must acknowledge each input displayed on the screen with the DUE1 key.
The Step Mode of the Phantom Restore allows dialog steps to be excluded or repeated. To jump forward or back a step in the Phantom dialog, the entire screen first has to be cleared (Press key LSP, or Shift + Reset). The number of required forward or backward steps can now be entered in the top left corner of the cleared screen: +n/-n/++/--< F1 (n: 1 - 99). It should be noted that the number must be transmitted with the F1 key.
d Time delay between the output steps.
n: 0 - 100 Time delay in seconds.
n: 100 - 999 Time delay in milliseconds.
Standard: The timing of the original dialog is maintained. Wait periods of more than one minute are reduced to 60 seconds. For more information, see the notes below.
Examples:
RES CFS.LOG,P,1
Messages are displayed on the screen with a one second delay.
RES CFS.LOG,P,0
Quickest possible display of output to the screen.
Notes:
If neither Step Mode nor a time delay factor is given (RES....,P), the timing of the original dialog is simulated. The timing sequence of the individual steps is thus the same as when it was recorded. Wait periods of more than one minute are reduced to 60 seconds. If the user does not wish to wait for the interval period to elapse, it can be skipped by pressing the K2 key.
Because UTM/DCAM applications are only simulated in Phantom Mode of the Restore process, it is not necessary to establish a connection to the application before starting the Restore. A UTM session can also be simulated in a normal $DIALOG connection.
A dialog session that is replayed with Restore can be saved to a printable file by means of the Hardcopy command (HC). For more information, see Page 9- "Hardcopy Mode in Connections". Actual screen capture to a file is also possible in Restore Phantom Mode.
F1 While the Phantom dialog is running in Step Mode, the user can force the dialog to skip forwards or backwards by clearing the screen, and then entering +n/-n/++/-- in the top left corner of the screen.
+n Skip n steps forward in the dialog.
++ Jump to last captured dialog step.
-n Skip n steps back in the dialog.
-- Return to the first dialog step.
All entries must be transmitted with the F1 key.
K2 If the Phantom dialog is not running in Step Mode, the interval between two successive steps can be shortened by pressing the K2 key. The user has the opportunity to abort the entire Phantom dialog by pressing the K2 key many times in quick succession. (CFS message: "Abort Restore ? (Y/N)" ).
A problem that occurs frequently in practice is that the user wishes to modify a captured dialog session afterwards. A solution to this problem is to recapture the modified dialog with the help of the original dialog steps. To do this, the following actions are necessary:
First, open a new LOG file with LOG file2 .
Then, start running the "Master dialog" in Step Mode with RES file1 ,S.
All entries contained in the original LOG file will now be captured to the new LOG file, with the user having the opportunity to modify the suggested entries.
Do not forget to stop the Logging at the end of the dialog session with the NLOG command.
Display HELP Information about Connections
?CON The Connection Handler HELP screen will be displayed. It can be requested while in a connection in both Line and Format Mode (in the first field of the mask).
Overview of all open Connections (Connection Display)
CD Connection Display. This command, entered in the command-field of the CFS basic task, will display a summary of all connections presently open. The display contains a list of the open subtasks, their TSN's, and the commands that were last executed.
In the basic CFS task, pressing the F3 key will produce a hardcopy for an individual mask. However, in connections the F3 key may be reserved by the application. Because of this, the user may define any F or K key as the CFS basic task F3 equivalent. This is done with the CH command.
CH key Connection Hardcopy. The CH command must be entered in the command field of the CFS basic task. This definition is valid for all connections.
key Key definition: K1, K3, ... ,K14 / F1, ... ,F20
The hardcopy key defined with the CH command has the same function in connections as the F3 key has in the basic task of CFS. Any mask captured with the CH-defined F / K key will be saved in the hardcopy file. The keystroke is not passed to the communication partner.
Any mask transmitted with the hardcopy key must be re-transmitted after the hardcopy operation by pressing the DUE1/ENTER key.
Users in a subtask of CFS can capture formated screens of any dialog to a printable file by using the HC command (Hardcopy Mode).
All options of the hardcopy command are shown below.
HC [file] [, L] [, B] [, T] [, E|O] [, A|F] [, G|I] [, S]
All HC command parameters are optional. If none are given, the standard values are used.
file Name of the file to which the hardcopy should be saved. The hardcopy file will always be created in the basic CFS task. Each connection can have its own hardcopy file.
If the specified hardcopy file exists, and neither the O nor E option was specified (see below), the user will be asked if the existing file should be overwritten or extended.
If the hardcopy process in the connection is temporarily suspended (NHC), and then later resumed with HC, the hardcopy file last used will be extended.
If no file name is given in a connection at the first HC command, a file with the standard name of CFS.HARDCOPY. yymmdd.hhmm.tsn will be created.
L Laser printer preparation: The hardcopy file will be created in laser printable format (ND-/HPFILE). Bright/half-bright, protected/unprotected fields will be displayed on the print output according to the laser options.
Hardcopy files created with the L option can be printed out with the BS2000 command /DO CFS.DO.PRINT,file . This DO procedure, together with the respective CFS.ND-/HDFILEs must exist under TSOS, and be cataloged as shareable. The System Administrator must match the PROC parameters of this procedure to the HP-/NDFILE, as well as the character set. Information on how to do this is contained in the actual procedure file. Standard: L option not active, i.e. the hardcopy file is prepared in the normal print format.
B Before Images: In screen mask mode, the contents of the mask before the user effects any input are saved, as well as the standard capture after the user input. Standard: B option not active (no Before Images).
T Time Stamps: The captured input/output is saved in the hardcopy file together with the date and time.
Standard: T option not active (no Time Stamping).
E | O Extend/Overwrite:
E If the specified hardcopy file already exists, it will be opened in Extend Mode.
O The specified hardcopy file will be opened in Output Mode i.e. the previous contents will be overwritten.
Standard: If a file exists with the same name, the user will be asked if the existing file should be extended or overwritten.
A | F 1) With laser preparation (L option active):
A The Display control codes of the screen mask will be checked for bright/half-bright. Half-bright fields are displayed in a grey shaded font.
F The Field control codes of the screen mask will be checked for protected and unprotected fields. Protected fields will be displayed in a grey shaded font.
Standard: A option (Display control codes will be evaluated).
2) Without laser preparation (L option not active):
F The IS2 sequences of the screen masks will also be saved to the hardcopy file. This provides the user with the opportunity of converting these IS2 sequences to any particular character set of a laser printer.
A The IS3 sequences of the screen masks will also be saved to the hardcopy file. This provides the user with the opportunity of converting the IS3 sequences to any particular character set of a laser printer.
Standard: A/F option not active. (IS2/IS3 sequences are not saved to the hardcopy file).
The F and A options can be entered together. Both IS2 and IS3 sequences will appear in the hardcopy file.
G | I Only valid when L option is set: German/International
G German umlauts will appear in the printed output. This is independent of how they are displayed on screen.
I German umlauts will appear in the hardcopy file as square/curly brackets, according to the international character set.
Standard: G option (German umlauts will be produced).
S Screen: After entering the HC command in Line Mode, all input and output appearing thereafter is saved to the hardcopy file. The contents of the screen at the time the command is entered is therefore not captured. The S option will cause the entire visible screen contents to be saved to the hardcopy file.
The S option is only valid when entering the HC command in Line Mode.
Standard: S option not set.
Stopping the Hardcopy: NHC-Kommando
NHC No HardCopy. The Hardcopy Mode is switched off. The hardcopy file is also closed if the connection is lost (Disconnect/Connection Lost), or ended by LOGOFF/KDCOFF.
Notes:
The HC command can be entered in Format Mode as well as in Line Mode. The HC command should be entered in the first overwriteable field of a screen mask. EDT is an exception, where the HC command should be entered in the 24th line (command line). No other fields may be modified in this same mask. The same is true for the NHC command.
In cases where the first overwriteable field of a mask is too short to hold the HC command, the screen can be cleared with the SHIFT RESET key, and the HC command then entered in Line 1, Column 1. The SHIFT RESET key can be used at any time in connections, even for those formats that would normally lock it.
The commands HC and NHC are also operable in a DO procedure if they appear on the screen as comment in the form /WR-T 'HC ...', or /WR-T 'NHC'.
By setting an option, the System Administrator can generate CFS such that all commands destined for the Connection Handler must be preceded by the escape symbol. Setting and resetting Hardcopy Mode must then be achieved by ^HC, or ^NHC respectively. To check if the ^ option is set, display the CRD mask (CRD command).
Call Menu Mask for Connections
MENU A branch is made to the Menu System for connections.
Further information about the Menu Mask can be found in Chapter 10 "Menu System for Connections".
The Connection Handler of CFS offers the possibility of suppressing all output messages in a subtask, whether produced by a user program, or by the system:
O OFF [,file] All output in the current connection is immediately prevented from appearing on the screen. Output that refers to an input request (e.g. '/') is not affected, and is still displayed on the screen.
file If the optional file name is given, all suppressed output is written to this file instead.
O ON All output for the current connection is displayed again.
Notes:
An example of the use of the O OFF command is a program test using IDA, where a program counter is set at a particular halt point. The halt point can occur very frequently, and at each point IDA displays a message on the screen. Displaying these messages takes relatively long, and delays the program execution.
Using the O OFF command will speed up the runtime of the program to be tested if the messages produced by IDA are suppressed.
The commands O OFF and O ON can also be used in a DO procedure if the comments /WR-T 'O OFF ...', or /WR-T 'O ON' appear on the screen.
If output is suppressed from the screen and written to a file with the command O OFF,file, and if that same file is reopened following an O ON command, then that file will be opened in EXTEND mode, and not OUTPUT mode.
By setting an option, the System Administrator can generate CFS such that all commands destined for the Connection Handler must be preceded by the escape symbol. Setting and resetting the suppression of output messages must then be achieved by ^O OFF, or ^O ON respectively. To check if the ^ option is set, display the CRD mask (CRD command).
Changing Connection-related Parameters
The commands described below can be entered in the command field in the CFS basic task.
Asynchronous Mode for Connections
ACn Asynchronous mode for Connection n.
Normally, when a user exits a connection with the K2 key, all messages for this connection are stored in an internal CFS buffer. At the next CCn (Continue in Connection) command, all the buffered messages are displayed together on the screen.
This standard mode can be modified by the ACn command such that all messages for Connection n will be displayed on screen immediately, and are not buffered by CFS until the user returns to the connection. Messages destined for Connection n will be prefixed with the Connection Identifier (n:), so that asynchronous messages from different connections can be distinguished from one another. Asynchronous Mode can set and reset for each connection individually (ACn / NACn).
NACn No Asynchronous mode for Connection n.
Restores Normal Mode for Connection n (Buffering the asynchronous messages until the next CCn).
Standard: NAC Mode for all connections.
Connection between Asynchronous Mode and WAIT Command:
A user has opened multiple console applications through connections to different hosts. All console connections have had Asynchronous Mode set. A simple way of displaying the messages of all consoles on a single screen is to use the WAIT command.
Automatic / non automatic Connection Display
ACD | NACD Automatic Connection Display / No Automatic Connection Display.
ACD After each K2 all currently open connections will be displayed.
NACD The automatic connection display is not is not performed after each K2 .
Standard: ACD.
CH key Connection Hardcopy.
The F3 key in the CFS basic task will produce a hardcopy for individual Masks. However, within a connection the F3 key may be reserved for an application function. The user can therefore reassign any F or K key as the F3 equivalent. This is achieved through the CH command.
key Key definition: K1, K3, ... ,K14 / F1, ... ,F20.
Standard: NONE (no key assignment).
Notes:
Saving the hardcopy of a screen mask by means of a key defined by the CH command results in the input being lost; it must be re-entered, and transmitted with DUE1/ENTER.
It should be noted that the hardcopy function using a redefined CH command key will result in each screen appearing on a new page. In contrast, the normal Hardcopy Mode can produce multiple screen per page.
Change BS2000 Prompt in Connections
CP 'param' The input request for BS2000 commands within connections can be freely redefined as any character string. It may also contain variables such as date, time, User-Id and name of the host to which the user is logged on (Standard: "/").
param Character string for the BS2000 prompt in connections. param may not exceed 60 characters. No lower case to upper case conversion will take place.
Apart from constants, param may also contain variables. These are then given the actual values valid at the time the prompt is displayed.
The name of a variable is delimited by a special character, e.g. a blank or a comma. If a character or number is to follow a variable as constant, then the variable should delimited with a full stop. This full stop will not appear in the prompt.
The following are valid variables:
&CON Number of the connection to which the user is currently connected.
&USER-ID User-Id under which the user logged on in the current connection.
&LOGNAM Jobname of the LOGON command for this connection.
&HOST Name of the Host computer under which the dialog session is running.
&DATE Today's date with the format dd.mm.yy
&TIME Actual time with the format hh:mm
&(jvname) Contents of the specified Job variable
Notes:
The Connection Prompt works in all connections to $DIALOG, as long as the SDF option GUIDE=NO is not used.
If the CP command is used in a Startup File (see Chapter 20 "Startup"), and variables are used, then the following command sequence should be used to prevent conflicts with CFS procedure variables:
*SET PAR=#
CP ' ... '
*SET PAR=&
If the CP command is in a Startup File, the hexadecimal EDT mode can be used to insert Extended Line Mode control characters to emphasize particular parts of the CP command string. The codes of these control characters can be found in the "BS2000 Executive Macros" manual, under the VTCSET macro.
Example: CP 'x&CON y&HOST $&USER-ID &TIME x/'
In the above example, x stands for the Line Mode control character X'14' (EM4), and y for the character X'1F' (EM2). The resulting prompt of this CP command in Connection 1 would be: 1 VAR2 $TSOS 10:22 /
Within nested connections (see page 9-) the Connection Prompt of the last CFS task loaded is valid.
Examples:
CP 'Please enter next command >'
CP 'Conn. &CON &USER-ID &TIME /'
If the user had logged on under the User-Id TEST in Connection 1, the following input request would be presented:
Conn. 1 TEST 13:22 /
Refreshing the Original Screen when changing Connection
CR | NCR Connection Refresh / No Connection Refresh.
CR Upon returning to a connection with the CCn (Continue in Connection) command, the screen contents are restored exactly as they were before the connection was left. The Connection Refresh Mode helps particularly with UTM applications that work in "Write Modified" Mode with partial masks, and which do not have their own transaction code to restore a corrupted mask (similar to the K3 key in EDT). Connection Refresh does not work with connections in Asynchronous Mode (ACn).
NCR Returning to a connection mask with CCn will repeat only the last partial mask. In Line Mode, only the last input/output will be repeated.
Standard: CR
Note:
To prevent problems when opening multiple connections using a Startup File, it may be necessary to switch CR mode off before opening the first connection (NCR), and back on again after opening the last connection.
Renaming CFS Commands in Connections
CRD nam=nam-new Connection-Command Redefine.
The available commands and symbols within connections that have a particular meaning for CFS, such as LOG/RES/HC, the Command Memory symbol, and the escape symbol, can all be renamed. The new description is globally valid for all connections.
It may be necessary to rename commands within the Connection Handler if, for example, a transaction code of a UTM application is identical to a command name (e.g. RES).
nam previous command name, Command Memory symbol, or escape symbol.
The following commands and symbols can be entered for nam and redefined using nam-new: LOG / NLOG / RES / HC / NHC / STEP / ^ (escape symbol) / - (Command Memory symbol).
nam-new new command name, Command Memory symbol, or escape symbol. When redefing a command name, care must be taken to ensure that the new name contains the same number of characters as the old name. (see CRD mask on the following page).
Examples:
CRD -=§ Redefine the Command Memory charcater
CRD LOG=LLL Redefine the command to start Logging
CRD NLOG=NLLL Redefine the command to stop Logging
CRD RES=RRR Redefine the command to replay a dialog session
CRD HC=HH Redefine the command to start Hardcopy
CRD NHC=NHH Redefine the command to stop Hardcopy
CRD Command without parameters: A full screen mask will be displayed from which the names of all applicable commands and symbols within a connection, such as LOG/RES/HC, Command Memory symbol, escape symbol, may be redefined. The new definition is valid for all connections.
Format of the CRD mask:


With a mouseclick you get a describtion of the screen item.
Notes:
By setting an option, the System Administrator can generate CFS (see CFSMAIN), such that the escape symbol ^ must precede all the above commands if they are to be executed. The Command Memory should thus be activated by "^-" instead of "-". The LOG and RES functions should be activated with ^LOG and ^RES respectively.
If this option has been activated by the System Administrator, it will be indicated in the CRD mask by all the commands being preceded by the escape symbol, ^. e.g.:
Command-Memory : - --> Command-Memory : ^-
Start Logging : LOG --> Start Logging : ^LOG
Pass K2 key directly to Connection
DKCn Direct K2-mode for Connection n.
Pressing the K2 key causes its function to be transmitted directly to the connection. The K2 key in this mode loses its function of switching between connections, or to the CFS basic task. For further information, see page 9-. The message normally displayed when pressing the K2 key in a connection, "Return to CFS/Continue in Conn. n/Break ? (R/n/n cmd/B/^cmd/?)", is in this case suppressed. The process is basically the same as if the above message had been answered with B (Break).
If the DKC mode is active, the only method of switching between connections and the basic task of CFS at the input request is to use the escape symbol (see page 9-).
The DKC mode will not work under connections to $CONSOLE. In this case, the K2 key always retains its function as Console Interrupt key.
NDKCn No Direct K2-mode for Connection n.
Pressing the K2 key in a connection opened under CFS results in the user being asked if he wishes to switch to another connection, or to the CFS basic task, or if the K2 function should be passed to the communication partner.
Standard: NDKCn.
NECn No Exit for Connection n.
Input for Connection n does not go via the Connection Exit of CFS. This causes all the CFS-specific commands in a connection, such as LOG/NLOG/RES/HC/NHC/ O [ON|OFF]/STEP [ON|OFF] not to be evaluated. LOG/RES functions already activated will not be continued. The evaluation of the escape symbol is not influenced by the NEC command.
The NEC Mode can be useful in UTM applications if the entries LOG/NLOG/RES/HC are used as transaction codes, and are not to be interpreted as internal commands by the Connection Handler.
In this regard, the CRD command (Connection Command Redefine) should also be checked. The description of each CFS-specific connection command, such as LOG/NLOG/RES/HC/NHC... can be individually redefined using the CRD command.
ECn Exit for Connection n.
Input for Connection n goes via the Connection Exit. LOG/RES and all other Connection Handler commands offered by CFS are executed in this mode.
Standard: ECn; the Exit for Connection n is active.
Show Connection Status in Line 25
SCL | NSCL Show Connection Line.
When the user is in a connection, a summary of the important parameters of the current connection is displayed in the system line of the screen. The parameters include the connection number, the application name, the virtual termnal name, and the host computer. In addition, under $DIALOG, the LOGON User-Id and the TSN are displayed. The system line display is updated when switching to different connections.
Standard: NSCL
Note:
The Connection Line gives an instant summary of the current connection. It is particularly useful for End Users working within a menu system.
Trace Connection (Diagnostics)
TCn [file] Trace Connection n.
TC is entered in the command field of the first level of CFS and will result in all DCAM messages which are relevant for diagnostic purposes for the Connection n being captured to a file. The command can be executed even before the Connection has been opened.
file Name of the log file. If no name is specified, the standard name of CFS.CONNECTION.TRACE will be used.
Note:
The TC command can be entered seperately for each Connection, as required. The file name, however, must only be specified when entering the first TC command.
NTCn No Trace for Connection n.
The trace for Connection n will be deactivated.
If a trace was activated for multiple Connections, it must be deactivated with an NTC command for each Connection seperately before the trace file can be closed and made accessible to the user.