Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.24;
Скачать: CL | DM;

Вниз

Использование сложных типов данных в XML Web Services? Как?   Найти похожие ветки 

 
IInvokable ©   (2003-01-05 17:36) [0]

Детские примеры Веб-сервисов с простейшими типами данных Integer, string и т.д. работают нормально. К детским я отношу примеры написания Веб-сервиса типа "конверталка рублей в доллары и обратно", однако возникает вполне законный и мотивированный вопрос: как написать на D6 веб-сервис, с методами, принимающими в качестве параметров сложные типы данных и возвращающих сложнотипизированные результаты? Живой пример: у меня в интранете есть сервис - "Директория внутренних телефонов сотрудников компании". Он реализован как клиент/серверное приложение, общающийся через порт, например 5289. Ессно, доступ в интранет извне закрыт фаерволом. Я хочу написать веб-сервис, который работает под корпоративным веб-сервером и принимает запросы типа (буду использовать псевдоязык):


function GetEmployeeInfoByLastname( кусок фамилии сотрудника): сложная структура информации о сотруднике;


Сервер должен кьюерить SQL-сервер командой типа


SELECT EmpID, EmpLocalPhone, EmpPosition FROM Employees WHERE EmpLastname LIKE "Пет%"


Естественно, такой запрос может возвратить более одной записи (Петров, Петренко, Петухов). Все это на стороне сервера я хочу запихнуть в


type TEmpInfo = record
eid: Integer;
eLPhone: string;
ePos: string;
end;


...и отдать этот сложный DataSet обратно клиенту в SOAP-сообщении.

ВОПРОС: Как мне это реализовать?

Порождение собственных типов от класса TRemotable у меня не получается. Может я что не так делаю? В D6 \Demos\WebServices есть пара примеров, но они все завязаны на InterBase, которую я в принципе не использую.

Заранее благодарен за ответы.


 
Mike_Goblin ©   (2003-01-05 18:05) [1]

Для начала прочесть в help раздел
Using complex types in invokable interfaces
потом все же разобраться с примерами



Страницы: 1 вся ветка

Текущий архив: 2003.02.24;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.029 c
14-76167
Дмитрий К.К.
2003-02-08 11:30
2003.02.24
Именинники 8 февраля


8-76045
MAXL
2002-11-10 08:24
2003.02.24
Подкажите, как добраться до буфера зв.карты?


14-76148
Alex Timchenko
2003-02-07 12:33
2003.02.24
Требуются Delphi-программеры (сорри за оффтопик - очень надо)


1-75900
Dan
2003-02-14 08:41
2003.02.24
Возведение числа в степень


14-76194
Anatoly Podgoretsky
2003-02-08 00:24
2003.02.24
Именинник 7 февраля