Est-ce possible à l'aide composite rejoint FetchXml dans Microsoft Dynamics CRM 4.0?

StackOverflow https://stackoverflow.com/questions/4046711

  •  27-09-2019
  •  | 
  •  

Question

J'utilise FetchXml à la requête CRM 4.0. Nous avons un cas particulier qui nécessite un composite jointure entre ENTITES CRM. Le schéma FetchXml indique que de multiples éléments liaison entité sont autorisés, et il indique également que le filtre multiple / éléments de l'état peuvent être ajoutés à un lien entité. Le problème que je suis face est que l'attribut de valeur de l'élément de condition ne semble pas permettre un nom entité / colonne. Il attend une valeur explicitement déclarée.

Par exemple, FetchXml vous permet de spécifier ceci:

<link-entity name='myentity' from='column1' to='column2'/>

... qui fait l'équivalent T-SQL de ceci:

JOIN myentity on column1 = column2

Et il vous permet de spécifier ceci:

<link-entity name='myentity' from='column1' to='column2'>
   <filter type='and'>
      <condition attribute='column3' operator='eq' value='myvalue' />
   </filter>
</link>

... qui est l'équivalent T-SQL de ceci:

JOIN myentity on column1 = column2 AND column3 = 'myvalue' 

FetchXml ne semble toutefois pas de fournir un équivalent de ceci:

JOIN myentity on column1 = column2 AND column3 = column4 

Notez la différence. FetchXml prévoit des conditions dans la jointure, mais il ne semble pas prévoir un composite jointure, qui est, une jointure sur plusieurs colonnes.

Quelqu'un at-il là-bas dans le cyberespace été en mesure d'effectuer un composite join En utilisant FetchXml dans CRM 4.0? Merci!

Plus d'informations:

Je chasse une réponse que les utilisations FetchXml pour y parvenir - pas SQL ou la syntaxe QueryExpression. Le SQL ci-dessus est là juste pour expliquer le concept.

Était-ce utile?

La solution

Non, il ne le permet pas. XML est assez Fetch limité en ce qui concerne quoi que ce soit dans la non-base rejoint. Si je suis curieux je teste habituellement ma requête en utilisant Stunnware Outils . Si elle est pas exposée là, il ne peut probablement pas être fait.

Malheureusement, dans des situations comme celles-ci celles-ci je finis habituellement vers le haut (en suis forcé) une approche multiple de requête au problème.

Je sais que vous avez dit que vous n'êtes pas intéressé par cela - mais je suis assez sûr QueryExpression ne traitera pas non plus. Dans mon expérience, il offre seulement un sous-ensemble de la fonctionnalité FetchXML.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top