Ожидаемое продолжение JCL не получено

При запуске задания происходит сбой, JCL не запускается

173 IEFC621|  EXPECTED CONTINUATION NOT RECIEVED              
174 IEFC605|  UNIDENTIFIED OPERATIONAL FIELD

Код

173 //STEP1   EXEC SASDUP,WORKU=SYSDU,WORK='100,25'   
         OPTIONS='MACRO SORTDEV=SYSDU FS                                     X
174 //           SYSPARM=''''2016040120160430'''''

jcl
person Piotr    schedule 15.04.2016    source источник
comment
Запятая после WORK='100,25' ?   -  person MikeT    schedule 15.04.2016
comment
@MikeT, по крайней мере, частично. линия между 173 и 174 тоже выглядит странно.   -  person Bill Woodger    schedule 15.04.2016
comment
Можете ли вы опубликовать исходный JCL для этого шага и полное расширение из второго буферного файла для этого шага, вставив его из вашего эмулятора, а не перепечатывая.   -  person Bill Woodger    schedule 15.04.2016
comment
Хотя видеть, что именно происходит, может быть весело, общий совет будет заключаться в том, чтобы не вставлять что-то в столбец 72, чтобы сделать продолжение, а использовать запятую в качестве последней части фрагмента JCL, как предложил @MikeT, а затем иметь правильный фрагмент JCL следующий. Столбец 72 предназначен только для обратной совместимости и не подходит для нового кода. Если только стандарты вашего сайта не совсем глупые.   -  person Bill Woodger    schedule 15.04.2016
comment
@Bill re line между 173/174 выглядит странно. Я думаю, это потому, что он (если я правильно помню) был интерпретирован как данные в потоке, поскольку у него нет //, поэтому ему не был присвоен номер строки. X, опять же, если я правильно помню, должен быть в строке 173 в столбце 72. Однако согласитесь, что его использование следует осуждать. Я думаю, что строка 174 вызывает оба сообщения. Во-первых, из-за // (не нового типа/операционного поля), поэтому это продолжение, НО из-за отсутствия запятой для обозначения продолжения. Затем, потому что // это не тип или операционное поле.   -  person MikeT    schedule 16.04.2016
comment
@MikeT Я пробовал это. Дело в том, что сообщение generate-SYSIN поглощает строку (потому что это данные), так что вы просто видите сообщение для generate. Теперь я думаю, что X и начало не там, где должно было, привело к тому, что строка стала длинным расширением комментария 173, тогда 174 просто недопустимый JCL. У меня может быть попытка воссоздать это, но намного проще, если OP просто вставит то, что они сделали :-)   -  person Bill Woodger    schedule 16.04.2016


Ответы (2)



Итак, во-первых, отсутствует запятая после параметра "WORK='100,25'". Во-вторых, убедитесь, что ваша непрерывность оператора никогда не начинается после позиции (столбцов) 16. Однако она также может быть больше или меньше 16, в зависимости от вашего эмулятора (см. здесь ниже). В-третьих, проблема может заключаться в вашем приложении SASDUP. В-четвертых, очистить параметры OPTION и SORTDEV? Я не думаю, что это может так работать.

OPTIONS='MACRO SORTDEV=SYSDU FS                                     X

? Взгляните на SASDUP, он может помочь вам найти нужные параметры. Итак, параметры для SASDUP должны быть разделены запятыми и, если на следующей строке, должны начинаться с определенной позиции.

Попробуйте что-нибудь подобное.

//STEP1 EXEC SASDUP,WORKU=SYSDU,WORK='100,25',
  *here*     OPTIONS='MACRO',SORTDEV='SYSDUFSX'
//*here*     SYSPARM='2016040120160430'

Я далеко не эксперт, но я надеюсь, что это поможет вам.

person Adam Tremblay Lavoie    schedule 19.01.2017
comment
X - это пометка продолжения (конечно, не единственный способ. X (или что-то еще) более строгое, как подскажет вам Справочник по JCL. О проблеме четко сообщает номер строки интерпретатором JCL. Если указаны ОПЦИИ правильно, что бы это значило? Вы полностью и на 100% ошибаетесь в том, что строка продолжения не требует // в столбце 1. Попробуйте и удивитесь, почему система сгенерировала для вас оператор SYSIN DD. - person Bill Woodger; 19.01.2017
comment
отредактировано Спасибо за ваш комментарий. О чем я только думал...? конечно нужно // - person Adam Tremblay Lavoie; 19.01.2017