0

我想编辑程序,从而在gt_ugtyt由数据库表创建的表上循环。但是我有一个问题。

STDATE-STTIME-ENDDATE-ENDTIME(字段名称)

在此处输入图像描述

我想求和(ENDTIME-STTIME)。它的意思是“工作时间”。但是您可以看到与 (STDATE-STTIME-ENDDATE-ENDTIME) 相同的行。因为我们在我们的多重生产过程中给出了两次确认(这并不重要。请注意)。我必须使用独特的变量。

我定义了一个临时表gt_ugtyt_temp并编写了以下代码

SORT gt_ugtyt_temp BY endat stdat sttim entim.

DELETE ADJACENT DUPLICATES FROM gt_ugtyt_temp COMPARING endat stdat sttim entim.

但我想循环gt_ugtyt。我想读取和计算唯一行作为(STDATE-STTIME-ENDDATE-ENDTIME)。但我不想写

DELETE ADJACENT DUPLICATES FROM gt_ugtyt COMPARING endat stdat sttim entim.

因为其他代码正在使用 gt_ugtyt 上的所有行。

有没有类似的代码(这不是真正的代码:)):

READ UNIQUE ROWS FROM FROM gt_ugtyt COMPARING endat stdat sttim entim.
4

2 回答 2

2

我不清楚您想做什么,但是,您不能将行从本地临时表复制gt_ugtyt到本地临时表lt_ugtyt_unique_rows,然后对其进行所需的操作吗?

DATA:
  lt_ugtyt_unique_rows LIKE gt_ugtyt.

INSERT LINES OF gt_ugtyt INTO lt_ugtyt_unique_rows.

DELETE ADJACENT DUPLICATES FROM lt_ugtyt_unique_rows COMPARING endat stdat sttim entim.

*Sum what you need with lt_ugtyt_unique_rows
于 2012-12-14T16:00:25.113 回答
0

所以gt_ugtyt_temp包含唯一记录,并且gt_ugtyt包含所有记录,并且您想要汇总所有唯一记录gt_ugtyt

这个伪代码怎么样:

loop at gt_ugtyt_temp assigning [line]
    loop at gt_ugtyt where stdate = [line]-stdate sttime = [line]-sttime (etc)
        [sum all values either changing [line] or put them in a new table]
    endloop.
endloop
于 2012-12-14T06:54:23.960 回答