Адрес этой странички : http://doc-prg.narod.ru/art_00006/art_00006.htm 

(c) Sergey Popov, Usinsk, Komi, 2007 

© 10.08.2007 Сергей Попов

Здесь следует отметить, что приведенная ниже статья носит чисто иллюстративный характер и не претендует на бОльшее.
Для серьезной и углубленной проработки специальных вопросов информационного обмена крайне рекомендуется использовать фирменное техническое описание системы 1Cv8.

 

1Cv8 + Delphi-5.
OLE (COM).
Считывание информации.
Перечисления.
Список значений перечисления.
Выбор значения перечисления.

Статью в виде файла (376 кб) можно скачать здесь: art_00005.zip

Простой пример, иллюстрирующий  процесс считывания списка значений перечисления с использованием механизма OLE Automation.

Информационная база 1Cv8 ( 29 кб): homelib_02.zip - та же, что и в предыдущих примерах.
Вспомним, что в контексте информационной базы создано перечисление : ТипНосителя :

 Рис.1. Перечисление ТипНосителя информационной базы 1Cv8

Попробуем прочитать его значения.

 

Создадим новый Delphi-проект (Load_from_Enum_COM.dpr).
Ниже представлена форма проекта :


 Рис.2. Форма проекта Load_from_Enum_COM.dpr

 

Вопросы соединения с 1Cv8 были рассмотрены ранее.
Поэтому сразу же перейдем к программированию процесса считывания информации.

В данном случае будем ориентироваться на вариант : "COM-соединение"

Создадим обработчик события : нажатие на кнопку "бегущие человечки".

Здесь все прозрачно (пояснения в тексте обработчика).

Теперь скомпилируем наш проект и запустим его на выполнение :


 Рис.3. Главное окно приложения Load_from_Enum_COM.exe

 

Сравним результат считывания (с использованием механизма OLE Automation) - с фактической информацией (рис.1).
Для этого нужно запустить конфигуратор 1Cv8 ...

Здесь также все понятно.

Исходные тексты этого проекта можно взять здесь (10 кб) :  load_from_enum_com_v01.zip
 

Модифицируем наш проект (расположим на форме еще одну кнопку и реализуем вид соединения с 1Cv8 : "OLE Automation Client/Server").


Рис.4. Форма проекта Load_from_Enum_OLE.dpr

 

Создадим обработчик события: нажатие на эту кнопку ("?") :

Текст обработчика достаточно прост и доп. комментарий не требуется.

Теперь скомпилируем наш проект и запустим его на выполнение.
На рис.5 представлен результат открытия формы списка значений перечисления.


 Рис.5. Главное окно приложения Load_from_Enum_OLE.exe.
Метод объекта 1Cv8 "Форма" - Открыть()

Если нажать еще раз на кнопку "?" (при открытой форме), то на экране появится сообщение :


 Рис.6. Главное окно приложения Load_from_Enum_OLE.exe.
Метод объекта 1Cv8 "Форма" - Открыта()

Еще усложним наш проект (расположим на форме кнопку "m?" (рис.7).


Рис.7. Форма проекта Load_from_Enum_OLE.dpr

 

Создадим обработчик события: нажатие на эту кнопку :


Текст обработчика достаточно прост и доп. комментарий не требуется.

Теперь скомпилируем наш проект и запустим его на выполнение.
На рис.8 представлен результат открытия формы списка значений перечисления для выбора.

 


 Рис.8. Главное окно приложения Load_from_Enum_OLE.exe.
Метод объекта 1Cv8 "Форма" - ОткрытьМодально()

 

Теперь нужно выбрать какое-либо значение перечисления (двойной щелчок левой кнопкой мышки по соотв.строке или нажатие на кнопку "Выбрать", рис.8).

Результат представлен на рис.9.

 


 Рис.9. Главное окно приложения Load_from_Enum_OLE.exe.
Метод объекта 1Cv8 "Форма" - ОткрытьМодально()

 

Исходные тексты этого проекта можно взять здесь (12 кб) :  load_from_enum_ole_v01.zip

 

© 10.08.2007 Сергей Попов


Hosted by uCoz