2017-06-23 3 views
0

je dois comparer:DAX Requête - déclaration CountRows utilisant TÔT

  • Contact Employee ID à EARLIER Contact Employee ID (si elles sont égales)
  • et la différence entre Opendate_Int et EARLIER Opendate_Int (si elle est inférieure ou égale à six puis compter la ligne).

Ma requête (Data est le nom de la table Power Pivot):

=COUNTROWS(FILTER('Data', EARLIER([Contact Employee ID]) = [Contact Employee ID] && EARLIER(Data[OpenDate_Int],[OpenDate_Int]-[OpenDate_Int]) <=6))+1 

Je reçois une erreur:

"The second argument of function EARLIER must be an integer greater than zero."

Pouvez-vous me dire où je me trompe ? Exemple (tables):

This is a sample of the columns I am comparing

Répondre

0

Votre erreur est renvoyée en raison de cette partie de votre mesure:

EARLIER(Data[OpenDate_Int],[OpenDate_Int]-[OpenDate_Int]) 

La fonction TÔT à dax prend deux arguments. Le premier argument est obligatoire et devrait être une colonne. Le deuxième argument est facultatif et doit (le cas échéant) être un entier supérieur à 0. Dans votre déclaration, le second argument est le suivant:

[OpenDate_Int]-[OpenDate_Int] 

qui sera toujours résoudre à 0, parce que vous retranchant essentiellement un certain nombre de lui-même.

Je suppose que ce que vous voulez atteindre est le suivant:

= 
COUNTROWS(
    FILTER(
     'Data', 
     EARLIER([Contact Employee ID]) = [Contact Employee ID] 
     && EARLIER([OpenDate_Int])-[OpenDate_Int]) <=6 
    ) 
)+1 

Cette partie de la déclaration:

&& EARLIER([OpenDate_Int])-[OpenDate_Int]) <=6 

vérifiera si le [OpenDate_Int] soustrait du TÔT [OpenDate_Int] est inférieur ou égal à 6.