javascript - 如何在 Dynamics 365 的配置页面中的 Web 表单上显示记录?
问题描述
因此,我在 Microsoft Dynamics 365 中有一个 HTML 网页,用作配置页。它允许用户输入他们的信息(姓名、地址、城市、州、邮编/邮政,以及他们的账单信息,例如卡名、卡号、到期日期等)。一旦用户输入所有信息并单击提交按钮,我使用 CRM Rest Builder 的 WebAPI 在数据库中同步创建记录。
我想知道的是,每当用户单击 D365 解决方案并加载配置页面时,它需要动态显示所有输入的数据,因此用户不必在表单上重新输入输入的数据(即每次他们单击显示 HTML 文件的配置页面,它不是空白的,它们的数据存在)。但是,我将其配置为用户仅对表单进行更改。
我尝试的是使用 CRM Rest Builder 生成 JavaScript 以通过记录的 ID(32 位十六进制)检索单个记录。但是,当我使用 onLoad 函数将检索方法添加到表单正文中时,由于某种原因,用户的数据没有加载。我已包含记录的 GUID 以供参考。
请看代码:
function retrieveRecord() {
var req = new XMLHttpRequest();
req.open("GET", Xrm.Page.context.getClientUrl() + "/api/data/v8.2/new_subscriptions(67EBDC8C-CFA5-E811-A963-000D3A3ACAF8)?$select=new_name,new_state,new_zippostal, new_cardname", false);
req.setRequestHeader("OData-MaxVersion", "4.0");
req.setRequestHeader("OData-Version", "4.0");
req.setRequestHeader("Accept", "application/json");
req.setRequestHeader("Content-Type", "application/json; charset=utf-8");
req.setRequestHeader("Prefer", "odata.include-annotations=\"*\"");
req.onreadystatechange = function() {
if (this.readyState === 4) {
req.onreadystatechange = null;
if (this.status === 200) {
var new_name = result["new_name"];
var new_state = result["new_state"];
var new_zippostal = result["new_zippostal"];
} else {
Xrm.Utility.alertDialog(this.statusText);
}
}
};
req.send();
}
<body onload="retrieveRecord()">
<div class="row">
<div class="column">
Status: <input type="text" name="Name" id="new_status">
<h2>Address Information:</h2>
Name: <input type="text" name="Name" id="new_name"><br>
State: <select id="new_state">
<option value="AL">Alabama</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
<option value="AR">Arkansas</option>
<option value="CA">California</option>
<option value="CO">Colorado</option>
<option value="CT">Connecticut</option>
<option value="DE">Delaware</option>
<option value="DC">District Of Columbia</option>
<option value="FL">Florida</option>
<option value="GA">Georgia</option>
<option value="HI">Hawaii</option>
<option value="ID">Idaho</option>
<option value="IL">Illinois</option>
<option value="IN">Indiana</option>
<option value="IA">Iowa</option>
<option value="KS">Kansas</option>
<option value="KY">Kentucky</option>
<option value="LA">Louisiana</option>
<option value="ME">Maine</option>
<option value="MD">Maryland</option>
<option value="MA">Massachusetts</option>
<option value="MI">Michigan</option>
<option value="MN">Minnesota</option>
<option value="MS">Mississippi</option>
<option value="MO">Missouri</option>
<option value="MT">Montana</option>
<option value="NE">Nebraska</option>
<option value="NV">Nevada</option>
<option value="NH">New Hampshire</option>
<option value="NJ">New Jersey</option>
<option value="NM">New Mexico</option>
<option value="NY">New York</option>
<option value="NC">North Carolina</option>
<option value="ND">North Dakota</option>
<option value="OH">Ohio</option>
<option value="OK">Oklahoma</option>
<option value="OR">Oregon</option>
<option value="PA">Pennsylvania</option>
<option value="RI">Rhode Island</option>
<option value="SC">South Carolina</option>
<option value="SD">South Dakota</option>
<option value="TN">Tennessee</option>
<option value="TX">Texas</option>
<option value="UT">Utah</option>
<option value="VT">Vermont</option>
<option value="VA">Virginia</option>
<option value="WA">Washington</option>
<option value="WV">West Virginia</option>
<option value="WI">Wisconsin</option>
<option value="WY">Wyoming</option>
</select><br>
Zip/Postal: <input type="text" name="Zip/Postal" id="new_zippostal"><br>
</div>
</div>
</body>
解决方案
推荐阅读
- objectbox - ObjectBox:在 Dart 中打开用 Java 创建的 DB 文件时出现问题
- c# - 使用基本身份验证连接到 SignalR 集线器
- google-apps-script - 如何使用 Google Apps 脚本遍历范围并根据条件构建“表格”?
- r - 有没有办法在 ggplot 中找到方面的名称?
- django - Django - 如何获取与对象连接的所有子字段的计数
- ios - 'NSInternalInconsistencyException',原因:'无法在包中加载 NIB:
- python - 需要 Python 正则表达式帮助
- flask - Flask WTForms 动态默认值
- javascript - 我可以知道如何将脚本从 Javascript 更改为 Typescript 函数
- .net-core - 让我的控制台应用程序不依赖于 runtimeconfig.dev.json?