TAL Programmer's Guide

Modular Programming Example
Sample Programs
096254 Tandem Computers Incorporated A–15
Example A-6c. D-Series Input File Module (Page 2 of 3)
?SECTION in_file_init
PROC in_file_init;
BEGIN
INT in_file_name_len := 6;
STRING .in_file_name[0:file_name_max_len - 1] :=
[ "INFILE" ];
INT status;
status := FILENAME_RESOLVE_
(in_file_name:in_file_name_len,
in_file_name:file_name_max_len,
in_file_name_len,
!options!,
!override_name:override_name_len!,
!search:search_len!,
def_vol_subvol:def_vol_subvol_len);
IF status = 0 !OK! THEN
BEGIN
status := FILE_OPEN_(in_file_name:in_file_name_len,
in_file);
IF in_file = -1 !unable to open file! THEN
BEGIN
CALL msg (msg_in_open, status);
CALL PROCESS_STOP_ (!phandle!,
!specifier!,
!options!,
3 !Completion code ABEND!,
!...!);
END;
END !STATUS = 0
ELSE
BEGIN
CALL msg (msg_in_name, 0);
CALL PROCESS_STOP_ (!phandle!,
!specifier!,
!options!,
3 !Completion code ABEND!,
!...!);
END; !STATUS <> 0
END; !Of procedure IN_FILE_INIT