簡體   English   中英

使用javaScript訪問Dynamics CRM / 365表單中的其他實體屬性

[英]Accessing Other Entities Attributes in Dynamics CRM/365 Forms with javaScript

該功能buttonBuzz()在實體帳戶,聯系人和潛在顧客的表單中起作用。 但不是“機會”形式。 主要是因為沒有telephone1屬性。 但是,在其中包含電話號碼的部分中,添加了帶有“快速查看”的聯系人實體。

帶有聯系快速查看功能的商機表單視圖,紅色標記

我認為它可以與被訪問telephone1如干脆不Xrm.page

有什么想法可以從“快速視圖”內部獲取屬性嗎?

我不知道“快速查看”窗口是否是iFrame的一種形式。 如果是這樣,我不知道如何使用Xrm.Page.getAttribute("telephone1").getValue();來訪問它Xrm.Page.getAttribute("telephone1").getValue();

function buttonBuzz(exObj) {
var phoneNumber;

// Here i store the "telephone1" Attribute from the current .page
phoneNumber = Xrm.Page.getAttribute("telephone1").getValue();

if (phoneNumber != null) {      **Sends phonenumber**           } ...

快速視圖顯示來自在查找字段中選擇的記錄(在本例中為聯系人)中的數據。 您可以使用OData端點從相關記錄中查詢數據。

您首先需要獲取所選記錄的Guid:

var contactId = Xrm.Page.getAttribute("parentcontactid")[0].id || null;

然后,您需要發送一個SDK.REST請求,並傳遞記錄ID( contactId ), entityNamecolumns

var entityName = "Contact";
var columns = "Address1_Telephone1, FirstName, LastName";    

SDK.REST.retrieveRecord(contactId, entityName, columns, null, function(result) {
    // Success, logic goes here.
    var address1_Telephone1 = result.Address1_Telephone1;
}, function(e) {
    console.error(e.message);
});

除了您的JavaScript文件之外,您還需要在Opportunity表單庫中包括MS CRM SDK下載中包含的SDK.REST.js文件。

您可以通過創建計算字段並將其設置為parentcontactid.telephone1 ,從“聯系人”中將該字段拉入“機會”。

將字段放在表單上,​​就可以像其他任何“機會”字段一樣將其.getAttribute()進行計算(在計算后,只要源發生更改,它就會自動更新)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM