Как удалить сообщения DFSORT из SYSOUT

Есть несколько сообщений от DFSORT, который внутренне используется программой COBOL, имеющей несколько операций сортировки. Я хотел бы удалить эти сообщения DFSORT и оставить только сообщения из программы COBOL.


person cobp    schedule 07.04.2015    source источник


Ответы (2)


У вас есть три варианта.

Используйте параметр компилятора OUTDD(ddname) Enterprise COBOL, чтобы изменить DDName, используемое для вывода DISPLAY.

Используйте DFSPARM, как вы обнаружили, для изменения DDName SORT, используемого для своих сообщений, когда он вызывается (вызывается) из программы (как при использовании глаголов SORT или MERGE в COBOL).

Используйте специальный регистр SORT-MESSAGE.

Если ваш SORT был автономным, вы также можете изменить файл сообщений SORT с помощью оператора управления OPTION, OPTION MSGDDN=ddname. DFSPARM — это способ разрешить предоставление OPTION для вызванного SORT/MERGE.

У вас также есть языковая среда, которая может использовать SYSOUT во время выполнения модуля для сообщений из языковой среды (ошибки времени выполнения, прерывания, запрошенная информация). Существует опция времени выполнения MSGFILE(ddname), позволяющая LE использовать другое ddname.

Самое простое решение вашей проблемы — использовать параметр компилятора OUTDD(ddname). Тогда вам не придется беспокоиться о DFSORT (или SyncSORT на другом сайте) или языковой среде.

Вы можете подавить все сообщения DFSORT с помощью параметра MSGPRT. Вы можете по-разному обрабатывать несколько вызовов DFSORT, указав DD DFSPARM с FREE=CLOSE для каждого вызова.

person Bill Woodger    schedule 08.04.2015

Сообщения DFSORT программы COBOL (с использованием внутренней сортировки) можно перенаправить, указав ddname MSGDDN на шаге выполнения программы в JCL. например


    //DFSOUTDD        DD DISP=SHR,DSN=XXX.DFSOUT
    //DFSPARM         DD *
      MSGDDN=DFSOUTDD
    /*

person cobp    schedule 08.04.2015