શ્રેણી આર્કાઇવ્ઝ: BDC

ઝડપી મદદ: BDC ADF આવૃત્તિ નંબર તમારો મિત્ર છે

જો તમે છો ADF ફાઈલો હાથ કોડિંગ અને કોડ ઘણો / ચક્ર આયાત / પરીક્ષણ કરવાનું, use the version number to make your life easier.

હું તે સ્વીકાર્યું અપ્રિય, પરંતુ જ્યાં સુધી આ અઠવાડિયે, 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".

ઉદાહરણ:

<LobSystem
xmlns:xsi="HTTP://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="HTTP://schemas.microsoft.com/office/2006/03/BusinessDataCatalog BDCMetadata.xsd" પ્રકાર="WebService" આવૃત્તિ="1.2.0.0" નામ="xyzzyDocumentReview" xmlns="HTTP://schemas.microsoft.com/office/2006/03/BusinessDataCatalog">

કે આવૃત્તિ અને ફરીથી આયાત બદલો અને હાલની બિઝનેસ માહિતી સ્તંભ કોઈ વધારાનું રૂપરેખાંકન જરૂરી સાથે આપોઆપ સુધારાયેલ આવૃત્તિ વાપરે છે.

</અંત>

મારા બ્લોગ પર સબ્સ્ક્રાઇબ કરો.

Technorati ટૅગ્સ:

ઉકેલ: BDC પીકર માત્ર પરિણામો એક કૉલમ બતાવે છે

એક પૂરી મારા ચાલુ પ્રયાસો 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".

તમે પ્રમાણે બિઝનેસ માહિતી સ્તંભની ખુલ્લા પુસ્તક આઇકોન પર ક્લિક કરીને પીકર ઍક્સેસ:

છબી

The above image shows a business data column called "Master Document Id". That column is connected, 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" કાર્ય. Users select a "master" દસ્તાવેજ અને જ્યારે તેઓ સેવ, આ સંદર્ભ માસ્ટર પાસેથી એક ઇવેન્ટ રીસીવર નકલો મેટા માહિતી ક્ષેત્રો.

મૂળભૂત રીતે, the BDC picker looks like this when I search for a document whose ID = "38":

clip_image002

તે મદદરૂપ છે, 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. શીર્ષક) પરંતુ તે મળી ટાઇટલ વાસ્તવિક યાદી દેખાશે, માત્ર તેમની DocId તરીકે અહીં દર્શાવવામાં આવ્યું છે:

clip_image002[1]

(હું કોઇ પણ માન્ય પરિણામો આપે છે કે એક શોધ પસંદ ન હતી કારણ કે આ સ્ક્રીન શૉટ એટલા મહાન નથી, પરંતુ તમે જોઈ શકો છો કે તે કેટલાક પરિણામો મળ્યાં હોત તો, તે માત્ર DocId માતાનો બતાવ્યા પ્રમાણે હશે, નથી ટાઇટલ).

I searched high and low for the answer to this and failed. મારો સાથીદાર, જો આર્યડીકનની પદવી જોનાથન બ્રેડશો, had faced and solved this issue. When I reached out to him for help, તેમણે યોગ્ય દિશામાં મને નિર્દેશ.

Configure the picker to show multiple columns via the "ShowInPicker" જો ADF માં મિલકત:

<મિલકત નામ="ShowInPicker" પ્રકાર="System.Boolean">સાચું</મિલકત>

વધુ વિગતવાર:

  <!-- શીર્ષક -->
  <TypeDescriptor TypeName="System.String" નામ="શીર્ષક" >
    <LocalizedDisplayNames>
      <LocalizedDisplayName LCID="1033">શીર્ષક</LocalizedDisplayName>
    </LocalizedDisplayNames>
    <ગુણધર્મો>
      <મિલકત નામ="DisplayByDefault" પ્રકાર="System.Boolean">સાચું</મિલકત>
      <મિલકત નામ="ShowInPicker" પ્રકાર="System.Boolean">સાચું</મિલકત>
    </ગુણધર્મો>
  </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. મારા કિસ્સામાં, BDC picker showed DocId by default. તેમ છતાં, once I added "ShowInPicker" શીર્ષક માટે, DocId no longer displayed. I solved that by explicitly setting the ShowInPicker property for Doc ID.

અહીં પરિણામ છે:

છબી

(I’ll explain the odd-looking "168 – CamlSchema.xsd" construction in a future blog post. ટૂંકમા, જો તે સહેજ વધુ સારી રીતે વપરાશકર્તા અનુભવ માટે પરવાનગી આપે છે કે શ્રેણીબદ્ધ શબ્દમાળા છે).

અલબત્ત, આ બ્લોગ એન્ટ્રી લખી કર્યા, I just did a search for "ShowInPicker" અને સંખ્યાબંધ હિટ મળી, આ એક સહિત: http://msdn2.microsoft.com/en-us/library/ms583986.aspx. It explains the meaning of that property along with some other good BDC stuff.

</અંત>

મારા બ્લોગ પર સબ્સ્ક્રાઇબ કરો!

Technorati ટૅગ્સ:

BDC ADF આયાત નિષ્ફળ ઉકેલ: “નીચેની ભૂલ આવી:”

હું ફરી એક વાર હાથ દ્વારા BDC ADF ફાઇલો કળાનો હતી (હું બિલ્ડ કરી શકે છે કે જેથી મારા "મારા લોન બંધ વિચાર!" હું) અને આ મનોરમ ભૂલ હિટ:

છબી

"Application definition import failed. નીચેની ભૂલ આવી:"

તમે જોઈ શકો છો, એક ભૂલ છે, પરંતુ … તે શું છે તે મને કહી જવા નથી.

મારા કિસ્સામાં, 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, પરંતુ અપડેટ નિષ્ફળ <LobSystem>’s Type attribute. I switched it to "WebService" અને હું happily નવી અને વધુ ઉત્તેજક આયાત ભૂલો પર ખસેડવામાં, જે કારણે કોર્સ નિયંત્રિત કરવામાં આવ્યા હતા.

અહીં ખોટું 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">

આ સાચું છે:

<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">

</અંત>

Technorati ટૅગ્સ:

BDC લુકઅપ્સ માટે એક સક્ષમ પુરવણી લાગે છે

અપડેટ: પોસ્ટ આ એમએસડીએન તેના પર આધારિત છે JXJ માંથી કેટલીક રસપ્રદ અવલોકનો છે, મુખ્યત્વે નકારાત્મક, અનુભવો આ પાથ નીચે જવા: 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" ક્ષેત્ર.

We often use a lookup column to implements links like this. There are several drawbacks to lookup columns, છે, જે ત્રણ:

  1. Only one column from the lookup lookup library can be linked.
  2. કામગીરી: The source library could contain hundreds of entries. That’s too many entries in the lookup.
  3. શોધો: There is no integrated search. I don’t mean in the MOSS sense of search, પરંતુ શોધવા માટે કોઈ રીત હોય / સ્ત્રોત દસ્તાવેજ લાઇબ્રેરી માંથી ઘણી કૉલમ પર ફિલ્ટર અને તમે ઇચ્છો લિંક સ્થિત.

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.

હું આ અભિગમ સાથે કેટલાક પ્રારંભિક સફળતા મળી હતી અને તે વિશે વધુ લખવા માટે યોજના ઘડી રહ્યા કર્યું.

તમે પહેલાં આ કોણ કામ કર્યું છે અને કોઈપણ ટિપ્પણીઓ હોય છે, તો, શેર કરો!

</અંત>

Technorati ટૅગ્સ:

BDC આયાત ભૂલ ઉકેલ: “TypeDescriptor માતાનો TypeName દ્વારા વર્ણવવામાં પ્રકાર લોડ કરી શકાયું નથી …”

હું BDC આજે સાથે કામ કર્યું છે, coding ADF files by hand and generating myself some errors. One such error:

એપ્લિકેશન વ્યાખ્યા આયાત નિષ્ફળ. નીચેની ભૂલ આવી: TypeDescriptor માતાનો TypeName દ્વારા વર્ણવવામાં પ્રકાર લોડ કરી શકાયું નથી. પરિમાણ નામ: typeName ભૂલ વાક્ય પર અથવા ફક્ત પહેલા આવી હતી: '35’ પોઝિશન અને: ’20’.

હું ADF XML ફાઇલ આયાત કરવાનો પ્રયાસ કર્યો ત્યારે MOSS આ ભૂલ પ્રદર્શિત.

હું Internets સંશોધન અને હું લૉબ નમૂના નામ સંદર્ભ હતું કે મળી (માંથી <LobSystemInstance>) મારી માં <TypeDescriptor> હું લૉબ નામ પોતે સંદર્ભ જોઈએ જ્યારે નોડ (ના <LobSystem>).

ખોટું:

<TypeDescriptor TypeName="Conchango.KeyValue, લૉબ નમૂના નામ" Name="KeyValue">

સુધારો:

<TypeDescriptor TypeName="Conchango.KeyValue, લૉબ નામ" Name="KeyValue">

આ એક વાત એક કલાક સમય અથવા બે બચાવે આશા.

</અંત>

મારા બ્લોગ પર સબ્સ્ક્રાઇબ કરો!

Technorati ટૅગ્સ:

સમજાવી એક BDC રનટાઈમ ભૂલ

હું વપરાશકર્તા ઈન્ટરફેસ પર અને પોતે જેની સ્પષ્ટ અભિવ્યક્તિ છે કે આ સપ્તાહમાં એક BDC ભૂલ કારણે 12 મધપૂડો લોગ રનટાઈમે.

પ્રથમ, આ વપરાશકર્તા ઈન્ટરફેસ દેખાયા:

બધા ઓળખકર્તા મૂલ્યો દાખલ કરવા ક્ષેત્રો યોગ્ય રીતે નામ સાથે SpecificFinder MethodInstance ચલાવવા માટે શોધી શકાયું નથી … ઇનપુટ માપદંડ આ એન્ટાઇટી માટે નિર્ધારિત દર ઓળખકર્તા સાથે સંકળાયેલ TypeDescriptors છે તેની ખાતરી કરો.

અહીં એક સ્ક્રીન શૉટ છે:

clip_image001

હું પણ આ સંદેશ દેખાય છે કારણ બની શકે છે 12 મધપૂડો લોગ ચાલશે ખાતે (using my patented high-tech-don’t-try-this-at-home "mysterious errors" પદ્ધતિ):

11/14/2007 09:24:41.27 w3wp.exe (0x080C) 0x0B8C SharePoint Portal Server Business Data 6q4x High Exception in BusinessDataWebPart.OnPreRender: System.InvalidOperationException: આ ઓળખકર્તા કિંમત ”, પ્રકાર ની ”, અમાન્ય છે. Expected Identifier value of Type ‘System.String’. Microsoft.Office.Server.ApplicationRegistry.MetadataModel.Entity.FindSpecific ખાતે(પદાર્થ[] subIdentifierValues, LobSystemInstance lobSystemInstance) Microsoft.SharePoint.Portal.WebControls.BdcClientUtil.FindEntity ખાતે(અસ્તિત્વ એન્ટિટી, પદાર્થ[] userValues, LobSystemInstance lobSystemInstance) Microsoft.SharePoint.Portal.WebControls.BusinessDataItemBuilder.GetEntityInstance ખાતે(જુઓ desiredView) Microsoft.SharePoint.Portal.WebControls.BusinessDataDetailsWebPart.GetEntityInstance ખાતે() Microsoft.SharePoint.Portal.WebControls.BusinessDataDetailsWebPart.SetDataSourceProperties ખાતે()

હું આસપાસ શોધ અને કેટલાક પગલે મળી એમએસડીએન ફોરમ, but they weren’t enough for me to understand what I was doing wrong. I watched a webcast by ટેડ Pattison કે મારી કંપની સર્વર પર દૂર squirreled અને મારા સમસ્યા ખ્યાલ આવી છે.

મારા ADF માં, પ્રમાણે હું SQL ડેટાબેઝ સાથે જોડાઈ છું:

            <મિલકત નામ="RdbCommandText" પ્રકાર="System.String">
              <![CDATA[
                પસંદ કરો
                      , CARRIER_ID, EFFDT, DESCR, EFF_STATUS, TAXPAYER_ID, NETWORK_ID, FRT_FORWARD_FLG, ALT_NAME1, ALT_NAME2, LANGUAGE_CD,
                      COUNTRY, ADDRESS1, ADDRESS2, ADDRESS3, ADDRESS4, શહેર, NUM1, NUM2, HOUSE_TYPE, ADDR_FIELD1, ADDR_FIELD2, ADDR_FIELD3,
                      COUNTY, રાજ્ય, પોસ્ટલ, GEO_CODE, IN_CITY_LIMIT, COUNTRY_CODE, ફોન, EXTENSION, ફેક્સ, LAST_EXP_CHK_DTTM, FREIGHT_VENDOR,
                      INTERLINK_DLL, TMS_EXCLUDE_FLG
                 (nolock)
                છે
                  (SETID <> 'શેર') અને
                  (ઓછી(CARRIER_ID) >= નીચલા(@ MinId)) અને
                  (ઓછી(CARRIER_ID) <= નીચલા(@ MaxId)) અને
                  (ઓછી(DESCR) નીચલા જેવું(@ InputDescr))
                ]]>
            </મિલકત>

હું DBA વ્યક્તિ કે એસક્યુએલ આપવામાં આવી હતી અને હું તેને જે સમજવા માટે આપવામાં છું એક ખાસ view they created just for me. The unique key there is CARRIER_ID.

અહીં હું પરિચય છે, ભૂલ છે:

      <આઇડેન્ટીફાયર>
        <ઓળખકર્તા નામ="CARRIER_ID" TypeName="System.String" />
        <ઓળખકર્તા નામ="DESCR" TypeName="System.String" /> 
</આઇડેન્ટીફાયર>

ક્યાંક રેખા સાથે, હું અર્થ ઉપર જાતે સ્વાંગ વ્યવસ્થાપિત હતી <આઇડેન્ટીફાયર> and added DESCR even though it’s not actually an identifier. I took DESCR out of the identifiers set and presto! તે બધા કામ કર્યું.

I hope this saves someone some grief 🙂

Technorati ટૅગ્સ: , , ,

BDC ADF અને તમારા મિત્ર, CDATA

હું કેટલાક ઉદાહરણોમાં RdbCommandText કેટલાક અનાડી અને બિનજરૂરી હાથ એન્કોડિંગ જણાયું કર્યું (એમએસડીએન દસ્તા સહિત).

I wanted to point out to newcomers to BDC that commands can be wrapped inside a CDATA tag in their "natural" form. તેથી, આ અનાડી બાંધકામ:

<મિલકત નામ="RdbCommandText" પ્રકાર="System.String">
Dbo.MCRS_SETTLEMENT.id પસંદ કરો, dbo.MCRS_SETTLEMENT માંથી dbo.MCRS_SETTLEMENT.settlement
છે (ને &જીટી;= @MinId) અને (ને &એલટી;= @ MaxId)
</મિલકત>

સારી આ રીતે રજૂ કરી શકાય છે:

<મિલકત નામ="RdbCommandText" પ્રકાર="System.String">
<![CDATA[
Dbo.MCRS_SETTLEMENT.id પસંદ કરો, dbo.MCRS_SETTLEMENT માંથી dbo.MCRS_SETTLEMENT.settlement
છે (ને >= @MinId) અને (ને <= @ MaxId)
]]>
</મિલકત>

</અંત>

BDC પ્રવેશિકા

BDC માટે પ્રસ્તાવના

કાર્યાત્મક ઉદાહરણ: BDC ADF કે એમ્બેડ વપરાશકર્તા ID અને પાસવર્ડ સાથે SQL ડેટાબેઝ સાથે જોડાય છે

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 આ નમૂનો (http://msdn2.microsoft.com/en-us/library/ms564221.aspx), હું ચોક્કસ વપરાશકર્તા ID અને પાસવર્ડ સાથે ચોક્કસ SQL સર્વર ઉદાહરણ અને લોગો સાથે જોડાય છે કે જે ADF બનાવનાર અને આ સ્નીપેટ માં બતાવ્યા પ્રમાણે:

  <LobSystemInstances>
    <LobSystemInstance નામ="ClaimsInstance">
      <ગુણધર્મો>
        <મિલકત નામ="AuthenticationMode" પ્રકાર="System.String">PassThrough</મિલકત>
        <મિલકત નામ="DatabaseAccessProvider" પ્રકાર="System.String">SqlServer</મિલકત>
        <મિલકત નામ="RdbConnection ડેટા સ્રોત" પ્રકાર="System.String">વાસ્તવિક સર્વર  વાસ્તવિક ઉદાહરણ</મિલકત>
        <મિલકત નામ="RdbConnection પ્રારંભિક કેટલોગ" પ્રકાર="System.String">વાસ્તવિક પ્રારંભિક સૂચિ</મિલકત>
        <મિલકત નામ="RdbConnection ઈન્ટિગ્રેટેડ સુરક્ષા" પ્રકાર="System.String">SSPI</મિલકત>
        <મિલકત નામ="એકત્રીકરણ RdbConnection" પ્રકાર="System.String">ભૂલ ખવડાવનારું</મિલકત>

        <!-- આ કી કિંમતો છે: -->
        <મિલકત નામ="RdbConnection વપરાશકર્તા ID" પ્રકાર="System.String">એકctual વપરાશકર્તા ID</મિલકત>
        <મિલકત નામ="RdbConnection પાસવર્ડ" પ્રકાર="System.String">વાસ્તવિક પાસવર્ડ</મિલકત>
        <મિલકત નામ="RdbConnection Trusted_Connection" પ્રકાર="System.String">ભૂલ ખવડાવનારું</મિલકત>

      </ગુણધર્મો>
    </LobSystemInstance>
  </LobSystemInstances>

જો તે શ્રેષ્ઠ પ્રથા નથી, 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 અને પાસવર્ડ
  • adf માં વપરાશકર્તા ID અને પાસવર્ડ એમ્બેડ
  • adf bdc માં વપરાશકર્તા ID અને પાસવર્ડ એમ્બેડ
  • શેરપોઈન્ટ bdc બાળપોથી
  • શેરપોઈન્ટ એમ્બેડ વપરાશકર્તા id અને adf માં પાસવર્ડ

</અંત>

મારા બ્લોગ પર સબ્સ્ક્રાઇબ કરો.