Позвольте мне начать со слов благодарности за то, что нашли время, чтобы прочитать это.
Я создаю документ XBRL, используя Altova Stylevision. Я правильно ввел таксономию XBRL и так далее. Я создаю несколько круговых диаграмм, чтобы показать 1, доход от продаж для трех компаний и % дохода от продаж, которым владеет каждая компания, от всей суммы. Я делаю то же самое с валовой прибылью.
Мой счет COGS — 400020, а мой счет доходов от продаж — 800000.
Следующий код используется для разделения трех компаний, которые я сравниваю:
for $i in distinct-values($XBRL/xbrli:xbrl/gl-cor:accountingEntries/gl-cor:entryHeader/gl-cor:entryDetail/gl-cor:identifierReference/gl-cor:identifierCode) return $i
Следующий код вычисляет доход от продаж
sum($XBRL/xbrli:xbrl/gl-cor:accountingEntries/gl-cor:entryHeader/gl-cor:entryDetail[gl-cor:account/gl-cor:accountMainID='800000' and gl-cor:identifierReference/gl-cor:identifierCode=current() ]/gl-cor:amount)
Следующий код вычисляет % от общего дохода от продаж для каждой компании.
round-half-to-even(sum($XBRL/xbrli:xbrl/gl-cor:accountingEntries/
gl-cor:entryHeader/gl-cor:entryDetail[gl-cor:account/gl-cor:accountMainID='800000' and gl-cor:identifierReference/gl-cor:identifierCode=current() ]/gl-cor:amount)
div sum($XBRL/xbrli:xbrl/gl-cor:accountingEntries/gl-cor:entryHeader/gl-cor:entryDetail[gl-cor:account/gl-cor:accountMainID='800000' ]/gl-cor:amount)
* 100, 1)
Следующий код вычисляет валовую прибыль
sum($XBRL/xbrli:xbrl/gl-cor:accountingEntries/gl-cor:entryHeader/gl-cor:entryDetail[gl-cor:account/gl-cor:accountMainID='800000' and gl-cor:identifierReference/gl-cor:identifierCode=current() ]/gl-cor:amount)
-sum($XBRL/xbrli:xbrl/gl-cor:accountingEntries/gl-cor:entryHeader/gl-cor:entryDetail[gl-cor:account/gl-cor:accountMainID='400020' and gl-cor:identifierReference/gl-cor:identifierCode=current() ]/gl-cor:amount)
Код, по сути, представляет собой сумму моего счета доходов от продаж на компанию в текущее время - сумму моего счета стоимости проданных товаров на компанию в текущее время.
Весь этот код выше работает, ура!
Когда я подсчитываю маржу валовой прибыли, моя голова взрывается, ха-ха. Я думал, что смогу сделать что-то похожее на код % от общего дохода от продаж, но я просто не могу этого понять.
Это код, который у меня есть, но он неправильно рассчитывает % валовой прибыли.
round-half-to-even(sum($XBRL/xbrli:xbrl/gl-cor:accountingEntries/gl-cor:entryHeader/gl-cor:entryDetail[gl-cor:account/gl-cor:accountMainID='800000' and gl-cor:identifierReference/gl-cor:identifierCode=current() ]/gl-cor:amount)
-sum($XBRL/xbrli:xbrl/gl-cor:accountingEntries/gl-cor:entryHeader/gl-cor:entryDetail[gl-cor:account/gl-cor:accountMainID='400020' and gl-cor:identifierReference/gl-cor:identifierCode=current() ]/gl-cor:amount))
div sum($XBRL/xbrli:xbrl/gl-cor:accountingEntries/gl-cor:entryHeader/gl-cor:entryDetail[gl-cor:account/gl-cor:accountMainID='800000' ]/gl-cor:amount)
- sum($XBRL/xbrli:xbrl/gl-cor:accountingEntries/gl-cor:entryHeader/gl-cor:entryDetail[gl-cor:account/gl-cor:accountMainID='400020' ]/gl-cor:amount) * 100, 1
Я думаю, что проблема в том, что я делю сумму своей учетной записи доходов - учетную запись COGS, но тег div находится только перед частью отчета о доходах. Однако, как бы я ни пытался написать оператор, я получаю сообщение об ошибке, которое даже не вернет результат, если я не наберу его таким образом. Результаты, которые он выводит, представляют собой % от сотен тысяч и второй процент от 1 для каждой компании. Очевидно, что он должен выводить только один процент для каждой компании, что в сумме составляет три процента.
Я не совсем уверен, что делать дальше, и я очень надеюсь, что это просто синтаксическая ошибка, но любая помощь с синтаксисом или переписывание оператора приветствуется!
Спасибо, Джоэл