OSI/MHS Gateway Programmatic Interface (GPI) Programming Guide
TAL Program Example
OSI/MHS Gateway Programmatic Interface (GPI) Programming Guide—424822-001
A-35
 ) ;
 END;
 OM_S_TELETEX_STRING ,
 OM_S_UTC_TIME_STRING ,
 OM_S_IA5_STRING ,
 OM_S_PRINTABLE_STRING ->
 BEGIN
 outline ':=' print_data[counter].text FOR 32 -> 
 @outptr;
 -- Need to take care string length > 100 later
 outptr ':='
 descriptor_list[exist].value.z_string.elements FOR
 $INT(descriptor_list[exist].value.z_string.length)
 -> @outptr ;
 CALL WRITEX ( output_fn
 , outline
 , $INT(@outptr - @outline)
 ) ;
 END;
 OM_S_INTEGER ->
 BEGIN
 outline ':=' print_data[counter].text FOR 32 -> 
 @outptr;
 CALL print_long_int 
 (descriptor_list[exist].value.integer,
 output_width, outptr);
 @outptr := @outptr[output_width];
 CALL WRITEX ( output_fn
 , outline
 , $INT(@outptr - @outline)) ;
 END;
 OM_S_ENUMERATION ->
 BEGIN
 outline ':=' print_data[counter].text FOR 32 -> 
 @outptr;
 CALL print_long_int (
 descriptor_list[exist].value.enumeration,
 output_width, outptr);
 @outptr := @outptr[output_width];
 CALL WRITEX ( output_fn
 , outline
 , $INT(@outptr - @outline)) ;
 END;
 END; -- case
 END -- then
 ELSE
 BEGIN
 --------------------------------------------------------------
 -- NOTE: This ELSE part only exists to show the use of the --
 -- function GPI_OM_READ_. --
 --------------------------------------------------------------
 string_length := $UDBL (FIRST_LINE_LEN);
 string_offset := 0D;
 local_rc := GPI_OM_READ_
 ( read_object_id,
 IM_T_TEXT, -- Attribute type
 0D, -- Value position










