Ошибка копирования исходного кода в IFS в виде текста, ошибка отображения - PullRequest
0 голосов
/ 21 января 2019

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

Я нашел и работал с программой CL, которая прекрасно работает для многих файлов, которые я хочу. Вот что он делает:

PGM        PARM(&file &LIBRARY)
             dcl        &file  *char 10
             dcl        &library *char 12
             dcl        &docname *char 12
             DCLF       FILE(QTEMP/MEMBERS)

             monmsg     cpf0000

             DSPFD      FILE(&LIBRARY/&FILE) TYPE(*MBRLIST) +
                          OUTPUT(*OUTFILE) OUTFILE(QTEMP/MEMBERS)


 Loop:       Rcvf
             MONMSG     MSGID(CPF0864) EXEC(GOTO CMDLBL(EXIT))


             CPYTOIMPF  FROMFILE(&LIBRARY/&FILE &MLNAME) +
                          TOSTMF('/BACKUP/SOURCE/' *TCAT &LIBRARY +
                          *TCAT '/' *TCAT &FILE *TCAT '/' *TCAT +
                          &MLNAME) MBROPT(*REPLACE) +
                          STMFCODPAG(*PCASCII) RCDDLM(*CRLF) +
                          DTAFMT(*FIXED)


             goto       loop


     Exit:
             RCLRSC
             ENDPGM                                                     

Опять же, это работает для нескольких моих библиотек, а также для файлов. Однако у меня есть некоторые, которые дают мне ошибку сопоставления данных и просто будут постоянно уведомлять меня, что они обертываются, пока я не закончу работу. Также другие файлы в той же библиотеке «работают», где она передает данные, однако текст не читается, поэтому в основном бесполезен. Только с этой библиотекой я столкнулся с этой проблемой.

Я искал ссылки, но вся информация, которую я нашел, не была достаточно конкретной для моей ситуации.

Любая идея, почему эти элементы dspf, pf, rpgle, clp, txt и т. Д. Отличаются. Еще одна вещь, которую я получаю, когда я бегу, это:

Primary group of object QCPEXTEMPS in QTEMP type *USRSPC changed.
Primary group of object QACP000135 in QTEMP type *USRSPC changed.
Primary group of object QACEXFLD12 in QTEMP type *USRSPC changed.

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

Data mapping error on member
Data mapping error on member
Data mapping error on member
Data mapping error on member

Если I F1 на «Ошибка отображения данных на элементе XXXX», я получаю это

Cause . . . . . :   A data mapping error occurred on field                    
  file_member_1.SRCDAT in record number 1, record format *FIRST, member   
  number 1, in member xxxx file xxxx in library xxxx, because of 
  error
  code 1. The error code meanings follow:                                     
    1 -- There is data in a decimal field that is not valid.    

Это не имеет смысла для меня, потому что я думал, что я просто "скопировал", "вставил" в текстовый файл на IFS.

1 Ответ

0 голосов
/ 22 января 2019

Я попытался использовать CPYTOIMPF с неверными данными в полях SRCSEQ и SRCDAT, и я получил эту ошибку.

Но CPYTOSTMF работал нормально, и похоже, что он дает тот же результат для исходного файла.

...