AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Функционал
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 19.01.2009, 16:07   #1  
Alenka is offline
Alenka
Участник
 
58 / 25 (1) +++
Регистрация: 19.04.2006
Загрузка курсов валют
Добрый день.
Axapta 3.0
Существует стандартный функционал Главное меню - Основное - Периодические операции - Загрузка курсов валют. Он использует параметры из данных о компании: Ежедневный курс, динамика курса и Шаблон XSL. Какие значения этих параметров нужно указывать? Пробовала для ежедневного курса указать http://www.cbr.ru/scripts/XML_daily.asp - не подходит. Документ XML похоже должен иметь другой вид.
Подскажите, пожалуйста, какие должны быть параметры загрузки?
Старый 19.01.2009, 16:41   #2  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Судя по всему, у Вас не стандартная Аксапта 3.0, а некое Решение. Шаблон XSL при этом указан?
__________________
Ivanhoe as is..
Старый 19.01.2009, 16:56   #3  
Alenka is offline
Alenka
Участник
 
58 / 25 (1) +++
Регистрация: 19.04.2006
упс, действительно. Класс загрузки на bus слое.
Ни одно из значений параметров неизвестно.
Старый 19.01.2009, 17:07   #4  
Red Stranger is offline
Red Stranger
Участник
 
102 / 19 (1) ++
Регистрация: 01.04.2005
Цитата:
Сообщение от Alenka Посмотреть сообщение
документ XML похоже должен иметь другой вид.
Чтобы получить URL для скачивания курсов с сайта cbr.ru я пользуюсь следующим кодом:
X++:
MyUrl = 'http://www.cbr.ru/scripts/XML_dynamic.asp?date_req1='+date2str(dateStart,123,2,2,2,2,4)+'&date_req2='+date2str(dateFinish,123,2,2,2,2,4)+'&VAL_NM_RQ=R0'+int2str(CurrencyCode);

Результатом обращения к серверу cbr.ru по такому URL будет xml документ, который нужно "разобрать" и вытащить необходимые данные.

Upd:
CurrencyCode - это НЕ код валюты в Axapta
Старый 19.01.2009, 18:38   #5  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Цитата:
Сообщение от Alenka Посмотреть сообщение
упс, действительно. Класс загрузки на bus слое.
Ни одно из значений параметров неизвестно.
У вас, случайно, не решение для Ритейла? Видел похожие настройки, может поможет такой файлик (сохранить и указать как Шаблон XSL):

X++:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">

<xsl:template match="ValCurs">
	<xsl:choose>
		<xsl:when test="@name='Foreign Currency Market'">
			<ExchRates>
				<xsl:apply-templates mode="Valute"/>
			</ExchRates>
		</xsl:when>
		<xsl:when test="@name='Foreign Currency Market Dynamic'">
			<ExchRates>
				<xsl:apply-templates mode="Dynamic"/>
			</ExchRates>
		</xsl:when>
	</xsl:choose>
</xsl:template>

<!--     
	[url]http://www.cbr.ru/scripts/XML_daily.asp?date_req=02/03/2002[/url]
	   
	[url]http://www.cbr.ru/scripts/XML_daily.asp[/url]
-->
<xsl:template match="Valute" mode="Valute">
	<ExchRate id="{normalize-space(@ID)}">
		 <FromDate><xsl:value-of select="//ValCurs/@Date"/></FromDate>
		 <ExchRate><xsl:value-of select="translate(Value, ',', '.') * 100 div Nominal"/></ExchRate>
		 <CurrencyCode><xsl:value-of select="CharCode"/></CurrencyCode>
		 <ID><xsl:value-of select="normalize-space(@ID)"/></ID>
	</ExchRate>
</xsl:template>

<!--      
	[url]http://www.cbr.ru/scripts/XML_dynamic.asp?date_req1=01/05/2005&date_req2=14/06/2005&VAL_NM_RQ=R01235[/url]
-->
<xsl:template match="Record" mode="Dynamic">
	<ExchRate id="{normalize-space(@Id)}">
		 <FromDate><xsl:value-of select="@Date"/></FromDate>
		 <ExchRate><xsl:value-of select="translate(Value, ',', '.') * 100 div Nominal"/></ExchRate>
		 <ID><xsl:value-of select="normalize-space(@Id)"/></ID>
	</ExchRate>
</xsl:template>

</xsl:stylesheet>
__________________
Ivanhoe as is..
За это сообщение автора поблагодарили: Alenka (1).
Старый 20.01.2009, 11:50   #6  
Alenka is offline
Alenka
Участник
 
58 / 25 (1) +++
Регистрация: 19.04.2006
Да, у нас ритейловское решение. Из файла пришлось удалить строки

Код:
 
<!-- Получение котировок на заданный день
http://www.cbr.ru/scripts/XML_daily.asp?date_req=02/03/2002
на текущую дату 
http://www.cbr.ru/scripts/XML_daily.asp
-->
и
Код:
 
<!-- Динамика курса за указанный промежуток времени
http://www.cbr.ru/scripts/XML_dynamic.asp?date_req1=01/05/2005&date_req2=14/06/2005&VAL_NM_RQ=R01235
-->
После этого все заработало!
Спасибо всем за помощь.
Теги
ax3.0, загрузка данных, курс

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Загрузка валют с сайта ЦБ natterru DAX: Администрирование 31 17.11.2020 07:29
загрузка валют с сайта ЦБ в Axapta 4.0 Jup DAX: Программирование 3 08.10.2008 18:09
Кэширование курсов валют Tony Green DAX: Программирование 8 09.02.2007 10:02
Закачка курсов валют с Интернета. Hans DAX: Программирование 1 22.09.2006 12:08
Валюты и курсы валют Rafael DAX: Функционал 1 13.02.2002 19:19
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 16:34.