如何使用液体预填充 Dynamics 365 门户实体表单中的字段?

How to pre-fill fields in Dynamics 365 Portal entity form using liquid?

我正在使用 Dynamics 365 CRM Online 并安装了客户自助服务门户加载项。我已经在一个页面上建立了一个来自提取查询的记录列表(由于过滤限制,实体列表在这里不起作用),我在该列表中为每个项目提供了一个按钮,该按钮使用一些查询字符串参数链接到另一个页面。按钮转到的页面是一个带有实体表单的网页,用于插入任务。

例如,列表页可以是“http://mysite123.microsoftcrmportals.com/availableitems”,第二页是“/scheduleitem?id=abc123&type=def”

我想从查询字符串中获取值并使用这些值来填充实体表单上的某些字段。我想在提交表单时在后台填写这些字段,或者将它们作为隐藏字段,但如果它们必须可见,则将它们设为只读,这样客户就不会更改它们。

我查看了门户文档和实体表单的实体元数据选项,但似乎没有办法将字段绑定到查询字符串参数。有没有办法用液体或 javascript 或 ??

我们发现,如果您隐藏该字段(在 CRM 表单中),则该字段不会包含在页面中 viewstate(即,如果您更改该字段的值,它不会不要坚持使用 CRM)。但是,您可以使用 JavaScript 隐藏该字段。这并不理想,但它有效

其次,您可以使用 JavaScript 设置值。您应该能够将一些 JavaScript 添加到门户 EntityForm 并在 document.onready 方法中读取 querystring 值并填充字段。这些更改应该保留。