OSI/FTAM Programming Guide

NonStop FTAM Programming Examples
HP NonStop OSI/FTAM Programming Guide528612-001
5-45
Writing a File: TAL Programming Example
116 INT error_subcode; ! Returns error subcodes !
117
118 !---------------------------------------------------------------------!
119 ! Variables used by the FTM procedures !
120 !---------------------------------------------------------------------!
121
122 INT(32) state_result; ! Result of regime transition !
123 INT(32) action_result; ! Result of requested service !
124 INT(32) fadu_op; ! Operation performed on file !
125 INT(32) override; ! Create-request parameter !
126 STRING .EXT data_value_ptr[0:MAX_BUF-1];! Buffer used to send data !
127 INT data_len := 0; ! Buffer length to write data !
128 STRING .EXT data[0:MAX_REC + 1]; ! Buffer used to write data !
129 INT local_buf_len := 0; ! Length of the buffer read !
130 INT .local_buf[0:MAX_REC/2 - 1]; ! Buffer used to hold read data !
131 STRING .local_buf_s:=SADDR(local_buf);! String buffer to hold read data!
132
133
134 !---------------------------------------------------------------------!
135 ! Structures used by the FTM procedures !
136 !---------------------------------------------------------------------!
137
138 STRUCT .EXT data_hdr ( ZAPS^DDL^DATA^HDR^DEF );
139 STRUCT .EXT element_hdr ( ZAPS^DDL^DATA^ELEMENT^HDR^DEF );
140 STRUCT .EXT aplmgr_name ( ZAPS^DDL^FILENAME^DEF );
141 STRUCT .EXT local_appl ( ZAPS^DDL^APPL^ADDR^DEF );
142 STRUCT .EXT responding_appl ( ZAPS^DDL^APPL^ADDR^DEF );
143 STRUCT .EXT service_class ( ZFTM^DDL^SERVICE^CLASS^DEF );
144 STRUCT .EXT attr_groups ( ZFTM^DDL^ATTR^GROUPS^DEF );
145 STRUCT .EXT func_units ( ZFTM^DDL^FUNC^UNITS^DEF );
146 STRUCT .EXT contents_type_list ( ZFTM^DDL^CNTNTS^LIST^DEF );
147 STRUCT .EXT contents_type ( ZFTM^DDL^CNTNTS^TYPE^DEF );
148 STRUCT .EXT remote_file ( ZAPS^DDL^CHAR128^DEF );
149 STRUCT .EXT original_error_info ( ZAPS^DDL^ORIGINAL^ERROR^DEF );
150 STRUCT .EXT initial_attr ( ZFTM^DDL^CREATE^ATTR^DEF );
151 STRUCT .EXT requested_access ( ZFTM^DDL^REQUESTED^ACCESS^DEF );
152 STRUCT .EXT process_mode ( ZFTM^DDL^PROC^MODE^DEF );
153 STRUCT .EXT fadu_id ( ZFTM^DDL^FADU^ID^DEF );
154 STRUCT .EXT diag ( ZFTM^DDL^DIAGNOSTIC^DEF );