Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

SOAP тип TXSDateTime не работает никак [D6, WinXP]


Страницы:   1 2

kaif ©   (2009-02-20 17:20:00) 

Пытаюсь запросить курсы валют ЦБ при помощи их сервиса. К сервису обратился с помощью компонента HTTPRIO. Список валют получил без проблем. А вот ни один метод с параметром DateTime вызвать не удается. Прочитал, что в D6 есть ошибка на неанглийских локалях. Поменял локали. Не помогло. От отчаяния заменил текст метода в XSBuiltIns:

function TXSDateTime.NativeToXS: WideString;
var
 TimeString: WideString;
begin

 Result := '2009-02-20T00:00:00';
 exit;


 TimeString := FTimeParam.NativeToXS;
 if TimeString <> '' then
   Result := FDateParam.NativeToXS + SoapTimePrefix + TimeString
 else
   Result := FDateParam.NativeToXS;
end;

Смотрю SOAPRequest в OnBeforeExecute. Похоже, что все должно выглядеть именно так:

...
<NS1:GetCursOnDateXML xmlns=" http://web.cbr.ru/">
<On_date xsi:type>2009-02-20T00:00:00</On_date>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Но сервис возвращает сообщение об ошибке преобразования символов в тип datetime.

В чем косяк?
Замучился уже.


kaif   (2009-02-20 23:05:00) [21]

Медвежонок Пятачок ©   (20.02.09 22:44) [4]
все может быть.
но я www.cbr.ru/scripts/XML_daily.asp уже лет 8 как использую


Спасибо, ты меня убедил.
Правда при запросе отдельной валюты в диапазоне дат нужен параметр VAL_NM_RQ, в который к сожалению передается не трехбуквенное обозначение, а ID вроде R01235. Я собираюсь запросить сегодняшние курсы и оттуда выцепить ID, отыскав их по трехбуквенным обозначениям типа USD. Может быть есть более простое решение?  

Ты не в курсе, нет ли такого вызова www.cbr.ru/scripts/XML_daily.asp, в котором я мог бы передать в параметрах две даты и трехбуквенноеобозначение валюты?

Мне трехбуквенное по ряду причин удобно.


Медвежонок Пятачок   (2009-02-20 22:44:00) [22]

все может быть.
но я www.cbr.ru/scripts/XML_daily.asp уже лет 8 как использую


kaif   (2009-02-20 22:37:00) [23]

Медвежонок Пятачок ©   (20.02.09 21:01) [2]
они курсы отдают в xml по обычному гету, без всяких веб служб.


Да, я уже сам случайно нашел это решение. Быстро и просто. Правда не знаю, не накроется ли этот механизм в один прекрасный день.


Медвежонок Пятачок   (2009-02-20 21:01:00) [24]

они курсы отдают в xml по обычному гету, без всяких веб служб.


Медвежонок Пятачок   (2009-02-20 21:00:00) [25]

зачем так сложно то?
обычный ixmldomdocument2.load()


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо