Курс валют из интернета

morpheus

скриптописец
07.08.2006
3 915
1
#1
Не раз сталкивался с проблемой среди разработчиков Lotus, о способах синхронизации курсов валют Лотусовой базы с использованием интернета.
Вопросы решают разными способами:
Некоторые ведут отдельную базу, куда руками ежедневно вписывают новый курс, Другие делаю еще проще, подставляют значение руками.

Автор предлагает автоматизацию процесса синхронизации курса валют из инета используя следующий код:
Код:
Sub Click(Source As Button) 
Dim session As New NotesSession 
Dim ws As New notesuiworkspace 
Dim doc As NotesDocument 
Set db = session.CurrentDatabase 
Set doc=ws.CurrentDocument.Document 

param$ = doc.dManyCreated(0) 

Set xml = CreateObject("Microsoft.XMLHTTP") 
Call xml.open("GET", "http://www.cbr.ru/scripts/XML_daily.asp?date_req="+param$,False) 
Call xml.send() 
stUSD$ = xml.responseText 
stEUR$ = xml.responseText 

'Вырезаем курс доллора 
stUSD$ = Strright(stUSD$,"<Valute ID=""R01235"">") 
stUSD$ = Strleft(stUSD$,|</Valute>|) 
stUSD$ = Strright(stUSD$,"<Value>") 
stUSD$ = Strleft(stUSD$,|</Value>|) 

'Вырезаем курс ЕВРО 
stEUR$ = Strright(stEUR$,"<Valute ID=""R01239"">") 
stEUR$ = Strleft(stEUR$,|</Valute>|) 
stEUR$ = Strright(stEUR$,"<Value>") 
stEUR$ = Strleft(stEUR$,|</Value>|) 

'На форме созданы, два поля, вставляем сюда значения из инета... 
Call doc.ReplaceItemValue("nManyUSDCurse",stUSD$) 
Call doc.ReplaceItemValue("nManyEURCurse",stEUR$) 

'Все !!! 
End Sub

Для Украины (нужда заставила зделать)
Код:
Sub Click(Source As Button)
Dim session As New NotesSession 
Dim ws As New notesuiworkspace 
Dim doc As NotesDocument 
Set db = session.CurrentDatabase 
Set doc=ws.CurrentDocument.Document 
Dim stUSD As String
Set xml = CreateObject("Microsoft.XMLHTTP") 
Call xml.open("GET", "http://www.bank.gov.ua/Fin_ryn/OF_KURS/Currency/FindByDate.aspx",False) 
Call xml.send() 
stUSD$ = xml.responseText 

'Вырезаем курс за 100 долларов США
stUSD$ = Strright(stUSD$,{<td align="Center">840}) 
stUSD$ = Strleft(stUSD$, {</tr>} ) 	
stUSD$ = Strright(stUSD$,{<td align="Right">}) 
stUSD$ = Strleft(stUSD$,|</td>|)
End Sub

Автор sterran

Источник forum.sysfaq.ru

Комментарий модератора
Я бы сказал что код не идеален, но у меня нету времени зделать из него отдельную функцию которая возвращает курс исходя из кода. Так что всё в Ваших руках