2014-10-09 4 views
0
//name JOB 1,NOTIFY=&SYSUID    
//sort01 exec pgm=sort      
//sysout dd sysout=*       
//sysprint dd sysout=*      
//sysudump dd sysout=*      
//sortin dd disp=shr,dsn=public.data(ascii) 
//sortout dd sysout=*      
//sysin dd *         
    sort fields=(1,1,ch,a)    
+0

Что означает «не работает»? – AndySavage

+0

@ AndySavage в этом случае это на самом деле означает что каждая буква неверна, кроме тех, что указаны в верхнем регистре, и что каждая отдельная строка была отклонена с одним или несколькими дополнительными сообщениями об ошибках, на которые не ссылаются. Фактический кодовый код сообщения означает, что «работа не работала из-за ошибки JCL» :-) –

ответ

1

Сообщение вы получаете, IEFC452I text - JOB NOT RUN - JCL ERROR

Значение text будет ваш идентификатор пользователя плюс символ (ы) вы ввели, когда вы спросили после ВВЕСТИ.

Если вы посмотрите на файл два вашего вывода, вы увидите пролив других сообщений.

Ваша проблема в том, что JCL может быть записан только в верхнем регистре.

Это конкурс или курс? Несколько дней назад у нас была точно такая же JCL (другая проблема).

Если вы измените все на верхний регистр (в строке номера номера uc99 в первой строке, и он будет «задерживать» следующие 99 строк (что вам нужно выяснить, сколько) и если ваш набор данных существует, вы будет хорошо идти.

Как и другой вопрос, на этапе СНП, SYSYDUMP и SYSPRINT не имеют значения. Удалить эти строки.

Также обратите внимание, что у вас есть карта СНП управления, которая сама по себе не является JCL , но также должно быть в верхнем регистре.

Смежные вопросы