Arkivji tal-Kategorija: BDC

Tip Quick: BDC Numri Verżjoni ADF Are Friend Your

Jekk int idejn kodifikazzjoni fajls ADF u jagħmlu ħafna tal-kodiċi / importazzjoni / test ċikli, use the version number to make your life easier.

Ddejjaqni li jammettu li, imma sakemm din il-ġimgħa, I was always deleting the ADF and re-importing it. This would break my business data columns and make me re-wire them. All unnecessary.

File this under "it’s obvious once you see it".

Eżempju:

<LobSystem
xmlns:XSi="http://www.w3.org/2001/XMLSchema-instance" XSi:schemaLocation="http://schemas.microsoft.com/office/2006/03/BusinessDataCatalog BDCMetadata.xsd" Tip="Webservice" Verżjoni="1.2.0.0" Isem="xyzzyDocumentReview" xmlns="http://schemas.microsoft.com/office/2006/03/BusinessDataCatalog">

Bidla li verżjoni u ri-importazzjoni u l-kolonna data negozju eżistenti tuża l-verżjoni aġġornata awtomatikament bl-ebda konfigurazzjoni addizzjonali meħtieġa.

</aħħar>

Abbona għall-blog tiegħi.

Tags:

Soluzzjoni: Picker BDC Shows Waħda Biss Kolonna Of Riżultati

In my on-going attempts at providing a more useful lookup column using BDC, I hit a wall with the BDC picker. If you haven’t see it, the BDC picker is similar to a people picker except that it works with columns of type "business data".

You access the picker by clicking on the open book icon of a business data column as shown:

immaġni

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" funzjoni. Users select a "master" document and when they save, an event receiver copies meta data fields from the referenced master.

By default, the BDC picker looks like this when I search for a document whose ID = "38":

clip_image002

That’s helpful, 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 (e.g. Titolu) but won’t show the actual list of titles it found, just their DocId’s as shown here:

clip_image002[1]

(The screen shot isn’t so great because I didn’t pick a search that returns any valid results, but you can see that if it had found some results, it would only have shown DocId’s, not titles).

I searched high and low for the answer to this and failed. Kollega tiegħi, the venerable Jonathan Bradshaw, had faced and solved this issue. When I reached out to him for help, he pointed me in the right direction.

Configure the picker to show multiple columns via the "ShowInPicker" property in the ADF:

<Proprjetà Isem="ShowInPicker" Tip="System.Boolean">vera</Proprjetà>

In more detail:

  <!-- Titolu -->
  <TypeDescriptor TypeName="System.String" Isem="Titolu" >
    <LocalizedDisplayNames>
      <LocalizedDisplayName LCID="1033">Titolu</LocalizedDisplayName>
    </LocalizedDisplayNames>
    <Properties>
      <Proprjetà Isem="DisplayByDefault" Tip="System.Boolean">vera</Proprjetà>
      <Proprjetà Isem="ShowInPicker" Tip="System.Boolean">vera</Proprjetà>
    </Properties>
  </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. Fil-każ tiegħi, BDC picker showed DocId by default. Madankollu, once I added "ShowInPicker" to Title, DocId no longer displayed. I solved that by explicitly setting the ShowInPicker property for Doc ID.

Here is the result:

immaġni

(I’ll explain the odd-looking "168 – CamlSchema.xsd" construction in a future blog post. In short, it’s a concatenated string that allows for a slightly better user experience).

Of course, having written this blog entry, I just did a search for "ShowInPicker" and found numerous hits, including this one: http://msdn2.microsoft.com/en-us/library/ms583986.aspx. It explains the meaning of that property along with some other good BDC stuff.

</aħħar>

Abbona għall-blog tiegħi!

Tags:

Soluzzjoni għall BDC ADF Nuqqas Importazzjoni: “Il-iżball li ġejjin seħħew:”

I kien għal darb'oħra opri fajls ADF BDC bl-idejn (so that I can build up my "get off my lawn!" I) u hit dan l-iżball sabiħ:

immaġni

"Application definition import failed. Il-iżball li ġejjin seħħew:"

Kif tistgħu taraw, hemm żball, iżda … huwa mhux ser tell me dak li huwa.

Fil-każ tiegħi, the issue turned out that I had started off with a functional ADF for a different project that connected to a database and executed a SQL query against a view. In this new project, I am calling a method on a web service. I had stripped out the DB specific stuff and added my web service stuff, but failed to update the <LobSystem>’s Type attribute. I switched it to "WebService" and I happily moved on to newer and more exciting import errors, which were handled in due course.

Here is the wrong LobSystem:

<LobSystem
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance
XSi:schemaLocation=http://schemas.microsoft.com/office/2006/03/BusinessDataCatalogBDCMetadata.xsd
Type="Database"
Version="1.0.0.0" Name="xyzzy"
xmlns="
http://schemas.microsoft.com/office/2006/03/BusinessDataCatalog">

This is correct:

<LobSystem
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance
XSi:schemaLocation=http://schemas.microsoft.com/office/2006/03/BusinessDataCatalogBDCMetadata.xsd
Type="WebService"
Version="1.0.0.0" Name="xyzzy"
xmlns="
http://schemas.microsoft.com/office/2006/03/BusinessDataCatalog">

</aħħar>

Tags:

BDC Tidher ta 'Sostituzzjoni vijabbli għall Lookups

UPDATE: Dan MSDN kollokament għandu xi osservazzjonijiet interessanti mill JXJ bbażati fuq tiegħu, prinċipalment negattiv, esperjenzi jmorru f'din id-direzzjoni: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2623565&SiteID=1

We have a business scenario where we need to link two documents libraries via a common "document ID" qasam.

We often use a lookup column to implements links like this. There are several drawbacks to lookup columns, tlieta minnhom huma:

  1. Only one column from the lookup lookup library can be linked.
  2. Prestazzjoni: The source library could contain hundreds of entries. That’s too many entries in the lookup.
  3. Fittex: There is no integrated search. I don’t mean in the MOSS sense of search, iżda hemm ebda mod biex tfittex / filtru fuq kolonni multipli mill-librerija dokument sors u jillokalizza l-link li trid.

Appoġġjati minn BDC, we can use a "business data" column type and it provides a superior search and even allows multiple columns of data to appear in list views.

I kellna xi suċċess preliminari ma dan l-approċċ u l-pjan li jiktbu aktar dwar dan.

Jekk inti ħadthom ħadem dan l-angolu qabel u xi kummenti, jekk jogħġbok sehem!

</aħħar>

Tags:

Soluzzjoni għall Error Importazzjoni BDC: “Ma kellekx tagħbija Tip deskritt mill TypeName TypeDescriptor tal …”

Stajt ilhom jaħdmu ma BDC llum, coding ADF files by hand and generating myself some errors. One such error:

Definizzjoni applikazzjoni importazzjoni naqset. Il-iżball li ġejjin seħħew: Ma kellekx tagħbija Tip deskritt mill TypeName TypeDescriptor tal. Isem Parametru: Error typeName kienet nqalgħu fil Line jew eżatt qabel: '35’ u Pożizzjoni: ’20’.

MOSS murija dan l-iżball meta I ppruvaw li jimportaw il-fajl XML ADF.

I riċerkati l-internets u sabet li kien I referenzar l-isem istanza LOB (mill- <LobSystemInstance>) fil tiegħi <TypeDescriptor> node meta I għandu jkollhom referenza l-isem LOB innifsu (minn <LobSystem>).

Wrong:

<TypeDescriptor TypeName="Conchango.KeyValue, LOB Isem Istanza" Name="KeyValue">

Ikkoreġi:

<TypeDescriptor TypeName="Conchango.KeyValue, Isem LOB" Name="KeyValue">

Hope dan wieħed jiffranka xi ħadd siegħa jew tnejn ta 'ħin.

</aħħar>

Abbona għall-blog tiegħi!

Tags:

A żball runtime BDC spjegat

I ikkawżat żball BDC din il-ġimgħa li jimmanifesta ruħu fuq l-user interface u fil- 12 doqqajs log fil runtime.

Ewwel, dan deher fil-user interface:

Ma setgħetx issib l-oqsma li tiddaħħal l-valuri Identifikatur b'mod korrett tesegwixxi MethodInstance SpecificFinder ma Isem … Tiżgura Parametri input jkollhom TypeDescriptors assoċjati ma 'kull Identifikatur definit għal dan Entità.

Hawn screen shot:

clip_image001

I tista 'wkoll toħloq dan il-messaġġ li jidhru fil- 12 log doqqajs fil-se (using my patented high-tech-don’t-try-this-at-home "Żbalji misterjuża" metodu):

11/14/2007 09:24:41.27 w3wp.exe (0x080C) 0x0B8C SharePoint Portal Server Business Data 6q4x High Exception in BusinessDataWebPart.OnPreRender: System.InvalidOperationException: Il-valur Identifikatur ”, tat-Tip ”, huwa invalidu. Expected Identifier value of Type ‘System.String’. fil Microsoft.Office.Server.ApplicationRegistry.MetadataModel.Entity.FindSpecific(Għan[] subIdentifierValues, LobSystemInstance lobSystemInstance) fil Microsoft.SharePoint.Portal.WebControls.BdcClientUtil.FindEntity(Entità Entità, Għan[] userValues, LobSystemInstance lobSystemInstance) fil Microsoft.SharePoint.Portal.WebControls.BusinessDataItemBuilder.GetEntityInstance(Ara desiredView) fil Microsoft.SharePoint.Portal.WebControls.BusinessDataDetailsWebPart.GetEntityInstance() fil Microsoft.SharePoint.Portal.WebControls.BusinessDataDetailsWebPart.SetDataSourceProperties()

I mfittxa madwar u sab xi twassal fil- MSDN forum, but they weren’t enough for me to understand what I was doing wrong. I watched a webcast by Ted Pattison li tiegħi kumpanija tkun squirreled bogħod fuq server u daħal li tirrealizza problema tiegħi.

Fil ADF tiegħi, Jien konnessjoni ma 'SQL database kif muri:

            <Proprjetà Isem="RdbCommandText" Tip="System.String">
              <![CDATA[
                TAGĦŻEL
                      , CARRIER_ID, EFFDT, Descr, EFF_STATUS, TAXPAYER_ID, NETWORK_ID, FRT_FORWARD_FLG, ALT_NAME1, ALT_NAME2, LANGUAGE_CD,
                      PAJJIŻ, Address1, ADDRESS2, ADDRESS3, ADDRESS4, BELT, NUM1, NUM2, HOUSE_TYPE, ADDR_FIELD1, ADDR_FIELD2, ADDR_FIELD3,
                      COUNTY, ISTAT, POSTALI, GEO_CODE, IN_CITY_LIMIT, COUNTRY_CODE, PHONE, ESTENSJONI, FAX, LAST_EXP_CHK_DTTM, FREIGHT_VENDOR,
                      INTERLINK_DLL, TMS_EXCLUDE_FLG
                 (nolock)
                FEJN
                  (SETID <> "SHARE") u
                  (ibaxxu(CARRIER_ID) >= Inqas(@ MinID)) u
                  (ibaxxu(CARRIER_ID) <= Inqas(@ MaxId)) u
                  (ibaxxu(Descr) SIMILI inqas(@ InputDescr))
                ]]>
            </Proprjetà>

I kien bil-kondizzjoni li SQL minn persuna DBA u jien mogħtija biex jifhmu li din hija speċjali view they created just for me. The unique key there is CARRIER_ID.

Hawn hu l-bug I introdotti:

      <Identifikaturi>
        <Identifika Isem="CARRIER_ID" TypeName="System.String" />
        <Identifika Isem="Descr" TypeName="System.String" /> 
</Identifikaturi>

X'imkien matul il-linja, I kien irnexxielha jħawdu ruħi fuq it-tifsira ta ' <Identifikaturi> and added DESCR even though it’s not actually an identifier. I took DESCR out of the identifiers set and presto! Dan kollu ħadem.

I hope this saves someone some grief 🙂

BDC ADF u l-ħabib tiegħek, CDATA

Stajt ndunat xi skomdi u bla bżonn bl-idejn kodifikazzjoni ta RdbCommandText fil xi eżempji (inkluża d-dokumentazzjoni MSDN).

Jien ridt li tindika lill-utenti ġodda biex BDC li jikkmanda jistgħu jiġu mgeżwra ġewwa tag CDATA fil-"naturali tagħhom" form. Allura, dan skomdi kostruzzjoni:

<Proprjetà Isem="RdbCommandText" Tip="System.String">
TAGĦŻEL dbo.MCRS_SETTLEMENT.id, dbo.MCRS_SETTLEMENT.settlement minn dbo.MCRS_SETTLEMENT
FEJN (id &gt;= @ MinIDs) U (id &lt;= @ MaxId)
</Proprjetà>

jistgħu jiġu rappreżentati aħjar b'dan il-mod:

<Proprjetà Isem="RdbCommandText" Tip="System.String">
<![CDATA[
TAGĦŻEL dbo.MCRS_SETTLEMENT.id, dbo.MCRS_SETTLEMENT.settlement minn dbo.MCRS_SETTLEMENT
FEJN (id >= @ MinIDs) U (id <= @ MaxId)
]]>
</Proprjetà>

</aħħar>

BDC Eżempju

Intro li BDC

Funzjonali Eżempju: BDC ADF li jgħaqqad lill database SQL ma 'id-utent inkorporat u password

I needed to wire up MOSS to a SQL database via BDC. For testing/POC purposes, I wanted to embed the SQL account user id and password in the ADF. Starting with din it-template (http://msdn2.microsoft.com/en-us/library/ms564221.aspx), I maħluqa b 'ADF li jgħaqqad għal SQL server partikolari istanza u zkuk fl ma' l-id utent speċifiku u password u muri f'dan snippet:

  <LobSystemInstances>
    <LobSystemInstance Isem="ClaimsInstance">
      <Properties>
        <Proprjetà Isem="AuthenticationMode" Tip="System.String">PassThrough</Proprjetà>
        <Proprjetà Isem="DatabaseAccessProvider" Tip="System.String">SqlServer</Proprjetà>
        <Proprjetà Isem="RdbConnection Data Sors" Tip="System.String">server attwali  attwali istanza</Proprjetà>
        <Proprjetà Isem="Catalog inizjali RdbConnection" Tip="System.String">katalogu inizjali nnifisha</Proprjetà>
        <Proprjetà Isem="RdbConnection Integrata Sigurtà" Tip="System.String">SSPI</Proprjetà>
        <Proprjetà Isem="RdbConnection ippuljar" Tip="System.String">falza</Proprjetà>

        <!-- Dawn huma l-valuri ewlenin: -->
        <Proprjetà Isem="User ID RdbConnection" Tip="System.String">aID ctual User</Proprjetà>
        <Proprjetà Isem="Password RdbConnection" Tip="System.String">attwali Password</Proprjetà>
        <Proprjetà Isem="Trusted_Connection RdbConnection" Tip="System.String">falza</Proprjetà>

      </Properties>
    </LobSystemInstance>
  </LobSystemInstances>

Mhuwiex l-aħjar prattika, but it’s useful for a quick and simple configuration for testing. This was surprisingly difficult to figure out. I never found a functional example with search keywords:

  • ADF userid integrati u password
  • ssodata id-utent u password ADF
  • ssodata id-utent u password ADF BDC
  • Sharepoint primer BDC
  • Sharepoint utent embed id u password ADF

</aħħar>

Abbona għall-blog tiegħi.