是否只能显示在相同的客户编号出现3次以上的结果。
我尝试使用一个变量(count = count + 1)。但它计算所有结果。
icount = kcount + 1.
display
cust-name cust-num state count
Cust Num Name State Count
1001 Apple NH 1
1001 Apple NH 2
1001 Apple NH 3
1002 Orange BD 6
1002 Orange BD 7
1002 Orange BD 8
1002 Orange BD 9
Expected
Cust Num Name State Count
1001 Apple NH 1
1002 Orange BD 2
答案 0 :(得分:2)
好吧,首先您可能需要一个像这样的临时表:
DEFINE TEMP-TABLE ttCust LIKE customer
FIELD count AS INTEGER.
然后,删除您发布的代码并添加以下代码:
FIND FIRST ttCust WHERE ttCust.cust-num = customer.cust-num NO-ERROR.
IF NOT AVAILABLE ttCust then DO:
CREATE ttCust.
BUFFER-COPY customer TO ttCust. /* Copies the whole record to your temp-table */
END.
ASSIGN ttCust.count = ttCust.count + 1.
在常规FOR EACH客户的END之后,添加以下内容:
FOR EACH ttCust where ttCust.count >= 3:
DISPLAY ttCust.cust-num ttCust.name ttCust.state ttCust.count.
END.
希望这会有所帮助。