BDC 오류를 이번 주에 사용자 인터페이스 및에 명시를 발생 합니다 12 하이브 로그 런타임 시.
첫 번째, 이 사용자 인터페이스에 나타나:
올바르게 실행 이름으로 SpecificFinder MethodInstance 모든 식별자 값을 삽입할 필드를 찾을 수 없습니다. … TypeDescriptors이이 엔터티에 대해 정의 된 모든 식별자와 연결 된 입력된 매개 변수 확인.
여기에 스크린 샷을입니다.:
또한이 메시지에 표시를 일으킬 수 있는 12 하이브 로그에 합니다. (내 특허 high-tech-don't-try-this-at-home를 사용 하 여 "신비한 오류" 메서드):
11/14/2007 09:24:41.27 w3wp.exe (0x080C) 0x0B8C BusinessDataWebPart.OnPreRender에서 SharePoint Portal Server 비즈니스 데이터 6q4x 높은 예외: System.InvalidOperationException: 식별자 값 ”, 형식의 ”, 유효 하지 않은. '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에서()
난 주위를 수 색 하 고에서 몇 가지 단서를 발견 합니다 MSDN 포럼, 그들은 내가 뭘 알아야 나를 위해 충분 하지 하지만 잘못. 내가 본 여 웹캐스트 Ted Pattison 그 내 회사 서버에 내 문제를 실현 하기 위해 온 멀리 squirreled 있다.
내 ADF에, 내가 같이 SQL 데이터베이스에 연결:
<속성 이름="RdbCommandText" 유형="System.String">
<![CDATA[
SETID를 선택, CARRIER_ID, EFFDT, DESCR, EFF_STATUS, TAXPAYER_ID, NETWORK_ID, FRT_FORWARD_FLG, ALT_NAME1, ALT_NAME2, LANGUAGE_CD,
국가, ADDRESS1, 주소 2, ADDRESS3, ADDRESS4, 도시, NUM1, NUM2, HOUSE_TYPE, ADDR_FIELD1, ADDR_FIELD2, ADDR_FIELD3,
카운티, 상태, 우편, GEO_CODE, IN_CITY_LIMIT, COUNTRY_CODE, 전화, 확장, 팩스, LAST_EXP_CHK_DTTM, FREIGHT_VENDOR,
INTERLINK_DLL, TMS_EXCLUDE_FLG에서 dbo.PS_CARRIER_ID_VW로 (nolock)
어디
(SETID <> ' 공유 ') 그리고
(더 낮은(CARRIER_ID) >= 낮은(@MinId)) 그리고
(더 낮은(CARRIER_ID) <= 낮은(@MaxId)) 그리고
(더 낮은(DESCR) 처럼 낮은(@InputDescr))
]]>
</속성>
제공 된 해당 SQL DBA 사람에서 나 주어진 다는 것을 이해 하 고는 특별 한 그들은 나를 위해 만든 보기. 거기에 독특한 열쇠는 CARRIER_ID.
여기 소개 하는 버그는:
<식별자>
<식별자 이름="CARRIER_ID" TypeName="System.String" />
<식별자 이름="DESCR" TypeName="System.String" />
</식별자>
어딘가에 라인을 따라, 의미를 통해 자신을 혼동 관리 했다 <식별자> 비록 그것이 실제로 식별자 DESCR 추가. DESCR 식별자 집합 및 프레스 토 했다! 그것은 모든 일.
I hope this saves someone some grief 🙂