Памылка выканання 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(Entity асобы, Аб'ект[] userValues, LobSystemInstance LobSystemInstance) на Microsoft.SharePoint.Portal.WebControls.BusinessDataItemBuilder.GetEntityInstance(Паглядзець desiredView) на Microsoft.SharePoint.Portal.WebControls.BusinessDataDetailsWebPart.GetEntityInstance() на Microsoft.SharePoint.Portal.WebControls.BusinessDataDetailsWebPart.SetDataSourceProperties()

Я шукаў вакол і знайшоў некаторыя драты ў MSDN форум, but they weren’t enough for me to understand what I was doing wrong. I watched a webcast by Тэд Паттисон што мая кампанія 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,
                      КРАІНЫ, ADDRESS1, ADDRESS2, Address3, Адрас 4, ГОРАД, NUM1, NUM2, HOUSE_TYPE, ADDR_FIELD1, ADDR_FIELD2, ADDR_FIELD3,
                      Акругах, ДЗЯРЖАЎНЫ, ПАШТОВЫ, GEO_CODE, IN_CITY_LIMIT, COUNTRY_CODE, ТЭЛЕФОН, Распаўсюджванне, FAX, LAST_EXP_CHK_DTTM, FREIGHT_VENDOR,
                      INTERLINK_DLL, TMS_EXCLUDE_FLG
                 (NOLOCK)
                ДЗЕ
                  (SETID <> "Доля") і
                  (знізіць(CARRIER_ID) >= Ніжняя(@ MiniD)) і
                  (знізіць(CARRIER_ID) <= Ніжняя(@ MaxId)) і
                  (знізіць(DESCR) Падобныя ніжэйшых(@ InputDescr))
                ]]>
            </Уласнасць>

Я быў пры ўмове, што ад SQL 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 Тэгі: , , ,

2 думкі пра «Памылка выканання BDC патлумачыў

  1. Paul Galvin

    Піцер, probalby вы вырашылі гэта цяпер, але я думаю, што яна будзе звязана з вызначэннем на заднім канцы. Можа быць, само поле SQL абмежаваны 60 сімвалы? Нешта накшталт гэтага?

  2. Пітэр Veenstra

    Прывітанне,

    У мяне ёсць праблема з BDC, і мне цікава, калі вы можаце дапамагчы з гэтым?

    Я выкарыстоўваю два поля identifiier ( лік і апісанне палёў), калі агульная колькасць знакаў перавышае 60 Я атрымліваю памылкі foollowing:

    Значэнне тэксту няправільна

    Тэкставае поле ўтрымлівае няслушныя дадзеныя. Калі ласка, праверце значэнне і паспрабуйце зноў.

    Вы разумееце, дзе гэта мяжа 60 сімвала адбываецца ад? і як вырашыць гэтую праблему?

    У цяперашні час я абмяжоўваюць апісанне такім чынам, што агульная колькасць знакаў не перавышае 60.

Пакінуць каментар

Ваш электронны адрас не будзе апублікаваны. Абавязковыя палі пазначаныя * *