在项目中使用实体
通过使用在 Data Service 中创建的实体,您可以管理和操作聚集在单个对象中的数据,而无需以细粒度的方式使用。 为此,您需要 Studio v2020.8 或更高版本。
以下示例检索奥运会各个项目所获奖牌数前 10 名的国家/地区的相关数据,以及它们获得的奖牌。
按照 创建实体 页面中详述的步骤,我们创建了一个实体,用于存储有关参与国家/地区、开幕日期和闭幕日期及其所获奖牌的信息。
“奥运会”实体具有以下字段:“名称”、“国家/地区”、“开幕日期”和“闭幕日期”。“奖牌”实体具有以下字段:“国家/地区”、“金牌”、“银牌”、“铜牌”以及奖牌总数。这两个实体通过“关系”标签相互关联。
在 Studio 的工作流中导入实体。
以下工作流将抓取有关某届奥运会的信息,将数据映射到参数,并将其传递到主工作流。
为此,我们为要收集的每种信息类型定义了一个参数,从而生成了 5 个导入的参数。
通过使用实体,我们只需导入并使用两个参数即可收集数据。
inOlympics Year
和 outOlympics
)、其各自的属性和实体中定义的字段。通过使用实体,我们通过将数据正确映射到其各自的实体字段,减少了传递信息所需的参数个数。
收集数据后,您可以使用“创建实体记录”活动将信息添加到 Data Service。
在本示例中,我们使用导入的参数将收集的信息传递到 Data Service。 “输入”和“输出”记录是用于传递数据的“ Olympics ”类型变量的值。
运行项目后,在 Data Service 中创建了以下记录:
“查询实体记录”活动可用于从 Data Service 拉取记录列表。 在以下示例中,我们使用该活动来查询“奥运会”实体中的数据记录,允许用户选择奥运会届别,并在“奖牌”实体中写入每个参与国家/地区所获奖牌数。
Name != NULL
条件。这将遍历“名称”列中的所有记录,并在 listOlympics
变量中输出这些记录,以在“输入对话框”活动中使用。
listOlympics.Select(Function (o as Olympics) o.Name).ToArray
。或者,也可以使用“遍历循环”活动。
selectedOlympics
变量,并在另一个“查询实体记录”活动中使用所选内容来遍历在特定一届奥运会上所获奖牌的列表。此条件是通过在查询生成器中使用 equals
选项设置的。
可对选定实体和相关的实体记录执行查询。
以下场景说明了在 Data Service 中更新实体架构,然后与 Studio 同步数据的步骤。
在 Data Service 中,转到“ 奖牌 ” 实体,单击 “新建字段 ” ,然后添加类型为 “是/否” 的新列 “主办 国家” 。单击“保存” 。
在 Studio 中,单击“管理实体”,然后单击“刷新”按钮。如“更改”列中所示,检测到“奖牌”实体发生更改。单击“保存”,实体将在 Studio 中更新。
“更新实体记录”活动可用于将记录从工作流直接更新到 Data Service 中。
在本示例中,我们将从“奖牌”实体查询某些记录,并使用上述活动自动更新这些记录。
在“奖牌”实体中,每届奥运会的主办国家名称旁边标有星号。例如,对于 2012 奥运会,主办国家在“奥运会”列中记录为“英国 (GBR)*”。
listMedals
变量中抓取记录,使用“遍历循环”活动遍历循环每个项目,并在“主办国家”列中在主办特定一届奥运会的国家旁边分配“True”值。
“更新实体记录”活动可用于许多其他场景,用于在 Data Service 中传递数据和更新记录。