適用於 Dynamics 365 管道整合架構 1.0 的 openForm (JavaScript API 參考)

開啟實體表單或快速建立表單。

語法

Microsoft.CIFramework.openForm(entityFormOptions,formParameters).then(successCallback,errorCallback);

參數

名稱 類型 為必填項目 Description
實體形式選項 JSON 物件 Yes 用於開啟表單的實體表單選項。 物件包含下列屬性:
- 命令欄
- createFromEntity
- 實體 ID
- 實體名稱
- formId
-高
- 導航欄
- 開啟新視窗
- 視窗位置
- processId
- processInstanceId
-關係
- 選取 StageId
- 使用快速建立表單
-寬度
如需屬性的相關資訊,請參閱 entityFormOptions 物件表格 。
formParameters 物體 否 將額外參數傳遞至表單的字典物件。 無效的參數會導致錯誤。
如需將參數傳遞至表單的相關資訊,請參閱 使用 傳遞至表單的參數來設定欄位值 和 設定表單以接受自訂查詢字串參數。
successCallback 回調 功能 否 作業成功時要執行的函式。
errorCallback 回調 功能 否 作業失敗時要執行的函式。

entityFormOptions 物件屬性

下表說明參數的 entityFormOptions 屬性。

備註

屬性是選用的。

屬性名稱 類型 Description
cmdBar 布林值 指出是否要顯示命令列。 如果您未指定此參數,則預設會顯示命令列。
createFromEntity 查詢 指出將根據對應屬性值提供預設值的記錄。 查閱物件具有下列類型的 String 屬性: entityType、 id、 和 name (選擇性)。
entityId 繩子 要顯示表單之實體記錄的識別碼。
entityName 繩子 要顯示表單之實體的邏輯名稱。
formId 繩子 要顯示的表單執行個體識別碼。
height Number 要顯示的表單視窗高度(以像素為單位)。
導航欄 繩子 控制是否顯示導覽列,以及是否使用網站地圖中定義的區域和子區域來使用應用程式導覽。 有效值為:
on:顯示導覽列。 如果未使用參數 navBar ,這是預設行為。
off:不顯示導覽列。 使用者可以使用其他使用者介面元素或後退和前進按鈕進行導覽。
entity:在實體表單上,只有相關實體的導覽選項可用。 導覽至相關實體後,導覽列上會顯示返回按鈕,以允許返回原始記錄。
openInNewWindow 布林值 指出是否要在新視窗中顯示表單。
視窗位置 Number 指出表單在視窗上的位置。 有效值為: 1 中心位置和 2 側邊位置。
processId 繩子 要在表單上顯示的商務程序識別碼。
processInstanceId 繩子 要在表單上顯示的商務程序實例識別碼。
關聯 JSON 物件 指出在表單上顯示相關記錄的關聯性物件。 如需屬性的相關資訊,請參閱 relationship 物件表格 。
selectStageId 繩子 商業程序實例中所選階段的識別碼。
使用QuickCreateForm Number 要顯示的表單視窗寬度(以像素為單位)。

relationship 物件屬性

下表說明參數的relationship物件屬性屬性entityFormOptions。

備註

屬性是選用的。

屬性名稱 類型 Description
屬性名稱 繩子 用於關聯性的屬性名稱。
名稱 繩子 關係的名稱。
navigation屬性 繩子 關聯性導覽屬性的名稱。
關係類型 Number 關係類型。 有效值為: 0 一對多關係和 1 多對多關係。
角色類型 Number 關係中的角色類型。 有效值為: 1 用於參考和 2 AssociationEntity。

返回值

成功時,傳回包含字串的 Promise 物件。

Example

下列範例程式碼會開啟新的事件表單,其中包含某些欄位 (例如聯絡人 ID 和描述) 的預先填入值。

var id = "5af02e2a-d0d1-e811-8158-000d3af97055"
var title = "Sample Case Form"
var entityFormOptions = {};
    entityFormOptions["entityName"] = "incident";
    
var formParameters = {};
    //pre-populate some fields based on the context
    formParameters["title"] = title;
    formParameters["customerid"] = id;
    formParameters["customeridtype"] = "contact";
    formParameters["caseorigincode"] = 1;
    formParameters["description"] = "Opened the form with pre-populated details like title, contact id, and description.";

//Open the form
Microsoft.CIFramework.openForm(JSON.stringify(entityFormOptions), JSON.stringify(formParameters)).then(
      function (success) {
        console.log(success);
    },
    function (error) {
        console.log(error);
    }
  );