39 lines
1.2 KiB
Plaintext
39 lines
1.2 KiB
Plaintext
COMPILE SUBROUTINE XLATE_CONV( ConvType, DataIo, SubrLabel, ReturnedValue )
|
|
|
|
/*
|
|
DataIo will contain the data to be used as the key
|
|
SubrLabel will consist of three parts: PART1*PART2
|
|
PART1 = the tablename to XLATE from
|
|
PART2 = the columnname or number to retrieve
|
|
*/
|
|
begin condition
|
|
pre:
|
|
post:
|
|
end condition
|
|
$insert logical
|
|
|
|
equ valid$ to 0 ;* successful
|
|
equ invalid_msg$ to 1 ;* bad data - print error message window
|
|
equ invalid_conv$ to 2 ;* bad conversion - " "
|
|
equ invalid_nomsg$ to 3 ;* bad but do not print the error message window
|
|
|
|
ReturnedValue = DataIo ; * save off data input by user
|
|
status() = valid$ ; * assume successful conversion
|
|
|
|
begin case
|
|
case ConvType = 'ICONV'
|
|
* do nothing, there is no ICONV
|
|
ReturnedValue = DataIo
|
|
case ConvType = 'OCONV'
|
|
convert '*' to @fm in SubrLabel
|
|
TableName = SubrLabel<1>
|
|
ColumnName = SubrLabel<2>
|
|
ReturnedValue = xlate( TableName, ReturnedValue, ColumnName, 'X')
|
|
IF ReturnedValue = '' THEN ReturnedValue = DataIo ;* Added by JCH 12/2/2004
|
|
case otherwise$
|
|
ReturnedValue = ''
|
|
status() = invalid_conv$
|
|
end case
|
|
return
|
|
|