BDC runtime chyba vysvetlil

Som spôsobil chybu BDC tento týždeň, ktorá sa prejavila na užívateľské rozhranie a v 12 úľ denníka v režime runtime.

Prvá, to sa objavil v používateľskom rozhraní:

Nebolo možné nájsť polia na vloženie všetkých hodnôt identifikátorov na správne spustenie procedúry MethodInstance nástroja SpecificFinder s názvom … Zabezpečiť vstupné parametre priradené všetkým identifikátorom definovaným pre túto entitu objekty TypeDescriptor ku.

Tu je náhľad obrazovky:

clip_image001

Tiež môže spôsobiť Táto správa sa objaví v 12 úľ prihlásiť sa (používať môj patentovaný high-tech-don't-try-this-at-home "záhadné chyby" metóda):

11/14/2007 09:24:41.27 w3wp.exe (0x080C) 0x0B8C SharePoint Portal Server Business Data 6q4x vysoké výnimku v BusinessDataWebPart.OnPreRender: System.InvalidOperationException: Hodnota identifikátora ”, typu ”, je neplatný. Očakávanú hodnotu identifikátora typu System.String. v Microsoft.Office.Server.ApplicationRegistry.MetadataModel.Entity.FindSpecific(Objekt[] subIdentifierValues, Inštancia LobSystemInstance lobSystemInstance) v Microsoft.SharePoint.Portal.WebControls.BdcClientUtil.FindEntity(Entita jednotka, Objekt[] userValues, Inštancia LobSystemInstance lobSystemInstance) v Microsoft.SharePoint.Portal.WebControls.BusinessDataItemBuilder.GetEntityInstance(Zobraziť desiredView) v Microsoft.SharePoint.Portal.WebControls.BusinessDataDetailsWebPart.GetEntityInstance() v Microsoft.SharePoint.Portal.WebControls.BusinessDataDetailsWebPart.SetDataSourceProperties()

Hľadal a našiel niektoré vedie v Fórum MSDN, ale oni neboli dosť pre mňa pochopiť, čo robím zle. Díval som sa na vysielanie podľa Ted Pattison že môj spoločnosť má ďaleko squirreled na serveri a prišiel si uvedomiť, môj problém.

V mojom ADF, Som pripojenie k databáze SQL, ako je uvedené:

            <Vlastnosť meno="RdbCommandText" Typ="System.string">
              <![CDATA[
                VYBERTE SETID, CARRIER_ID, EFFDT, DESCR, EFF_STATUS, TAXPAYER_ID, NETWORK_ID, FRT_FORWARD_FLG, ALT_NAME1, ALT_NAME2, LANGUAGE_CD,
                      KRAJINY, IKT1, ADDRESS2, ADDRESS3, ADDRESS4, MESTO, NUM1, NUM2, HOUSE_TYPE, ADDR_FIELD1, ADDR_FIELD2, ADDR_FIELD3,
                      KRAJ, ŠTÁT, POŠTOVÉ, GEO_CODE, IN_CITY_LIMIT, COUNTRY_CODE, TELEFÓN, ROZŠÍRENIE, FAXOVANIE, LAST_EXP_CHK_DTTM, FREIGHT_VENDOR,
                      INTERLINK_DLL, TMS_EXCLUDE_FLG z dbo.PS_CARRIER_ID_VW s (nolock)
                KDE
                  (SETID <> "ZDIEĽANIE") a
                  (Dolné(CARRIER_ID) >= nižšia(@MinId)) a
                  (Dolné(CARRIER_ID) <= nižšia(@ MaxId)) a
                  (Dolné(DESCR) AKO nižšie(@InputDescr))
                ]]>
            </Vlastnosť>

Bola za predpokladu že SQL DBA osoby a som im pochopiť, že je špeciálne zobrazenie vytvorené len pre mňa. Jedinečný kľúč, ktorý nie je CARRIER_ID.

Tu je chyba som predstavil:

      <Identifikátory>
        <Identifikátor meno="CARRIER_ID" Atribút TypeName="System.string" />
        <Identifikátor meno="DESCR" Atribút TypeName="System.string" /> 
</Identifikátory>

Niekde pozdĺž línie, Mal sa podarilo zameniť sám v zmysle <Identifikátory> a pridal DESCR, aj keď to nie je vlastne identifikátor. Vzal som si DESCR z identifikátorov množiny a presto! To všetko fungovalo.

I hope this saves someone some grief 🙂

2 myšlienky na "BDC runtime chyba vysvetlil

  1. Paul Galvin

    Pieter, ste probalby vyriešil to teraz, ale môj odhad je, že by súvisieť s definíciou na back-end. Možno je obmedzený na samotné pole SQL 60 znakov? Niečo takého?

    Odpoveď
  2. Pieter Veenstra

    ahoj,

    Mám problém s BDC, a som zvedavý, či môžete pomôcť s týmto?

    Som pomocou identifiier políčok ( číslo a popis oblasti), keď prekročí celkový počet znakov 60 I 'm getting foollowing chyby:

    Neplatná hodnota

    Textové pole obsahuje neplatné údaje. Skontrolujte hodnotu a skúste to znova.

    Chápete, kde tento limit 60 znaky pochádza? a ako tento problém opraviť?

    V súčasnosti som obmedziť Popis takým spôsobom, ktorý nemá prekročiť celkový počet znakov 60.

    Odpoveď

nechať odpoveď

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *