Поделиться через


Конвертация валют в службах Analysis Services

Применимо к: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Службы Analysis Services используют сочетание функций, управляемых скриптами многомерных выражений , для обеспечения поддержки конвертации валют в моделях данных, поддерживающих несколько валют.

Терминология конвертации валюты

Для описания функций конвертации валют используется следующая терминология:

Сводные валюты — валюта, по отношению к которой вводятся обменные курсы в группе мер курса.

Местная валюта — это валюта, используемая для хранения транзакций, на которых основаны меры для преобразования.

Местную валюту можно определить по:

  • Идентификатором валюты в таблице фактов, хранимым вместе с транзакцией, как это обычно бывает в банковских приложениях, в которых сама транзакция идентифицирует используемую для нее валюту.

  • Идентификатором валюты, связанным с атрибутом в таблице измерения, который затем связывается с транзакцией в таблице фактов, как это обычно бывает в финансовых приложениях, где местоположение или другой идентификатор, например дочерняя компания, идентифицирует валюту, используемую для соответствующей транзакции.

Валюта отчетности . Валюта, в которую преобразуются транзакции из валюты сводных данных.

Примечание

Для конвертаций валют «многие к одному» основная валюта и валюта отчета одинаковы.

Измерение валюты — измерение базы данных, определенное со следующими параметрами:

  • Свойству Type измерения присвоено значение Currency.

  • Свойству Type одного из атрибутов измерения присвоено значение CurrencyName.

Значения этого атрибута должны использоваться во всех столбцах, которые должны содержать идентификатор валюты.

Группа мер скорости — группа мер в кубе, определенная со следующими параметрами:

  • Существует связь обычного измерения между измерением валют и группой мер курсов.

  • Существует связь обычного измерения между измерением времени и группой мер курсов.

  • Дополнительно свойство Type установлено равным ExchangeRate. В то время как мастер бизнес-аналитики использует связи с измерениями валют и времени для идентификации вероятных групп мер курсов, установка свойства Type равным ExchangeRate позволяет клиентским приложениям легче идентифицировать группы мер курсов.

  • Одна или несколько мер, представляющих обменные курсы, содержащиеся в группе мер курсов.

Измерение валюты отчетов . Измерение, определенное мастером бизнес-аналитики после конвертации валюты, которое содержит отчеты о валютах для этой конвертации. Измерение валют отчета основано на именованном запросе, определенном в представлении источника данных, на котором основано измерение валют, связанное с группой мер курсов, из главной таблицы измерения валют. Это измерение определено со следующими настройками.

  • Свойству Type измерения присвоено значение Currency.

  • Свойству Type ключевого атрибута измерения присвоено значение CurrencyName.

  • Свойству Type одного из атрибутов измерения присвоено значение CurrencyDestination, и столбец, связанный с атрибутом, содержит идентификаторы валют, представляющие валюты отчета для этой конвертации валюты.

Определение конвертации валют

Вы можете использовать мастер бизнес-аналитики для определения функций конвертации валюты или вручную определить конвертацию валют с помощью скриптов многомерных выражений.

Предварительные требования

Перед определением конвертации валюты с помощью мастера бизнес-аналитики необходимо сначала определить по крайней мере одно измерение валюты, по крайней мере одно измерение времени и по крайней мере одну группу мер ставки. Из этих объектов мастер бизнес-аналитики может получать данные и метаданные, используемые для построения измерения валют отчета и скрипта многомерных выражений, необходимых для обеспечения функционала конвертации валют.

Решения

Необходимо принять следующие решения перед тем, как мастер бизнес-аналитики сможет построить измерение валют отчета и скрипт многомерных выражений, необходимые для обеспечения функционала конвертации валют.

  • Направление обменного курса

  • Конвертируемые элементы

  • Тип конвертации

  • Местные валюты

  • Валюты отчета.

Направления обменного курса

Группа мер курсов содержит меры, представляющие обменные курсы между местными валютами и основной валютой (обычно называемой корпоративной валютой). Сочетание направления обменного курса и типа конвертации определяет операцию, выполняемую по отношению к мерам, подлежащим конвертации скриптом многомерных выражений, сформированным с использованием мастера бизнес-аналитики. В следующей таблице содержатся описания операций, выполняемых в зависимости от направления обменного курса и типа конвертации, на основе параметров направления обменного курса и направлений конвертации, доступных в мастере бизнес-аналитики.

«многие к одному» Один ко многим "Много ко многим"
n в основной валюте к 1 в валюте образца Умножьте показатель, подлежащий конвертации, на показатель обменного курса для местной валюты, чтобы сконвертировать эту меру в основную валюту. Разделите меру, подлежащую конвертации, на меру обменного курса для валюты отчета, чтобы сконвертировать эту меру в основную валюту. Умножьте меру, подлежащую конвертации, на меру обменного курса для местной валюты, чтобы сконвертировать эту меру в основную валюту, затем разделите сконвертированную меру на меру обменного курса для валюты отчета, чтобы сконвертировать эту меру в валюту отчета.
n в валюте образца к 1 в основной валюте Разделите меру, подлежащую конвертации, на меру обменного курса для местной валюты, чтобы сконвертировать эту меру в основную валюту. Умножьте меру, подлежащую конвертации, на меру обменного курса для валюты отчета, чтобы сконвертировать эту меру в основную валюту. Разделите меру, подлежащую конвертации, на меру обменного курса для местной валюты, чтобы сконвертировать эту меру в основную валюту, затем умножьте сконвертированную меру на меру обменного курса для валюты отчета, чтобы сконвертировать эту меру в валюту отчета.

Направление обменного курса выбирается на странице Установка параметров конвертации валют мастера бизнес-аналитики. Дополнительные сведения о настройке направления преобразования см. в разделе Настройка параметров конвертации валюты (мастер бизнес-аналитики).

Конвертируемые элементы

Можно использовать мастер бизнес-аналитики, чтобы указать, какие меры из группы мер курсов используются для конвертации значений для:

  • Меры в других группах мер;

  • элементов в иерархии атрибутов для атрибута счета в измерении базы данных;

  • типов счетов, используемых элементами иерархии атрибутов для атрибута счета в измерении базы данных.

Мастер бизнес-аналитики использует эти данные в скрипте многомерных выражений, сформированном мастером, чтобы определить область вычислений конвертации валют. Дополнительные сведения об указании членов для конвертации валюты см. в разделе Выбор участников (мастер бизнес-аналитики).

Типы преобразования

Мастер бизнес-аналитики поддерживает три различных типа конвертации валют.

  • «Один ко многим»

    Транзакции хранятся в таблице фактов в основной валюте, а затем конвертируются в одну или несколько валют отчета.

    Например, в качестве основной валюты может быть установлен доллар США (USD), и в таблице фактов хранятся транзакции в долларах США. Этот тип конвертации конвертирует эти транзакции из основной валюты в указанные валюты отчета. В результате эти транзакции можно хранить в указанной основной валюте и просматривать либо в указанной основной валюте, либо в одной из валют отчета, указанных в измерении валют отчета, определенном для конвертации валют.

  • «многие к одному»

    Транзакции хранятся в таблице фактов в местных валютах, а затем конвертируются в основную валюту. Основная валюта служит в качестве единственной указанной валюты отчета в измерении валют отчета.

    Например, в качестве основной валюты может быть установлен доллар США (USD), а в таблице фактов хранятся транзакции в евро (EUR), австралийских долларах (AUD) и мексиканских песо (MXN). Этот тип конвертации конвертирует эти транзакции из их указанных местных валют в основную валюту. В результате эти транзакции можно хранить в указанных местных валютах и просматривать в основной валюте, которая указана в измерении валют отчета, определенном для конвертации валют.

  • "Много ко многим"

    Транзакции хранятся в таблице фактов в местных валютах. Функционал конвертации валют конвертирует подобные транзакции в основную валюту, а затем в одну или несколько валют отчета.

    Например, в качестве основной валюты может быть установлен доллар США (USD), а в таблице фактов хранятся транзакции в евро (EUR), австралийских долларах (AUD) и мексиканских песо (MXN). Этот тип конвертации конвертирует эти транзакции из их указанных местных валют в основную валюту, а затем сконвертированные транзакции конвертируются вновь из основной валюты в указанные валюты отчета. В результате эти транзакции можно хранить в указанных местных валютах и просматривать либо в указанной основной валюте, либо в любой из валют отчета, указанных в измерении валют отчета, определенном для конвертации валют.

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

Местные валюты

При выборе типа конвертации «многие ко многим» или «многие к одному» для конвертации валют необходимо указать способ идентификации местных валют, на основе которых скрипт многомерных выражений, сформированный мастером бизнес-аналитики, выполняет вычисления конвертации валют. Местная валюта для транзакции в таблице фактов может быть идентифицирована одним из двух способов.

  • Группа мер содержит связь обычного измерения с измерением валют. Например, в примере базы данных Adventure Works DW Multidimensional 2012 SQL Server Analysis Services группа мер Интернет-продажи имеет регулярное отношение измерения к измерению Currency. Таблица фактов для группы мер содержит внешний ключевой столбец, который связывает идентификаторы валют в таблице измерений и это измерение. В этом случае можно выбрать атрибут из измерения валют, на который ссылается группа мер, чтобы идентифицировать местную валюту для транзакций в таблице фактов для этой группы мер. Эта ситуация наиболее часто возникает в банковских приложениях, где сама транзакция определяет используемую в ней валюту.

  • Группа мер содержит ссылочную связь измерений с измерением валют через другое измерение, которое непосредственно ссылается на измерение валют. Например, в примере многомерной базы данных Adventure Works DW 2012 SQL Server Analysis Services группа мер "Финансовая отчетность" имеет упоминаемую связь измерения с измерением "Валюта" через измерение "Организация". Таблица фактов для этой группы мер содержит внешний ключевой столбец, который ссылается на элементы в таблице измерения «Организация». Таблица измерения «Организация», в свою очередь, содержит внешний ключевой столбец, который ссылается на идентификаторы валют в таблице измерения «Валюта». Эта ситуация наиболее часто возникает в приложениях для финансовой отчетности, где местоположение дочерней компании, участвующей в транзакции, определяет валюту для этой транзакции. В этом случае можно выбрать атрибут, который ссылается на измерение валют из измерения для бизнес-сущности.

Валюты отчета.

При выборе типа конвертации «многие ко многим» или «один ко многим» для конвертации валют необходимо указать валюты отчета, на основе которых скрипт многомерных выражений, сформированный мастером бизнес-аналитики, выполняет вычисления конвертации валют. Можно либо указать все элементы измерения валют, связанные с группой мер курсов, либо выбрать отдельные элементы из измерения.

Мастер бизнес-аналитики создает измерение валют отчета на основе именованного запроса, построенного из таблицы измерения валют с использованием выбранных валют отчета.

Примечание

При выборе типа конвертации «один ко многим» также создается измерение валют отчета. Это измерение содержит только один элемент, представляющий основную валюту, поскольку она также используется в качестве валюты отчета для конвертации «один ко многим».

Для каждой определенной конвертации валют определяется отдельное измерение валюты отчетов. Можно изменить имена измерений валют отчета после их создания, но при этом необходимо также обновить скрипт многомерных выражений, сформированный для этой конвертации валют, чтобы гарантировать использование правильного имени командой скрипта при ссылке на измерение валют отчета.

Определение конвертации нескольких валют

Используя мастер бизнес-аналитики, можно определить столько конвертаций валют, сколько необходимо для решения бизнес-аналитики. Можно либо перезаписать существующую конвертацию валют, либо добавить новую конвертацию валют в скрипт многомерных выражений. Конвертация нескольких валют обеспечивает гибкость в приложениях бизнес-аналитики, которые имеют сложные требования к отчетности, такие как приложения финансовой отчетности, которые поддерживают несколько отдельных требований к конвертации для международной отчетности.

Конвертация валют в многомерных моделях с помощью мастера бизнес-аналитики

Мастер бизнес-аналитики идентифицирует каждую конвертацию валют по разбиению команд скрипта для конвертации валют следующими комментариями:

//<Currency conversion>

...

[MDX statements for the currency conversion]

...

//</Currency conversion>

При изменении или удалении этих комментариев мастер бизнес-аналитики не способен обнаружить конвертацию валют, поэтому эти комментарии изменять не следует.

Мастер также хранит метаданные в комментариях внутри этих комментариев, включая дату и время создания, пользователя и тип конвертации. Эти комментарии также не следует изменять, поскольку мастер бизнес-аналитики использует эти метаданные при отображении существующих конвертаций валют.

При необходимости можно изменять команды скрипта, содержащиеся в конвертации валют. Однако при перезаписи конвертации валют эти изменения будут утеряны.

См. также раздел

Сценарии глобализации для служб Analysis Services