關於基本表單
注意
自 2022 年 10 月 12 日起,Power Apps 入口網站為 Power Pages。 其他資訊:Microsoft Power Pages 現在已推出 (部落格)
我們很快就會遷移並將 Power Apps 入口網站文件與 Power Pages 文件併合。
資料導向設定,可讓使用者新增表單來收集入口網站中的資料,而不需要開發人員在入口網站中顯示表單介面。基本表單是在 Microsoft Dataverse 中建立,然後放置到入口網站的網頁中,或是搭配子格和清單用來建置完整的 Web 應用程式。 其他資訊:關於清單
新增表單至入口網站
基本表單包含與網頁的關聯及額外的屬性,以便控制入口網站內表單的初始化。 與網頁的關聯允許動態擷取網站內特定頁面節點的表單定義。
若要查看現有的基本表單或建立新的基本表單,請開啟入口網站管理應用程式,並移至入口網站>基本表單。
建立新的基本表單時,第一步是決定您要呈現的資料表和表單名稱,以及模式:插入、編輯或唯讀。 選取的模式將決定您要從入口網站建立新記錄、編輯現有記錄,或只是顯示有關入口網站上某項記錄的資訊。
注意
在繼續之前,請確定您已檢閱基本表單的考慮事項。
選取最左邊功能表中相關導覽連結中列出的網頁連結,即可檢視與基本表單關聯的網頁。
建立或編輯網頁時,基本表單可以在網頁表單上提供的查詢欄位中指定。
入口網站使用的各種主版頁面包含 TableForm 伺服器控制項的宣告。 當呈現包含「頁面」(~/Pages/Page.aspx) 頁面範本或「完整頁面」(~/Pages/FullPage.aspx) 頁面範本的網頁時,控制項會判斷基本表單查詢是否包含值,然後才會顯示表單。
保護您的表單
注意
這種保護表單的方法很快就會被取代。 因此,不應使用這種方式。 使用適當的資料表權限和 Web 角色設定,來為使用者提供任何資料的存取權。 更多資訊:新入口網站上表單和清單的資料表權限變更
若要保護表單,您必須建立資料表權限,根據 Web 角色決定記錄的存取權和擁有權。 如果使用者來到基本表單但未具備權限,將會收到錯誤訊息。 此外,當您將表單設定為未啟用資料表權限時,您也將看到警告:
「應為此記錄啟用資料表權限,否則網際網路上的任何人都可查看資料。」
若要啟用基本表單的權限,請選取核取方塊以啟用資料表權限。 其他資訊: 建立入口網站的 Web 角色。
基本表單屬性和關聯
名字 | 描述 |
---|---|
名字 | 記錄的描述名稱。 這是必填欄位。 |
資料表名稱 | 將從中載入表單的資料表名稱。 這是必填欄位。 |
表單名稱 | 要轉譯的目標資料表上表單的名稱。 這是必填欄位。 |
索引標籤名稱 | 要轉譯的指定資料表的表單上索引標籤的選填名稱。 |
模式 | 下列其中一個值:
|
記錄來源類型 | 下列其中一個值:
選取_目前的入口網站使用者_會擷取目前已驗證使用者的入口網站使用者記錄。 選取_與目前入口網站使用者相關的記錄_將會擷取目前已驗證使用者的入口網站使用者記錄,然後擷取 [關聯名稱] 欄位所指定之特定關聯的記錄。 |
記錄識別碼參數名稱 | 包含此基本表單的網頁 URL 的查詢字串中提供的參數名稱。 |
關聯名稱 | 當 [記錄來源類型] 是 [與目前的入口網站使用者關聯的記錄] 時,為必填。 目前入口網站使用者記錄與目標記錄記之間關聯的邏輯名稱。 這必須傳回與 [資料表名稱] 所指定相同的資料表類型。 |
如果 Null 則允許建立 | 選擇性的布林值,在 [記錄來源類型] 是 [與目前的入口網站使用者關聯的記錄] 時提供。 表示如果相關記錄不存在,則允許使用者在第一次時建立該記錄,否則若記錄不存在,會因為表單需要可將資料與之繫結的記錄而擲回例外狀況。 注意:此功能無法在多步驟表單中使用。 |
啟用資料表權限 | 將使表單遵循資料表權限。 基於回溯相容性的原因,預設為 false。 如果設為 true,明確的權限為「必要」,對於任何想要存取表單的使用者來說。 請注意:這種保護表單的方法很快就會被取代。 因此,不應使用這種方式。 使用適當的資料表權限和 Web 角色設定,來為使用者提供任何資料的存取權。 更多資訊:新入口網站上表單和清單的資料表權限變更 |
表單選項
名稱 | 描述 |
---|---|
新增 Captcha | 顯示 Captcha。 |
向已驗證使用者顯示 Captcha | 對已驗證使用者顯示 Captcha。 |
驗證群組 | 指派給輸入控制項的群組名稱,用於評估具名群組的輸入是否有效。 |
從索引標籤自動產生步驟 | 表示將在基本表單上顯示多個索引標籤,由第一個索引標籤開始,每個索引標籤都是後續步驟,並持續至所有索引標籤全部瀏覽過,然後在最後送出上有個插入記錄。 預設不會選取它。 預設值表示只會針對目前步驟呈現一個索引標籤或表單。 如果未指定索引標籤名稱,則會顯示第一個索引標籤。 |
內嵌呈現 Web 資源 | 刪除在基本表單中包含 Web 資源的 iFrame。 |
工具提示已啟用 | 工具提示是使用目標資料表上屬性的描述設定。 |
顯示不支援的欄位 | 顯示或隱藏不支援的 Dataverse 資料行類型的資料行名稱。 |
將建議欄位設為必要 | 將所有屬性變為必要,也就是將欄位需求等級設定為 [建議業務]。 |
將所有欄位設為必填 | 將所有欄位設為必填,無論欄位需求等級為何。 |
驗證摘要 CSS 類別 | 指派給驗證摘要的 CSS 類別名稱。 預設為 'validation-summary alert alert-error alert-block' |
啟用驗證摘要連結 | 布林值 true 或 false,表示錨點連結是否應在驗證摘要中顯示,以捲動至包含錯誤的欄位。 預設值為 true。 |
驗證摘要連結文字 | 指派至驗證摘要連結的標籤。 預設值是「按一下此處」。 |
驗證摘要頁首文字 | 指派給驗證摘要標題的標籤。 |
指示 | 對使用表單的指示。 |
找不到記錄訊息 | 找不到資料時要顯示的訊息。 |
成功時設定
名字 | 描述 |
---|---|
成功時 | 下列其中一個值:
|
成功時隱藏表單 | 需要將 [成功時] 設定為 [顯示成功訊息]。 選取時,成功送出表單後隨即隱藏表單。 |
成功訊息 | 需要將 [成功時] 設定為 [顯示成功訊息]。 成功送出時要對使用者顯示的訊息。 如果未指定,則顯示預設訊息 (「成功完成送出」)。 對於為組織安裝並啟用的每一個語言套件,都會有一個欄位可輸入關聯語言的訊息。 |
外部 URL | 需要將 [成功時] 設為 [重新導向]。 指定 Web 上外部資源的 URL。 |
或網頁 | 需要將 [成功時] 設為 [重新導向]。 選取目前網站上的網頁。 |
附加現有的查詢字串 | 需要將 [成功時] 設為 [重新導向]。 選取時,現有的查詢字串參數會新增至目標 URL,在重新導向前。 |
附加記錄識別碼至查詢字串 | 需要將 [成功時] 設為 [重新導向]。 選取時,所建立記錄的識別碼會附加至做為重新導向目標的 URL 的查詢字串。 |
記錄識別碼參數名稱 | 需要將 [成功時] 設為 [重新導向]。 做為重新導向目標的 URL 的查詢字串中 ID 參數的名稱。 |
附加自訂查詢字串 | 需要將 [成功時] 設為 [重新導向]。 自訂字串,可以附加至重新導向 URL 現有的查詢字串。 |
附加屬性值至查詢字串 - 參數名稱 | 需要將 [成功時] 設為 [重新導向]。 要提供給參數的名稱,與目標資料表上的屬性值相關,會附加至重新導向 URL 的查詢字串。 |
將屬性值附加至查詢字串 - 屬性邏輯名稱 | 需要將 [成功時] 設為 [重新導向]。 目標資料表上屬性的邏輯名稱,要取得其值以附加至重新導向 URL 的查詢字串。 |
其他設定
名字 | 描述 |
---|---|
關聯目前的入口網站使用者 | 表示目前已登入使用者的記錄應該與目標資料表記錄相關聯。 |
入口網站使用者查詢資料行 | 儲存入口網站使用者的目標資料表上屬性的邏輯名稱。 |
為活動當事人 | 布林值,表示入口網站使用者查詢資料行是否是 [活動當事人] 類型。 |
附加檔案 | 選取即可在表單底部包含檔案上傳控制項,讓檔案附加至記錄。 請注意:9.2.2 版和更新版本的入口網站不需要啟用基本表單上的啟用資料表權限即可附加檔案。 不過,如果您已選取,則必須確保在上層資料表和註釋資料表提供適當的權限,以在表單上顯示附加檔案按鈕。 註釋資料表必須至少有建立 和 附加權限,且上層資料表必須具備對應 AppendTo 權限。 視您有建立表單還是更新表單而定,您可能也需要建立、讀取和寫入權限,以完成表單的案例。 |
附加檔案儲存位置 | 選項:附註附件、Azure Blob 儲存體。 如果您的組織已設定為使用 Azure 儲存體,您可以選擇在其中儲存針對此基本表單所上傳的檔案。 否則,檔案將會儲存為附註附件。 |
允許多個檔案 | 布林值,指示使用者是否可以上傳多個檔案。 |
接受 | 接受屬性會指定伺服器透過檔案上傳接受的檔案的 MIME 類型。 若要指定多個值,請用逗號分隔每個值 (例如 audio/,video/,image/*)。 |
標籤 | 檔案上傳控制項旁顯示的文字。 對於為組織安裝並啟用的每一個語言套件,都會有一個欄位可輸入關聯語言的訊息。 |
需要附加檔案 | 設定為需要有檔案附件才能繼續。 |
需要錯誤訊息 | 表單驗證期間顯示的訊息,如果 [是必要的] 為 true,且使用者未附加檔案。 對於為組織安裝並啟用的每一個語言套件,都會有一個欄位可輸入關聯語言的訊息。 |
將檔案限制為已接受的類型 | 強制驗證 [接受] 欄位。 如果未選取,[接受] 屬性僅做為對檔案上傳對話方塊的建議。 |
檔案類型錯誤訊息 | 如果 [將檔案限制為已接受的類型] 為 true,且使用者嘗試上傳的檔案類型無效時,表單驗證期間所顯示的訊息。 對於為組織安裝並啟用的每一個語言套件,都會有一個欄位可輸入關聯語言的訊息。 |
檔案大小上限 (KB) | 強制驗證上傳檔案允許的大小上限。 |
檔案大小錯誤訊息 | 如果 [檔案大小上限 (KB)] 為 true,且使用者嘗試上傳的檔案過大時,表單驗證期間所顯示的訊息。 對於為組織安裝並啟用的每一個語言套件,都會有一個欄位可輸入關聯語言的訊息。 |
自訂 JavaScript | 自訂的 JavaScript 區塊,將會新增至頁面底部,位於結束表單標籤元素正前方。 資料表欄位的 HTML 輸入識別碼會設定為屬性的邏輯名稱。 這樣就更容易透過 jQuery 選取欄位、設定值或執行其他用戶端操作。$(document).ready(function() { $("#address1_stateorprovince").val("Saskatchewan");}); |
相關的資料表參照
以下參數與表單儲存時設定相關聯的資料表參考相關。
這提供了將表單目前要建立或更新的記錄與另一個目標記錄產生關聯的方式。 這非常實用,如果您有多個步驟牽涉到多個資料表類型且希望將產生的記錄相關聯,或是如果傳遞了您想要建立關聯的記錄識別碼的查詢字串給頁面。 例如,我們有一個人才招募頁面列出職缺,每一項職缺都有一個申請該工作的連結,包含職缺識別碼,並連結到申請表,因此只要建立申請,職缺就會與該記錄產生關聯。
名字 | 描述 |
---|---|
儲存時設定資料表參照 | 是或否。 值為 [是],表示儲存表單時應指派相關聯的資料表參考,否則不會設定任何內容。 |
關聯名稱 | 兩個資料表類型之間特定關聯的 [關聯定義名稱]。 |
資料表邏輯名稱 | 參考資料表的邏輯名稱。 |
目標查詢屬性邏輯名稱 | 要建立或更新的目標資料表上查詢屬性的邏輯名稱。 |
填入查詢欄位 | 如果有關參考資料表的查詢是在表單上,則勾選此值將會在表單上的欄位中填入使用下列設定擷取的值。 |
來源類型 | 下列其中一個值:
|
參照資料表步驟 | 前一個步驟的多步驟表單步驟記錄,擷取該步驟中建立或編輯的資料表並將它與這個目前步驟的記錄建立關聯。 |
查詢字串名稱 | 包含多步驟表單的網頁 URL 的查詢字串中提供的參數名稱。 |
查詢字串是主索引鍵 | [是] 表示查詢字串值是主索引鍵值。 [否] 表示查詢字串值是主索引鍵以外的屬性類型。 |
查詢屬性邏輯名稱 | 查訊記錄的屬性的邏輯名稱。 |
顯示唯讀詳細資料 | 指示表單應在顯示與參考記錄相關的唯讀資訊的頁面頂端顯示。 需要表單名稱。 |
表單名稱 | 參考資料表上表單的名稱,應用來顯示唯讀詳細資料。 |
基本表單動作設定
基本表單預設允許讀取或更新現有記錄,或插入新記錄。 不過,您也可以輕鬆地對基本表單中的記錄啟用並設定其他動作 (刪除、啟用、停用等)。 還可以覆寫預設標籤、大小以及其他會在有動作啟用時出現的屬性。
這些設定位於基本表單的其他設定區段。 根據預設,只會顯示基本設定。 您可以選取進階設定以顯示其他設定。
如果資料表權限已授與適當權限,您可以為適用於個別記錄且針對網格中每一列出現的動作新增動作按鈕。 以下是可以使用的動作:
- Delete
- 工作流程
- 建立相關記錄
- 啟用
- 停用
按一下其中一個選項,會顯示該動作的設定區域。 此外,某些資料表有適用的特殊動作,以每個資料表為主:
- 計算商機的值 (商機)
- 取消案例動作 (事件)
- 關閉 (解決) 案例動作 (事件)
- 將報價轉換成訂單 (報價)
- 將訂單轉換為發票 (銷售訂單)
- 從商機產生報價 (商機)
- 未成交商機動作 (商機)
- 成交商機動作 (商機)
- 重新開啟案例動作 (事件)
- 將商機設為保留 (商機)
基本表單的地理位置設定
表單可設定為以圖釘標示地圖上現有的位置,或提供可讓使用者指定位置的能力。 請參閱新增地理位置。
表單的地圖控制項需要進行其他設定,向控制項傳遞各種不同位置欄位的識別碼,以便將值指派給這些欄位,或從欄位擷取值。 基本表單記錄具有設定區段。此區段定義您必須指定的欄位對應。 欄位名稱將隨著您建立的結構描述改變。
注意
- 啟用地理位置時,唯讀基本表單中的地址欄位會被地圖取代。
- 只有在強制回應視窗中顯示表單時,才會呈現對應。
- [地理位置] 區段不會在德國主權雲端環境中顯示。 如果使用者以不同表單啟用地理位置,則在入口網站上呈現時,將不會顯示。
要求驗證
要求驗證是 a feature of ASP.NET 在 1.1 版之後推出的功能,可防止伺服器接受包含未編碼 HTML 的內容。 此功能旨在協助防止一些指令碼插入式攻擊,用戶端指令碼程式碼或 HTML 可能會因此不知不覺地送出至某個伺服器、儲存下來,然後提供給其他使用者。 仍強烈建議您驗證所有的輸入資料和 HTML,並在適當時進行編碼。
根據預設,在入口網站上啟用要求驗證時,如果您在基本表單欄位中輸入指令碼代碼時不使用 HTML 編碼,就會發生以下一般錯誤:
Found field(s) submitted with potentially dangerous value(s) such as HTML, or script. Please review the field value(s) and try again.
若要停用要求驗證,請依照下列步驟進行:
前往入口網站設定並選取網站設定。
選取新增。
將名稱輸入為 DisableValidationWebTemplate。
選取適當的網站記錄。
將值輸入為 true。 根據預設,設定會是啟用要求驗證的 false 值。
輸入適當的描述。
選取儲存後關閉。
警告
要求驗證已停用時,可以將內容送出至頁面。 您必須確定內容已正確編碼或處理。
考量因素
- 基礎表單必須與特定的網頁關聯,才能在網站內看見該表單。
- 基本表單中不支援連線資料表子格。 如果您使用表單設計師將連線資料表子格新增至表單,錯誤訊息就會在將表單呈現於入口網站,以及使用連線資料表時顯示。
- 基本表單不支援重複的欄位、當事人清單欄位和商務規則。
- 欄位層級代碼元件是公共預覽,可以新增至表單中。 更多資訊:將代碼元件新增至模型驅動應用程式中的欄位
- 商務規則和用戶端 API 可以在唯讀表單上啟用鎖定的欄位。
- 如果您在插入模式下建立基本表單,就無法變更按鈕對齊,或是將動作按鈕放置在基本表單上方。
- 如果您將查詢控制項呈現為表單中的下拉式清單,則相關記錄篩選將無法運作。
- 入口網站表單上的彙總資料欄有時可能會顯示為可編輯,雖然他們其實代表唯讀。 為了確保這些資料欄保持唯讀狀態,請在模型驅動的應用程式表單上將該資料列標記為唯讀。