主题:“工作流”中的问题亚搏在线 https://knowledge.亚搏在线safe.com/questions/topics/single/87.html网站 “工作流程”主题的最新问题亚搏在线 关闭工作区时(更改后)强制弹出工作区说明的选项 https://knowledge.亚搏在线safe.com/idea/88081/option-to-force-workspace-description-to-popup-whe.html

希望看到一个选项,允许您在关闭工作区/工作台时强制弹出工作区参数描述。选项将保存在工作区中,并且仅适用于您需要的内容以及在此工作区中进行的(有意义的)内容更改。

这将有助于跟踪概述,帮助,最重要的是历史。

工作台 亚搏在线 工作空间 元数据 历史 清华大学,2019年3月7日09:47:26格林尼治标准时间 jeroenr
即使进程被用户中止,也要关闭要运行的脚本 https://knowledge.亚搏在线safe.com/idea/87965/shutdown-scripts-to-run-even-if-the-process-is-abo.html

类似的想法:https://knowledge.亚搏在线safe.com/content/idea/87500/process-started-by-the-systemcaller-should-end-if.html我认为当用户中止了一个工作区(或者至少它可以是一个选项workspace参数)时,应该会发生更多的事情。

在这种情况下,我认为即使用户中止工作区,也应该运行定义的python/tcl关闭脚本。

如本Q/A所述https://knowledge.亚搏在线safe.com/questions/87933/python-shutdown-scrips-when-workspace-cancelled.html当涉及到活的溪流时,有一个限制,唯一的解决办法是在自然界中非常丑陋。


蟒蛇 亚搏在线 关机脚本 星期二,2019年3月5日格林威治标准时间18:21:57 虚拟城市马特
工作区取消时python关闭scrips https://knowledge.亚搏在线safe.com/questions/87933/python-shutdown-scrips-when-workspace-cancelled.html

我正在尝试配置一个python关闭脚本,以便在用户过早取消工作流时运行。亚搏在线在测试中,我发现SCRIP没有运行(或者至少看起来没有运行)。

这是预期行为吗?有人能解决这个问题吗?@DebbiAt亚搏在线Safe有什么想法吗?

这里的限制是在处理实时流时——在终止/取消之前,进程将永远不会结束。

干杯

蟒蛇 亚搏在线 星期二,2019年3月5日09:33:36格林尼治标准时间 虚拟城市马特
新的FME服务器参数——> FME_SECURITY_USER_EMAIL https://knowledge.亚搏在线safe.com/idea/87659/new-fme-server-parameters-fme-security-user-email.html

请评估在FMEServer中添加一个变量,该变量包含来自已记录用户的用户电子邮件(如果存在于useraccount表中)。直接向用户发送邮件非常有用。谢谢您。

FMESER 亚搏在线 电子邮件 结婚,2019年2月27日13:17:38格林尼治标准时间 吉奥普
当工作区中止时,从系统调用程序触发的进程不会结束。 https://knowledge.亚搏在线safe.com/questions/87473/process-triggered-from-system-caller-does-not-end.html

嗨,大家好,


我一直在和系统调用者玩,然而,我发现当我中止我的FME过程时,使用系统调用程序触发的过程会继续运行。

部分问题是我也在使用tempPathNameCreator作为被调用进程的输出,如果我杀死FME进程,子进程继续运行,那么临时文件也不会被删除。

我必须手动杀死然后删除进程

有人知道有什么方法可以解决这个问题吗?

亚搏在线 系统调用方 命令 周一,2019年2月25日08:41:39格林尼治标准时间 虚拟城市马特
新建工作区参数-转换超时 https://knowledge.亚搏在线safe.com/idea/74400/new-workspace-parameter-translation-timeout.html

将“转换超时”设置为工作区转换参数非常有用,这样地:

如果转换的总运行时间超过了此超时配置,然后转换立即以超时错误终止。

据我所知,目前我们只能控制提交给FME服务器的作业的作业过期时间。作为fmeserverjobsubmitter变压器的高级参数。这对许多用例来说都很好,但对于控制在本地使用FME桌面运行的作业链的超时问题没有帮助,或用于混合桌面/服务器工作流。亚搏在线我觉得一种更面向对象的方法需要允许工作区作者设置默认超时在内部工作区,不管它是在桌面上运行还是在服务器上运行。

然后可以将此转换超时参数链接到已发布的或私有的参数,取决于用例。作为已发布的参数,然后工作空间可以被清晰地集成到一个受控的复杂工作链中。

也许有一些我不知道的底层复杂性会阻止这种类型的功能?

亚搏在线 已发布参数 工作空间器 工作提交人 工作区参数 超时 周五,2018年7月13日格林尼治标准时间17:26:50 JT公司
使用计数器和testfilter变压器生成消息 https://knowledge.亚搏在线safe.com/questions/74210/using-counter-and-testfilter-transformers-to-gener.html

我正在尝试创建一个工作流,它根据一个较老的特性类亚搏在线检查一个包含新更新信息的电子表格。我使用FeatureJoiner来确定电子表格中是否有新的或添加的行,以便最终,我将能够为任何新行添加坐标点。我已经将FeatureJoiner的未连接的左端口连接到计数器转换器,以确定向电子表格添加了多少新行,因此向用户显示需要添加多少新坐标对来更新Feature类。到目前为止,我已经能够使用日志转换器(FeatureJoiner > Counter > TestFilter)生成错误消息,以指示是否有新的附加行,但是,如果没有添加新行,我还想生成一条消息,以便用户知道,并将它们定向到另一个工作流。亚搏在线我已经设置了testfilter,以便如果counter transformer属性具有值,它将导致一个记录器,否则,它将导致第二个日志记录器显示不同的消息。问题似乎在计数器中-如果没有新的更改,计数器将无法接收此消息。

亚搏在线 柜台 测试过滤器 特色细木工 记录器 结婚,2018年7月11日20:45:46格林尼治标准时间 玛丽理查德364
Postgis编写器:功能类型“uuuuuuuuu”的扇出找不到功能类型模板“uuuuuu”)。 https://knowledge.亚搏在线safe.com/questions/71221/postgis-writer-fanout-for-feature-type-failed-to-f.html

我在使用动态PostGIS编写器时遇到此错误

错误(PostGIS Writer: Fanout for feature type ' gcenter_总督'未能找到feature type模板' gcenter_总督')

我正在使用FEM 2018 build 18305,如不同的文章所建议的,问题解决了,在这个版本中,但它仍然不起作用

附加了作者配置的快照

Postgis-Writer.png

邮政地理信息系统 亚搏在线 动态工作区 范诺特 太阳2018年5月27日格林尼治时间19:31:51 鲍彻
csv:从csvt信息创建动态结构 https://knowledge.亚搏在线safe.com/questions/69259/csv-dynamic-structure-creation-from-csvt-information.html(https://knowledge.safe.com/questions/69259/csv-dynamic-structure

我必须定期将更多(200+个)csv文件导入Postgis,显然,动态读取这些文件是一种方法。

在进入FME之前,我在2.xx版的ogr2ogr的帮助下完成了这项工作,这表示存在一个csvt文件,该文件在一行中包含csv文件的数据类型,用逗号分隔。(见http://www.gdal.org/drv_csv.html)

我现在尝试做的是动态创建表结构与FME的意思是通过阅读

* csv文件的第一行(i2-行1.csv),它给了我列名,和

* csvt-file (i2-line1csvt.txt文件-后缀是.csvt,但上传者抱怨),它给出了与表名相同的数据类型序列。

我的初稿如下:

我想列表创建者和模式制定者应该完成这项任务。

或者,我可以想象用python编写结构创建者,但不知道如何格式化结构数据。

目标是在FME服务器中运行此工作区,并仅向其提交要导入的csv文件,从其文件名派生表名。

任何帮助都将不胜感激。

蟒蛇 亚搏在线 csv公司 动态工作流亚搏在线 CSVT 周一,2018年4月30日09:00:51格林尼治标准时间 多拉吉斯
在读取特性时编写它们 https://knowledge.亚搏在线safe.com/questions/65805/write-features-as-they-are-read.html

你好

我有一个从smallworld数据库读取数据集并使用API编写器将其写入ESRI文件geodatabse的工作台。

一切正常,但运转很慢。我注意到FME正在读取所有特性(> 100万),然后编写它们。有没有一种方法可以让这些特性在到达编写器时进行编写?我一直在玩“每笔交易要写的功能”设置,但这似乎没有帮助。

埃斯里 地理数据库 亚搏在线 周一,2018年3月12日格林尼治标准时间18:16:15 映射器
条件值和分组依据 https://knowledge.亚搏在线safe.com/questions/64827/conditional-values-and-group-by.html

嗨,大家好,

我想知道是否有一种使用条件值机制和分组参数的方法。

设想以下情况:

我有一个值为0和1的已发布参数。我的特征具有属性A,B、B、B、B、B、B、B、B、B、B、B、B、B、B、B、B、B、B、B、B、B、B、B、B、B、B、BC和D。当我为已发布的参数选择0时,我希望将A和B属性作为按属性分组,当给1时,应设置C和D。

我知道我可以使用一个测试器,并根据不同的变压器设置相应的路由特性,但我是通过在不同地点设置来使用这个组的。为了保持工作区可读性,这种方法不适用。

属性处理 亚搏在线 参数 小组通过 周一,2018年2月26日格林威治标准时间17:10:03 威卡托
使用由FME服务器JobSubmitter创建的文件在同一流中进行数据下载 https://knowledge.亚搏在线safe.com/questions/63642/bundle-pdf.html网站

我正在处理一个工作流,它将运行在我亚搏在线的FME云上,由一个REST命令启动。这个想法是开发一个数据库驱动的PDF创建者,它可以生成x数量的PDF页面,并将它们打包成一个zip。

我的工作流的设置如下(或者至少应亚搏在线该这样工作):

步骤1:将Rest命令与TaskID一起发送到云,并启动工作流1。亚搏在线

步骤2:工作流1亚搏在线将获取连接到taskID的数据库中的信息。提取的表包含x个pageid(取决于需要多少页),每个pageid包含设置纸张大小所需的信息,风水层,WMS的东西,图表和表格,PDF的名称和所需的其他信息。

步骤3:对于每个PageID athere都有一行提交给FMEServerjobsubmitter(按顺序并等待作业完成),其中包含启动工作流2所需的信息,工作流2从步骤2生成的表构建pdf。亚搏在线对于每个pagaid,生成一个PDF(此工作流经过测试,可脱机和联机工作)。亚搏在线

步骤4:工作流2中完成的PDF应返回到工作流1,并与其他x数亚搏在线量的pfd(如果pageid大于1)捆绑到工作流末尾的zip中,然后通过电子邮件发送到rest命令中提供的电子邮件。

对于这个流程,我仍然有一个问题:

(如何)您可以使用由FMeserverJobSubmitter生成的数据(PDF),并使用创建的文件并将它们组合成一个ZipFile?

FMESER 亚搏在线 作业提交者响应 邮件 清华大学,2018年2月8日10:38:16格林尼治标准时间 jeroenr
逻辑门 https://knowledge.亚搏在线safe.com/questions/59287/logic-gates-2.html网站

大家好,FME用户们,

我想知道在FME中是否有一种使用逻辑门的方法。我指的是一个变压器,它只在条件满足时传递数据。例如,一个与门仅在满足所有输入van时传递数据,例如:

我有一个具有特定分支的主数据流,只有当条件为真时才会触发该分支。我使用一个创建者和测试人员来测试一个发布的参数是否有一个特定的值。我希望传递的特性充当触发分支的触发器。

我添加了一张图片以便澄清

不需要OR门,因为许多变压器都是这样工作的。

有没有这样的东西?或者是Python解决方案?但是我不能编程python。

提前谢谢!

米歇尔•

变压器 亚搏在线 工作空间 逻辑门 星期二,2017年12月5日15:18:13格林尼治标准时间 麦克基宁
向WorkspaceRunner发送功能的最佳方式是什么? https://knowledge.亚搏在线safe.com/questions/57800/whats-the-best-way-to-send-features-to-a-workspace.html

标题说明了一切:向WorkspaceRunner发送特性的最佳方式是什么?

我试着用WKT,但由于某种原因,我不知道,它添加了一些`--` in参数,接收到的wkt无效:

命令行参数为'c:\program files\fme2016\fme.exe'`./pg2dxf_reseu_eau.fmw'`--periphery'` polygon((507248 137339'`--507484 137669'`507865 137441'`--507629 137111'`507248 137339))'..warn遇到无效的wkt:polygon((507248 137339
亚搏在线 WKT公司 周一,2017年11月13日格林尼治标准时间15:50:38 Rbovard公司
FME服务器工作流管理亚搏在线(FME服务器2016) https://knowledge.亚搏在线safe.com/articles/56071/fme-server-亚搏在线workflow-management-fme-server-2016.html

工作流管理简介亚搏在线

FME服务器允许您通过将单个工作区链接在一起来构建复杂的工作流,亚搏在线并根据工作区是否成功完成采取各种操作。像大多数FME任务一样,亚搏在线工作流管理最好使用内置于FME工作台中的工作区来完成。

如果您使用的是FME服务器2017.1,请参阅:FME服务器工作流管理亚搏在线
如果您使用的是FME Server 2014,请参阅:FME服务器工作流管理亚搏在线(FME服务器2014)

FMEServerJobSubmitter(FMEServerJobSubmitter)

这个FMEServerJobSubmitter(FMEServerJobSubmitter)是管理FME服务器工作流程的关键转换器。亚搏在线从2014年的FME服务器开始,FMEServerJobSubmitter的工作方式发生了变化。在等待作业完成时,可以使用控制器工作区来运行作业,不需要在服务器上绑定另一个FME引擎。本教程只需要一个FME引擎。本教程中描述的方法替换了我们之前推荐的几个更复杂的方法。

下载

  • 亚搏在线workflow-management.zip
  • 亚搏在线工作流管理示例:

    • 控制器工作区:链式作业.fmw
    • 工作1:加载数据
    • 工作空间2:process_data.fmw
    • 工作空间3:光栅化数据.fmw
    • 输入数据集:包裹\市中心.zip
    • 输入数据集:投票\市中心.zip
    • 输入数据集:数据库.sl3
    • 输入数据集:数据库\u for \u tiles.sl3

    亚搏在线工作流管理示例-多个引擎:

  • 控制器工作区:并联发动机.fmw
  • 请下载并解压缩 亚搏在线workflow_management.zip在开始教程之前获取这些文件。运行工作区时,输入数据集(zip文件)将上载到FME服务器。

    亚搏在线工作流管理的例子



    在这个例子中,我们将使用将矢量数据从一个shapefile加载到数据库的示例,处理数据,以及创建光栅网络地图块。这是通过使用4个工作区-一个控制器和三个工人。控制器依次运行每个工作区,FME服务器可以配置为在整个过程成功完成后发送电子邮件。这只需要单燃料发动机.

    步骤1:构建工作流组件亚搏在线

    通常情况下,您将构建组成工作流程的各个工作区。亚搏在线对于本教程,我们已经构建了如上所述的worker工作区。有关它们如何工作的详细信息,在FME工作台中打开*.fmw文件并阅读注释。

    a)将所有流程工作区(如下所列)发布到FME服务器上的新存储库。请注意,您将不需要随工作区一起上载任何数据。

    • 工作区1:加载\u data.fmw
    • 工作区2:process_data.fmw
    • 工作区3:rasterize_data.fmw

    b)测试工作区,确保它们单独工作(即手动为下一个工作区提供输入数据)。这可以使用作业提交者服务的配置对话框或使用FME工作台来完成。

    确保使用下列适当的输入数据源:

  • 加载\u数据-上传zip文件,并指定适当的*.shp文件作为输入
  • 过程数据-上传database.sl3文件(或使用上一个工作区的输出)作为输入
  • 光栅数据-上传\u tiles.sl3文件的数据库\(或使用上一个工作区的输出)作为输入

    步骤2:使用控制器将组件连接在一起

    发布各个组件工作区后,您可以开始设置控制器工作区(链式作业.fmw)。对于本教程,已生成控制器。然而,您需要对每个FMEServerJobSubmitter执行向导,以便为您的FME服务器安装正确配置它(使用您的主机名和凭据更新FMEServerJobSubmitter)。并为发布的参数选择正确的值。请注意,此时应该已经发布了工作区。

    工作流是亚搏在线由创建者启动的。fmeserverjobsubmitters配置如下:

    这个第一fmeserverjobsubmitter需要在控制器工作区的已发布参数中设置的输入文件:终止符用于异常处理,并将记录哪个工作区导致了失败。它们还将导致控制器工作区报告故障,而不是报告错误的成功。

    当写入基于文件的数据格式(就像我们在SpatiaLite数据库中所做的那样)时,您可以在工作区之间传递对文件的引用,使用输出数据集名单。对于每个输出数据集,有三个属性:名称路径,和格式.只有在选择“输出数据位置:临时文件夹”时才会发生这种情况。

    要访问这些属性,您可以使用ListExploder,或者简单地引用第一个数据集作为输出0。

    第二fmeserverjobsubmitter,提交者,我们将使用Path属性传递对文件的引用:

    如果你要用DBMS,您可以将连接参数指定为控制器工作区的已发布参数。

    最后的fmeserverjobsubmitter,提交者,我们要将输出(web map tiles)写入到作业完成后可以访问的位置,

    在FME 2015中,新功能,称为“输出数据位置”,已添加到FMEServerJobSubmitter变压器。这允许用户将输出数据发送到自己的输出位置(如UNC路径或共享资源),而不是使用服务器上的临时位置。要做到这一点,在Transformer属性中选择“在工作区中指定”选项。在这种情况下,我们提供了fme_sharedesource_temp参数:

    步骤3:运行整个工作流亚搏在线

    我们现在准备发布控制器工作区。它可以发布到作业提交者服务。


    运行控制器工作区时,提供正确的形状文件。如果您上传提供的zip文件作为输入,确保实际选择压缩目录中的*.shp文件:


    注释:只有一个作业将显示在FME服务器的作业历史记录中。然而,它的日志文件将包含来自所有三个工作区的完整日志信息。

    亚搏在线工作流管理示例-多个引擎

    此示例演示如何使用控制器工作区并行运行多个作业FME发动机.用这种方法,您可以在单个工作区内运行一系列作业并执行下游处理。

    工作区(并联发动机.fmw)使用提交四个作业进行处理FMEServerJobSubmitter(FMEServerJobSubmitter)变压器。它们完全同时提交,并在多个发动机上运行(如果可用)。工作区使用FMEServerJobWander服务生然后在所有处理完成后发送电子邮件。

    警告:如果此工作流使用不当,则可能导致FME服务器死锁。亚搏在线例如,如果你有三个引擎,你运行控制器工作区3次,将有3个作业等待排队的作业完成。因为所有的引擎都被占用了,控制器作业永远不会完成,需要手动取消。


    并行运行作业的关键是设置每个作业FMEServerJobSubmitter的“等待服务器作业完成”参数到'不'.此设置使变压器无阻塞,从而可以提交多个作业。

    用户添加的图像

    来自的每个功能输出FMEServerJobSubmitter(FMEServerJobSubmitter)Transformer包含作业ID。此ID可由FMEServerJobWander服务生检查工作是否完成。所有作业完成后,这些功能将退出FMEServerJobWander服务生从而可以执行进一步的处理。

    注:在附加的工作区中有一个FMEServerJobSubmitter(FMEServerJobSubmitter)参数设置为“等待服务器作业完成”是的。这样做是为了演示,以显示您可以在工作区中具有多个具有不同设置的变压器。

    下一个步骤

    为了得到工作流问题的通知,亚搏在线您可以设置控制器工作区,以便在失败时将其发布到主题,并添加电子邮件订阅。请参阅我们的教程系列FME服务器中的电子邮件更多信息-具体来说,工作区完成时发送电子邮件.

    您还可以通过使用通知服务来自动启动工作区-可能是为了监视目录中的更改,或者回复收到的电子邮件附件。这种方式,FME服务器可以自动将新数据加载到数据库中,处理它,创建Web地图图块并将其上载到宿主位置,比如亚马逊S3。


  • FMESER 亚搏在线 工作提交人 作业链 结婚,2017年10月18日格林尼治标准时间17:28:44 理查德保险箱亚搏在线