Функция DDEPoke( )

Передает данные между приложением-клиентом и сервером в ходе сеанса связи динамического обмена данными (DDE).

Синтаксис:

DDEPoke(nChannelNumber, cItemName, cDataSent
	[, cDataFormat [, cUDFName]])

Параметры:
nChannelNumber
Задает номер канала приложения, в которое посылаются данные. Если данный номер определяет канал сервера, DDEPoke( ) посылает данные в ответ на запрос или ранее установленную связь с уведомлением, или автоматическую связь.
cItemName
Задает имя элемента, в который посылаются данные. Это имя зависит от приложения и должно быть ему понятно. Например, Microsoft Excel допускает использование имени элемента R1C1 для обозначения первой ячейки электронной таблицы.
cDataSent
Задает данные, посылаемые в элемент cItemName.
cDataFormat
Задает формат, используемый при передаче данных. По умолчанию используется формат CF_TEXT. В этом формате поля разделяются табуляторами, а записи ѕ возвратом каретки и переводом строки.
cUDFName
Допускает асинхронную передачу данных. Если имя функции cUDFName опущено, клиент переходит в ожидание на период времени, установленный функцией DDESetOption( ). Если вы задали в аргументе cUDFName имя функции, определенной пользователем, выполнение программы клиента будет продолжено сразу после выдачи запроса.
Когда данные берутся из приложения-сервера, выполняется пользовательская функция cUDFName. Ей передаются шесть параметров в следующем порядке:

  1. Channel Number (номер канала) Номер канала приложения-сервера
  2. Action (действие) XACTCOMPLETE (успешная транзакция), XACTFAIL (ошибка в транзакции)
  3. Item (элемент) Имя элемента, например R1C1 в качестве имени ячейки электронной таблицы Microsoft Excel
  4. Data (данные) Новые данные (REQUEST) или передаваемые данные (POKE или EXECUTED)
  5. Format (формат) Формат данных, например CF_TEXT
  6. Transaction Number (номер транзакции) Номер транзакции, возвращаемый функцией DDEPoke( )

Используйте функцию DDEAbortTrans( ) для отмены незавершенной транзакции. Если транзакция завершается неудачно, с помощью функции DDELastError( ) можно определить причину ошибки.
Если задан аргумент cUDFName, функция DDEPoke( ) возвращает номер транзакции в случае успешного выполнения или -1 в случае ошибки.

Результат:
Логический

Комментарии:
Допустима только в Visual FoxPro и FoxPro для Windows.
Функция DDEPoke( ) посылает символьную строку данных в элемент приложения, заданного номером канала.
Если данные переданы успешно, DDEPoke( ) возвращает значение "истина" (.T.). Если данные передать нельзя, DDEPoke( ) возвращает "ложь" (.F.). Если аргумент cUDFName задает асинхронную функцию, определенную пользователем, DDEPoke( ) возвращает номер транзакции, если произошла ошибка, DDEPoke( ) возвращает -1.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 01.01.2003