Запрашивает Данные от приложения-сервера в сеансе динамического обмена данными (DDE).
DDERequest(nChannelNumber, cItemName [, cDataFormat [, cUDFName]]) |
Параметры
- nChannelNumber
- Определяет номер канала приложения-сервера.
- cItemName
- Определяет имя элемента. Имя элемента является специфическим для приложения и должно быть понято приложением. Например, Microsoft Excel использует обозначение строки и столбца для обращения к ячейкам в рабочем листе. Имя элемента R1C1 определяет ячейку в первой строке и первом столбце рабочего листа.
- cDataFormat
- Определяет формат для запроса данных. Заданный по умолчанию формат - CF_TEXT. В этом формате, поля разграничены табуляторами, а записи разграничены переводом каретки и переводом строки.
- cUDFName
- Позволяет асинхронную передачу данных. Если Вы опускаете cUDFName , Visual FoxPro ждет данных от сервера в течение периода, указанного в DDESetOption( ) . Если Вы определяете имя определяемой пользователем функции через cUDFName , Visual FoxPro продолжает выполнение программы немедленно после того, как запрос сделан. Когда данные становятся доступны от приложения-сервера, определяемая пользователем функция, указанная через cUDFName выполняется. В Определяемую пользователем функцию передаются шесть параметров в следующем порядке:
Параметр Содержание Channel Number
Номер канала приложения - сервера.
Action
XACTCOMPLETE (успешная транзакция).XACTFAIL (неуспешная транзакция).
Item
Имя элемента; например, R1C1 для ячейки рабочего листа Microsoft Excel.
Data
Новые данные (REQUEST) или переданные данные (POKE или EXECUTED).
Format
Формат данных; например, CF_TEXT.
Transaction Number
Номер транзакции, возвращенный DDERequest( ) .
Возвращаемое значение
Символьное
Замечания
Прежде, чем Вы можете запросить данных используя DDERequest( ) , Вы должны установить канал к приложению-серверу через DDEInitiate( ) .
Если запрос о данных успешен, DDERequest( ) возвращает данные как символьную строку. При сбоях запроса, DDERequest( ) возвращает пустую строку и DDELastError( ) возвращает значение отличное от нуля. Если Вы включаете асинхронную определяемую пользователем функцию cUDFName , DDERequest( ) возвращает номер транзакции в случае успеха, или -1, если происходит ошибка.
Пример
Следующие пример использует DDEInitiate( ) для устанавлки DDE канала между Visual FoxPro и рабочим листом Microsoft Excel, по имени Sheet1. 'Excel' - сервисное имя, и 'Sheet1' является именем темы. Номер канала сохранен в переменной памяти mchannum
для использования в последующих функциях DDE.
DDERequest( ) запрашивает имя элемента R1C1, т.е. данные в первой строке и столбце таблицы Sheet1.
Скопировать код | |
---|---|
mchannum = DDEInitiate('Excel', 'Sheet1') |
См. Также
Другие Ресурсы
DDEAbortTrans( ) ФункцияDDEInitiate( ) Функция
DDELastError( ) Функция
DDESetOption( ) Функция
DDETerminate( ) Функция
Функции
Справочник Языка