参考西门子帮助文档《Installing and Configuring Dispatcher》
目录
Dispatcher包含两个组件的集成:Dispatcher Server和Teamcenter。Dispatcher使Teamcenter用户能够管理任务的分配和执行。异步地将任务分配给具有执行任务的资源容量的机器。(任务也可以在本地客户机上以同步方式完成,但这会引入基于作业负载的性能和管理问题。)
通过分配资源密集型活动来减少服务器负载。将高cpu或高内存作业安排在非工作时间处理。
使用网格技术解决方案来管理作业分发、通信、执行、安全性和错误处理。可以对Dispatcher系统进行扩展和定制,以满足特定的站点需求。
本篇文章着重介绍基于Siemens Dispatcher平台,进行二次开发,适用于如签字、打水印、文件转格式等需要后台执行,非实时任务程序。
一、了解Dispatcher如何执行文件转换任务
Dispatcher组件分为DispatcherClient、Scheduler、Module、Translators、Dispatcher request administration console。
其中DispatcherClient提供了提取数据并将其加载到Teamcenter的框架。它提供了使用其他Dispatcher Server组件的通信机制;Translators是西门子数字工业软件公司开发的translators和第三方开发的translators的结合。Dispatcher系统可以驱动translators程序使用特定的配置文件或参数来支持特定于translation的行为。
编辑
二、开发程序
1.示例基本环境:
Teamcenter 12.4.0.8
eclipse 4.27.0
Jre 1.8.0_171
2.生成DispatcherClient程序
1)使用eclipse创建Java Project,并引用如下lib包
2)创建类TaskPrep,继承com.teamcenter.ets.extract.DefaultTaskPrep
TaskPrep主要是进行从Teamcenter中提取数据,并将相关的任务信息和数据先加载到%Dispatcher_Root%\Stage下,示例参考%Dispatcher_Root%\DispatcherClient\sample\integration/translator
3)创建类DatabaseOperation,继承com.teamcenter.ets.load.DatabaseOperation
DatabaseOperation会在完成文件转换后将生成的新文件回传Teamcenter
4)打包程序,使用eclipse默认打包程序,将程序导出为JAR file
3.生成Translators程序
1)使用eclipse创建Java project程序,示例参考%Dispatcher_Root%\Module\samples
2)打包程序,使用eclipse默认打包程序,将程序导出为Runnable JAR file
4.部署程序
1)将DispatcherClient程序生成的jar包添加到%Dispatcher_Root%\DispatcherClient\lib文件夹下
2)将translators程序生成的jar包添加到%Dispatcher_Root%\Module\Translators\下对应的文件夹中
3)创建执行脚本bat文件
5.创建发起任务请求的程序
该请求程序可以是菜单/工具栏,也可以通过ITK程序实现,这里主要介绍ITK方式发起任务请求
6.配置服务
1)首选项
ETS.ITEMREVTYPES.<ProviderName>.<ServiceName>
创建多值首选项,该首选项的值为可以发起转换任务的item revision的类型,*代表支持所有类型
ETS.Repeating_UI.<ProviderName>.<ServiceName>
创建逻辑型单值首选项,设置值为true表示重复任务功能
ETS.TRANSLATORS.<ProviderName>
将开发的服务的名称添加到该首选项中
ETS.DATASETTYPES.<ProviderName>.<ServiceName>
新建多值首选项,值为发起人转换任务支持的数据集的类型
2)配置文件
%Dispatcher_Root%\Module\conf\translator.xml
%Dispatcher_Root%\DispatcherClient\conf\Service.properties
然后就可以快乐的运行啦!