Я написал простой запрос, но хочу показать пустое значение целочисленному полю во временной таблице. Как вы знаете, если в целочисленном поле нет данных, то значением по умолчанию является 0, но наш клиент говорит, что оно должно быть пустым, а не значением по умолчанию 0.
DEFINE TEMP-TABLE tt_data
FIELD CarColour AS CHARACTER
FIELD Qty AS INTEGER.
FOR EACH <db> NO-LOCK WHERE <db.field> = "White Car" AND <db.field> = "Red Car":
DISPLAY <db.field1> <db.field2>.
END.
/* Note <db.field1> is CHARACTER <db.field2> is INTEGER */
/* DISPLAYED VALUE IS */
WHITE 0 /* There is no qty for this white car so its showing default value 0 */
RED 100
Поэтому, когда я сохраняю эти данные во временной таблице, поле White car QTY должно быть пустым, а не 0.
Примечание. Я не могу изменить тип поля Temp-Table.
Используйте опцию FORMAT для этих полей.
DISPLAY 0 FORMAT ">>>,>>>" SKIP
1 FORMAT ">>>,>>>" SKIP
Это может дать вам то, что вам нужно. Использование неизвестного значения ближе всего к NULL.
DEFINE TEMP-TABLE tt_data
FIELD CarColour AS CHARACTER
FIELD Qty AS INTEGER init ?.