mcf_tb_extract_u — Extract data from relational table (Fortran API)
subroutine mcf_tb_extract_u(rt,key,type,size,buffer,status) mcf_rtable rt character*(*) key character*(*) type integer*4 size void buffer(*) integer*4 status subroutine mcf_tb_extract_char_u(rt,key,cbuffer,status) mcf_rtable rt character*(*) key character cbuffer*(*) integer*4 status
mcf_tb_extract_u extracts data of type I,
J, E, F, C, Z from a table residing in the table buffer.
mcf_tb_extract_char_u extracts character
strings (data of type K). These functions perform the same operation
as mcf_extract but issuing a warning rather
than raising an error if key is not found.
rtRelational table identifier (input).
keyData access keyword (input). The string may not exceed the maximum key name length.
typeData type to be read (input). Must be one of I, J, E, F, C, Z.
sizeNumber of data elements of key to be
extracted from the table (input, output). The first
size data elements will be extracted from
key. If size is set to
0, all elements of key are extracted.
mcf_tb_extract returns the effective
number of data elements read in
size.
bufferBuffer for storing the data elements to be extracted from the table (input). The buffer must correspond to the expected data type, i.e for I data mcf_i4, for J data mcf_i8, for E data mcf_r4, for F data mcf_r8, for C data mcf_c4, and for Z data mcf_c8. The character string buffer cbuffer will contain data of type K.
statusStatus code returned (output). Upon successful
completion of the operation, the status value 0 is returned. A
negative value is returned, if an error has been detected. A
positive value is returned, if key has not
been found.
The mcf_tb_extract_u subroutines do not
check if the buffer cbuffer is large enough to
store the information. It is up to the application to verify this:
mcf_tb_get_key_att
returns the size of key.