我有一个旧的脚本,它将不再执行导入pyfm。有什么建议吗?
日志转换详细信息如下:
fme_end_python:从字符串评估python脚本…
python异常
执行字符串'import pyfm时出错
关闭python脚本详细信息:
再次问好。
我计划设置一系列翻译来运行,其中每个后续翻译都由前一个WorkspaceRunner转换器运行。
问题在于,在翻译结束时放置一个WorkspaceRunner会使翻译依赖于成功的翻译,我的许多翻译链可能会被我无法控制的东西所破坏,例如,httpcaller中的“403禁止”错误。
我的问题是:
a)我可以运行一个.bat文件作为一个关闭python脚本,而不需要转换脚本所在的位置,继续运行吗?换言之,是否有“等待作业完成:否”的python版本?
B)如果不是,是否有办法将WorkspaceRunner放置在
这些要求到位的原因是一次不运行多个翻译,这样我就可以排除由于上面列出的错误而导致的广泛失败。
谢谢。感谢您的帮助和建议。
类似于这个想法:https://knowledge.亚搏在线safe.com/content/idea/87500/process-started-by-the-systemcaller-should-end-if.html我认为当用户中止了一个工作区(或者至少它可以是一个选项工作区参数)时,会发生更多的情况。
在这种情况下,我认为即使用户中止工作区,也应该运行定义的python/tcl关闭脚本。
如本Q/A所述https://knowledge.亚搏在线safe.com/questions/87933/python-shutdown-scrips-when-workspace-cancelled.html当涉及到活的溪流时,有一个限制,唯一的解决办法是在自然界中非常丑陋。
亲爱的各位,我有一个关闭python脚本,它基本上在一个数据下载成功或失败后向管理员发送电子邮件。我现有的py脚本如下:
我现在想在电子邮件生成之前施加一个“if”条件,如果我的用户名是“A”,电子邮件是“a@nnn.com”,那么电子邮件将不会生成。我已经结束了我的剧本,但它不起作用,FME服务器显示错误。
如果努茨!='A'和用户邮件!= a@ nnn.com:
smtpserver=smtplib.smtp(smtpserveradress,smtpport)
smtpserver.ehlo()。
smtpserver.starttls()。
埃姆洛
smtpserver.sendmail(电子邮件来自,埃米托msg.as_string())
smtpserver.close()。
……
我犯过错误吗?
另一个问题是,我还想将结果存储在SQL Server数据库中,我怎样才能在发邮件前写出正确的剧本?
谢谢
木奇特
你好,
问题是,我有一个shutdown python脚本,但我需要一个输出参数的值,有什么方法可以用python知道参数“division”的值吗?
我想知道是否可以访问FME服务器上的shutdown python脚本中Workbench日志文件的内容,并通过电子邮件发送内容。
我有一个中央工作台调用其他几个工作台来执行分析。我要分析完成的日志文件以获取警告,有关已识别和编写的功能的错误和信息。不幸的是,如果运行成功,最后一条语句是不够的。
解析后的数据应以文本形式发送到电子邮件中。
直到现在,我都在本地成功地进行测试,但2018年服务器上的同一个工作台因fme_end_python失败而失败。
进口FME
进口SMTPLIB
从email.mime.text导入mime text
从email.mime.multipart导入mimmultipart
从email.utils导入commaspace,格式化日期
def发送电子邮件(从,森德尔托主题,文本,服务器='*****'):
“发送包含分析结果的电子邮件”
断言IsInstance(发送到,列表)
外部=mimmultipart())
外部['来自']=发送\u来自
外部['到']=commaspace.join(发送到)
外部[‘日期’]=格式化日期(本地时间=真)
外部[“主题”]=主题
外部.attach(mimetext(text))
smtp=smtplib.smtp(服务器)
smtp.sendmail(从,森德尔托外部.as_string())
Stut.()
m_text=fme.logfilename
发送电子邮件(“*****”,[***** ]'来自服务器的日志文件',M-文字)
你好,
我有一个工作区,它使用定制的FeatureCounter和一个TestFilter。如果有太多的特性需要我把端口转换成一个终端变压器。
在终止之后,我想删除输入文件作为Python关闭脚本的一部分。包含文件名的路径位于已发布的参数中。示例:【源文件】:c:\folder\file.ext
我看过很多信息,但是我的尝试会产生错误,或者文件不会被删除,或者两者兼而有之。
有良好经验的人能否提供关机脚本中所需的所有行的详细信息(如果需要,工作区主体中需要任何python吗?
谢谢!
最初我在shutdown python脚本中使用了Oracle连接字符串(username/passwprd@service_name)。现在我在工具->FME选项->数据库连接中创建了一个命名连接。
现在,如何将凭证传递给我的python prg?
请帮忙。
我正在用FME将特性写入一个带有ArcSDE的Oracle数据库。用于进一步处理(例如调用外部的python函数)我需要知道python或tcl shutdown脚本中所写特性的objectid。有什么办法可以得到这些信息吗?
谢谢你的想法!
我发布了一个shutdown python脚本,其中有一个工作区,当成功运行时,它会在工作区完成后重命名sourcedataset中的功能类。这在工作台中成功执行。然而,当我将相同的工作区发布到FME服务器并运行它时,它只是循环工作区,从不执行shutdown python脚本。
唯一传递的参数是“sourcedataset_filegdb”和在执行工作区开始时选择的单个值。
任何想法或建议都将非常感谢。提前谢谢。
这种特性将帮助我们审计和代码审查FME工作区。
我有一个工作区,其中有一个filegdb,我在arcpy的帮助下删除和添加属性索引。我还使用fmelogfile进行日志记录。FME桌面没有翻译问题,但是,一旦我发布到FME服务器,就会出现警告消息和作业失败。我对以下日志消息的工作空间有问题:
警告警告:并非所有创建的FMESSESSIONS都在关闭前被销毁。这可能会导致不稳定警告:并非所有已注册的隐藏对象在关闭前都被丢弃。这可能导致不稳定
也许这一个是相关的:
通知不存在可选的“关闭”方法;不叫
请参阅:
我有一个简化的测试工作区,它使用arcpy运行exists()和一个记录器。这个在FME服务器上运行得很好。请参阅:
谢谢您。
你好,
我正在创建一个执行SQL查询(select查询)并将结果写入MS SQL表的工作台。我想把内容写在电子邮件里。我以前使用过shut down python脚本(Workbench成功运行后发送电子邮件并写入所写功能的数量),但在将已写入SQL表的内容写入SQL表时找不到资源。我有四行,每运行一次工作台都会附加四个字段。
有没有方法将这些值解析到电子邮件中?
内容-what-i-want-to-print-out.jpg
谢谢您。
my pythonpath系统变量设置为以下值,python.exe和pythonw.exe都位于d:\apps\python\arcgis10.5文件夹中。这个脚本在arcmap的python窗口中运行良好。
d:\apps\python\arcgis10.5;d:\apps\arcgis\desktop10.5\bin