Inclusión de propiedades personalizadas en un mashup
En los siguientes pasos se proporciona una práctica recomendada para incluir propiedades en un mashup:
1. Añada una propiedad personalizada a la definición de datos _AP y ejecute el servicio AddColumn, tal como se describe en la sección anterior. En este ejemplo, se continúa con la propiedad Location personalizada añadida a la definición de datos PTC.SCA.SCO.JobOrder_AP de la sección anterior.
2. Cree una nueva definición de datos con definiciones de campo de la definición de datos de entidad principal y la definición de datos _AP.
Para este ejemplo, cree una nueva definición de datos denominada MyJobOrder. Añada definiciones de campo para ID (desde la definición de datos PTC.SCA.SCO.JobOrder) y Location (desde la definición de datos PTC.SCA.SCO.JobOrder_AP).
3. Navegue a la cosa PTC.SCA.SCO.ProductionOrderUtils.
4. En Servicios, añada un nuevo servicio para crear instancias de la definición de datos creada en el paso 2. Para los parámetros de entrada y salida, utilice una infotable de la nueva definición de datos.
Para este ejemplo, se añade un nuevo servicio denominado CreateMyJobOrder, con una infotable de la definición de datos MyJobOrder para los parámetros de entrada y salida. En el editor de servicios, introduzca un código similar al siguiente:
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. El uso del nuevo servicio en un mashup crea nuevas instancias de la entidad con la propiedad personalizada presente. En este ejemplo, el uso del servicio CreateMyJobOrder en un mashup crea nuevas órdenes de trabajo con la propiedad ID rellenada en la tabla de base de datos PTC.SCA.SCO.JobOrder y la propiedad personalizada Location rellenada en la tabla de base de datos PTC.SCA.SCO.JobOrder_AP.