When an elementary argument of the operator
EXACT is converted to an incompatible data type, the argument must contain a value suitable
for the target type as shown in the following tables. This avoid loss of values and provides a valid value for the target type.
Numbers from the value range of the target type that do not have to be rounded. Inappropriate valuesraise exceptions from the class CX_SY_CONVERSION_ROUNDING or CX_SY_CONVERSION_OVERFLOW.
Numbers from the value range of the target type that do not have to be rounded. In arguments of type c or string, appropriate numberrepresentations determined after applying theconversion rules are permitted if their valuelies within the value range and does not have to be rounded. Arguments of type cor string are also permitted if they contain only blanks or empty strings.Arguments of type n can contain as many digits after leading zeros that are permitted within the value range. In arguments of types d and t, allvalid date and time specifications arepermitted; however they cannot be assigned to the target types b and s. Inappropriate values raise exceptions from the class CX_SY_CONVERSION_ROUNDING or CX_SY_CONVERSION_OVERFLOW.
Integers with a maximum of 15 digits. In arguments of type i(b, s), all values are permitted. In argumentsof types p, decfloat16, and decfloat34,a maximum of 15 decimal digits, but no decimal places are permitted. Inappropriate values raise an exception from class CX_SY_CONVERSION_INEXACT_FLTP.
Integers with a maximum of 15 digits. In arguments of type c or string, numbers can be expressed inscientific notation.The values are integers with a maximum of 15 digits. Arguments of type cor string are also permitted if they contain only blanks or empty strings.Arguments of type n can contain up to 15 digits after leading zeros. In arguments of types d and t, allvalid specified dates and times are permitted.Inappropriate values raise an exception from class CX_SY_CONVERSION_INEXACT_FLTP.
Numbers for which the result from the conversionto type c is not longer than the target type; the result cannot be rounded.Positive signs represented as blanks are ignored. Inappropriate values raise exceptions from classes CX_SY_CONVERSION_OVERFLOW or CX_SY_CONVERSION_ROUNDING.
Character strings not longer than the target type. In arguments of type c,trailing blanks are ignored. In arguments of type string, no characters areignored, including trailing blanks. Inappropriate values raise an exception from class CX_SY_CONVERSION_DATA_LOSS.
Byte chains for which the result from the conversionto type c is not longer than the target type. Inappropriate values raise an exception from class CX_SY_CONVERSION_DATA_LOSS.
Positive integers including 0, in which the number of digits does not exceed the length of the targettype. Inappropriate values raise exceptions from classes CX_SY_CONVERSION_OVERFLOW or CX_SY_CONVERSION_ROUNDING.
A closed sequence of digits that cannot be longer than the target type (excluding the leading zeros).Arguments of type c and string can contain additionalleading and trailing blanks. Arguments of type d and tcannot contain blanks and the target type must have the same length as the source fields. Inappropriatevalues raise exceptions from classes CX_SY_CONVERSION_NO_NUMBER or CX_SY_CONVERSION_OVERFLOW.
Positive integers between 0 and 3652060 (which corresponds to the date 12/31/9999). Inappropriatevalues raise exceptions from classes CX_SY_CONVERSION_OVERFLOW or CX_SY_CONVERSION_ROUNDING.
A left-aligned valid date specificationwith the format "yyyymmdd". Arguments of type n and stringcan contain these eight digits only. Arguments of type c can also containtrailing blanks. Inappropriate values raise an exception from class CX_SY_CONVERSION_NO_DATE.
Positive integers between 0 and 86399 (which corresponds to the time 23:59:59). Inappropriate valuesraise exceptions from classes CX_SY_CONVERSION_OVERFLOW or CX_SY_CONVERSION_ROUNDING.
A left-aligned valid time specifiedwith the format "hhmmss". Arguments of type n and stringcan contain only these six digits. Arguments of type c can also contain trailingblanks. Inappropriate values raise an exception from class CX_SY_CONVERSION_NO_TIME.
An even number of characters between "0" and "9" and "A" and "F" in a closed sequence. The numberof bytes represented must correspond exactly to the length of the target type. Other characters arenot permitted; the only exception is that trailing blanks in arguments of type care ignored. Arguments of types n, d, and t are not permitted. Inappropriate values raise exceptions from classes CX_SY_CONVERSION_SRC_TOO_SHORT,CX_SY_CONVERSION_DATA_LOSS, or CX_SY_CONVERSION_NO_RAW.
A byte chain that has exactly the same length as the target type. Inappropriate values raise exceptionsfrom classes CX_SY_CONVERSION_SRC_TOO_SHORT or CX_SY_CONVERSION_DATA_LOSS.
An even number of characters between "0" and "9" and "A" and "F" in a closed sequence. Other charactersare not permitted; the only exception is that trailing blanks in arguments of type care ignored. Arguments of types n, d, and t are not permitted. Inappropriate values raise an exception from class CX_SY_CONVERSION_NO_RAW.