Возможно ли скопировать содержимое XML из WebViewer
-
- Сообщения: 31
- Зарегистрирован: 12 сен 2017, 04:14
Возможно ли скопировать содержимое XML из WebViewer
Коллеги.
Приветствую!
Никто не сталкивался с таким вопросом?
Мне нужно скачать данные по валюте , например EUR, с сайта ЦБР. На их сайте есть образец запроса, по которому я могу получить данные в XML в webviewer.
Дальше хотел парсить выражение , которое даёт ЦБР по данному запросу и выуживать курс. Но никак не получается обработать содержимое WebViewer.
Может у кого-то есть решение по автоматизации скачивания курсов валюты?
В темах форума не нашёл.
Александр Клочков
Приветствую!
Никто не сталкивался с таким вопросом?
Мне нужно скачать данные по валюте , например EUR, с сайта ЦБР. На их сайте есть образец запроса, по которому я могу получить данные в XML в webviewer.
Дальше хотел парсить выражение , которое даёт ЦБР по данному запросу и выуживать курс. Но никак не получается обработать содержимое WebViewer.
Может у кого-то есть решение по автоматизации скачивания курсов валюты?
В темах форума не нашёл.
Александр Клочков
Александр Клочков
apklotchkov@yahoo.com
apklotchkov@yahoo.com
- Nicolai Kant
- Сообщения: 21
- Зарегистрирован: 19 авг 2020, 19:16
Re: Возможно ли скопировать содержимое XML из WebViewer
Дайте название своему webviewer и попробуйте это:
GetLayoutObjectAttribute(objectName;"content")
Обычно это делается с помощью Insert from URL с использованием XSLT
GetLayoutObjectAttribute(objectName;"content")
Обычно это делается с помощью Insert from URL с использованием XSLT
-
- Сообщения: 31
- Зарегистрирован: 12 сен 2017, 04:14
Re: Возможно ли скопировать содержимое XML из WebViewer
Николай. Спасибо! Попробую
Александр Клочков
apklotchkov@yahoo.com
apklotchkov@yahoo.com
-
- Сообщения: 31
- Зарегистрирован: 12 сен 2017, 04:14
Re: Возможно ли скопировать содержимое XML из WebViewer
Николай.
С Inser from url получилось красивее.
Почти то же самое , что и в WebViewer.
Get object attributes тоже сработало, но там вываливается гораздо больше информации.
Ещё раз спасибо!
С Inser from url получилось красивее.
Почти то же самое , что и в WebViewer.
Get object attributes тоже сработало, но там вываливается гораздо больше информации.
Ещё раз спасибо!
Александр Клочков
apklotchkov@yahoo.com
apklotchkov@yahoo.com
-
- Сообщения: 31
- Зарегистрирован: 12 сен 2017, 04:14
Re: Возможно ли скопировать содержимое XML из WebViewer
Николай.
А нет на примете какой-нибудь customs function, с помощью которой можно выделить данные находящиеся между <value> и /<value>?
А нет на примете какой-нибудь customs function, с помощью которой можно выделить данные находящиеся между <value> и /<value>?
Александр Клочков
apklotchkov@yahoo.com
apklotchkov@yahoo.com
-
- Сообщения: 31
- Зарегистрирован: 12 сен 2017, 04:14
Re: Возможно ли скопировать содержимое XML из WebViewer
Нашёл customs function
BetweenOpenCloseTag ( )
На сайте fmfunctions.com
Но что-то она не сработала.
Поэтому сделал сам.
В ближайшее время опишу весь процесс.
BetweenOpenCloseTag ( )
На сайте fmfunctions.com
Но что-то она не сработала.
Поэтому сделал сам.
В ближайшее время опишу весь процесс.
Александр Клочков
apklotchkov@yahoo.com
apklotchkov@yahoo.com
- Nicolai Kant
- Сообщения: 21
- Зарегистрирован: 19 авг 2020, 19:16
Re: Возможно ли скопировать содержимое XML из WebViewer
Большинство кастом функций XML которые я видел, извлекают только один тег с тем же именем, поэтому XSLT более надежен. Я использовал раньше функцию написанную Яном Джемпсоном. Дайте мне знать, если вам все еще она нужна.
-
- Сообщения: 31
- Зарегистрирован: 12 сен 2017, 04:14
Re: Возможно ли скопировать содержимое XML из WebViewer
Николай.
Какая писал , проблему решил.
Но тем не менее всегда интересно изучить ещё более элегантные решения.
Если не трудно , пришлите пожалуйста .
Какая писал , проблему решил.
Но тем не менее всегда интересно изучить ещё более элегантные решения.
Если не трудно , пришлите пожалуйста .
Александр Клочков
apklotchkov@yahoo.com
apklotchkov@yahoo.com
- Nicolai Kant
- Сообщения: 21
- Зарегистрирован: 19 авг 2020, 19:16
Re: Возможно ли скопировать содержимое XML из WebViewer
Я не могу найти функцию Иана, поэтому переписал ее по памяти:
ExtractXMLTag (XML, Tag)
Tag параметр использиет текст без шевронов, например: ExtractXMLTag ( table::xml_filed, "description")
Функция не проверяет правильность XML и игнорирует разницу между заглавными/строчными буквами тега.
Одна из проблем функции то что возвращается только первый тег - оригинал был написан для передачи нескольких параметров скрипта
В последних нескольких версиях ФМП можно использовать while для возврата нескольких тегов с одинаковым именем:
ExtractXMLTagM (XML, Tag)
ExtractXMLTag (XML, Tag)
Код: Выделить всё
Let (
[
openTag = "<" & Tag & ">";
closeTag = "</" & Tag & ">";
start = Position ( XML ; openTag ; 1 ; 1 ) + Length ( openTag );
end = Position ( XML ; closeTag ; 1 ; 1 );
numberOfCharacters = end - start;
result = Middle ( XML ; start ; numberOfCharacters )
]
; result )
Функция не проверяет правильность XML и игнорирует разницу между заглавными/строчными буквами тега.
Одна из проблем функции то что возвращается только первый тег - оригинал был написан для передачи нескольких параметров скрипта
В последних нескольких версиях ФМП можно использовать while для возврата нескольких тегов с одинаковым именем:
ExtractXMLTagM (XML, Tag)
Код: Выделить всё
Let (
[
openTag = "<" & Tag& ">";
closeTag = "</" & Tag& ">";
totalCount = PatternCount ( XML ; openTag );
result = While (
[i=0;
content = ""
] ;
i < totalCount ;
[
i = i+1 ;
start = Position ( XML ; openTag ; 1 ; i ) + Length ( openTag );
end = Position ( XML ; closeTag ; 1 ; i );
numberOfCharacters = end - start;
content = If ( i > 1 ; content & "¶") & Middle ( XML ; start ; numberOfCharacters )
];
content )
];
result )
-
- Сообщения: 31
- Зарегистрирован: 12 сен 2017, 04:14
Re: Возможно ли скопировать содержимое XML из WebViewer
Николай.
Спасибо большое . Изучаю.
Спасибо большое . Изучаю.
Александр Клочков
apklotchkov@yahoo.com
apklotchkov@yahoo.com