OSI/MHS Gateway Programmatic Interface (GPI) Programming Guide
TAL Program Example
OSI/MHS Gateway Programmatic Interface (GPI) Programming Guide—424822-001
A-43
actual_number);
-- Print or name
max_print_def := 6D;
f_descriptor_list[0].type := MH_T_ADMD_NAME;
f_descriptor_list[1].type := MH_T_COUNTRY_NAME;
f_descriptor_list[2].type := MH_T_PRMD_NAME;
f_descriptor_list[3].type := MH_T_ORGANIZATION_NAME;
f_descriptor_list[4].type := MH_T_ORGANIZATIONAL_UNIT_NME_1;
f_descriptor_list[5].type := MH_T_SURNAME;
print_arr[0].type := MH_T_ADMD_NAME;
print_arr[1].type := MH_T_COUNTRY_NAME;
print_arr[2].type := MH_T_PRMD_NAME;
print_arr[3].type := MH_T_ORGANIZATION_NAME;
print_arr[4].type := MH_T_ORGANIZATIONAL_UNIT_NME_1;
print_arr[5].type := MH_T_SURNAME;
print_arr[0].text ':=' " Admd Name: ";
print_arr[1].text ':=' " Country Name: ";
print_arr[2].text ':=' " Prmd Name: ";
print_arr[3].text ':=' " Organization Name: ";
print_arr[4].text ':=' " Organization Unit Name: ";
print_arr[5].text ':=' " Surname: ";
printf (" Originator Name");
CALL print_object ( MH_T_ORIGINATOR_NAME,
max_print_def,
print_arr,
f_descriptor_list,
descriptor_list,
actual_number);
-- Print message rd
-- GPI_OM_LIST_ is needed to get the values from the multivalued
-- attribute.
local_rc := GPI_OM_LIST_ ( root_id,
MH_T_RECIPIENT_DESCRIPTORS,
ZGPI_POSITION_AT_BEGIN,
MAX_DESCRIPTORS_32,
descriptor_list_3,
total_number,
actual_number,
string_buffer,
STRING_BUFFER_LEN,
actual_string_len,
total_string_len );
IF (( local_rc = OM_RC_SUCCESS ) OR
( local_rc = ZGPI_RC_WARNING )) THEN
BEGIN
IF ( local_rc = ZGPI_RC_WARNING ) THEN
printfd (" WARNING! number: ", local_rc );
-- Print the two multivalued attributes
FOR counter := 0 TO $int( (actual_number - 1D) ) DO
BEGIN
local_rc := GPI_OM_EXAMINE_
( descriptor_list_3[counter].value.object.object,
OM_TRUE, -- Values returned
0D, -- First element
MAX_DESCRIPTORS_32,
descriptor_list_2,
total_number_2,