BEG AT / END AT Statements
Overview
These statements presume that the designer has specified a field of the appropriate type or an appropriate Literal value for the Key that will be referenced on a related READNEXT or BEG READ statement.
- RAW operand:
- No change from the current behavior.
- Group operand:
- No change from the current behavior.
- UNICODE or NATIONAL operand:
- No change from the current behavior.
- Must allow for length to be longer.
- Literal operand:
- All literal values are considered to be RAW alpha values and encoding of 8859-15.
- Unicode escape sequences are NOT honored.
- Literal values are entered as a string of single-byte characters with an 8859-15 (RAW Alpha) encoding. The string of bytes representing the literal characters is later used as a constraint for the key specified on a corresponding BEG READ or READNEXT statement. No conversion or transcoding of a literal BEG AT/END AT value is performed regardless of the type of key field specified on the corresponding BEG READ/READNEXT statement. This means that literal values on a BEG AT/END AT statement should probably only be used when the key field on the corresponding BEG READ/READNEXT statement is a RAW alpha field.
Test Plan
- Test with Raw operands
- Test with Group operands
- Test with UNICODE and NATIONAL operands
- Test literal operands with Raw keys
- Test literal operands with National/Unicode keys (should be error)
Bugs
- Errors not not thrown when literals are used with Unicode/National keys * Not a bug * Functions as designed.
- Records not read when using a group field that includes Unicode characters. * Fixed * Tested May 23 engine