在混搭中包括自定义属性
以下步骤提供了在混搭中包括属性的最佳做法:
1. 如上文所述,将自定义属性添加到 _AP 数据形状,然后执行 AddColumn 服务。在本示例中,我们从上一节中添加到 PTC.SCA.SCO.JobOrder_AP 数据形状的自定义 Location 属性部分继续。
2. 使用主实体数据形状和 _AP 数据形状中的字段定义创建新数据形状。
在本示例中,创建名为 MyJobOrder 的新数据形状。为 ID (从 PTC.SCA.SCO.JobOrder 数据形状) 和 Location (从 PTC.SCA.SCO.JobOrder_AP 数据形状) 添加字段定义。
3. 导航到 PTC.SCA.SCO.ProductionOrderUtils 事物。
4. “服务”下,添加新服务以便为步骤 2 中创建的数据形状创建实例。对于输入和输出参数,均使用新数据形状的信息表。
在本示例中,添加一个名为 CreateMyJobOrder 的新服务,其中输入和输出参数均具有 MyJobOrder 数据形状的信息表。在服务编辑器中,输入类似于以下内容的代码:
var productionManagerThingName = Things["PTC.Factory.LaunchPointConfigurationThing"].GetProductionOrderManagerThingName();
var newJobOrders = Things[productionManagerThingName].CreateJobOrders({
JobOrders: myJobOrders
});
//Put new job orders in a new info table of MyJobOrder in order to filter the return attribute, this is not required.
var params = {
infoTableName : "InfoTable",
dataShapeName : "MyJobOrder"
};
var result = Resources["InfoTableFunctions"].CreateInfoTableFromDataShape(params);
var tableLength = newJobOrders.rows.length;
for (var x=0; x < tableLength; x++) {
var row = newJobOrders.rows[x];
result.AddRow(row);
}
5. 在混搭中使用新服务将会为具有自定义属性的实体创建新实例。在本示例中,于混搭内使用 CreateMyJobOrder 服务可通过在 PTC.SCA.SCO.JobOrder 数据库表填充的 ID 属性以及在 PTC.SCA.SCO.JobOrder_AP 数据库表填充的自定义 Location 属性创建新作业单。