Элементы контрольных соотношений: различия между версиями

Материал из OrticonWiki
Перейти к навигации Перейти к поиску
Praktik (обсуждение | вклад)
Нет описания правки
Praktik (обсуждение | вклад)
Нет описания правки
 
Строка 1: Строка 1:


<span style="font-size:150%">Контрольные соотношения</span>
<span style="font-size: 130%">'''Элементы контрольных соотношений'''</span>


В решении контрольные соотношения реализованы в двух вариантах: валидация ин-станса через формулы контрольных соотношений таксономии XBRL и внутренние контрольные соотношения, в общем и целом реализующие логику работы контроль-ных соотношений таксономии для экземпляра отчетных данных в системе (кнопка «Контроль отчетных данных» в форме регламентированного отчета).
'''Формула'''
Оба варианта контрольных соотношений реализуют логику работы с формулой про-верки и переменными, которые в ней участвуют.
 
Формула контрольного соотношения находится в атрибуте «test» основного родительского узла. Формула оперирует выражением на языке X-Formula, включая функции, условные операторы и другие элементы языка. Переменная, ссылающаяся на не-пустой элемент считается в логическом выражении как «Истина», если элемент пустой, то как «Ложь». Контрольное соотношение «$SomeValue» будет истинным в том случае, если переменная ссылается на какой-либо из присутствующих в файле элементов. Если в файле нет элементов, которые бы могли быть извлечены по фильтрам для этой переменной, то подобное выражение ложно.
В выражениях переменные записываются со знака «$» перед именем. Переменные могут быть «локальными» - выбранными фильтрами. Также переменные могут быть «глобальными», которые определяются выражением X-PATH поля «select» подобной переменной.
 
'''Переменная'''
 
Переменные в языке X-Formula определяются через выражение X-PATH к данным, используя общие и локальные фильтры и модификаторы. Задача процессора правильно определить, откуда взять переменную. Обычная переменная ссылается на ка-кой-то факт, который извлекается из инстанса путем запроса к нему. Запрос использует данные концептов и элементов осей, описанных в фильтрах. Совокупность переменных с идентичными данными помещается в оцениваемые наборы, для которых производится вычисление предварительные условий и контрольного соотношения.
Глобальные переменные могут использоваться как внутри переменной для отбора, например, данных только с определенной датой, так и для формирования сообщения о сработавшем контрольном соотношении. Также глобальные переменные могут использоваться и в качестве переменной контрольного соотношения. Отличие только в том, что глобальная переменная не ограничена значением факта – она может ссылаться на любой элемент инстанса (схему, контекст, факт, полученный из инстанса произвольным выражением X-PATH, …), для глобальной переменной нет ограничений – она вычисляется всегда для инстанса.
 
 
'''Предварительные условия'''
 
Предварительное условие – это выражение, которое по синтаксису не отличается от контрольного соотношения, но обратно ему по смыслу. Если при вычислении предварительного условия получилась «Ложь», то контрольное соотношение не оценивается. Если «Истина», то контрольное соотношение вычисляется.
 
 
'''Общие фильтры'''
 
Общие фильтры в контрольных соотношениях работают для всех переменных сразу. Они определяют совокупность измерений для переменных и их концептов. Если в рамках заданного куба необходимо оценить совокупность всех монетарных показателей, то в переменных могут быть описаны только значения измерений (например, компоненты капитала), а совокупность оцениваемых концептов может быть вынесена в общий фильтр. Может быть и наоборот, когда общий фильтр содержит все, участвующие в оценке, элементы осей.





Текущая версия от 17:54, 28 сентября 2020

Элементы контрольных соотношений

Формула

Формула контрольного соотношения находится в атрибуте «test» основного родительского узла. Формула оперирует выражением на языке X-Formula, включая функции, условные операторы и другие элементы языка. Переменная, ссылающаяся на не-пустой элемент считается в логическом выражении как «Истина», если элемент пустой, то как «Ложь». Контрольное соотношение «$SomeValue» будет истинным в том случае, если переменная ссылается на какой-либо из присутствующих в файле элементов. Если в файле нет элементов, которые бы могли быть извлечены по фильтрам для этой переменной, то подобное выражение ложно. В выражениях переменные записываются со знака «$» перед именем. Переменные могут быть «локальными» - выбранными фильтрами. Также переменные могут быть «глобальными», которые определяются выражением X-PATH поля «select» подобной переменной.

Переменная

Переменные в языке X-Formula определяются через выражение X-PATH к данным, используя общие и локальные фильтры и модификаторы. Задача процессора правильно определить, откуда взять переменную. Обычная переменная ссылается на ка-кой-то факт, который извлекается из инстанса путем запроса к нему. Запрос использует данные концептов и элементов осей, описанных в фильтрах. Совокупность переменных с идентичными данными помещается в оцениваемые наборы, для которых производится вычисление предварительные условий и контрольного соотношения. Глобальные переменные могут использоваться как внутри переменной для отбора, например, данных только с определенной датой, так и для формирования сообщения о сработавшем контрольном соотношении. Также глобальные переменные могут использоваться и в качестве переменной контрольного соотношения. Отличие только в том, что глобальная переменная не ограничена значением факта – она может ссылаться на любой элемент инстанса (схему, контекст, факт, полученный из инстанса произвольным выражением X-PATH, …), для глобальной переменной нет ограничений – она вычисляется всегда для инстанса.


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

Предварительное условие – это выражение, которое по синтаксису не отличается от контрольного соотношения, но обратно ему по смыслу. Если при вычислении предварительного условия получилась «Ложь», то контрольное соотношение не оценивается. Если «Истина», то контрольное соотношение вычисляется.


Общие фильтры

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