Số kết quả tìm kiếm được trả về là 5000 khi bạn đặt thuộc tính "Số" 20.000 trong Microsoft Dynamics CRM

Áp dụng cho: Microsoft Dynamics CRM 2011Dynamics CRM 4.0

Quan trọng Bài viết này chứa thông tin về cách sửa đổi sổ đăng ký. Đảm bảo rằng bạn sao lưu sổ đăng ký trước khi bạn sửa đổi nó. Đảm bảo rằng bạn biết cách khôi phục sổ đăng ký nếu sự cố xảy ra. Để biết thêm thông tin về cách sao lưu, khôi phục và sửa đổi sổ đăng ký, hãy bấm vào số bài viết sau để xem bài viết trong cơ sở kiến thức Microsoft:
322756 cách sao lưu và khôi phục sổ đăng ký trong Windows

Triệu chứng


Bạn sử dụng thuộc tính tính trong sơ đồ FetchXml để tạo một truy vấn đối với cơ sở dữ liệu Microsoft Dynamics CRM. Sau đó, bạn đặt thuộc tính tính đến 20.000. Trong trường hợp này, số lượng kết quả tìm kiếm được trả về là 5.000. Ngoài ra, câu chọn ngôn ngữ SQL là luôn chọn đầu 5001 bất kể những gì được đặt thuộc tính tínhphân trang thuộc tính.

Nguyên nhân


Sự cố này xảy ra khi bạn sử dụng sơ đồ FetchXml để lấy bộ kết quả tìm kiếm và khi các thuộc tính moreRecords được đặt thành 1. Giá trị của 1 cho biết hơn 5.000 hồ sơ có sẵn. Trong Microsoft Dynamics CRM, phân trang thuộc tính có giới hạn trang 5.000.

Giải pháp


Microsoft cung cấp mô hình lập trình để minh hoạ, không bảo hành hoặc rõ ràng hay ngụ ý. Điều này bao gồm, nhưng không giới hạn ở các bảo đảm cho một mục đích cụ thể hoặc sự. Bài viết này giả định rằng bạn đã quen với ngôn ngữ lập trình đang được giải thích và các công cụ được sử dụng để tạo và quy trình gỡ lỗi. Các kỹ sư hỗ trợ Microsoft có thể giúp giải thích các chức năng của một quy trình cụ thể. Tuy nhiên, họ sẽ không sửa đổi các ví dụ để cung cấp thêm chức năng hoặc xây dựng quy trình nhằm đáp ứng các yêu cầu cụ thể của bạn.

Để giải quyết vấn đề này, sử dụng phân trang tính nhận hồ sơ. Sau đó, sử dụng thuộc tính moreRecords trong kết quả tìm kiếm thiết lập để xác định xem trang tiếp theo sẽ được trả lại.

Ví dụ: mã sau sẽ giải thích cách khắc phục sự cố này.
moreRecords = true;i = 0;
while(moreRecords)
{
get page i
if(result has more records)
i++
else
moreRecords = false
}

Thông tin


Cảnh báo Vấn đề nghiêm trọng có thể xảy ra nếu bạn sửa đổi sổ đăng ký không đúng bằng cách sử dụng Registry Editor hoặc bằng cách sử dụng phương pháp khác. Các sự cố này có thể yêu cầu bạn phải cài đặt hệ điều hành. Microsoft không thể đảm bảo rằng các vấn đề có thể giải quyết. Sửa đổi sổ đăng ký rủi ro của riêng bạn.

Điều chỉnh giới hạn trang giá trị nhỏ hơn 5.000, thêm giá trị DWORD MaxRowsPerPage vào sổ đăng ký. Để thực hiện việc này, hãy làm theo các bước sau:
  1. Bấm Bắt đầu, bấm Chạy, nhập regedit trong ô Mở , và sau đó bấm OK.
  2. Định vị và sau đó chọn khoá con đăng ký sau:
    HKEY_LOCAL_MACHINE\Software\Microsoft\MSCRM
  3. Trên menu Chỉnh sửa, trỏ chuột vào Mới, sau đó bấm Giá trị DWORD.
  4. Loại MaxRowsPerPage, và sau đó nhấn ENTER.
  5. Bấm chuột phải vào MaxRowsPerPage, và sau đó bấm sửa đổi.
  6. Nhập số nhỏ hơn hoặc bằng 5.000 vào ô dữ liệu giá trị rồi bấm OK.
  7. Trên menu tệp , bấm thoát.
Để tắt tính năng phân trang và sau đó bỏ qua các tham số MaxRowsPerPage 5.000, thêm giá trị DWORD TurnOffFetchThrottling vào sổ đăng ký. Để thực hiện việc này, hãy làm theo các bước sau.

Lưu ý Thực hiện các bước sau có thể gây ra vấn đề hiệu suất máy tính của bạn.
  1. Bấm Bắt đầu, bấm Chạy, nhập regedit trong ô Mở , và sau đó bấm OK.
  2. Định vị và sau đó chọn khoá con đăng ký sau:
    HKEY_LOCAL_MACHINE\Software\Microsoft\MSCRM
  3. Trên menu Chỉnh sửa, trỏ chuột vào Mới, sau đó bấm Giá trị DWORD.
  4. Loại TurnOffFetchThrottling, và sau đó nhấn ENTER.
  5. Bấm chuột phải vào TurnOffFetchThrottling, và sau đó bấm sửa đổi.
  6. Gõ một số khác 0 vào ô dữ liệu giá trị rồi bấm OK.

    Lưu ý Bước 6 cho phép bạn lấy số liệu được chỉ định trong thuộc tính tính của bạn lấy.
  7. Trên menu tệp , bấm thoát.