使用傳遞至表單的參數設定欄位值

 

發行︰ 2017年1月

適用於: Dynamics 365 (online)、Dynamics 365 (on-premises)、Dynamics CRM 2016、Dynamics CRM Online

本主題的內容適用於 Microsoft Dynamics 365 (線上和內部部署)。 您可以設定使用者所建立之新記錄的預設值,方法是在用來開啟表單的 URL 中指定屬性值。 根據預設,這些預設值是在表單中設定,但是使用者可以在儲存記錄之前變更這些預設值。

本主題內容

傳遞參數以設定欄位記錄值

範例:設定字串欄位的值

設定查詢欄位的值

範例:設定查詢欄位的值

範例:設定日期欄位的值

範例:設定選項組欄位的值

範例:使用 Xrm.Utility.openEntityForm 開啟新視窗

範例:使用 window.open 開啟新視窗

傳遞參數以設定欄位記錄值

注意

您可以使用 Xrm.Utility.openEntityForm 函數將參數值傳遞至表單,以設定欄位值。 如需範例,請參閱範例:使用 Xrm.Utility.openEntityForm 開啟新視窗。

當您使用 URL 位址開啟新表單時,可以在 extraqs 參數中包含引數來設定欄位值。 以下是必須符合的需求:

  • 您必須編碼 extraqs 參數中傳遞的參數。 若要將參數編碼,請使用 encodeURIComponent

  • 查詢字串引數的名稱必須符合或包含實體之屬性的名稱。

  • 傳地的值必須有效。

  • 值不可是指令碼。

若嘗試傳遞無效的參數或值,將會產生錯誤。

  • 對於布林值欄位,請使用 01 這類整數值,或是 truefalse 這類文字值。

  • 對於 DateTime 欄位,請使用日期的文字值。

範例:設定字串欄位的值

下列範例會將新客戶記錄的 [名稱] 欄位值設定為「新客戶」。

未編碼的 extraqs 參數值為 "name=New Account"。

/main.aspx?etn=account&extraqs=name%3DNew%20Account&pagetype=entityrecord

設定查詢欄位的值

下表將說明五種類型的查詢欄位。 如需使用查詢欄位的範例,請參閱範例:設定查詢欄位的值和範例:使用 Xrm.Utility.openEntityForm 開啟新視窗。

查詢類型

描述

簡易查詢

允許單一類型實體的單一參考。

客戶查詢

允許客戶或連絡人記錄的單一參考。

負責人查詢

允許團隊或系統使用者記錄的單一參考。

Partylist 查詢

允許多個實體的多個參考。

相關查詢

允許多個實體的單一參考。

使用查詢字串引數在表單上設定查詢值時,適用下列指導方針:

  • 對於簡易查詢,您必須設定要在查詢中顯示的值和文字。 請使用尾碼 "name" 與屬性名稱設定文字的值。

    不要使用其他任何引數。

  • 對於客戶和負責人查詢,您必須先以簡易查詢中設定值和名稱的方式進行設定。 然後您必須使用尾碼 "type" 指定實體的類型。 允許的值包括 account、contact、systemuser 和 team。

  • 您無法為 partylist 或相關查詢設定值。

範例:設定查詢欄位的值

若要設定查詢欄位的值,請使用資料值、名稱值,以及針對個別欄位指定僅適用客戶或負責人查詢的類型值。 下列範例會將負責人欄位設定為名為 "Mark Folkerts" 的使用者。

未編碼的 extraqs 參數值為 "ownerid={B8C6E040-656E-DF11-B414-00155DB1891A}&owneridname=Mark Folkerts&owneridtype=systemuser"。

/main.aspx?etn=lead&pagetype=entityrecord&extraqs=ownerid%3D%7bB8C6E040-656E-DF11-B414-00155DB1891A%7d%26owneridname%3DMark%20Folkerts%26owneridtype%3Dsystemuser

下列範例將主要連絡人欄位設定為使用者「Yvonne McKay (範例)」。extraqs 參數的未編碼值是「primarycontactid={43b58571-eefa-e311-80c1-00155d2a68c4}&primarycontactidname=Yvonne McKay (範例)」。

/main.aspx?etn=account&pagetype=entityrecord&extraqs=primarycontactid%3D%7B43b58571-eefa-e311-80c1-00155d2a68c4%7D%26primarycontactidname%3DYvonne%20McKay%20(sample)

注意

對於像這樣的簡單查詢,您不必設定類型值。

範例:設定日期欄位的值

下列範例會將新商機的 [預計結案日期] 欄位設定為 2011 年 1 月 31 日。 未編碼的 extraqs 參數值為 "estimatedclosedate=01/31/11"。

/main.aspx?etn=opportunity&extraqs=estimatedclosedate%3D01%2F31%2F11&pagetype=entityrecord

範例:設定選項組欄位的值

若要設定 [選項組] 欄位的值,請為選項設定整數值。 下列範例會將新連絡人記錄中的 [角色] 欄位值設定為「決策者」。

未編碼的 extraqs 參數值為 "accountrolecode=1"。

/main.aspx?etn=contact&extraqs=accountrolecode%3D1&pagetype=entityrecord

範例:使用 Xrm.Utility.openEntityForm 開啟新視窗

下列範例會在數個不同的欄位上設定預設值,並且說明如何使用 Xrm.Utility.openEntityForm 函數。 它相當於先前使用 window.open 方法的範例。

function OpenNewContact() {
 var parameters = {};
 //Set the Parent Customer field value to “Contoso”.
 parameters["parentcustomerid"] = "2878282E-94D6-E111-9B1D-00155D9D700B";
 parameters["parentcustomeridname"] = "Contoso";
 parameters["parentcustomeridtype"] = "account";
 //Set the Address Type to “Primary”.
 parameters["address1_addresstypecode"] = "3";
 //Set text in the Description field.
 parameters["description"] = "Default values for this record were set programmatically.";
 //Set Do not allow E-mails to "Do Not Allow".
 parameters["donotemail"] = "1";

 // Open the window.
 Xrm.Utility.openEntityForm("contact", null, parameters);
}

範例:使用 window.open 開啟新視窗

下列範例會在數個不同的欄位上設定預設值,並且說明如何使用 encodeURIComponentextraqs 參數的值編碼。 如果您使用 window.open 方法,則可以控制所開啟視窗的功能。

function OpenNewContact() {
    //Set the Parent Customer field value to “Contoso”.
    var extraqs = "parentcustomerid={F01F3F6D-896E-DF11-B414-00155DB1891A}";
    extraqs += "&parentcustomeridname=Contoso";
    extraqs += "&parentcustomeridtype=account";
    //Set the Address Type to “Primary”.
    extraqs += "&address1_addresstypecode=3";
    //Set text in the Description field.
    extraqs += "&description=Default values for this record were set programatically.";
    //Set Do not allow E-mails to "Do Not Allow".
    extraqs += "&donotemail=1";
    //Set features for how the window will appear.
    var features = "location=no,menubar=no,status=no,toolbar=no";
    // Open the window.
    window.open("/main.aspx?etn=contact&pagetype=entityrecord&extraqs=" +
     encodeURIComponent(extraqs), "_blank", features, false);
}

另請參閱

使用 URL 開啟表單、檢視表、對話方塊和報表
openEntityForm
設定表單以接受自訂查詢字串參數

Microsoft Dynamics 365

© 2017 Microsoft. 著作權所有,並保留一切權利。 著作權