Как сортировать сообщения по алфавиту - PullRequest
1 голос
/ 06 сентября 2011

wrkmsg - Как сортировать сообщения по алфавиту?

Есть ли какой-нибудь возможный способ сортировки этих сообщений так, как мне нравится, чтобы они были?

Ответы [ 2 ]

3 голосов
/ 07 сентября 2011

Я предполагаю, что вы имеете в виду, что вы хотите отсортировать определения сообщений, хранящиеся в файле сообщений, а не текущее содержимое очереди сообщений. Вы можете создать таблицу базы данных (т.е. файл), чтобы получать описания сообщений, а затем делать с этими записями все, что захотите.

Обычно вы можете 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
0 голосов
/ 06 сентября 2011

Не то, что я когда-либо видел. Они появляются в порядке даты и времени. Я уверен, что они хранятся в каком-то физическом файле, где вы можете запросить его, но я обычно очищаю свои сообщения как можно скорее.

...