如何按字母顺序排序消息

时间:2011-09-06 06:12:02

标签: sorting ibm-midrange iseries-navigator

wrkmsg - 如何按字母顺序对邮件进行排序?

有没有办法以我喜欢的方式对这些邮件进行排序?

2 个答案:

答案 0 :(得分:3)

我假设您要对存储在消息文件中的消息定义进行排序,而不是对消息队列的当前内容进行排序。您可以创建一个数据库表(即文件)来接收消息描述,然后根据这些记录执行任何操作。

通常你可以DSPMSGD到打印文件。但是我们将创建一个物理文件或表,并将DSPMSGD命令的输出覆盖到我们的文件中。出于我们的目的,前三个记录是垃圾,我们将使用CPYF从工作文件中将它们丢弃到我们的最终文件中。

通过将您的库设置为当前来简化操作。

CHGCURLIB mylib

您可以在DDS中定义文件,但我将在SQL中进行演示。

STRSQL

创建工作文件和结果文件:

CREATE TABLE qtemp/workfile
( x1      char(1),
  msgid   char(7),
  sev     char(2),
  msgtxt  char(132)
)

CREATE TABLE myfile
( msgid   char(7),
  sev     char(2),
  msgtxt  char(132)
)

退出SQL以返回命令行。

DSPMSGD命令的输出文件覆盖到您的工作文件,并收集您的数据。

OVRDBF QPMSGD workfile
DSPMSGD RANGE(*FIRST *LAST) MSGF(some_msgf) 
    DETAIL(*BASIC) OUTPUT(*PRINT)
CPYF workfile myfile MBROPT(*replace) 
    FROMRCD(4) FMTOPT(*MAP *DROP)

现在,您可以回到SQL,看看您的劳动成果。

STRSQL

SELECT *
 from myfile
 order by msgtxt

答案 1 :(得分:0)

不是我见过的。它们出现在日期时间顺序中。我确信它们存储在您可以查询它的某个物理文件中,但我通常会尽快清除我的消息。