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:
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 🙂
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?
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.