Dans mes tentatives continue à fournir une colonne de recherche plus utile à l'aide de la BDC, J'ai frappé un mur avec le sélecteur de BDC. Si vous n'avez pas le voir, le sélecteur de BDC est semblable à un sélecteur de personnes sauf qu'elle fonctionne avec les colonnes de type « données entreprises ».
Vous accéder au sélecteur en cliquant sur l'icône du livre ouvert d'une colonne de données d'entreprise comme le montre:
L'image ci-dessus montre une colonne de données d'entreprise appelée « Master Document Id ». Cette colonne est connectée, par l'intermédiaire de BDC, à un service web. Le service web retourne deux colonnes d'informations: Titre et l'ID de document. L'entreprise ici vise à fournir un "ce document est basé sur" fonction. Les utilisateurs sélectionner un maître"" document et quand ils économisent, un récepteur d'événements copie des champs de données meta du maître référencé.
Par défaut, le sélecteur de BDC ressemble à ceci lorsqu'une recherche pour un document dont l'ID = « 38 »:
C'est utile, mais pas assez bon. Les gens ne pense pas qu'en ce qui concerne les IDs, ils pensent en termes de titres et/ou d'autres données meta. Le sélecteur permet d'effectuer des recherches sur les autres colonnes (e.g. Titre) mais ne montrent la liste réelle des titres qu'on trouvé, juste leur DocId s comme indiqué ici:
(La capture d'écran n'est pas si grande parce que je n'avait pas choisir une recherche qui renvoie des résultats valides, mais vous pouvez voir que si on avait trouvé des résultats, Il aurait seulement montré de DocId, pas de titres).
J'ai cherché haut et bas pour la réponse à cela et n'a pas. Mon collègue, le vénérable Jonathan Bradshaw, a face et résolu ce problème. Quand j'ai tendu la main à lui de l'aide, Il m'a fait dans la bonne direction.
Configurer le sélecteur pour afficher plusieurs colonnes par l'intermédiaire de la ShowInPicker »" propriété dans le fichier ADF:
<Propriété Nom="ShowInPicker" Type="System.Boolean">True</Propriété>
Plus de détails:
<!-- Titre -->
<TypeDescriptor TypeName="System.String" Nom="Titre" >
<LocalizedDisplayNames>
<LocalizedDisplayName LCID="1033">Titre</LocalizedDisplayName>
</LocalizedDisplayNames>
<Propriétés>
<Propriété Nom="DisplayByDefault" Type="System.Boolean">True</Propriété>
<Propriété Nom="ShowInPicker" Type="System.Boolean">True</Propriété>
</Propriétés>
</TypeDescriptor>
Définition de cette propriété introduit un problème mineur. Dès que vous le réglez une fois, vous devez définir pour chaque colonne à afficher. Dans mon cas, Sélecteur de BDC a montré DocId par défaut. Cependant, une fois que j'ai ajouté « ShowInPicker" à titre, DocId ne s'affichée plus. J'ai résolu qu'en définissant explicitement la propriété ShowInPicker pour Doc ID.
Voici le résultat:
(J'expliquerai le riche » 168 – CamlSchema.xsd" construction dans un post de blog à venir. En bref, C'est une chaîne concaténée qui permet une légèrement meilleure expérience utilisateur).
Bien sûr, Après avoir écrit cette entrée de blog, J'ai juste fait une recherche pour « ShowInPicker" et a conclu de nombreux hits, y compris ce: http://msdn2.microsoft.com/en-us/library/ms583986.aspx. Il explique la signification de ces biens ainsi que quelques autres bonnes choses de la BDC.
</fin>
S'abonner à mon blog!