OLE VFP

Содержание:

1. Visual FoxPro как OLE-сервер

2. Создание OLE-сервера в VisualFoxPro

3. OLE-сервер в компьютерной сети

4. Automation Manager

5. Remote Automation Connection Manager

Visual FoxPro как OLE-сервер

Начиная с пятой версии, Visual FoxPro может выполнять функции OLE-сервера. OLE-сервер — это приложение, которое может предоставить свои объекты для уп­равления другой программе, поддерживающей OLE Automation.

Эта новая возможность существенно расширяет возможности использования Vis­ual FoxPro, поэтому остановимся чуть подробнее на том, что же такое OLE-сервер.

Большинство OLE-серверов являются так называемыми серверами Out-of-Process. Они представляют из себя исполняемые программы (файлы с расширением ЕХЕ) и могут взаимодействовать как с 16-bit, так и с 32-bit OLE-контроллерами. Расплатой за это является невысокая скорость обмена данными и потребляемые значительные ресурсы памяти. Другой тип OLE-сервера называется In-Process и представляет из себя DLL-библиотеку, которая динамически подгружается и вы­гружается в зависимости от необходимости. Хорошим примером такого сервера является процессор баз данных СУБД Access 7.0. Обмен данными с этим типом OLE-сервера происходит значительно быстрее, но работать он может только с OLE-контроллером такой же разрядности.

В Visual FoxPro доступ к объектам выполняется, как и в подавляющем большин­стве других OLE-серверов, с помощью объекта верхнего уровня Application. В табл. 1 перечислены его свойства, а в табл. 2 — методы.

Свойства Объекта Application

Таблица 1.

Свойство

Параметры и описание

ActiveForm.Property

[ = Setting]

ActiveForm.Method

Property - свойство формы.

Setting - значение свойства.

Method - метод формы.

Обеспечивает ссылку на активную форму или объект SCREEN  

AutoYield [ = IExpr ]

IExpr по умолчанию равен .Т., что предусматривает приоритет событий Windows. Значение .F. предотвращает прерывание выполнения кода Visual FoxPro. При этом события Windows ставятся в очередь. Определяет способ обработки событий Windows.

Caption [ = cText ]

cText - текст заголовка.

Определяет заголовок окна приложения.

DefaultFilePath [ = сPath ]

сPath - обозначение устройству каталога или путь.

Определяет каталог по умолчанию для приложения.

Определяет путь и имя файла для запуска копии Visual FoxPro.  

Height [ = nHeight ]

nHeight - высота окна приложения. Определяет высоту окна приложения.

Let [ = nDist ]

nDist - расстояние от левого края.

Определяет расположение окна приложения относительно левого края.

Name [ = cName]

cName - имя объекта.

Задает имя объекта для ссылки в коде программы.

OLERequestPendingTimeOut

[ = Nmilliseconds ]

Nmilliseconds - величина задержки в миллисекундах, которая по умолчанию равна 5000 мс. Если параметр равен 0, то сообщение не появляется.

Определяет задержку, которая происходит перед появлением сообщения о том, что система занята в процессе выполнения запроса OLE Automation, если пользователь использует клавиатуру или мышь.

OLEServerRaiseError [ = lExpression ]

lExpression по умолчанию равен .F. - сообщение об ошибке будет появляться. Если параметр равен .Т., сообщения будет.

Определяет появление сообщения об ошибке, когда истекает время, установленное в свойстве OLEServerBusyTimeout.

OLEServerBusyTimeout [ = Nmilliseconds ]

nMilliseconds - величина задержки в миллисекундах до по­явления сообщения о том, что сервер занят.

Определяет время, в течение которого происходит повторное выполнение запроса OLE Automation, если сервер занят.

StartMode

Возвращает число, идентифицирующее тип запускаемого приложения.

StatusBar [ = cMessageText ]

cMessageText - строка сообщения. Определяет текст в статус - строке приложения.

Top [ = nDist ]

nDist — расстояние от верхнего края.

Определяет расположение окна приложения относительно верхнего края.

Version

Возвращает в виде строки символов номер версии запускае­мого приложения.

Visible [ = lExpr ]

lExpr по умолчанию равен .F., т. е. запускаемая копия при­ложения невидима. Если параметр lExpr равен .Т. - прило­жение становится видимым.

Определяет, будет ли запускаемая копия приложения видима.

Width [ = nWidth ]

nWidth — ширина окна приложения. Определяет ширину окна приложения.

Методы Объекта Application

Таблица 1.

Метод

Параметры и описание

DataToClip ([ nWorkArea | cTableAlias ] [, nRecords ] [, nClipFormat])

nWorkArea, cTabieAlias — рабочая область или псевдоним источника данных.

nRecords — число копируемых записей. uClipFormat по умолчанию равен 1, при этом данные полей разделяются пробелами. Если параметр равен 3, данные раз­деляются знаком табуляции.

Копирует записи в буфер обмена в виде текста, в котором каждая запись занимает отдельную строку.

DoCmd (cCommand)

cCommand - выражение, представляющее команду VFP.

Позволяет выполнить команду Visual FoxPro из приложе­ния являющегося OLE-контроллером.

Eval (cExpression)

cExpression - выражение, которое необходимо преобразовать.

Преобразует выражения и возвращает его в Visual FoxPro.

Help ([cFileName] [, nContexId] [, cHelpTopic])

cFileName - имя и путь к файлу оперативной помощи. NContextID - идентификатор раздела. cHelpTopic - тема раздела.

Открывает окно с контекстной справкой.

Quit()

Закрывает запущенную копию приложения Visual FoxPro.

RequestData ([nWorkArea | cTableAlias] [, nRecords])

nWorkArea, cTableAlias - рабочая область или псевдоним источника данных. nRecords - число копируемых записей.

Создает массив с данными из источника данных Visual FoxPro.


Страница: