span8
span4
FME Server 2016.1
对于带有FME Server的随需应变数据下载服务应用程序,我正在寻找一种使用已发布参数(请求者可以设置该值)和作业ID等配置下载zip文件名的方法。
到目前为止,我发现的一个可能的方法是:
可以使用FME_JOB_ID参数和'submitter'的已发布用户参数创建目标zip文件路径。在"fmeengineconfig.txt文件作为“FME_WORKING_DIR”指令。
它像预期的那样工作,但是
我的问题是:
的问候。
注:目标是允许用户定义下载zip文件名的任何前缀或后缀,以便他们能够轻松区分多个下载文件。如。预期的格式是:
任何想法吗?
上周末反复试验的结果。这可能是在数据下载服务的工作区中控制目标zip文件名的一种可能的方法。
1.创建已发布的参数以接受用户定义的目标zip文件名前缀或后缀。如。(后缀)。
2.定义这三个私有参数:
[DEST_DIR_PATH]脚本化Python:从FME_SERVER_DEST_DIR参数中检索目标目录路径。
导入os try: # FME Server dir = os.path.split(FME_MacroValues['FME_SERVER_DEST_DIR']
[DEST_ZIP_FILENAME]脚本化Python:创建由时间戳、作业ID和用户定义后缀组成的目标zip文件名。
导入datetime timestamp = datetime.datetime.now().strftime('%y%m%d_%H% m% S')尝试:# FME Server jobid = FME_MacroValues['FME_JOB_ID']除了:# FME Desktop jobid = '0' return '%s_%s_% S。zip' %(时间戳,jobid, FME_MacroValues['SUFFIX'])
[DEST_DATASET]文本:返回目标zip文件的完整路径。
(DEST_DIR_PATH) / (DEST_ZIP_FILENAME)美元
3.将写入器的Dataset参数链接到[DEST_DATASET]。
4.添加一个不会写入任何特性的虚拟写入器,这样工作区就可以注册为数据下载服务,而无需将实际的写入器设置为“Include Writers in Download”属性。
5.上传工作空间并将其注册为数据下载服务。
好的。在工作区中,我可以使用文本文件写入器覆盖翻译成功的电子邮件通知,但是还没有找到覆盖翻译失败通知的方法。
另外,我还不知道如何在通过REST / JavaScript API同步启动工作区时覆盖响应(包括下载URL)。
你好隆,
如果为作业提交程序设置FME_SERVER_DEST_DIR是一种解决方案,则可以在fmeengineconfig.txt文件文件,用生成的输出文件夹定义自己的宏,然后添加任何前缀或后缀。
之前:
子章节作业提交服务转换日志目录!服务器根!/logs/engine/current/jobs“\fme_transformation_log_name”!fme_auto_file_name_jobid!.log“\success_response 0:翻译成功通知位置=!fme_auto_dir_name!_ nw numfeaturesoutput=!功能输出!|日志文件名=!转换日志名!\失败的回应!错误号码!:!错误消息!|日志文件名=!转换日志名!
之后:
子章节作业提交服务转换日志目录!服务器根!/logs/engine/current/jobs“\宏定义我的输出目录”!fme_auto_dir_name!“\ fme_transformation_log_name“!fme_auto_file_name_jobid!.log“\success_response 0:翻译成功通知位置=!fme_auto_dir_name!_ nw numfeaturesoutput=!功能输出!|日志文件名=!转换日志名!\失败的回应!错误号码!:!错误消息!|日志文件名=!转换日志名!
当做,
拉里
嗨,拉里,谢谢你的回答。
宏定义fme_server_dest_dir“!fme_auto_dir_name!“\
重新启动服务器后,是的,我看到它确实可以将“fme_server_dest_dir”传递到作为作业提交者服务工作的工作区。
这肯定能解决我大部分问题。
再次感谢!
高石
©2019安全亚搏在线软件公司法律