Tôi gây ra một lỗi BDC tuần này biểu hiện bản thân trên giao diện người dùng và trong các 12 hive đăng nhập Tại thời gian chạy.
Đầu tiên, Điều này xuất hiện trong giao diện người dùng:
Không thể tìm thấy các lĩnh vực để chèn tất cả các giá trị định danh chính xác thực hiện một SpecificFinder MethodInstance với tên … Đảm bảo đầu vào tham số có TypeDescriptors liên kết với mỗi ký hiệu nhận dạng xác định cho tổ chức này.
Đây là một ảnh chụp màn hình:
Tôi cũng có thể gây ra các thông báo này xuất hiện trong các 12 hive đăng nhập tại sẽ (bằng cách sử dụng của tôi high-tech-don't-try-this-at-home cấp bằng sáng chế "lỗi bí ẩn" phương pháp):
11/14/2007 09:24:41.27 w3wp.exe (0x080C) 0x0B8C dữ liệu kinh doanh máy chủ SharePoint Portal 6q4x cao ngoại lệ trong BusinessDataWebPart.OnPreRender: System.InvalidOperationException: Giá trị định danh ”, loại ”, không hợp lệ. Dự kiến giá trị định danh của loại 'System.String'. tại Microsoft.Office.Server.ApplicationRegistry.MetadataModel.Entity.FindSpecific(Đối tượng[] subIdentifierValues, LobSystemInstance lobSystemInstance) tại Microsoft.SharePoint.Portal.WebControls.BdcClientUtil.FindEntity(Thực thể thực thể, Đối tượng[] userValues, LobSystemInstance lobSystemInstance) tại Microsoft.SharePoint.Portal.WebControls.BusinessDataItemBuilder.GetEntityInstance(Xem desiredView) tại Microsoft.SharePoint.Portal.WebControls.BusinessDataDetailsWebPart.GetEntityInstance() tại Microsoft.SharePoint.Portal.WebControls.BusinessDataDetailsWebPart.SetDataSourceProperties()
Tôi tìm kiếm xung quanh và tìm thấy một số dẫn trong các MSDN diễn đàn, nhưng họ không đủ cho tôi để hiểu những gì tôi đã làm sai. Tôi đã xem một webcast bởi Ted Pattison đó của tôi công ty có squirreled đi trên một máy chủ và đến để nhận ra vấn đề của tôi.
Trong ADF của tôi, Tôi đang kết nối với cơ sở dữ liệu SQL như được hiển thị:
<Bất động sản Tên="RdbCommandText" Loại="System.String"> <![CDATA[ CHỌN SETID, CARRIER_ID, EFFDT, DESCR, EFF_STATUS, TAXPAYER_ID, NETWORK_ID, FRT_FORWARD_FLG, ALT_NAME1, ALT_NAME2, LANGUAGE_CD, QUỐC GIA, ADDRESS1, ADDRESS2, ADDRESS3, ADDRESS4, THÀNH PHỐ, NUM1, NUM2, HOUSE_TYPE, ADDR_FIELD1, ADDR_FIELD2, ADDR_FIELD3, QUẬN, NHÀ NƯỚC, BƯU CHÍNH, GEO_CODE, IN_CITY_LIMIT, COUNTRY_CODE, ĐIỆN THOẠI, PHẦN MỞ RỘNG, FAX, LAST_EXP_CHK_DTTM, FREIGHT_VENDOR, INTERLINK_DLL, TMS_EXCLUDE_FLG từ dbo.PS_CARRIER_ID_VW với (nolock) NƠI (SETID <> 'CHIA SẺ') và (thấp hơn(CARRIER_ID) >= thấp(@MinId)) và (thấp hơn(CARRIER_ID) <= thấp(@MaxId)) và (thấp hơn(DESCR) THÍCH thấp(@InputDescr)) ]]> </Bất động sản>
Tôi đã được cung cấp đó SQL từ một DBA người và tôi cho hiểu rằng nó là một đặc biệt xem họ tạo ra chỉ cho tôi. Chìa khóa duy nhất có là CARRIER_ID.
Đây là lỗi tôi giới thiệu:
<Định danh> <Định danh Tên="CARRIER_ID" TypeName="System.String" /> <Định danh Tên="DESCR" TypeName="System.String" />
</Định danh>
Một nơi nào đó dọc theo dòng, Tôi đã quản lý để nhầm lẫn bản thân mình hơn ý nghĩa của <Định danh> và thêm vào DESCR mặc dù nó không phải là thực sự là thông tin nhận dạng. Tôi đã DESCR ra khỏi các định danh thiết lập và presto! Nó tất cả đã làm việc.
Tôi hy vọng điều này sẽ giúp ai đó bớt đau buồn 🙂
Pieter, bạn chi giải quyết điều này bởi bây giờ, nhưng tôi đoán là nó sẽ được liên quan đến định nghĩa ngày kết thúc trở lại. Có lẽ lĩnh vực SQL chính nó là giới hạn 60 ký tự? Một cái gì đó như thế?
Chào bạn,
Tôi đã có một vấn đề với một BDC, và tôi tự hỏi nếu bạn có thể giúp với điều này?
Tôi đang sử dụng hai identifiier lĩnh vực ( một số và một trường mô tả), bất cứ khi nào vượt quá tổng số ký tự 60 Tôi nhận được lỗi foollowing:
Giá trị văn bản không hợp lệ
Một trường văn bản có chứa dữ liệu không hợp lệ. Xin vui lòng kiểm tra giá trị và thử lại.
Bạn có hiểu nơi điều này hạn chế của 60 nhân vật đến từ? và làm thế nào để khắc phục vấn đề này?
Hiện nay tôi đang hạn chế mô tả trong đó một cách tổng số ký tự không vượt quá 60.