Forum Discussion

DeEviloN's avatar
DeEviloN
Helper III
4 years ago

Help simplify your request

1. Изм. класс =
var class = [Класс заявителя]
var NV = [Невыход в пробу ИТОГ]
var Uv = [Итог увелич. поступлений]
var Sd = [Новый сдатчик]
var Nd = [Опред н/д]
var Lb = [Опред. ломб.]
var Reg = [Регулярность]
return
SWITCH
(TRUE(),
([Невыход в пробу ИТОГ]="Н/В"&&CALCULATE([Класс заявителя]="Сред. категория риска",PREVIOUSDAY('Добавить1'[Дата выдачи]))) || [Итог увелич. поступлений]="Ув. в 2 и более раз" || [Итог увелич. поступлений]="Ув. в 6 и более раз" || [Новый сдатчик]="Новый заявитель" || [Опред н/д]="Н/Д" || [Опред. ломб.]="Ломбард", "Выс. категория риска",
([Невыход в пробу ИТОГ]="Отсутствие Н/В более 3 сдач"&&CALCULATE([Класс заявителя]="Сред. категория риска",PREVIOUSDAY('Добавить1'[Дата выдачи]))) || ([Невыход в пробу ИТОГ]="Отсутствие Н/В более 3 сдач" && [Класс заявителя]="Сред. категория риска" && [Регулярность]="Регулярнй заявитель") || [Класс заявителя]="Низ. категория риска", "Низ. категория риска",
[Невыход в пробу ИТОГ]="Н/В" || ([Невыход в пробу ИТОГ]="Отсутствие Н/В более 3 сдач" && [Класс заявителя]="Выс. категория риска") || [Итог увелич. поступлений]="-" || [Новый сдатчик]="-" || [Опред н/д]="-" || [Опред. ломб.]="-", "Сред. категория риска",
"Ошибка" )
2.Норма анализа импорт = " Норма анализа для " & IF(AND('Добавить1'[Изм. класс]="Сред. категория риска",'Добавить1'[Опред. металла]="Au иностр." || 'Добавить1'[Опред. металла]="Ag иностр."),"text_1",IF(AND('Добавить1'[Изм. класс]="Выс. категория риска",'Добавить1'[Опред. металла]="Au иностр." || 'Добавить1'[Опред. металла]="Ag иностр."),"text_2",IF(AND('Добавить1'[Изм. класс]="Низ. категория риска",'Добавить1'[Опред. металла]="Au иностр." || 'Добавить1'[Опред. металла]="Ag иностр."),"text_3","text error")))
 
 
the text is large, will this affect performance? If so, how can it be changed to refer to a table for example?

4 Replies

  • Норма анализа импорт =
    " Норма анализа для "
        IF (
            AND (
                'Добавить1'[Изм. класс] = "Сред. категория риска",
                'Добавить1'[Опред. металла] = "Au иностр."
                    || 'Добавить1'[Опред. металла] = "Ag иностр."
            ),
            "text_1",
            IF (
                AND (
                    'Добавить1'[Изм. класс] = "Выс. категория риска",
                    'Добавить1'[Опред. металла] = "Au иностр."
                        || 'Добавить1'[Опред. металла] = "Ag иностр."
                ),
                "text_2",
                IF (
                    AND (
                        'Добавить1'[Изм. класс] = "Низ. категория риска",
                        'Добавить1'[Опред. металла] = "Au иностр."
                            || 'Добавить1'[Опред. металла] = "Ag иностр."
                    ),
                    "text_3",
                    "text error"
                )
            )
        )

     

    can be rewritten as 

     

     

    Норма анализа импорт =
    " Норма анализа для "
        IF (
            'Добавить1'[Опред. металла] = "Au иностр."
                || 'Добавить1'[Опред. металла] = "Ag иностр.",
            SWITCH (
                'Добавить1'[Изм. класс],
                "Сред. категория риска""text_1",
                "Выс. категория риска""text_2",
                "Низ. категория риска""text_3",
                "text error"
            ),
            "text error"
        )

     

    Your other measure fails to render at DAXformatter.com - they seem to not expect some of the cyrillic characters.

    • lbendlin's avatar
      lbendlin
      Super User

      This part

       

      RETURN
          SWITCH (
              TRUE (),
              (
                  [Невыход в пробу ИТОГ] = "Н/В"
                      && CALCULATE (
                          [Класс заявителя] = "Сред. категория риска",
                          PREVIOUSDAY ( 'Добавить1'[Дата выдачи] )
                      )
              )
                  || [Итог увелич. поступлений] = "Ув. в 2 и более раз"
                  || [Итог увелич. поступлений] = "Ув. в 6 и более раз"
                  || [Новый сдатчик] = "Новый заявитель"
                  || [Опред н/д] = "Н/Д"
                  || [Опред. ломб.] = "Ломбард""Выс. категория риска",

       

      is questionable.  I think you may be missing a comparison target.

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi DeEviloN ,

     

    You could use Performance Analyzer to see and record logs that measure how each of your report elements performs when users interact with them, and which aspects of their performance are most (or least) resource intensive.

     

    Refer to:Introducing the Power BI Performance Analyzer - SQLBI

     

    Best Regards,
    Eyelyn Qin
    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi DeEviloN ,

     

    Could you tell me if my post helps you? If it is, kindly Accept it as the solution to make the thread closed. More people will benefit from it.

     

    Best Regards,
    Eyelyn Qin