[ Страница назад | Страница вперед | Содержание | Индекс | Библиотека | Юридическая информация | Поиск ]

Программирование: Разработка и отладка программ


Классы объектов SMIT

Класс объектов Инструмента управления системой (SMIT), создаваемый с помощью Администратора объектных данных (ODM), определяет общий формат или тип данных для всех объектов, представляющих собой экземпляры данного объектного класса. Следовательно, объектный класс SMIT - это, в основном, тип данных, а объект SMIT - конкретная запись этого типа.

Меню, списки вариантов и окна диалогов SMIT описываются объектами, представляющими собой экземпляры одного из четырех объектных классов:

В приведенной ниже таблице перечислены объекты, применяемые для создания различных типов окон:

Классы SMIT
Тип окна Класс объектов Использование объекта (типичный случай)
Меню sm_menu_opt 1 для заголовка окна


sm_menu_opt 1 для первого элемента


sm_menu_opt 1 для второго элемента


... ...


sm_menu_opt 1 для последнего элемента
Список вариантов sm_name_hdr 1 для заголовка окна и других атрибутов


sm_cmd_opt 1 для поля ввода и всплывающего списка
Окно диалога sm_cmd_hdr 1 для заголовка окна и командной строки


sm_cmd_opt 1 для первого поля ввода


sm_cmd_opt 1 для второго поля ввода


... ...


sm_cmd_opt 1 для последнего поля ввода

Каждый объект состоит из последовательности именованных полей и связанных с ними значений. Эта последовательность задается в ASCII-файлах настройки, которые могут применяться командой odmadd для инициализации или расширения баз данных SMIT. Разделы в файле должны быть отделены друг от друга одной или несколькими пустыми строками.

Примечание: Комментарии в файле ввода ODM (ASCII-файле настройки), используемом командой odmadd, должны находиться в строке, содержащей в первой позиции символ # (знак фунта) или * (звездочку). Комментарий, начинающийся со звездочки (*), может находиться в строке раздела описания, но должен стоять после значения дескриптора.

Ниже приведен пример раздела описания объекта sm_menu_opt:

sm_menu_opt:  *имя класса объектов 
  id             = "top_menu"  *имя (окна меню) объекта
  id_seq_num     = "050"
  next_id        = "commo"  *id объектов для следующего окна меню 
  text = "Приложения и службы & связи"
  text_msg_file  = ""
  text_msg_set   = 0
  text_msg_id    = 0
  next_type      = "m" *next_id для определения другого меню
  alias          = ""
  help_msg_id    = ""
  help_msg_loc   = ""
  help_msg_base = ""
  help_msg_book = "" 

Для описания значений полей объекта обычно применяется запись в формате класс-объектов.дескриптор. Например, в предыдущем примере описания объекта sm_menu_opt значение sm_menu_opt.id равно top_menu.

Подробное описание каждого из полей класса объектов sm_menu_opt приведено в разделе Класс объектов sm_menu_opt (меню SMIT).

Ниже приведен пример раздела описания объекта sm_name_hdr:

sm_name_hdr:              *---- применяется в списках вариантов
  id                      = ""  *имя данного (текущего) окна списка вариантов
  next_id                 = ""  *следующий sm_name_hdr или sm_cmd_hdr
  option_id               = ""  *определяет один связанный sm_cmd_opt
  has_name_select         = ""
  name                   = ""  *заголовок данного окна
  name_msg_file           = ""
  name_msg_id             = 0
  type                    = ""
  ghost                   = ""
  cmd_to_classify         = ""
  cmd_to_classify_postfix = ""
  raw_field_name          = ""
  cooked_field_name       = ""
  next_type               = ""
  help_msg_id             = ""
  help_msg_loc            = ""
  help_msg_base = ""
  help_msg_book = "" 

Подробное описание всех полей класса объектов sm_name_hdr приведено в разделе Класс объектов sm_name_hdr (заголовок списков вариантов SMIT).

Ниже приведен пример раздела описания объекта sm_cmd_hdr:

sm_cmd_hdr:                      *---- применяется в списках вариантов
  id                     = ""    *имя данного (текущего) окна диалога
  option_id              = ""    *определяет связанный набор объектов sm_cmd_opt
  has_name_select        = ""
  name                   = ""  *заголовок данного окна
  name_msg_file          = ""
  name_msg_set           = 0
  name_msg_id            = 0
  cmd_to_exec            = ""
  ask                    = ""
  exec_mode              = ""
  ghost                  = ""
  cmd_to_discover        = ""
  cmd_to_discover_postfix         = ""
  name_size              = 0
  value_size             = 0
  help_msg_id            = ""
  help_msg_loc           = ""
  help_msg_base   = ""
  help_msg_book   = "" 

Подробное описание всех полей класса объектов sm_cmd_hdr приведено в разделе Класс объектов sm_cmd_hdr (заголовок окна диалога SMIT).

Ниже приведен пример раздела описания объекта sm_cmd_opt:

sm_cmd_opt:              *---- применяется для списков вариантов и окон диалогов
  id                     = ""      *имя данного объекта
  id_seq_num             = ""      *"0" для окна списка вариантов
  disc_field_name        = ""
  name                   = ""      *текст описания данного поля ввода
  name_msg_file          = ""
  name_msg_set           = 0
  name_msg_id            = 0
  op_type                = ""
  entry_type             = ""
  entry_size             = 0
  required               = ""
  prefix                 = ""
  cmd_to_list_mode       = ""
  cmd_to_list            = ""
  cmd_to_list_postfix    = ""
  multi_select           = ""
  value_index            = 0
  disp_values            = ""
  values_msg_file        = ""
  values_msg_set         = 0
  values_msg_id          = 0
  aix_values             = ""
  help_msg_id            = ""
  help_msg_loc           = ""
  help_msg_base   = ""
  help_msg_book   = "" 

Подробное описание всех полей класса объектов sm_cmd_opt приведено в разделе Класс объектов sm_cmd_opt (опции команд окна диалога/списка вариантов SMIT).

Во всех объектах SMIT предусмотрено поле id, содержащее имя, по которому можно найти данный объект. Для поиска объектов sm_menu_opt, представляющих заголовки меню, применяется поле next_id. Для объектов sm_menu_opt и sm_name_hdr задаются поля next_id, указывающие на поля id других объектов. Именно таким образом реализованы связи между окнами в базе данных SMIT. Аналогично, в объектах sm_name_hdr и sm_cmd_hdr есть поле option_id, которое указывает на поля id связанных с ними объектов sm_cmd_opt.

Прим.:
Значение поля sm_cmd_hdr.option_id совпадает со значениями полей sm_cmd_opt.id; таким образом определяется связь между объектом sm_cmd_hdr и объектами sm_cmd_opt.

Один и тот же объект sm_cmd_opt может применяться несколькими окнами диалогов, поскольку для поиска объектов с одинаковыми значениями полей sm_cmd_opt.id SMIT использует оператор ODM LIKE. SMIT разрешает указывать в поле sm_cmd_hdr.option_id до пяти идентификаторов (разделенных запятыми), поэтому с объектом sm_cmd_hdr можно связывать объекты sm_cmd_opt, которым присвоено любое из пяти значений поля sm_cmd_opt.id.

Из приведенной ниже таблицы видно, каким образом значение поля sm_cmd_hdr.option_id связано со значениями полей sm_cmd_opt.id и sm_cmd_opt.id_seq_num.

Примечание: Значения полей sm_cmd_opt.id_seq_num применяются для сортировки объектов, восстанавливаемых из хранилища для открываемого окна.

Объекты SMIT
ИД объектов, которые должны быть восстановлены (sm_cmd_hdr.option_id) Восстановленные объекты (sm_cmd_opt.id) Последовательность восстановленных объектов в окне (sm_cmd_opt.id_seq_num)
"demo.[AB]" "demo.A" "10"


"demo.B" "20"


"demo.A" "30"


"demo.A "40"
"demo.[ACD]" "demo.A" "10"


"demo.C" "20"


"demo.A" "30"


"demo.A" "40"


"demo.D" "50"
"demo.X,demo.Y,demo.Z" "demo.Y" "20"


"demo.Z" "40"


"demo.X" "60"


"demo.X" "80"

База данных SMIT

Объекты SMIT генерируются с помощью средств создания ODM и хранятся в файлах заданной базы данных. По умолчанию база данных SMIT состоит из восьми файлов:

По умолчанию для хранения файлов применяется каталог /usr/lib/objrepos. Файлы всегда должны сохраняться и восстанавливаться согласованно.

Связанная информация

Глава 25, Инструмент управления системой (SMIT)

Типы окон SMIT , Псевдонимы и команды быстрого доступа SMIT , Дескрипторы информационных команд SMIT и Создание и выполнение команд SMIT

Добавление задач в базу данных SMIT , Отладка расширений базы данных SMIT , Создание справки по новой задаче SMIT

Глава 17, Администратор объектных данных (ODM)

Пример программы SMIT

Команды odmadd, smit.

Класс объектов sm_cmd_hdr (заголовок окна диалога SMIT) , Класс объектов sm_cmd_opt (опции команд окна диалога/списка вариантов SMIT) , Класс объектов sm_menu_opt (меню SMIT) , Класс объектов sm_name_hdr (заголовок списков вариантов SMIT)


[ Страница назад | Страница вперед | Содержание | Индекс | Библиотека | Юридическая информация | Поиск ]