Основные компоненты

Top  Previous  Next

PLMNavigator32        Построение оконного интерфейса базируется на наборе визуальных и не визуальных компонентов, событий и процедур системы Visual Loodsman. Все компоненты, события и процедуры имеют соответствующие типы в специально разработанной базе данных. На базе этих объектов разработано специальное клиентское приложение VL.EXE, которое читая базу данных VL-проекта, реализует оконный интерфейс на экране монитора. Данное приложение также содержит локальные конфигураторы этих компонентов.

 

       Ниже в таблице представлены разработанные в системе Visual Loodsman визуальные и не визуальные компоненты оконного интерфейса системы:

 

Наименование

Краткое описание

События

Процедуры

VLProject

VLProject

Головной компонент VL-проекта - описание главного окна приложение, в котором строится весь пользовательский оконный интерфейс.

 


 

 

Не визуальные компоненты

 


VLDCOMConnection

VLDCOMConnection

Не визуальный компонент определяющий DCOM соединение с сервером приложений и базой данных системы ЛОЦМАН:PLM

 


VLRegVariable

VLRegVariable

Не визуальный компонент, представляющий собой системную переменную. Предназначен для хранения в базе данных VL-проекта какого-либо, заранее заданного значения, например идентификатора объекта, от которого необходимо строить пользовательский интерфейс. Указанный идентификатор может быть помещен в системный буфер процедурой GetId. Идентификатор также может быть изменен пользователем в процессе работы с базой данных процедурой SetId. Системная переменная сохраняется в реестре Windows.

 


 

 

 



 

Визуальные компоненты

 


VLMDIForm

VLMDIForm

MDI форма - экранная форма многооконного Windows приложения. VL-проект позволяет загрузить на экран любое количество VLMDIForm одновременно, при этом можно работать в любой из этих экранных форм, переходя от одной к другой. Данная форма содержит другие визуальные компоненты, такие как поля, строки, панели, таблицы, деревья и т.д. Если форма должна быть связана с какой-нибудь базой данных системы ЛОЦМАН:PLM, то она обязательно должна содержать компонент VLDCOMConnection, через который осуществляется связь с выбранной базой данных. В этом случае она также обязательно должна содержать идентификатор объекта базы данных, с которым она связана. Через VLDCOMConnection и установленный идентификатор осуществляется автоматическое заполнение полей соответствующими атрибутами данного объекта. Форма также может содержать числовой идентификатор родительского объекта (например: если форма была загружена из таблицы объектов, подчиненных верхнему объекту по какой-то связи) и, соответственно, идентификатор связи. При этом подчиненные компоненты могут быть привязаны как к собственным атрибутам базового объекта формы, так и к атрибутам связи и родительского объекта. Загрузить на экран новую MDI форму можно с помощью процедуры LoadVLMDIForm, при этом форма автоматически считывает из системного буфера уникальный числовой идентификатор объекта, к которому она будет привязана. ВАЖНО!!! Перед загрузкой формы из какого-нибудь компонента системы Visual Loodsman необходимо поместить уникальный числовой идентификатор объекта базы данных в системный буфер (например: с помощью процедуры GetId). Уникальный числовой идентификатор также можно получить у формы и поместить в системный буфер с помощью процедуры GetId. Во время работы с базой данных форму можно закрыть с помощью процедуры CloseWindow. Перед закрытием формы можно сохранить измененные в полях атрибуты головного объекта с помощью процедуры SaveAttributes.

OnShow

VLModalForm

VLModalForm

Модальная форма - простая экранная форма Windows приложения, при которой работа в других формах блокируется. VL-проект позволяет загрузить на экран любое количество VLModalForm одновременно, но работать можно только в одной последней. Данная форма также содержит другие визуальные компоненты, такие как поля, строки, панели, таблицы, деревья и т.д. Если форма должна быть связана с какой-нибудь базой данных системы ЛОЦМАН:PLM, то она обязательно должна содержать компонент VLDCOMConnection, через который осуществляется связь с выбранной базой данных. В этом случае она также обязательно должна содержать идентификатор объекта базы данных, с которым она связана. Через VLDCOMConnection и установленный идентификатор осуществляется автоматическое заполнение полей соответствующими атрибутами данного объекта. Форма также может содержать числовой идентификатор родительского объекта (например: если форма была загружена из таблицы объектов, подчиненных верхнему объекту по какой-то связи) и, соответственно, идентификатор связи. При этом подчиненные компоненты могут быть привязаны как к собственным атрибутам базового объекта формы, так и к атрибутам связи и родительского объекта. Загрузить на экран новую модальную форму можно с помощью процедуры LoadVLModalForm, при этом форма автоматически считывает из системного буфера уникальный числовой идентификатор объекта, к которому она будет привязана. ВАЖНО!!! Перед загрузкой формы из какого-нибудь компонента системы Visual Loodsman необходимо поместить уникальный числовой идентификатор объекта базы данных в системный буфер (например: с помощью процедуры GetId). Уникальный числовой идентификатор также можно получить у формы и поместить в системный буфер с помощью процедуры GetId. Во время работы с базой данных форму можно закрыть с помощью процедуры CloseWindow. Перед закрытием формы можно сохранить измененные в полях атрибуты головного объекта с помощью процедуры SaveAttributes.

OnShow

VLPageControl

VLPageControl

Классическая многостраничную панель с закладками, может содержать только один тип компонента - VLTabSheet.

 


VLTabSheet

VLTabSheet

Страница панели VLPageControl. Может содержать любое количество подчиненных компонентов.

 


VLPanel

VLPanel

Классическая панель для объединения группы подчиненных компонентов. Имеет возможность создавать эффект выпуклой или вдавленной панели. Может содержать любое количество подчиненных компонентов. В отличие от других групповых VL-компонентов (по аналогии с VLMDIForm и VLModalForm) имеет собственный идентификатор объекта базы данных и собственный механизм чтения атрибутов из базы данных для этого объекта. По умолчанию в панель устанавливается идентификатор родительской формы, однако он может быть изменен процедурой SetId. Обновление подчиненных компонентов осуществляется процедурой RefreshControl.

 

VLSplitter

VLSplitter

Компонент предназначен для ручного (с помощью мыши) управлением размерами групповых и составных VL-компонентов, таких как VLPanel, VLTableView, VLTreeView и др.

 


VLBevel

VLBevel

Предназначен для выделения и разграничения областей на форме.

 


VLLabel

VLLabel

Надпись - используется для отображения текста на форме, который нельзя изменить, используя оконный интерфейс.

 


VLEdit

VLEdit

Представляет собой однострочное редактируемое текстовое поле, связанное с атрибутом типа строка объекта базы данных системы ЛОЦМАН:PLM. Может содержать числовой идентификатор объекта, который можно поместить в поле процедурой SetId, и импортировать из поля в системный буфер процедурой GetId. Может содержать текстовый параметр, который можно поместить в поле процедурой SetData, и импортировать из поля в системный буфер процедурой GetData. Может являться источником для процедуры TypeCase. Может являться потребителем для процедур MathProduct, MathSumm и StrSumm. Может стать недоступным с помощью процедуры DisableControls, и наоборот с помощью процедуры EnableControls. Может быть выключенным с помощью процедуры UnVisibleControls и включенным с помощью процедуры VisibleControls.

OnEnter

OnExit

VLMemo

VLMemo

Представляет собой многострочное редактируемое текстовое поле, связанное с атрибутом типа текст объекта базы данных системы ЛОЦМАН:PLM. Может стать недоступным с помощью процедуры DisableControls, и наоборот с помощью процедуры EnableControls. Может быть выключенным с помощью процедуры UnVisibleControls и включенным с помощью процедуры VisibleControls.

OnEnter

OnExit

VLComboBox

VLComboBox

Представляет собой однострочное редактируемое текстовое поле с выпадающим списком для выбора значений, поле связано с атрибутом типа строка объекта базы данных системы ЛОЦМАН:PLM. Ïî óìîë÷àíèþ ñîäåðæèìîå ñïèñêà çàãðóæàåòñÿ èç ïðåäâàðèòåëüíî óñòàíîâëåííûõ çíà÷åíèé äàííîãî àòðèáóòà, êîòîðûå íàõîäÿòñÿ â ïîëüçîâàòåëüñêîé áàçå äàííûõ. Îäíàêî ïîëüçîâàòåëü-àäìèíèñòðàòîð áàçû äàííûõ VL-ïðîåêòà ìîæåò óñòàíîâèòü ñïåöèàëüíûé ñïèñîê çíà÷åíèé äëÿ äàííîãî ïîëÿ. Ñîäåðæèìîå ïîëÿ ìîæåò ñòàòü èñòî÷íèêîì èíôîðìàöèè äëÿ ïðîöåäóð DataCase, MathProduct, MathSumm è StrSumm. Может стать недоступным с помощью процедуры DisableControls, и наоборот с помощью процедуры EnableControls. Может быть выключенным с помощью процедуры UnVisibleControls и включенным с помощью процедуры VisibleControls.

 

VLDateTimePicker

VLDateTimePicker

Представляет собой поле с раскрывающимся списком и используется для ввода даты и времени в соответствии с локальными настройками Windows. При раскрытии списка открывается календарь. Компонент связан с атрибутом типа дата объекта базы данных системы ЛОЦМАН:PLM. Может стать недоступным с помощью процедуры DisableControls, и наоборот с помощью процедуры EnableControls. Может быть выключенным с помощью процедуры UnVisibleControls и включенным с помощью процедуры VisibleControls.

 

VLCheckBox

VLCheckBox

Компонент типа флажок, используется для того, чтобы пользователь мог указать решение типа Да/Нет. Компонент связан с атрибутом типа целое число объекта базы данных системы ЛОЦМАН:PLM. Содержимое компонента может стать источником для процедуры CheckBox. Êîìïîíåíò ìожет стать недоступным с помощью процедуры DisableControls, и наоборот с помощью процедуры EnableControls. Может быть выключенным с помощью процедуры UnVisibleControls и включенным с помощью процедуры VisibleControls.

OnClick

VLRadioGroup

VLRadioGroup

Группа переключателей, из которых включенным может быть только один. Компонент связан с атрибутом типа целое число объекта базы данных системы ЛОЦМАН:PLM. Указанное число является номером переключателя компонента (начиная с 0). Содержимое компонента может стать источником для процедуры RadioGroup. Êîìïîíåíò ìожет стать недоступным с помощью процедуры DisableControls, и наоборот с помощью процедуры EnableControls. Может быть выключенным с помощью процедуры UnVisibleControls и включенным с помощью процедуры VisibleControls.

OnClick

VLImage

VLImage

Компонент предназначен для вывода на форму рисунка, связан с атрибутом типа изображение объекта базы данных системы ЛОЦМАН:PLM. В компонент может быть загружено изображение из файла с помощью процедуры LoadPictureDialog.

 

VLBitBtn

VLBitBtn

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

OnClick


VLSpeedBtn

VLSpeedBtn

Компонент представляет собой кнопку быстрого доступа, предназначена для ввода команд на на выполнение заранее установленных процедур.

OnClick




Составные визуальные компоненты



VLTreeView

VLTreeView

Компонент предназначен для отображения древовидных структур данных. Привязан к объекту базы данных системы ЛОЦМАН:PLM через уникальный числовой идентификатор. Отображает древовидную структуру объектов, подчиненных головному по указанной связи. На каждой ветке структуры отображается набор атрибутов, который устанавливается в ЛОЦМАН-Конфигураторе в разделе "Параметры отображения -> Атрибуты в дереве". В компоненте пользователь-администратор VL-проекта может установить фильтр для отображения подчиненных объектов. Кроме этого возможно установить индекс для сортировки объектов в поддереве по какому либо из указанных выше атрибутов. Уникальный числовой идентификатор головного объекта может быть помещен в компонент с помощью процедуры SetId. Из компонента можно экспортировать в системный буфер уникальный идентификатор выделенного объекта в дереве с помощью процедуры GetId. Компонент можно обновить (перезагрузить дерево) с помощью процедуры RefreshControl. Выделенный объект в дереве можно поместить в буфер обмена процедурой CopyObjToClipBrd, он также может стать источником для процедуры TypeCasе.

OnChange

VLTableView

VLTableView

Компонент предназначен для отображения информации в виде таблицы объектов базы данных ЛОЦМАН:PLM, подчиненных головному объекту по установленной пользователем связи. Привязан к объекту базы данных системы ЛОЦМАН:PLM через уникальный числовой идентификатор. Кроме набора обязательных системных атрибутов (см.VLTableView), пользователь-администратор VL-проекта может расширить таблицу дополнительным набором атрибутов из списка атрибутов, установленных в ЛОЦМАН-Конфигураторе в разделе "Параметры отображения -> Атрибуты в составе". В компоненте пользователь-администратор VL-проекта может установить фильтр для отображения подчиненных объектов. Кроме этого возможно установить индекс для сортировки объектов в таблице по какому либо из указанных выше атрибутов (или группе атрибутов). Уникальный числовой идентификатор головного объекта может быть помещен в компонент с помощью процедуры SetId. Из компонента можно экспортировать в системный буфер уникальный идентификатор выделенного объекта в таблице с помощью процедуры GetId. Компонент можно обновить (перезагрузить таблицу) с помощью процедуры RefreshControl. Во время работы имеется возможность изменить фильтр отображения подчиненных компонентов с помощью процедуры SetFilter. Выделенный объект в таблице можно поместить в буфер обмена процедурой CopyObjToClipBrd, из буфера обмена имеется возможность вставить существующий объект по указанной в компоненте связи с помощью процедуры PasteObjFromClipBrd. Имеется возможность создать новый объект и установить его в состав таблицы по указанной связи с помощью процедуры InsertObject. С помощью процедуры DeleteObject можно удалить выделенный в таблице объект как из состава, так и вообще из базы данных. Выделенный объект в таблице также может стать источником для процедур TypeCasе, AdminObj и AuthorObj. С помощью процедуры GoUp можно переместить выделенный объект в таблице на одну строчку вверх, а с помощью процедуры GoDown - соответственно вниз. С помощью процедуры ResetPosition можно перерассчитать атрибуты типа позиция для объектов в таблице, если таковые имеются в наличии среди атрибутов.

OnChange

OnDblClick

VLFindTableView

VLFindTableView

Компонент представляет собой таблицу сквозного поиска объектов по базе данных системы ЛОЦМАН:PLM. Предназначен для отображения списка объектов базы данных выбранных по различным критериям поиска: по шаблону ключевого атрибута, по типу объектов, по состоянию объектов, по атрибутам объектов и по любому сочетанию указанных выше критериев. Кроме набора обязательных системных атрибутов (см.VLFindTableView), пользователь-администратор VL-проекта может расширить таблицу дополнительным набором атрибутов. В компоненте пользователь-администратор VL-проекта может установить фильтр для отображения найденных объектов. Кроме этого возможно установить индекс для сортировки объектов в таблице по какому либо из указанных выше атрибутов (или группе атрибутов). Во время работы системы имеется возможность установить следующие критерии: критерий поиска по ключевому атрибуту с помощью процедуры SetProduct, критерий поиска по типу объекта с помощью процедуры SetType, критерий поиска по состоянию с помощью процедуры SetState и критерий поиска по атрибутам с помощью процедуры SetAttr. Произвести поиск или обновить (перезагрузить таблицу) можно с помощью процедуры RefreshControl. Выделенный объект в таблице можно поместить в буфер обмена процедурой CopyObjToClipBrd. С помощью процедуры DeleteObject можно удалить выделенный в таблице базы данных. Выделенный объект в таблице также может стать источником для процедур TypeCasе, AdminObj и AuthorObj.

OnDblClick

VLWorkTableView

VLWorkTableView

Компонент представляет собой таблицу объектов пользовательской базы данных системы ЛОЦМАН:PLM, взятых на изменение ("в работу..." или заблокированных текущим пользователем). Компонент напрямую связан с компонентом VLDCOMConnection, через который он и получает информацию о заблокированных объектах. Каждая строка таблицы отражает информацию о заблокированном текущим пользователем объекте и содержит ссылку на компонент VLDocFilePanel (менеджер документов), который взял данный объект на изменение. При возврате данного объекта в базу данных компонент VLDocFilePanel получает сообщение об этом событии и обновляет свое окно. Таблицу можно обновить с помощью процедуры RefreshControl.

OnDblClick

VLDocFilePanel

VLDocFilePanel

Компонент представляет собой панель менеджера документов для любого объекта базы данных системы ЛОЦМАН:PLM. Привязан к объекту пользовательской базы данных системы ЛОЦМАН:PLM через уникальный числовой идентификатор. Указанный идентификатор можно поместить в компонент процедурой SetId и скопировать из компонента в системный буфер процедурой GetId. Обновить компонент можно с помощью процедуры RefreshControl. Кроме этого компонент VLDocFilePanel содержит указатель на объект пользовательской (!) базы данных, содержащий список шаблонов документов для данного типа объекта. Каждый шаблон содержит предварительно настроенный файл выполненный в своем редакторе. При создании новых документов компонент предлагает список документов из указанного списка шаблонов, после выбора одного из них файл шаблона копируется в рабочую папку, переименовывается в соответствии установками пользователя и регистрируется в пользовательской базе данных вместе с соответствующим документом. Вместе с этим компонент VLDocFilePanel содержит список компонентов VLIntegrator, которые в свою очередь управляют обменом данных (интеграцией данных) между пользовательской базой данных и файлом документа.


VLIntegrator

VLIntegrator

Компонент предназначен для управления обменом данными между пользовательской базой данных системы ЛОЦМАН:PLM и файлом документа, зарегистрированным в той же базе данных. Непосредственно связан с компонентом VLDocFilePanel, привязан к типу документа. При наступлении любого из событий головного компонента (OnInsert - создать документ, OnOpen - открыть документ, OnGetInfo - получить информацию из документа) загружает соответствующий список предустановленных администратором VL-проекта процедур. Как правило в состав данного списка входят процедуры ExportXML (процедура экспорта информации во временный файл формата XML), ImportXML (процедура импорта информации из файла XML в базу данных) и UserAction (пользовательская процедура - EXE модуль, написанный пользователем и производящий заполнение документа атрибутами из временного XML файла). Таким образом администратор VL-проекта может зарегистрировать в пользовательской базе данных любое количество типов документов, создать для них предустановленные шаблоны и зарегистрировать в базе данных VL-проекта соответствующие модули интеграции.

OnInsert

OnOpen

OnGetInfo