Question

J'ai 2 listes dans SharePoint 2010.La première liste E répertorie tous les emplacements.

Dans la deuxième liste H, j'utilise la première liste E pour rechercher l'emplacement.Chaque mois, les utilisateurs saisissent des informations dans la liste H.

La liste E a (Emplacement)

La liste H contient (emplacements (recherche dans la liste E), mois, inventaire, nom)

J'ai besoin de savoir quel emplacement N'A PAS fourni d'inventaire ce mois-ci.

J'ai utilisé .net avant et en SQL, l'instruction que j'ai utilisée était

SELECT    E.Canteen_Location
FROM    dbo.v_Location AS E LEFT OUTER JOIN
               dbo.tblInventory AS H ON H.Canteen = E.CanteenNum  And Month=@Month
WHERE (H.Canteen IS NULL)

Nous sommes maintenant passés à SharePoint 2010 et je ne sais pas si cela est possible.Quelqu'un peut-il m'aider avec ça?

Larisa

Était-ce utile?

La solution

Oui, vous pouvez, dans votre Joins nœud ajouter une jointure avec type="LEFT", quelque chose comme ça:

  <Join Type="LEFT" ListAlias="h">
    <Eq>
      <FieldRef Name="Canteen" RefType="Id" />
      <FieldRef List="v_location" Name="CanteenNum" />
    </Eq>
  </Join>

Voici un bon exemple

Vous voudrez peut-être également envisager d'utiliser LINQ vers SharePoint avec SPMétal car cela fournira une syntaxe plus simple pour interroger SharePoint.

La syntaxe avec LINQ ressemblerait à ceci :

var query = from e in db.v_location
            join h in db.tblInventory
               on h.Canteen equals e.CanteenNum into sh
            from x in sh.DefaultIfEmpty()
            where h.Canteen == null
            select new {
               e.Canteen_Location
            }; 

Autres conseils

Larisa,

La requête CAML autorise les jointures GAUCHE en utilisant <Join> étiqueter...Voir Jointures et projections article sur MSDN...

Dans Rejoindre, il y a un Type attribut dont la valeur peut être soit INNER ou LEFT, voir REJOINDRE...

Si vous n'arrivez pas à comprendre, je peux vous donner votre requête CAML complète...Fais-moi savoir!

Licencié sous: CC-BY-SA avec attribution
Non affilié à sharepoint.stackexchange
scroll top