Доступ к предыдущей записи для сравнения значения в DAX POWER BI - PullRequest
0 голосов
/ 04 мая 2018

Мне нужно получить доступ к предыдущей записи столбца DTH_REFER_PEDID, чтобы сравнить IF (DTH_REFER_PEDID-1 <> "A"). То есть я читаю индекс X, мне нужно сравнить с индексом X-1

enter image description here

Addition_Stats = VAR Atendido_OV = PR_HIST_MOVIM_PEDID[OVITEM_Hist]
VAR linha_anterior2 = CALCULATE(values(PR_HIST_MOVIM_PEDID[STA_ITEM_PEDCL]);filter(PR_HIST_MOVIM_PEDID;EARLIER(PR_HIST_MOVIM_PEDID[DTH_REFER_PEDID])))      
Return 
                       if(PR_HIST_MOVIM_PEDID[DTH_REFER_PEDID].[Month]<PR_HIST_MOVIM_PEDID[DAT_MAIOR_PLANE].[Month];"Atraso mês ant";
                            if(PR_HIST_MOVIM_PEDID[STA_ITEM_PEDCL] = "A" && PR_HIST_MOVIM_PEDID[DTH_REFER_PEDID].[Day]<=PR_HIST_MOVIM_PEDID[DAT_MAIOR_PLANE].[Day];"Atendido no Prazo";
                                 if((PR_HIST_MOVIM_PEDID[STA_ITEM_PEDCL]="P"||PR_HIST_MOVIM_PEDID[STA_ITEM_PEDCL]="L") && PR_HIST_MOVIM_PEDID[DTH_REFER_PEDID].[Day]<= PR_HIST_MOVIM_PEDID[DAT_MAIOR_PLANE].[Day];"Planejado no prazo";
                                      if(PR_HIST_MOVIM_PEDID[STA_ITEM_PEDCL]<>"A" && PR_HIST_MOVIM_PEDID[DTH_REFER_PEDID].[Day]>PR_HIST_MOVIM_PEDID[DAT_MAIOR_PLANE].[Day];"Em atraso";
                                             if(PR_HIST_MOVIM_PEDID[STA_ITEM_PEDCL] = "A" 
                                                  &&  linha_anterior2 <>"A"
                                                  && PR_HIST_MOVIM_PEDID[DTH_REFER_PEDID].[Day]>PR_HIST_MOVIM_PEDID[DAT_MAIOR_PLANE].[Day];"Atend fora Prazo"
                                               
                                                      ;IF((PR_HIST_MOVIM_PEDID[OVITEM_Hist]=Atendido_OV)&&(PR_HIST_MOVIM_PEDID[DTH_REFER_PEDID]>FIRSTDATE(PR_HIST_MOVIM_PEDID[DTH_REFER_PEDID].[Date]));"A retido";"NA")
                                               )
                                        )
                                    )
                               )
                      )
        
//)

Отображаемая ошибка: A circular dependency has been detected: PR_HIST_MOVIM_PEDID [Addition_Stats].

Как мне сравнить DTH_REFER_PEDID-1 <> "A"?

1 Ответ

0 голосов
/ 05 апреля 2019

Простой способ работы с предыдущими или следующими записями: Убедитесь, что ваши данные находятся в таблице с первичным ключом (= ID) Сделайте запрос со всеми полями, как в вашей таблице, и добавьте один столбец с ID + 1. (или ID-1) Сделайте другой запрос с таблицей и запросом, упомянутым выше, и сделайте соединение между ID и ID + 1 (или ID-1). Поместите все поля таблицы и 1-го запроса, и вы получите все значения в 1 записи. Таким образом, вы можете работать с предыдущими или следующими значениями.

...