如何在 temp table 中给整数字段赋空值?

How to give blank value to integer field in temp table?

我写了一个简单的查询,但想在临时 table 中向整数字段显示空白值。如您所知,如果整数字段中没有数据,那么 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

所以当我将这些数据存储到临时 table White car QTY 应该是空白而不是 0。

注意 - 我无法更改 Temp-Table 字段类型。

在这些字段上使用格式选项。

DISPLAY 0 FORMAT ">>>,>>>" SKIP 
        1 FORMAT ">>>,>>>" SKIP 

这可能会满足您的需求。使用未知值是最接近 NULL 的事情。

DEFINE TEMP-TABLE tt_data
   FIELD CarColour AS CHARACTER
   FIELD Qty       AS INTEGER   init ?.