23 TCP INTCLIEN ; Telnet Server 2023 TCP INTCLIEN ; Telnet Server for DEBUGGER
эти строки из секции PORT, они сами по себе не приводят к запуску какого-либо процесса, котторый обслуживал бы этот порт. в AUTOLOG запуска нет, у вас вообще TN3270 запущен? S TN3270 и опишите что получилось. И покажите картинку, которая получается после соединения wc3270 с портом 2023.
Сообщение отредактировал Gregory - Чт, 20.10.2016, 17:50
S TN3270 IEFC452I TN3270 - JOB NOT RUN - JCL ERROR $HASP396 TN3270 TERMINATED IEE122I START COMMAND JCL ERROR
а какая ошибка? и не запущен ли уже TN3270? поскольку порт 2023 обслуживается, подозреваю, что это так. Посмотрите на процедуру TN3270 и соответствующий файл конфигурации. Кстати, все, что происходит, явно не имеет никакого отношения к эмуляции... Выполните команду NETSTAT PORTLIST (команда TSO, т.е. в ISPF =6) и посмотрите, кто обслуживает порт 2023, и кто - 23.
Доброго времени суток. Я полагаю, что причина происходящего у Вас заключена в Hercules, а именно, в таблицах трансляции, которые он использует, так как вывод в файл происходит в ASCII, т.е. сам эмулятор перекодирует из EBCDIC в ASCII. Вам бы мог помочь параметр CODEPAGE конфигурационного файла, который управляет выбором таблиц перекодировки, если бы там была поддержка кириллических таблиц (1025/1251), но такой поддержки нет. Добавить в codepage.c поддержку 1025/1251 большой сложности не представляет. Может быть, кто-нибудь это уже сделал.
Но мне непонятно, зачем Вам вообще это нужно? Иными словами, зачем Вам вообще эмуляция локального принтера? Просто посмотреть вывод можно в SDSF, получить его в виде файла на PC - FTP (QUOTE SITE FILETYPE=JES), при этом проблем с кириллицей нет при использовании подходящей перекодировки.
Я привык за многие десятки лет работать с майнфреймом только удаленно , так что печатать на локальный принтер мне бы даже в голову не пришло) Даже в далекие времена СССР, когда майнфрейм находился не за тысячи километов в другой стране а всего лишь в другом здании, мы всячески избегали печати на локальный принтер, так как результаты доставлялись курьерами только на следующий день... Документы, конечно, тогда все же приходилось печатать на локальном принтере, но сегодня в этом нет совершенно никакой необходиости.
Так а что у Вас с tn3270? проблема разрешилась?
Сообщение отредактировал Gregory - Сб, 19.11.2016, 23:43
Но мне непонятно, зачем Вам вообще это нужно? Иными словами, зачем Вам вообще эмуляция локального принтера?
Доброго времени суток. Мне не нужно. Операторы привыкли план дня сначала вывести на печать и там отмечать крестиками ноликами выполненные пункты :-)
Цитата
получить его в виде файла на PC - FTP (QUOTE SITE FILETYPE=JES)
с этого места можно поподробнее? Мне как раз и нужно получить в виде файла. Раньше не практиковала. Через P.3.8 сохранить, затем скачать через Ftp клиент программу? или можно сразу на PC?
нет, пока с портами не получилось. Забросила. Главное, одна и та же TelNet программа в MF через 23 порт "заходит", а через 2023-нет. В Геркулес только через порт 2023. При этом все диски и настройки один к одному, за исключением ip адресов в tcpip.cnf и tcpip profile+ в HC IODF устройства CTC добавлены в Herculesе.
этого места можно поподробнее? Мне как раз и нужно получить в виде файла. Раньше не практиковала.Через P.3.8 сохранить, затем скачать через Ftp клиент программу? или можно сразу на PC?
попробую очень коротко - сохранять в SDSF ничего не нужно, и SDSF тоже не нужен - в командной строке ftp вводите quote site filetype=jes теперь ftp оперирует не с наборами данных и файлами z/OS UNIX, а с jes2. dir (ls) -- отображает статус заданий и очередь вывода (как это делает SDSF.ST) get jobid файлПК -- копирует вывод из очереди в файл ПК put файлПК -- стартует задание в z/OS без ожидания завершения get наборданных файлПК -- стартует задание в z/OS из набора данных ждет его завершение и передает вывод в файл. Время выполнения задания должно уложиться в значение указанное JESGETPUTTO
quote site filetype=seq -- переключает ftp к наборам данных и файлам
Чтобы вывод задания был доступен ftp, нужно обеспечить две вещи: 1. имя задания должно быть userid + 1 символ 2. MSGCLASS задания должен направлять вывод в очередь HOLD, т.е. это скорее всего в Вашей системе MSGCLASS=H
ftp можно использовать в пакетных файлах (.bat, cmd), и с помощью весьма простых bat файлов свести операции с z/OS к кликанию по иконкам и перетаскиванию их.
Если потребуется, завтра отвечу подробнее, у меня сейчас уже 0:44 (
Сообщение отредактировал Gregory - Вт, 22.11.2016, 00:44
rem batch to load WDWTPOSW table on remote system @echo off set server=xxx.com set userid=xxxxxxxx set passwd=xxxxxxx set table=WDWTPOSW echo user %userid% %passwd% > ftpput.tmp echo quote site sbdata=(500,1252) >> ftpput.tmp echo quote site recfm=VB lrecl=140 blksize=14000 >> ftpput.tmp echo quote site tracks pri=10 sec=10 >> ftpput.tmp echo del '%userid%.%table%.CSV' >> ftpput.tmp echo put %1 '%userid%.%table%.CSV' >> ftpput.tmp echo quote site filetype=jes >> ftpput.tmp echo put ftpput.bat >> ftpput.tmp echo quit >> ftpput.tmp ftp -s:ftpput.tmp -n %server% del ftpput.tmp exit //xxxxxxxx JOB ,'WDWTPOSW LOAD',REGION=0M,MSGCLASS=D,NOTIFY=&SYSUID //*--------------------------------------------------------------------* //* Load WSDIWWE.WDWTPOSW * //*--------------------------------------------------------------------* //TERM EXEC PGM=IKJEFT01,DYNAMNBR=20 //STEPLIB DD DISP=SHR,DSN=SYS1.DSNDB2A.SDSNLOAD //SYSTSPRT DD SYSOUT=* //SYSTSIN DD * DSN SYSTEM(DB2A) -TERM UTILITY(WDWTPOSW) END //LOAD EXEC PGM=DSNUTILB,PARM='DB2A,WDWTPOSW',REGION=0M //SYSIN DD * LOAD DATA INDDN SYSREC LOG NO RESUME YES NOCOPYPEND FORMAT DELIMITED EBCDIC CCSID(500,1208,1200) INTO TABLE WSDIWWE.WDWTPOSW ( MATNR CHAR, UNIT_SERIAL CHAR, SHIPDATE CHAR, REF_ID CHAR, PART_SERIAL CHAR, VBELN_O CHAR, VBELN_D CHAR, P_PONO CHAR, MFG_LOCN CHAR, CUST_CTRY_WE CHAR, SPARE CHAR ) //SYSPRINT DD DSN=&&LISTING,DISP=(NEW,PASS), // SPACE=(CYL,(10,50)),UNIT=SYSDA //SYSREC DD DSN=&SYSUID..WDWTPOSW.CSV,DISP=SHR,DCB=BUFNO=30 //SYSERR DD DSN=&&ERR,DISP=(NEW,DELETE), // SPACE=(CYL,(10,50)),UNIT=SYSDA //SYSDISC DD DSN=&&DISC,DISP=(NEW,DELETE), // SPACE=(CYL,(10,50)),UNIT=SYSDA //SYSMAP DD DSN=&&MAP,DISP=(NEW,DELETE), // SPACE=(CYL,(10,50)),UNIT=SYSDA //SYSUT1 DD SPACE=(CYL,(10,50)),UNIT=SYSDA //SORTOUT DD SPACE=(CYL,(10,50)),UNIT=SYSDA //UTPRINT DD SYSOUT=* // IF (LOAD.ABEND = TRUE ! LOAD.RC > 4) THEN //FAILURE EXEC PGM=IKJEFT01,DYNAMNBR=20 //LISTING DD DSN=&&LISTING,DISP=(OLD,PASS) //SYSTSIN DD * TRANSMIT xxx.user DDNAME(LISTING) MSGDD(MESSAGE) NONOTIFY //SYSTSPRT DD SYSOUT=* //MESSAGE DD * Subject: Table WDWTPOSW not loaded See attached file for details // ELSE //SUCCESS EXEC PGM=IKJEFT01,DYNAMNBR=20 //LISTING DD DSN=&&LISTING,DISP=(OLD,PASS) //SYSTSIN DD * TRANSMIT xxx.user1 DDNAME(LISTING) MSGDD(MESSAGE) NONOTIFY //SYSTSPRT DD SYSOUT=* //MESSAGE DD * Subject: Table WDWTPOSW successfully loaded See attached file for details // ENDIF // IF (LOAD.RUN = TRUE) THEN //SYSOUT EXEC PGM=IEBGENER //SYSPRINT DD SYSOUT=* //SYSUT1 DD DSN=&&LISTING,DISP=(OLD,DELETE) //SYSUT2 DD SYSOUT=*, // SPACE=(CYL,(10,50)),UNIT=SYSDA //SYSIN DD DUMMY // ENDIF //
пользователь этой процедуры готовит бизнес-данные в MS excel или Open Office Calc, затем сохраняет их в файл CSV (comma-separated values) и перетаскивет этот файл на иконку, связанную с этой процедурой (имя файла будет передано windows как параметр).
Процедура делает следующее - устанавливает ftp соединение с удаленной системой z/OS - передает файл данных (CSV) в набор данных userid.WDWTPOSW.CSV; - передает задание для загрузки этих данных - стартует это задание, выполняя загрузку данных в таблицу - отправитель получает письмо c результатом загрузки
Предполагается, что имя процедуры ftpput.bat не изменяется.
Здесь используется довольно простая уловка, чтобы не храниить задание в отдельном файле - задание включено в сам bat-файл после команды exit. Это не мешает bat-файлу нормально выполняться, а строки самого bat-файла, которые отправляются в jes2 как часть задания тоже ничему не мешают, так как jes2 игнорирует все данные до // JOB. Делать так совершенно не обязательно)
Чтобы письмо могло быть доставлено адресату, в z/OS должна быть сконфигурирована и активна служба SMTP, включая SMTP/NJE gateway.
В задании некоторые идентификаторы заменены условными по понятным соображениям.
Более того, можно использовать макро для Excel или Calc, чтобы выполнить все это прямо из Excel/Calc. Так что можно работать с z/OS используя только ftp, и обходится вообще без pc3270/telnet. Прикладные программисты могут использовать визуальный ftp клиент, такой как Filezilla или BlueZone, и мне даже известна одна разработка, выполненная таким способом - только ftp и ничего кроме него. Конечно, это далеко не RD/z, но зато совершенно бесплатно
Сообщение отредактировал Gregory - Ср, 23.11.2016, 23:51
Добавлено (03.08.2018, 11:59) --------------------------------------------- Кто нибудь знает, как по FTP отправить задание на выполнение на СВМ v.4.13 (VM/370), по аналогии, как делает Gregory?