OSI/MHS Gateway Programmatic Interface (GPI) Programming Guide
TAL Program Example
OSI/MHS Gateway Programmatic Interface (GPI) Programming Guide—424822-001
A-8
 struct_2_ptr.z_data.z_obj_count);
 FOR counter := 0 TO struct_2_ptr.z_data.z_obj_count DO
 BEGIN
 printfld (" Object identifier: ",
 struct_2_ptr.z_data.z_obj_lst[counter].z_obj_id);
 printfd (" Object class: ",
 struct_2_ptr.z_data.z_obj_lst[counter].z_obj_class);
 END; -- FOR --
 printf (" ");
 END
 ELSE IF (struct_1_ptr.z_struct_type = ZGPI_ST_INFO_3) THEN
 BEGIN
 buffer_size := $LEN (ZGPI_INFO_3_DEF);
 printf (" Structure type: Structure 3");
 printfd (" Code 1: ",
 struct_3_ptr.z_data.z_code1);
 printfd (" Code 2: ",
 struct_3_ptr.z_data.z_code2);
 printfd (" Code 3: ",
 struct_3_ptr.z_data.z_code3);
 number := struct_3_ptr.z_data.z_code4;
 outline ':=' " Code 4: " -> @outptr;
 CALL NUMOUT (tempstr, number,10 , 5);
 outptr ':=' tempstr FOR 5 -> @outptr;
 CALL WRITEX ( output_fn
 , outline
 , $INT(@outptr - @outline)
 ) ;
 number := struct_3_ptr.z_data.z_code5;
 outline ':=' " Code 5: " -> @outptr;
 CALL NUMOUT (tempstr, number,10 , 5);
 outptr ':=' tempstr FOR 5 -> @outptr;
 CALL WRITEX ( output_fn
 , outline
 , $INT(@outptr - @outline)
 ) ;
 END
 ELSE IF (struct_1_ptr.z_struct_type = ZGPI_ST_INFO_4) THEN
 BEGIN
 buffer_size := $LEN (ZGPI_INFO_4_DEF);
 printf (" Structure type: Structure 4");
 printfd (" Code 1: ",
 struct_4_ptr.z_data.z_code1);
 printfld (" Code 2: ",
 struct_4_ptr.z_data.z_code2);
 printfd (" Code 3: ",
 struct_4_ptr.z_data.z_code3);
 END
 ELSE IF (struct_1_ptr.z_struct_type = ZGPI_ST_INFO_5) THEN
 BEGIN
 buffer_size := $LEN (ZGPI_INFO_5_DEF);
 printf (" Structure type: Structure 5");
 printfd (" Code 1: ",
 struct_5_ptr.z_data.z_code1);
 printfld (" Code 2: ",
 struct_5_ptr.z_data.z_code2);
 printfld (" Code 3: ",
 struct_5_ptr.z_data.z_code3);
 printfld (" Code 4: ",
 struct_5_ptr.z_data.z_code4);










