In my aan die gang pogings om die verskaffing van 'n meer bruikbare lookup kolom gebruik van BDC, I hit a wall with the BDC picker. If you haven’t see it, die BDC picker is soortgelyk aan 'n volk plukker, behalwe dat dit werk met kolomme van tipe "bedrijfsgegevens".
Jy toegang tot die plukker deur te kliek op die oop boek ikoon van 'n besigheid datakolom soos getoon:
The above image shows a business data column called "Master Document Id". That column is connected, via BDC, to a web service. The web service returns two columns of information: Document ID and Title. The business purpose here is to provide a "this document is based on" funksie. Users select a "master" dokument en wanneer hulle red, 'n gebeurtenis ontvanger afskrifte meta data velde van die verwysde meester.
By verstek, Die BDC Die plukker lyk soos dit toe ek soek vir 'n dokument wie se ID = "38":
Dit is nuttig, but not good enough. People don’t think in terms of IDs, they think in terms of titles and/or other meta data. The picker allows you to search on other columns (bijv. Titel) maar dit sal nie toon die werklike lys van titels dit gevind, net hul DocId is soos hier gewys word:
(Die skerm geskiet is nie so groot nie want ek het nie 'n soektog wat enige geldige resultate terugkeer kies, maar jy kan sien dat as dit het 'n paar resultate, dit sal eers getoon het DocId se, nie titels).
I searched high and low for the answer to this and failed. My kollega, die eerbiedwaardige Jonathan Bradshaw, had faced and solved this issue. When I reached out to him for help, hy wys my in die regte rigting.
Stel die plukker verskeie kolomme vertoon word via die "ShowInPicker" eiendom in die ADF:
<Eiendom Naam="ShowInPicker" Tipe="System.Boolean">waar</Eiendom>
In meer besonderhede:
<!-- Titel -->
<TypeDescriptor Type Name="System.String" Naam="Titel" >
<LocalizedDisplayNames>
<LocalizedDisplayName LCID="1033">Titel</LocalizedDisplayName>
</LocalizedDisplayNames>
<Eiendomme>
<Eiendom Naam="DisplayByDefault" Tipe="System.Boolean">waar</Eiendom>
<Eiendom Naam="ShowInPicker" Tipe="System.Boolean">waar</Eiendom>
</Eiendomme>
</TypeDescriptor>
Setting this property does introduce a minor problem. As soon as you set it once, you need to set it for every column you want to show. In my geval, BDC picker showed DocId by default. Egter, wanneer ek bygevoeg "ShowInPicker" titel, DocId no longer displayed. I solved that by explicitly setting the ShowInPicker property for Doc ID.
Hier is die resultaat:
(Ek sal verduidelik die vreemd-op soek na "168 – CamlSchema.xsd" construction in a future blog post. In kort, dit is 'n aaneen string wat dit moontlik maak vir 'n effens beter gebruikers ervaring).
Natuurlik, geskryf op hierdie blog inskrywing, Ek het net 'n soektog vir "ShowInPicker" en bevind dat talle treffers, hierdie een ingesluit: http://msdn2.microsoft.com/en-us/library/ms583986.aspx. It explains the meaning of that property along with some other good BDC stuff.
</einde>
Skryf in op my blog!