高级自定义 > 示例:创建 ThingWorx Navigate 的自定义任务
  
示例:创建 ThingWorx Navigate 的自定义任务
任务构建块
您的任务由几个基本部分组成:
混搭 - 任务的用户界面。
服务 - 执行操作的 Java 或 Java 脚本。服务在 WindchillSwaggerConnector 上。
ptc-windchill-demo-thing - 您的数据源。
示例:创建新任务
在下列部分中,我们将了解在 ThingWorx Composer 中构建自定义任务的全过程。使用我们的示例任务,用户可以搜索 Windchill 数据并以表格接收搜索结果。当用户在表格中选择项时,可以在下方表格看到更多属性,并且可以看到该项的交互式 3D 表示。用户可以单击链接在 Creo View 中打开表示。下面是任务完成后的外观:
本示例演示如何将任务的构建模块合并到已启用的混搭中。您可能会发现您的组织所需要的许多服务已经包含在 WindchillSwaggerConnector 中。
因此,您只需使用 ThingWorx 用户界面和这些预装服务就可以构建多个自定义任务。如果您需要编写自己的服务,可以参考一些常用服务中的步骤。查阅 PTC 参考文档站点上的《Windchill 扩展》指南
首先,让我们尝试构建任务示例。
计划任务
最好先在开始之前计划任务的功能和布局。这样您就会知道需要什么服务,每个服务所需的面板,以及如何布置它们。确定计划后,即可开始在连接器上装配所需的服务。请继续阅读下一部分的步骤。
在 ThingWorx Composer 中创建新混搭
通过以下步骤创建新混搭:
1. “可视化”下单击“混搭”,然后单击“新建”按钮。“新建混搭”对话框随即打开。
2. “混搭类型”下,选择“页面”
3. “布局选项”下选择“响应式”,然后单击“完成”。混搭编辑器随即打开。
4. “小组件”选项卡中选择“面板”,然后将面板拖到布局预览区域。拖动其他面板小组件并调整其大小,直到实现计划的布局。在本例中,使用上图的布局。
将小组件添加到面板
任务的基本框架现在已经完成。接下来,我们将添加小组件以定义每个面板的可视组件。
1. 将小组件拖动到每个面板。在本例中,我们将添加这些小组件:
“列表”- 显示 Windchill 已保存搜索的列表。从列表中选择项时,其详细信息将出现在“栅格”面板。
“文本框”- 使您的用户能够执行其他搜索。
“按钮”- 执行搜索。
“栅格”- 显示用户选择的项的详细信息。
“属性显示”- 在“栅格”面板中显示选定项的属性。
Creo View- 显示选定项的 3D 视图。
“链接”- 在 Creo View 客户端应用程序中打开选定的项。
添加数据源和服务
现在,小组件已放置就位,用户界面已构建完毕。我们需要为其提供信息源。此示例任务使用预装数据源 ptc-windchill-demo-thing。在下一步,我们将添加使混搭正常工作所需的数据源和服务。
1. ThingWorx 右上方面板的“数据”选项卡中,单击加号以添加新的数据源。“添加数据”对话框随即打开。
2. “搜索实体”框中,键入所需的数据源。在本例中,我们将键入 ptc-windchill
3. 从结果中选择数据源。对于此示例,数据源是 ptc-windchill-demo-thing。该实体可用的服务显示在左侧。
4. 单击蓝色箭头按钮以添加所需的服务。对于此处的混搭示例,我们将选择这些服务:
GetCreoViewData
ExecuteSavedSearch
ListSavedSearches
在本例中,我们希望在混搭加载后立即显示 Windchill 中的已保存搜索。要执行此操作,请对 ListSavedSearches 选择“混搭已加载?”复选框。
5. 选择所需的所有服务后,单击“完成”
将服务连接到小组件
数据服务和用户界面的元素已设置就位。在下一步骤中,我们将连接所有对象。
1. “数据”面板的 ListSavedSearches 下,展开“已返回数据”部分。
2. “所有数据”拖到“列表”小组件。这将返回通过已保存的搜索找到的所有数据。
3. 对于“绑定目标”,选择“数据”。Composer 底部会显示连接图。
* 
此步骤取代 ThingWorx 先前版本所需的客户端 Java 脚本手动编写。
4. 接下来,我们可以配置小组件。在列表小组件中设置以下参数:
DisplayField - name
ValueField - objectid
Label - 保存的搜索
* 
单击文本框外部以保存每个实体。
在服务之间绑定数据
有些服务需要其他服务的数据。例如,当从列表中选择已保存的搜索时,我们希望执行该搜索。在接下来的步骤中,我们将在服务之间创建这些连接 (绑定)。我们还将服务绑定到小组件,例如: 将 ExecuteSavedSearch 与在搜索框中输入关键字连接在一起。
1. ExecuteSavedSearch 下,展开“参数”
2. ListSavedSearches 下,展开“已返回数据”,然后展开“选定行”
3. “选定行”下,将 objectId 拖到 oid,即 ExecuteSavedSearch“参数”部分。
第一个连接已完成。
4. 对于第二个连接,选择 ListSavedSearches
5. 然后,将 SelectedRowsChanged 从面板底部拖到 ExecuteSavedSearch
现在我们将连接搜索功能。文本框中的输入将连接到输入参数 keyword,按钮将连接到服务以获取数据。
1. 展开 ExecuteSavedSearch,然后再展开“参数”
2. 选择“文本框”小组件,然后单击箭头以打开列表。将 Text 拖到 ExecuteSavedSearch 下的 keyword
3. 返回到搜索框面板,选择按钮小组件,并从下拉菜单中将 Clicked 拖到 ExecuteSavedSearch
4. 让我们为搜索框和按钮添加标签。选择每个元素,然后从菜单中选择“标签”。键入每个实体的名称,例如:
文本框 - 要查找的项
按钮 - 查找
5. 保存更改。
检查连接
以下是此时应出现的连接。选择以下每个实体以查看其连接:
列表小组件
ExecuteSavedSearch
ListSavedSearches
将部件结构显示为表格
要在我们的表格小组件中显示部件结构,需要将部件结构数据连接到栅格小组件。请注意,此步骤中的拖动方向与之前相反 - 现在是从服务拖到小组件。
1. ExecuteSavedSearch 下,展开“已返回数据”,然后将“所有数据”拖到栅格小组件。
2. “选择绑定目标”下,选择“数据”
3. 现在数据已连接到栅格,我们将设置表格。选择栅格小组件,并从菜单选取“配置栅格列”
4. “配置小组件”下选择要显示的属性并重新排序。
5. 保存更改。
选择项时显示其可视项
我们的任务是在栅格中的项选定之后显示其可视项。为此,我们将结构数据连接到 Creo View 小组件,并将该小组件设置为在用户选择其他项时自动更新。
1. GetCreoViewData 服务的“已返回数据”下,展开“所有数据”并选择 structure。将其拖动到 Creo View 小组件。
2. “选择绑定目标”下, 选择 ProductToView
3. 要配置动态更新,选择 ExecuteSavedSearch。然后,在左下方窗格中,将 SelectedRowsChanged 拖到服务 GetCreoViewData
4. 单击“保存”
添加链接以在 Creo View 中打开项
为了能让用户快速打开 3D 可视项文件,我们将添加链接以在 Creo View 中打开该文件。要使用该服务,用户必须已安装 Creo View,或者能够通过 Windchill 访问 Creo View Lite。
1. GetCreoViewData 下,展开“已返回数据”“所有数据”
2. 选择 launchCreoViewUrl,并将其拖到链接小组件。
3. “选择绑定目标”下,选择 SourceURL
4. 我们还需要将项的 Windchill 对象 ID 连接到服务:在 GetCreoViewData 下,展开“参数”
5. 然后,在 ExecuteSavedSearch 下,展开“已返回数据”以及“选定行”
6. 选择 objectId 并将其拖到 GetCreoViewData 下的 oid 参数。
7. 最后,我们将命名链接。选择链接小组件,选取“文本”。键入链接的文本,例如 在 Creo View 中查看项
8. 单击“保存”
选中表格中的项时显示其属性
搜索结果表格会显示项的一些属性。为了添加更详细的属性列表,让我们连接属性显示小组件,然后选择要显示的属性。
1. ExecuteSavedSearch 下,展开“已返回数据”,然后选择“选定行”
2. “选定行”从服务拖到属性显示小组件。
3. “选择绑定目标”下,选择“数据”
4. 现在,显示小组件已连接到数据,我们可以选择要显示的属性:选择小组件,然后单击左上角的箭头。
5. 从菜单中选取“配置小组件”
6. “配置小组件”下选择要显示的属性并重新排序。
再次检查连接
此时,您应该可以看到这些连接。选择以下每个实体以查看其连接:
GetCreoViewData
ExecuteSavedSearch
ListSavedSearch
保存并命名混搭,然后查看新任务
我们的示例即将完成。在最后的几个步骤中,我们将命名并保存混搭,然后查看您的自定义 ThingWorx Navigate 任务。
1. 单击“保存”
2. “常规信息”下的“名称”框中键入任务的名称。
3. 单击“查看混搭”。您的新任务随即打开。祝贺您!
现在,您可以将任务添加到 ThingWorx Navigate 主页,并加以定制。请参阅下一主题“向主页添加自定义任务”。
需要详细信息?下面是一些资源
小组件
数据服务和链接