Създаване на дименсии по формула от други дименсии

Освен дименсии на база поле от източника на данни, имате възможност да създавате и такива, които са резултат от формула между други дименсии, тъй като не винаги може да задавате изчисляването на дименсия на ниво ред от SQL кода.

Например в анализ „Оборот по обекти“, при заложени агрегатни дименсии „Стойност без ДДС“ и „Количество“, ценен показател за ефективност (KPI) би бил, колко е средната стойност на броя продавана стока (деление между „Стойност без ДДС“ и „Количество“).

Първоначално с избор на бутон от панела с Експертни настройки, отваряте прозореца за създаване на нова дименсия.

Задавате име на дименсията и избирате опцията „Формула между няколко дименсии“. При тази ситуация прозорецът придобива следния изглед:

В дясно е списъка на всички дименсии от конкретния анализ, като имената им са представени, освен на кирилица, така и на латиница с физическите им имена, с които реално ще участват във формулите.

С избор на бутон или двойно кликване върху дадена дименсия, я добавяте в полето за съставяне на формули.

В името на всяка една дименсия се съдържа информация по какво е обобщена - по сума, брой, минимум, максимум, средно аритметично, отклонение, разлика или по конкретно желание на потребителя. Преди да добавите дименсия към формула, трябва да посочите по какво да се обобщава.
Например, при обобщаване по сума името се записва във формулата в следния вид „PivotGridSTOINOST_BEZ_DDS.stSum“.

След избор на дименсиите, задавате съответните аритметични действия, като с бутон винаги може да проверите, дали записаната формула е синтактично вярна (дали има непознати знаци, символи и т.н.).

В съобщението за грешка, освен формулата, се показва и израза, заради който става грешката (със заместени стойности).

За да се избегне конфликт между формула и данни, ако във формулата участва отрицателно число, то програмата го слага автоматично в скоби.

След потвърждаване дименсията е създадена и може да настроите нейните свойства.

Важно:

Задължително дименсиите, които участват във формулата, трябва да са в областта на данните.

Направена е защита, ако дименсия, резултат от формула, е в областта на данните, то да не може да премествате извън тази област дименсиите, които участват във формулата. Ограничението отпада, само когато преместите от там резултатната дименсия. Едва тогава може да размествате и дименсиите от формулата.

В случай, че в областта на „page“ филтрите стоят, както резултатната дименсия, така и една или всички съставляващи, формулата дименсии, то при преместване на резултатната дименсия в областта на данните, дименсиите участващи във формулата, автоматично и те се прехвърлят там.

В случай, че желаете да проверите формула за преглед и/или редакция, трябва да посочите съответната дименсия като елемент в експертните настройки и да изберете бутон , който отваря прозореца за редакция на дименсия.

При зададено действие „деление“ във формулата е възможно да се получи и ситуация „деление на 0“.

За да се избегне това, във формулите може да задавате условия.

Пример за условие - ако сумата на количеството е различно от 0, то се изпълнява зададената формула, в противен случай, резултата е 0:

Условията могат да бъдат доста сложни, да се използват междинни променливи, цикли, да се направят функции (корен квадратен, синус, косинус и др.) и т.н..

За дименсията по формула няма попълнено поле FieldName в DataBinding-а и нейното свойство SummaryType е винаги stCustom, тъй като зад дименсията стои формула, написана от потребителя.
В случай, че за дименсията във FieldName посочите поле от източника на данни и зададете за SummaryType друга настройка, то дименсията се държи като стандартна, без да се взима предвид формулата за нея. Едва когато за SummaryType посочите stCustom, формулата започва да действа и данните за дименсията се преизчисляват.


Създаване на нова дименсия

Основни свойства на дименсиите

Експертни настройки - въведение

Експертни настройки - съдържание

Съдържание