2014-04-27 4 views
0

J'essaie d'obtenir le nombre de contacts qui ont des activités. Je récupère seulement un attribut dans mon FetchXML "fullname" avec la fonction d'agrégat "count" appliquée sur elle. J'ai aussi une entité de lien avec ActivityParty pour m'assurer que ce contact a des données dans cette table.Obtenez des lignes distinctes avant d'appliquer le nombre agrégé dans FetchXML

Mon problème est que les "nom complet" renvoyés ne sont pas distincts puisque FetchXML répète chaque contact en fonction du nombre d'activités qu'il a. Je ne peux pas résoudre ceci en utilisant "distinct = true" dans mon fetchXML car le "count (fullname)" retourné sera toujours distinct.

Comment puis-je faire en sorte que FetchXML renvoie des noms complets distincts avant de pouvoir compter sur eux?

Voici mon code:

<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='true' aggregate='true'> 
       <entity name='contact'> 
       <attribute name='fullname' aggregate='count' alias='countcontact' /> 
       <filter type='and'> 
        <condition attribute='new_lasttouched' operator='null' /> 
       </filter> 
       <link-entity name='activityparty' from='partyid' to='contactid' alias='am'> 
        <filter type='and'> 
        <condition attribute='participationtypemask' operator='in'> 
         <value>4</value> 
         <value>3</value> 
         <value>6</value> 
         <value>5</value> 
         <value>1</value> 
         <value>2</value> 
        </condition> 
        </filter> 
       </link-entity> 
       </entity> 
      </fetch> 

Répondre

0

Essayez d'ajouter "distincte" d'attribuer l'étiquette, comme ceci:

<attribute name='fullname' aggregate='count' alias='countcontact' distinct='true'/> 
Questions connexes