===== Създаване на дименсии по формула от други дименсии ===== Освен [[dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:nova_dimensia|дименсии на база поле от източника на данни]], имате възможност да създавате и такива, които са резултат от **формула между други дименсии**, тъй като не винаги може да задавате изчисляването на дименсия на ниво ред от SQL кода. Например в анализ **"Оборот по обекти"**, при заложени агрегатни дименсии **"Стойност без ДДС**" и **"Количество"**, ценен показател за ефективност (KPI) би бил, колко е **средната стойност на броя продавана стока** (деление между "Стойност без ДДС" и "Количество"). {{:dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:primer_za_neobhodimost_ot_formula.jpg|}} Първоначално с избор на бутон {{:dopalnitelni_moduli:selmatic_plus_analizi:buton_dobavi_dimensia.jpg|}} от панела с [[dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki|Експертни настройки]], отваряте прозореца за създаване на **нова дименсия**. {{:dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:dobaviane_na_dimensia_new.jpg|}} Задавате **име на дименсията** и избирате опцията **"Формула между няколко дименсии"**. При тази ситуация прозорецът придобива следния изглед: {{:dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:ekran_pri_nova_dimensia_s_formula_1.jpg|}} В дясно е списъка на всички дименсии от конкретния анализ, като имената им са представени, освен на кирилица, така и на латиница с физическите им имена, с които реално ще участват във формулите. С избор на бутон {{:dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:buton_dobavi_kam_formulata.jpg|}} или двойно кликване върху дадена дименсия, я добавяте в полето за съставяне на формули. {{:dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:primer_na_formula.jpg|}} В името на всяка една дименсия се съдържа информация по какво е обобщена - по **сума, брой, минимум, максимум, средно аритметично, отклонение, разлика или по конкретно желание на потребителя**. **Преди да добавите** дименсия към формула, трябва да посочите по какво да се **обобщава**. \\ Например, при обобщаване по **сума** името се записва във формулата в следния вид "PivotGridSTOINOST_BEZ_DDS.**stSum**". {{:dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:spisak_na_vzemi_dimensiata_kato.jpg|}} След избор на дименсиите, задавате съответните аритметични действия, като с бутон {{:dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:buton_proverka.jpg|}} винаги може да проверите, дали записаната формула е **синтактично вярна** (дали има непознати знаци, символи и т.н.). {{:dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:saobstenie_za_viarna_formula.jpg|}} {{:dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:saobstenie_za_greshna_formula_s_opisanie.jpg|}} В съобщението за грешка, освен **формулата**, се показва и **израза**, заради който става грешката (със заместени стойности). За да се избегне **конфликт между формула и данни**, ако във формулата участва **отрицателно число**, то програмата го слага автоматично в **скоби**. След потвърждаване дименсията е създадена и може да настроите нейните [[dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:osnovni_svojstva|свойства]]. {{:dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:primerni_danni_s_dimensia_s_formula.jpg|}} Задължително **дименсиите**, които участват **във формулата**, трябва да са **в областта на данните**. Направена е защита, ако **дименсия**, резултат **от формула**, **е в областта на данните**, то да **не може да премествате извън тази област дименсиите**, които участват във формулата. Ограничението отпада, само когато преместите от там резултатната дименсия. Едва тогава може да размествате и дименсиите от формулата. В случай, че в областта на "page" филтрите стоят, както **резултатната дименсия**, така и една или всички **съставляващи, формулата дименсии**, то при **преместване на резултатната дименсия в областта на данните**, **дименсиите участващи във формулата**, автоматично и те се **прехвърлят** там. В случай, че желаете да проверите **формула за преглед и/или редакция**, трябва да посочите съответната дименсия като елемент в експертните настройки и да изберете бутон {{:dopalnitelni_moduli:selmatic_plus_analizi:buton_redakcia_na_formula.jpg|}}, който отваря прозореца за редакция на дименсия. {{:dopalnitelni_moduli:selmatic_plus_analizi:redakcia_na_formula.jpg|}} /*Тъй като е възможно да възникне **конфликт между формула и данни**, Ви препоръчваме, във **формулите** да използвате **скоби**. Например, ако имате **отрицателни количества**, при поставяне на дименсията в областта на данните, може да излезне грешка - напр. 100 /-10 или ако напишете "X-Y" и Y е отрицателно число, би се получило "X - - Y".*/ При зададено действие **"деление"** във формулата е възможно да се получи и ситуация **"деление на 0"**. За да се избегне това, във формулите може да задавате **условия**. //**Пример за условие**// - ако **сумата на количеството е различно от 0**, то се изпълнява зададената формула, в противен случай, резултата е 0: {{:dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:formula_s_uslovie_new.jpg|}} {{:dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:primer_pri_kol_0_neww.jpg|}} Условията могат да бъдат доста сложни, да се използват междинни променливи, цикли, да се направят функции (корен квадратен, синус, косинус и др.) и т.н.. За **дименсията по формула** няма попълнено поле **FieldName** в **DataBinding**-а и нейното [[dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:osnovni_svojstva|свойство]] **SummaryType** е винаги **stCustom**, тъй като зад дименсията стои формула, написана от потребителя. \\ В случай, че за дименсията във FieldName посочите поле от източника на данни и зададете за SummaryType друга настройка, то дименсията се държи като стандартна, без да се взима предвид формулата за нея. Едва когато за **SummaryType** посочите **stCustom**, формулата започва да действа и данните за дименсията се преизчисляват. -------------------- [[dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:nova_dimensia|Създаване на нова дименсия]] [[dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:osnovni_svojstva|Основни свойства на дименсиите]] [[dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki|Експертни настройки - въведение]] [[dopalnitelni_moduli:selmatic_plus_analizi:advance_nastrojki:sadarzanie|Експертни настройки - съдържание]] [[dopalnitelni_moduli:selmatic_plus_analizi:vavedenie|Съдържание]]