Команда as400 crtcmd не создана в библиотеке

Я делаю свою собственную команду, и пока код cl, обрабатывающий код .cmd, прекрасно работает сам по себе. Я могу вызвать его и отправить параметры, и он делает именно то, что ему нужно, поэтому я предполагаю, что ошибка должна быть связана с .cmd:

CMD 'DISPLAY SYSTEM LEVEL (DSPSYSLVL) NADIA S.C.'
PARM KWD(OUTPUT)
MIN(1)
TYPE(*CHAR) LEN(8)
RSTD(*YES)
VALUES(*MSGLINE *DISPLAY)
PROMPT('OUTPUT FOR SYSTEM LEVEL')

PARM KWD(SOLUTION)
TYPE(*CHAR) LEN(4)
RSTD(*YES)
VALUES(*YES *NO)
DFT(*NO)
PROMPT('TELL ME HOW YOU DID IT')

PARM KWD(SHOWCMD)
TYPE(*CHAR) LEN(4)
RSTD(*YES)
VALUES(*YES *NO)
DFT(*NO)
PROMPT('SHOW COMMAND')

когда я запускаю crtcmd и даю соответствующие имена файлов, я получаю сообщение «Команда DSPSYSLVL не создана в библиотеке [имя библиотеки]». с сообщением CPF0201.

Я все еще довольно новичок во всей системе, и я действительно не уверен, в чем может быть проблема. Журнал заданий также не дает никакой новой информации...


person NOFNe    schedule 16.07.2014    source источник
comment
Компилятор CRTCMD должен создать буферный файл, в котором будут перечислены все ошибки, с которыми он столкнулся.   -  person WarrenT    schedule 17.07.2014
comment
Сообщение об ошибке CPF0201 содержит раздел восстановления. Что вы обнаружили, следуя его инструкциям?   -  person user2338816    schedule 18.07.2014


Ответы (1)


Это может быть просто проблема с транскрипцией, но первое, что бросается в глаза, — это многострочный формат без символа продолжения (+):

CMD 'DISPLAY SYSTEM LEVEL (DSPSYSL'
PARM KWD(OUTPUT) +
MIN(1) + 
TYPE(*CHAR) LEN(8) +
RSTD(*YES) +
VALUES(*MSGLINE *DISPLAY) +
PROMPT('OUTPUT FOR SYSTEM LEVEL')

PARM KWD(SOLUTION) +
TYPE(*CHAR) LEN(4) +
RSTD(*YES) +
VALUES(*YES *NO) +
DFT(*NO) +
PROMPT('TELL ME HOW YOU DID IT')

PARM KWD(SHOWCMD) +
TYPE(*CHAR) LEN(4) +
RSTD(*YES) +
VALUES(*YES *NO) +
DFT(*NO) +
PROMPT('SHOW COMMAND')

Каждый PARM представляет собой единый объект и должен быть «продолжен», если разбит на несколько строк.

Команда CRTCMD должна создать буферный файл, содержащий дополнительные сведения об ошибках.

EDIT: Максимальная длина приглашения CMD составляет 30 символов.

person James Allman    schedule 16.07.2014
comment
Идеальный! Продолжение персонажа было именно проблемой, большое спасибо. - person NOFNe; 19.07.2014