z/OS provides sample ISPF primary option menus with SDSF and other elements and features already added, as described in the program directory. If you want to add SDSF to your own customized ISPF menu, you should add text to the body for the SDSF menu option, for example:
S SDSF System Display and Search Facility
and update the ZSEL statement in the PROC section, as shown in the following except. The lines added for SDSF are shown in bold.
If you want to be able to invoke SDSF as a command from within ISPF, you can add SDSF to the ISPF command table. For example, you could add this entry:
Verb T Action SDSF 0 SELECT PGM(ISFISP) NEWAPPL(ISF) SCRNAME(SDSF)
Кстати, админу. Мне кажется, будет лучше если в http://s390soft.org.ru/.s/src/css/341.css в блок .codemessage начинающийся с 322 строки, добавить: font-family: Courier, "Courier New", monospace; Если, конечно, движок юкоза позволяет править файлы, я просто не в курсе. Сорри за оффтоп.
Админ не будет порицать за оффтоп, поскольку у админа просто не доходили руки это сделать. Хотя не всем моноширинный шрифт может понравится, мы же не только фрагменты консолей приводим. В общем, сделал. Посмотрим.
Как я вижу из скриншота, e IBMUSERA процедура загрузки ISPFPROC. Надо посмотреть, какие еще в системе существуют процедуры загрузки пользователей TSO. Возможно, в другой процедуре будет панель запуска SDSF. В SYS1.PROCLIB(JES2) см пар-р PROC01 DD - Библиотеки, где нужно искать процедуры пользователей. =6 (Командная строка) SR CLASS(TSOPROC) - узнать, какие процедуры пользователей TSO Затем в самой процедуре ISPFPROC Вы найдете DD, где описываются библиотеки панелей. Там и надо искать ISR@PRIM
SDSF запущен. Но в меню его, возможно, нет? Кстати, он может прятаться на втором и далее уровне... Желательно поискать по всем меню.
Другой путь. Но не исключает первого. В ISPF/PDF введи команду TSO ISRDDN. Должен появиться экран "Current Data Set Allocations". Там найди DDName ISPPLIB. Напротив имени введи "В". в новом экране введи команду "L ISF". Должен появиться список: ISF@PRI4 ISFAACT ISFAARR ISFABKS и т.д.
Если есть - значит панели распределены. Ну а если нет... В колонке Lib заодно можно посмотреть, где в конкатенации лежат панельки.
Сам SDSF (точнее, связь ISPF с сервером) инициируется командой: ACTION RUN(ISRROUTE) PARM('SELECT PGM(ISFISP) NOCHECK NEWAPPL(ISF)') Она выдаётся из какой-то панельки. Если найти эту строку в библиотеке панелек, то можно будет определить, с какого экрана она даётся. Дело это хлопотное. Но как ещё найти, помимо первого пути, слёту в голову не приходит. В помощь будет ещё одна команда ISPF - PANELID. Если ввести эту команду в каком-либо экране, в левом верхнем углу появится имя этого экрана. Далее - находим это имя в библиотеке панелей и смотрим содержимое.
Что бы наоборот, найти имя в тексте неизвестного раздела, используется Utilities-14. Search-For. (Хотя на мой взглят удобнее пользоваться SCANPDS, но для его использованияя нужно этот REXX скопировать к себе в SYSEXEC или SYSPROC).
Пока что примерно так... Дальнейшее зависит от результатов.
Добавлено (27.07.2011, 10:28) --------------------------------------------- Кстати, если в панельке "Current Data Set Allocations" ввести команду LINKLIST, то можно увидеть так же LINKLIST и LPALIB.
Люди напомните где лежит ISR@PRIM панель которую человеку поправить и надо?
Вообще-то она может лежать где угодно и называться тоже по-разному. Мы ж не знаем, кто и что делал на этих резидентах. Имя панели можно узнать через PANELID. Потом - TSO ISRDDN, ищем DDName, Browse (View), Locate.
Добавлено (27.07.2011, 11:09) --------------------------------------------- Ещё пара замечаний для Sha_Lun, если он надумает править панели. Вообще-то это было бы самым радикальным и простым решением. Но для работы с панелями нуден некоторый опыт и знание некоторых нюансов.
Во-первых, никогда не нужно править оригинальные коды. Всегда нужно использовать перекрытие. Потому, следует завести свою библиотеку панелей и включить её в список панелей первой. Скопировать туда нужную панель и потом уже править копию. Правильность написания панелей лучше всего проверять - 7 Dialog Test, 2 Panels.
Во-вторых. Язык описания панелей хоть и вылитый CLIST, но имеет особенность - ошибка на одну позицию может привести к тому, что оператор IF будет работать совсем не так, как предполагалось. Каждая строка тела IF должна быть смещена относительно оператора на одинаковое число позиций. Если тело состоит из одной строки - проблем нет, но в общем случае такую ошибку бывает очень сложно найти.
В-третьих. В самой панели используются часто неотображаемые символы, влияющие на представление и интерпретацию данных. Поэтому лучше всего было бы скопировать подходящую строку и поправить её, нежели писать её руками с нуля. (Для посмотреть такие символы используется команда редактора HEX/HEX OFF).
В-четвёртых. Панели как правило кэшируются. Поэтому не всегда изменения в панелях приводят к видимому результату. А иногда дело кончается абендом. Так что если после правки панели изменений не видно - лучше всего перелогонится.
Вообще-то она может лежать где угодно и называться тоже по-разному. Мы ж не знаем, кто и что делал на этих резидентах. Имя панели можно узнать через PANELID. Потом - TSO ISRDDN, ищем DDName, Browse (View), Locate.
Имелось в виду, что у него стандартный демо билд в котором еще не ступала нога сиспрограммиста. У меня то панель и лежит абы где, а него все шансы быть в стандартной либе.
Добавлено (27.07.2011, 13:05) --------------------------------------------- Попробовал залогиниться как SYSADM:
Code
ICH70001I SYSADM LAST ACCESS AT 02:58:57 ON WEDNESDAY, JULY 27, 2011 IKJ56455I SYSADM LOGON IN PROGRESS AT 02:59:28 ON JULY 27, 2011 IKJ56457I LOGON FAILED JCL ERROR IN LOGON PROCEDURE IKJ56470I SYSADM LOGGED OFF TSO AT 02:59:28 ON JULY 27, 2011 IKJ56400A ENTER LOGON OR LOGOFF-
SYSOPR аналогично. Кстати, я тормоз, в =M есть SDSF. В общем попасть туда можно через =M.5 Но вот DB2 я не нашел.
а ежели просто так =6 (переход в среду команд) SDSF
Работает! ))
Отож. Только вот я заметил, что работает с ограничениями. У меня в частности не работает KEYS, а значит нельзя переназначать клавиши. Хотя, наверное, можно, но не так просто. Весьма возможно, что есть ещё какие-либо ограничения. Скорее всего это потому, что SDSF запускается не как ISPF приложение. Но могут быть и другие причины, просто это первое, что пришло в голову.
Так что всё-равно придётся либо искать, где зарыт вызов SDSF, либо самому править панель.
Кстати, я тормоз, в =M есть SDSF. В общем попасть туда можно через =M.5 Но вот DB2 я не нашел.
DB2 скорее всего не кастомизировали. В инструкции по установке должно быть написано как в ISPF вставить все причиндалы.
Относительно ошибок JCL - это нужно смотреть логи. Вероятно тоже ничего не настроено - не хватает каких-либо наборов данных или что-то вроде.
Добавлено (27.07.2011, 13:13) --------------------------------------------- Кстати, раз уж SDSF запускается, найди свою логон-процедуру, там в JESYSMSG (вроде бы) должно быть написано, из какой библиотеки она стартует.
Добавлено (27.07.2011, 13:16) --------------------------------------------- Прошу пардону, я хотел сказать про JES2. Из JESYSMSG можно узнать, откуда запускается.
В Installation Guide описан процесс установки и кастомизации ISPF панелей. Мне непонятно одно адресное пространство, на 9.1. всегда получалось минимум 4 если не ошибаюсь, может какая-то жутко урезанная или старая версия. Так что советую переставить DB2, ну или создать ещё один инстанс.
В SDSF каждое задание представлено отдельной строкой. Если напротив имени задания ввести "?", то задание будет представлено DD карточками (для каждой своя строчка). Теперь можно ввести "S" и смотреть. В принципе, это можно рассматривать средство фильтрации. Что бы не смотреть весь вывод от задания, можно вопросиком "раскрыть" его и смотреть только то, что действительно интересует. Для каждого задания есть как минимум три DD карты: JESMSGLG - это системный вывод, т.е. что задание выводит на консоль а также сообщения системы, касаемые данного задания. JESJCL - это обработанный JCL. JESYSMSG - здесь можно найти много интересного, в том числе какие н.д. распределялись и где, работа каждого шага и прочее. Для каждой карты, определённой в задании, будет дополнительная строчка с именем этой карты. Здесь можно смотреть, что задание выводит на эту DD.