หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
วิธีการจะค้นหาเรกคอร์ดจากวิดเจ็ตการสื่อสารระหว่างการสื่อสารขาเข้า และเปิดเรกคอร์ด
Syntax
Microsoft.CIFramework.searchAndOpenRecords(entityLogicalName, queryParameters, searchOnly, correlationId, searchType).then(successCallback, errorCallback);
Parameters
| ชื่อ | ประเภท | ต้องมี | คำอธิบาย |
|---|---|---|---|
| ชื่อ entityLogicalName | สตริง | ใช่ | ชื่อของเอนทิตีที่จะค้นหาและเปิด |
| queryParameters | สตริง | ใช่ | ตัวเลือกการสืบค้นระบบ OData $select และ $expand เพื่อดึงข้อมูลของคุณ - ใช้ตัวเลือกการสืบค้นระบบ $select เพื่อจํากัดคุณสมบัติที่ส่งคืนโดยรวมรายการชื่อคุณสมบัติที่คั่นด้วยจุลภาค นี่เป็นแนวทางปฏิบัติที่ดีที่สุดสําหรับประสิทธิภาพที่สําคัญ ถ้าไม่ได้ระบุคุณสมบัติโดยใช้ $select คุณสมบัติทั้งหมดจะถูกส่งคืน - ใช้ตัวเลือกการสืบค้นระบบ $expand เพื่อควบคุมข้อมูลที่ส่งคืนโดยเอนทิตีที่เกี่ยวข้อง ถ้าคุณใส่ชื่อของคุณสมบัติการนําทาง คุณจะได้รับคุณสมบัติทั้งหมดสําหรับเรกคอร์ดที่เกี่ยวข้อง คุณสามารถจํากัดคุณสมบัติที่ส่งคืนสําหรับระเบียนที่เกี่ยวข้องได้โดยใช้ตัวเลือกแบบสอบถามระบบ $select ในวงเล็บหลังชื่อคุณสมบัติการนําทาง ใช้สําหรับคุณสมบัติการนําทางทั้งแบบมีค่าเดียวและค่าคอลเลกชัน คุณสามารถระบุตัวเลือกแบบสอบถามที่ขึ้นต้นด้วย ? คุณยังสามารถระบุตัวเลือกแบบสอบถามได้หลายแบบโดยใช้ & เพื่อแยกตัวเลือกแบบสอบถามตัวอย่าง: ?$select=name&$expand=primarycontactid($select=contactid,fullname) |
| ค้นหาเท่านั้น | แบบบูลีน | ใช่ | ตั้งค่าเป็น searchOnlyfalse เมื่อคุณต้องการให้การค้นหาแสดงระเบียนเดียวตามบริบทการค้นหา หากผลการค้นหามีหลายระเบียน และหากคุณเคยใช้เพื่อ queryParameters ระบุตัวเลือกการค้นหา การตั้งค่า searchOnly เป็น false จะเปิดขึ้นและเติมข้อมูลในหน้าการค้นหาด้วยตัวเลือกการค้นหา โน้ต: ถ้าผลลัพธ์การค้นหามีหลายเรกคอร์ด เรกคอร์ดสําหรับเอนทิตี ลูกค้าองค์กรผู้ติดต่อ และกิจกรรม จะถูกเปิดเท่านั้น ตั้งค่าเป็น true เพื่อรับผลลัพธ์ของการค้นหาเป็นออบเจ็กต์ Promise แทนที่จะเป็นเรกคอร์ดหรือหน้าการค้นหา |
| ประเภทการค้นหา | ตัวเลข | ไม่ | ประเภทของหน้าค้นหาที่จะเปิด - 0 สําหรับการค้นหาความเกี่ยวข้อง และ 1 สําหรับการค้นหาที่จัดหมวดหมู่ หากไม่มีการระบุพารามิเตอร์ ระเบียนจะถูกค้นหาตามประเภท |
| correlationId | GUID | ไม่ | ใช้เพื่อจัดกลุ่มการเรียก API ที่เกี่ยวข้องเข้าด้วยกันสําหรับการวัดทางไกลในการวินิจฉัย |
| successCallback | ฟังก์ชัน | ไม่ | ฟังก์ชันที่จะเรียกใช้เมื่อคําขอสําเร็จ |
| errorCallback | ฟังก์ชัน | ไม่ | ฟังก์ชันที่จะเรียกใช้เมื่อคําขอล้มเหลว |
ส่งคืนค่า
ส่งกลับวัตถุ Promise ของประเภท String เมื่อสําเร็จ เมธอดจะส่งคืนผลการค้นหาตามคําค้นหา
Note
- คุณสามารถดึงข้อมูลได้สูงสุด 5000 ระเบียนในคราวเดียว (หากมีมากกว่า 5000 ระเบียน) คุณสามารถจํากัดผลลัพธ์ให้แคบลงได้โดยใช้ตัวเลือกคิวรี เช่น $filter, $select และ $top ในพารามิเตอร์วิธีการตามที่แสดงในส่วนตัวอย่าง ข้อมูลเพิ่มเติม: ภาพรวมตัวเลือกคิวรี
- เมื่อต้องการค้นหาตามความเกี่ยวข้อง คุณต้องตั้งค่าคอนฟิกการค้นหาความเกี่ยวข้อง หากไม่ได้เปิดใช้งานการค้นหาความเกี่ยวข้อง การค้นหาจะดําเนินการตามประเภท
ตัวอย่าง
ค้นหาและเปิดเรกคอร์ดผู้ติดต่อ
โค้ดตัวอย่างนี้ค้นหาชื่อและหมายเลขโทรศัพท์ของเรกคอร์ดผู้ติดต่อ มันจะเปิดหน้าผลการค้นหาที่ว่างเปล่า
// retrieve contact record
Microsoft.CIFramework.searchAndOpenRecords("contact", "?$select=fullname,telephone1", false).
then(
function success(result) {
res=JSON.parse(result);
console.log(`Record values: Full Name: ${res[0].fullname}, Telephone Number: ${res[0].telephone1}`);
// perform operations on record retrieval and opening
},
function (error) {
console.log(error.message);
// handle error conditions
}
);
ค้นหาและแสดงในรายการเรกคอร์ดผู้ติดต่อ
โค้ดตัวอย่างนี้ค้นหาและแสดงชื่อและหมายเลขโทรศัพท์ของเรกคอร์ดเอนทิตีผู้ติดต่อที่มีชื่อเป็น Contoso เมื่อใช้ $searchคุณสามารถตรวจสอบให้แน่ใจได้ว่าหน้าผลลัพธ์การค้นหาถูกเติมด้วยคําค้นหา Contoso
Note
ถ้าคุณกําลังใช้ใน $search คิวรีและ searchOnly ตั้งค่าพารามิเตอร์เป็น falseจะเปิดหน้าผลลัพธ์การค้นหาเสมอ ไม่ใช่เรกคอร์ดที่ดึงมา ถ้าคุณต้องการเปิดเรกคอร์ดที่ดึงมา อย่าใช้ $search พารามิเตอร์ในแบบสอบถาม
// Retrieve Contact entity record
// Change searchOnly parameter to true, if you do not want to open the search results page
Microsoft.CIFramework.searchAndOpenRecords("contact", "?$select=fullname,telephone1&$filter=firstname eq 'Contoso'&$search=Contoso", false).
then(
function success(result) {
res=JSON.parse(result);
console.log(`The caller name is: ${res[0].fullname}, Telephone Number: ${res[0].telephone1}`);
// perform operations on record retrieval and opening
},
function (error) {
console.log(error.message);
// handle error conditions
}
);
ค้นหาและแสดงเรกคอร์ดผู้ติดต่อที่ใช้งานอยู่ 10 อันดับแรก
โค้ดตัวอย่างนี้ค้นหาและแสดงเรกคอร์ดผู้ติดต่อที่ใช้งานอยู่ 10 อันดับแรก
Microsoft.CIFramework.searchAndOpenRecords("contact", "$filter=statecode eq 0&$select=description&$top=10", false).
then(
function success(result) {
res=JSON.parse(result);
// perform operations on record retrieval and opening
},
function (error) {
console.log(error.message);
// handle error conditions
}
);
ค้นหาและแสดงชื่อและหมายเลขโทรศัพท์โดยระบุชนิดการค้นหาที่เกี่ยวข้อง
โค้ดตัวอย่างนี้ค้นหาและแสดงชื่อและหมายเลขโทรศัพท์ของเรกคอร์ดเอนทิตีผู้ติดต่อ โดยระบุชนิดการค้นหาความเกี่ยวข้อง
Microsoft.CIFramework.searchAndOpenRecords("contact", "?$select=fullname,telephone1", false, "b44d31ac-5fd1-e811-8158-000d3af97055", 0).
then(
function success(result) {
res=JSON.parse(result);
console.log(`Record values: Full Name: ${res[0].fullname}, Telephone Number: ${res[0].telephone1}`);
// perform operations on record retrieval and opening
},
function (error) {
console.log(error.message);
// handle error conditions
}
);