Hello,
我正在开发一个启动python脚本,它将查看传入文件并列出该文件中的功能类型。然后与另一个强制功能类型列表进行比较。本质上,我想确保文件中存在所需的特性类型。我对巨蟒还比较陌生,还在学习,但是任何指导都是有帮助的。
导入FmeObjects
进口FME
类FmeFeature(对象):
value=fme.macrovalues['sourcedataset_autocad_od']
fme.getFeatureType(值)
#不确定下一步该做什么
谢谢您!
startupscript-destinationdatasetlock.txt开始
你好!
我正在尝试在FME桌面2016.1中构建一个启动脚本,它将检查目标数据集是否可用于写入或不可写入。如果有空的话,我想发个短信告诉我,如果不是的话,我希望翻译失败,告诉我原因(而不是持续一个小时以上,在翻译结束时告诉我失败了)。
我的想法是我有一个脚本,可以在所有工作台上使用,不管工作台在做什么。所以我试着在启动脚本中修复它,而不是用变形金刚。
我用python编写了一个脚本,这给了我一个很好的例外,当我运行翻译…
However,it also gives the exception when the destinationdataset is still available (not locked by me on purpose),它不应该让例外…
我错过什么了吗?
Thanks for the help!
脚本:
import fmeimport fmeobjectsimport os# Raise exception if the Writer destination is locked (before translation!)# Create an empty list,稍后,我们将添加destinationt datasets.destDataset_list=[]destDataset=“destDataset”print的位置\n'创建一个FME日志文件。logger=fmeobjects.fme log file()只打印目标数据集,and put them in a list.for key,fme.macrovalues.items()中的值:打印“键:”+str(key)+“,value macrovalues:“+str(value)在de macrovalues字典中查找文本destdataset,#如果找不到字符串,则返回“-1”。如果key.find(“destDataset”)!=-1:我找到空的DestDataset字符串,想跳过这些。如果len(str(value))>3:list test=0我将测试数据的位置是否全部包含在列表中(同一地理数据库中的多个功能类仍然提供相同的destdatset)。for DestDataset_item_test in DestDataset_list: if DestDataset_item_test == value: listtest += 1 # If the DestDatset is not yet in the list,我们将它附加到列表中。如果listTest==0:destDataset_list.append(value)print“value destDataset_list:”+str(value)print“\n”print“lengte destDataset_list:”+str(len(destDataset_list))for destDataset_item in destDataset_list:print“destDataset_item:”+str(destDataset_item)print“\n”for destDataset_item in destDataset_list”:对于列表中的每个目标集,测试位置是否已就绪…如果os.path.exists(destDataset_item):print“目标数据集:”+str(destDataset_item),请尝试:如果它存在,尝试移除它。os.remove(destdataset_item)logger.logmessagestring('toegang op'+destdataset_item+'是beschikbaar!')打印'toegang op'+destdataset_item+'是beschikbaar!'#如果不能移除,raise an exception because it is probably locked...除了e:logger.logmessagestring(“geen toegang op”+desttataset ou item+“\n”)引发异常(“geen toegang op”+desttataset ou item+“\n”)。
日志文件锁定
2018-04-26 08:59:12| 0.2| 0.2|INFORM|FME 2016.1.2.1 (20160929 - Build 16674 - WIN32)2018-04-26 08:59:12| 0.2| 0.0|INFORM|FME_HOME is 'C:\apps\FME\'2018-04-26 08:59:12| 0.2| 0.0|INFORM|FME Desktop Oracle Edition (floating)2018-04-26 08:59:12| 0.2| 0.0|INFORM|Permanent License.2018-04-26 08:59:12| 0.2| 0.0|INFORM|Machine host name is:guvdc223-30162018-04-26 08:59:12 0.2 0.0通知启动-进程ID:10648,峰值进程内存使用量:32036 KB,当前进程内存使用量:32036 kb2018-04-26 08:59:12.2.0 0.0;inform;fm配置:命令行参数为'C:\app\fm\fme.exe'`g:/beheer/gis/tool/fme/test _map/startupscrip/fm\wb-xlate-15247259505566''log Standout''yes''logcountserve'`;90604bab-B841-4590-4590-8f26-68f26-68A64731644f473164f4-2 123; f2-90604bab-B125;'2018-04-26 08:59:12 0.4 0.2信息rm使用fme提供的“c:\apps\fme\fme python27\python27.dll'2018-04-26 08:59:12.4.0.0;通知;Pytho版本2.7成功加载2018-018-04-26 08:59:12.5.1.1;fme fme \;fme \\\\\\\ fmepythththon27\python27\python27.dll'2018-2018-2018-04-04-26 0通知geen toegang op g:\heeer\gis\tools\fme\test_map\ Startupscript\Output2018-04-26 08:59:12 0.5 0.0错误python异常:geen toegang op g:\beheer\g is\tools\fme\test_map\startupscript\output2018-04-26 08:59:12 0.5 0.0 error error executing string` import fme import fmeobjectsimport os在写入程序目标被锁定时引发异常(翻译前!)#创建一个空列表,稍后,我们将添加destinationt datasets.destDataset_list=[]destDataset=“destDataset”print的位置\n'创建一个FME日志文件。logger=fmeobjects.fme log file()只打印目标数据集,and put them in a list.for key,fme.macrovalues.items()中的值:打印“键:”+str(key)+“,value macrovalues:“+str(value)在de macrovalues字典中查找文本destdataset,#如果找不到字符串,则返回“-1”。如果key.find(“destDataset”)!=-1:我找到空的DestDataset字符串,想跳过这些。如果len(str(value))>3:list test=0我将测试数据的位置是否全部包含在列表中(同一地理数据库中的多个功能类仍然提供相同的destdatset)。for DestDataset_item_test in DestDataset_list: if DestDataset_item_test == value: listtest += 1 # If the DestDatset is not yet in the list,我们将它附加到列表中。如果listTest==0:destDataset_list.append(value)print“value destDataset_list:”+str(value)print“\n”print“lengte destDataset_list:”+str(len(destDataset_list))for destDataset_item in destDataset_list:print“destDataset_item:”+str(destDataset_item)print“\n”for destDataset_item in destDataset_list”:对于列表中的每个目标集,测试位置是否已就绪…如果os.path.exists(destDataset_item):print“目标数据集:”+str(destDataset_item),请尝试:如果它存在,尝试移除它。os.remove(destdataset_item)logger.logmessagestring('toegang op'+destdataset_item+'是beschikbaar!')打印'toegang op'+destdataset_item+'是beschikbaar!'#如果不能移除,raise an exception because it is probably locked...除了e:logger.logmessagestring(“geen toegang op”+desttataset ou item+“\n”)引发异常(“geen toegang op”+desttataset ou item+“\n”)'2018-04-26 08:59:12 0.5 0.0错误fme ou begin ou python未能执行提供的脚本2018-04-26 08:59:12 0.5 0.0通知fme会话持续时间:1.1秒。(CPU:0.2s用户,0.3s系统)2018-04-26 08:59:12 0.5 0.0通知结束-进程ID:10648,峰值进程内存使用量:42848kb,当前进程内存使用量:42848 KB
日志文件已解锁
2018-04-26 08:58:00| 0.1| 0.1|INFORM|FME 2016.1.2.1 (20160929 - Build 16674 - WIN32)2018-04-26 08:58:00| 0.1| 0.0|INFORM|FME_HOME is 'C:\apps\FME\'2018-04-26 08:58:00| 0.1| 0.0|INFORM|FME Desktop Oracle Edition (floating)2018-04-26 08:58:00| 0.1| 0.0|INFORM|Permanent License.2018-04-26 08:58:00| 0.1| 0.0|INFORM|Machine host name is: GUVDC223-30162018-04-26 08:58:00| 0.1| 0.0|INFORM|START - ProcessID: 9940,峰值进程内存使用量:31588kb,当前进程内存使用情况:31588 K2018-04-26 08:58:00.1.0.0;通知;FME配置:命令行参数为'C:\app\fm\fme.exe'`G:/Beheer/gis/tool/fme/test _map/startupscrip/fme\wb-xlate-15247255878594'`Log标准输出'是'`Log计数服务器'`;0286263D-DAFB-4904-4904-86BC-19BB5FBC0A5e \\\;;;;; FB5FBC0A5E-15A5e \'2018-04-26 08:58:00 0.3 0.2信息rm使用fme提供的“c:\apps\fme\fme python27\python27.dll'2018-04-26 08:58:00.3.0.0;通知;Pytho版本2.7成功加载2018-018-04-26 08:58:00.5.1.1;fme fme \124fmebe开始:从字符串评估pyththon脚本…2018-04-04-26 08-26 08:58:58:00.5.5.5.5.5.5通知geen toegang op g:\heeer\gis\tools\fme\test_map\ Startupscript\Output2018-04-26 08:58:00 0.5 0.0错误python异常:geen toegang op g:\beheer\g is\tools\fme\test_map\startupscript\output2018-04-26 08:58:00 0.5 0.0 error error executing string` import fme import fmeobjectsimport os在写入程序目标被锁定时引发异常(翻译前!)#创建一个空列表,稍后,我们将添加destinationt datasets.destDataset_list=[]destDataset=“destDataset”print的位置\n'创建一个FME日志文件。logger=fmeobjects.fme log file()只打印目标数据集,and put them in a list.for key,fme.macrovalues.items()中的值:打印“键:”+str(key)+“,value macrovalues:“+str(value)在de macrovalues字典中查找文本destdataset,#如果找不到字符串,则返回“-1”。如果key.find(“destDataset”)!=-1:我找到空的DestDataset字符串,想跳过这些。如果len(str(value))>3:list test=0我将测试数据的位置是否全部包含在列表中(同一地理数据库中的多个功能类仍然提供相同的destdatset)。for DestDataset_item_test in DestDataset_list: if DestDataset_item_test == value: listtest += 1 # If the DestDatset is not yet in the list,我们将它附加到列表中。如果listTest==0:destDataset_list.append(value)print“value destDataset_list:”+str(value)print“\n”print“lengte destDataset_list:”+str(len(destDataset_list))for destDataset_item in destDataset_list:print“destDataset_item:”+str(destDataset_item)print“\n”for destDataset_item in destDataset_list”:对于列表中的每个目标集,测试位置是否已就绪…如果os.path.exists(destDataset_item):print“目标数据集:”+str(destDataset_item),请尝试:如果它存在,尝试移除它。os.remove(destdataset_item)logger.logmessagestring('toegang op'+destdataset_item+'是beschikbaar!')打印'toegang op'+destdataset_item+'是beschikbaar!'#如果不能移除,raise an exception because it is probably locked...除了e:logger.logmessagestring(“geen toegang op”+desttataset ou item+“\n”)引发异常(“geen toegang op”+desttataset ou item+“\n”)'2018-04-26 08:58:00 0.5 0.0错误fme ou begin ou python未能执行提供的脚本2018-04-26 08:58:00 0.5 0.0通知fme会话持续时间:0.9秒。(CPU:0.1s用户,0.3s系统)2018-04-26 08:58:00 0.5 0.0通知结束-进程ID:9940,峰值进程内存使用率:41372 KB,当前进程内存使用量:41372 KB
这种特性将帮助我们审计和代码审查FME工作区。
我已经创建了一个python脚本工具,它创建了一个自定义的分阶段项目文件夹,其中包含所有的autocad图纸(.dwg)和一个文件geodatabase(.gdb),并根据我们提交的要求使用正确的命名约定。我还创建了一个FME工作区,可以读取指定的.dwg,然后创建/写入.gdb的特性。
我想执行python脚本工具作为一个启动python脚本来构建项目文件夹,然后将存储在已创建文件夹中的.dwg和.gdb作为src/dst或读/写在fme工作区中。我相信这或是一些能够实现同一个最终目标的事情是可能的。我发现了相反的类似问题(将参数从fme传递到python脚本)。到目前为止,我在搜索中还没有找到正确的文档。
感谢您的帮助。
如果能够快速启用/禁用启动/关闭脚本,而不必对所有内容进行注释或删除所有文本,那就太好了。可能是导航器树中的右键单击选项,其中“启用”和“禁用”作为选项。
嗨,大家好,
我有一个python脚本可以在空闲状态下成功运行,但是,当我将同一个脚本复制并粘贴到我的工作台中的Startuppython脚本框中时,脚本失败。
下面是脚本:
#导入模块
进口弧度
import arcgisscripting
导入ArcEditor
arcpy.env.overwriteOutput=真
arcpy.env.workspace=“c:\users\graup\appdata\roaming\esri\desktop10.3\arccatal\connection to nrgissqls03 www_gis user.sde\www_gis.gis_admin.wastewaterdataset”
错误000732:输入行功能:数据集C:\users\graup\appdata\roaming\esri\desktop10.3\arccatalog\connection to nrgissqls03 www_gis user.sde\www_gis.gis_admin.wastewaterdataset\www_gis.gis_admin.rmon_san_gravitymain不存在或不受支持
警告000725:输出路由功能类:数据集H:\O.10_operating_projects\linear_reference\reference\linear reference shannon working\linear_reference_working.gdb\rmon_san_gravitymain_route_sde_连接已存在。
执行失败(CreateRoutes)。
想知道是否有人曾经经历过这个问题,或者知道原因是什么。
谢谢。
Is it possible to have a cleaner log output when throwing an Exception,例如,在python启动脚本中?
这样我们就可以看到异常消息,而不显示整个python脚本。也许其他人更喜欢这个,but for me it was confusing thinking there is an issue with the Python rather than the thrown Exception.
我已经看到建议应该在FME桌面上添加一个IDE。听起来糟透了。更多的东西可以打破和需要更新。
我同意,然而,需要更好地处理脚本。那为什么不允许吃蟒蛇呢?以及启动和关闭脚本功能,以及任何未来的脚本功能,加载外部文件?对,我知道你可以把外部文件作为模块加载,但是您仍然需要在FME的一个编辑器中编写一个脚本,脚本才能这样做,他们不知道打字错误之类的,据我所知,就是这样。
我看到眼前,在当前编辑器中打开对话框的简单按钮,一个对话框,从中可以指向外部python文件,这将解决很多问题。然后你就可以在你最喜欢的IDE中编写一个脚本,让FME加载文件并运行它,再编辑一下脚本,and have FME rerun the workbench,而且,您不必担心语法错误和类似的事情(前提是您的IDE支持处理这些错误)。
您好!
I have an FME process that uses as its inputs a GDB file and its associated XML schema file.我想在运行时从gdb生成XML,我有一个python启动脚本可以在esri中完成这项工作。我的问题是填充XML阅读器的参数以设置位置(对于生成的文件)。我读过一些文章和以前的问题,这个似乎就是我要找的,尽管我不懂巨蟒/对它不熟悉,我无法使解决方案对我有效-为无知道歉。
https://knowledge.亚搏在线safe.com/questions/4296/set-published-parameters-in-a-python-startup-scrip.html(https://knowledge.safe.com/questions/4296/set-published-parameters-in-a
我想我需要在我的当前脚本中添加“import fmeobjects”和“return resultsxml”(如下)。但当我这样做时,我会得到一个关于返回语句在函数之外的错误。I don't know how to place it inside a function,..请帮忙。
假设有效,how do I expose it within FME?我在想一个已发布的参数,我可以在阅读器中使用,或者传递给一个FeatureReader?
My workaround at the moment is to recalculate the ResultsXML/XML location from the GDB location,但是让它从启动脚本开始工作会更整洁。
任何帮助,非常感谢
Thanks
玛丽
在我的测试场景中:
FME-FMW
/数据-包含gdb源文件,although this file could be sourced from anywhere
/input-在这里我从python/esri输出XML文件
/输出-我输出FME过程的地方
启动python脚本:
导入操作系统
导入系统
sys.path.append(“C:\\python27\\arcgis10.4\\lib\\site packages”)。
sys.path.append(r'c:\Program Files(x86)\arcgis\desktop10.4\arcpy')
sys.path.append(r'c:\program files(x86)\arcgis\desktop10.4\arctoolbox\scripts')
sys.path.append(r'c:\Program Files(x86)\arcgis\desktop10.4\bin')
sys.path.append("C:\\Python27\\ArcGIS10.4\\Lib")
进口弧度
进口FME
进口再
在python启动脚本中,I want to access Published parameters (to test whether an Oracle non-spatial Source Dataset connection is to our test or production environment).但我在文档中看到的唯一例子是tcl启动脚本。If anyone has an example of accessing published parameters in a Python startup script that would be very helpful.
在我的启动脚本中,我使用“导入arcpy”来创建一个新版本的arcsde数据库。我把python解释器改为C:\windows\sysw64\python27.dll。
我的代码(一些“私密部分”伪装成
导入系统导入日期时间导入arcpyimport fmeinworkspace=r'budata/arcsde connecties/gabuapp_areaaldata.sde'parentversion='sde.default'versionname='gisibsync_uu'+datetime.datetime.now().strftime('%y%m%d_uuh%m%s')arcpy.createversion_management(inWorkspace,parentversion,versionname,“public”)。
令我惊讶的是,在运行时,启动脚本似乎试图创建一个Autodesk 3DS Reader(在下面的输出中以粗体显示)。这很奇怪,因为我的FME工作区只包含OracleSpace和ArcSDE阅读器。It also seems that this reader is trying to read the ArcGIS toolboxes (!).
更奇怪的是:在一个读者的不成功创作之后,启动脚本继续,最后创建ArcSDE数据库版本。
开始翻译…
2016-12-14 09:05:02 0.8 0.8通知FME 2015.0(20150217-构建15253-win32)
2016-12-14 09:05:02 0.8 0.0通知fme_home is'C:\程序文件(x86)\fme\'
2016-12-14 09:05:02 0.8 0.0通知FME桌面Oracle版本(浮动)
2016-12-14 09:05:02 0.8 0.0通知永久许可证。
2016-12-14 09:05:02 0.8 0.0通知机器主机名为:
2016-12-14 09:05:02| 0.8| 0.0|INFORM|START - ProcessID: 1136,peak process memory usage: 53012 kB,当前进程内存使用量:53012 KB
2016-12-14 09:05:02 0.8 0.0通知FME配置:命令行参数为'C:\Program Files(x86)\FME\FME.exe'`D:/Git ou repo/etl/geodatabase ou writer\wb-xlate-1481702696704 ou 1512'`Log ou Standardout'`Yes'`LogCountServerName'` C70fed7A-9180-42A0-A51C-7F03E505C4B8'
2016-12-14 09:05:03 1.0 0.2通知使用C:\windows\sysw64\python27.dll中用户指定的python解释器
2016-12-14 09:05:03 1.0 0.0通知python版本2.7成功加载
2016-12-14 09:05:03 1.0 0.0通知fme begin _python:从字符串评估python脚本…
2016-12-14 09:05:12| 8.8| 7.8|INFORM|FME Extension for ArcGIS (9) (20140217 - Build 14241 - WIN32)
2016-12-14 09:05:12| 8.8| 0.0|INFORM|FME 2015.0 (Build 15253)
2016-12-14 09:05:25 20.2 11.4通知创建格式阅读器:Autodesk 3DS
2016-12-14 09:05:25 20.2 0.0通知尝试为名为“3DS”的阅读器查找动态插件
2016-12-14 09:05:25 20.3 0.0通知从文件“C:\Program Files(x86)\fme\plugins/3ds/3ds.dll”加载模块“3ds”
2016-12-14 09:05:25| 20.3| 0.0|INFORM|FME API version of module '3DS' matches current internal version (3.7 20141021)
2016-12-14 09:05:25 20.3 0.0通知创建格式阅读器:Autodesk 3DS
2016-12-14 09:05:25 20.3 0.0通知尝试为名为“3DS”的阅读器找到动态插件
2016-12-14 09:05:25| 20.3| 0.0|INFORM|FME API version of module '3DS' matches current internal version (3.7 20141021)
2016-12-14 09:05:25 20.3 0.0通知3DS阅读器:在可变功能类型模式下阅读
2016-12-14 09:05:25 20.3 0.0通知3dsreader:opening dataset:'c:/program files(x86)/arcgis/arcgis data reviewer/desktop10.2/arctoolbox/toolbox/data reviewer tools.tbx'
2016-12-14 09:05:25 20.3 0.0错误3DS阅读器:加载文件失败:'C:/Program Files(x86)/Arcgis/ArcgisDataReviewer/DeskTop10.2/ArcToolbox/Toolbox/Data Reviewer Tools.tbx'
2016-12-14 09:05:25 20.3 0.0错误3DS阅读器:打开数据集时出错:'C:/Program Files(x86)/Arcgis/ArcgisDataReviewer/Desktop10.2/ArcToolbox/Toolbox/Data Reviewer Tools.tbx'
2016-12-14 09:05:25| 20.3| 0.0|INFORM|3DS Reader: Closing reader
2016-12-14 09:05:25| 20.3| 0.0|WARN |UniversalReader -- readSchema resulted in 0 schema features being returned
2016-12-14 09:05:25 20.3 0.0 warn reader参数(0)=>C:\程序文件(x86)\arcgis\arcgis data reviewer\desktop10.2\arctoolbox\toolbox\data reviewer tools.tbx<
2016-12-14 09:05:25 20.3 0.0 warn reader directive(0)=>唯一的_id_属性<
2016-12-14 09:05:25 20.3 0.0警告读卡器指令(1)=>FME _功能<
2016-12-14 09:05:25 20.3 0.0警告读卡器指令(2)=>持久缓存<
Hello,
我配置了一个系统调用者来删除指定目录中的所有文件和子目录,不删除指定的目录。原来,计划是把这个放在工作区的尽头,但是现在,我们希望在工作区开始时清空目录,在启动任何读卡器之前。我知道这可以用一个启动python脚本来完成,但是我想知道是否有一种方法可以调用启动命令行命令(这样我就可以使用我已经编写的代码)。我想把我的第一个读者换成一个专长。then using a creator to initiate the SystemCaller,然后让系统调用程序启动FeatureReader…but I was wondering if there was a more direct way to do this?
谢谢!
考特尼
我正在尝试创建一个工作区,在运行时将当前日期拉入python(作为启动脚本或python调用者),然后在fme中将该日期作为已发布参数传递出去。我在python中有以下内容:
导入日期时间
today = datetime.datetime.now()
#打印str(今天)
今天打印.strftime(“%y%m%d”)
这告诉我(今天)的日期是20161103
我想把它作为一个已发布的或私有的参数[开始日期]传递出去,以便在稍后的过程中在转换器中读取。
我还需要能够计算出两周后的日期,并将其作为[结束日期]。
如果可以使用常规的变压器创建简单的启动和关闭脚本,那就太好了。这可以例如be implemented using functionality similar to custom transformers:
当您创建一个新的工作区时,“启动”和“关闭”选项卡将始终可见,并且具有固定的输入/输出端口。这可以补充现有的脚本可能性(python,Tcl),对于初学者和那些很少或没有编程经验的人来说更容易。
示例1:翻译结束时的FTP结果
在某些情况下,将翻译结果保存到某个地方是很有用的。
这里有一个fme_end_tcl脚本(我已经用它附加了一个工作区),它就是这样做的——请注意,它利用destdataset宏(在工作区中作为输出的位置发布)来查找输出文件,用于ftp:
包需要ftp
puts [array names FME_MacroValues];
将“上载$fm_macrovalues(destdataset)”set server“某物。anotherthing.com“set user”accountnamegoesher“set passwd”passwordgoesher“set conn[::ftp::open$server$user$passwd]将“step 2”::ftp::cd$conn outgoing/servicesputs“step 3”::ftp::list$conn*puts“step 4”::ftp::put$conn$fm_macrovalues(destdataset)::ftp::close$conn puts”上传完成”
Of course,在生产中,您将包装各种::ftp::…“catch”中的内容,以便适当地标记错误。
包需要httpputs[http::geturl http://www.google.ca]显示如何获取URL并使用其内容(这里我只是打印出来,但是,如果在@tcl中调用它,它可以很容易地进入一个属性中。I liked the idea so much we wrapped it up into a new transformer "URLFetcher",这是FME截至4300年构建的一部分。附上一个例子(如果您想以另一种方式在映射文件或TCL脚本中使用该技术,则将底层映射文件代码粘贴到下面。)
tcl2 proc urlfetcher_fetch url \ package需要http;\ fme_setattribute_url_contents_\ if[catch fme setattribute url contents \[http::data[设置令牌$url]]\ errormsg \]\ \catch http::cleanup$token\如果否=是\fm_logmessage fm_error \“在Transformer UrlFetcher中检索url `$url'时出错:$errormsg\”;\}else \错误\“在transformer urlfetcher中检索url`$url'时出错:$errormsg\”;\}\}else \放入$token;\ catch http::cleanup$token\}
Factory_def*teefactory\Factory_name urlfetcher\input feature_type creator_created_1\output feature_type urlfetcher_output\@tcl2(“urlfetcher@value(url)”)。
您可以在以下位置阅读有关在TCL内部使用HTTP的更多信息:网址:http://wiki.tcl.tk/1303.注意-我发现了一个问题,我们将记录为已知问题,即如果检索URL时出错,FME过程本身似乎会一直停留在退出状态。
proc getArcGISVersion {} { package require registry 1.0 set path {HKEY_LOCAL_MACHINE\SOFTWARE\ESRI\ArcInfo\Desktop\8.0} set value [registry get $path {RealVersion}] return $value}set ArcGISVersion [getArcGISVersion]
与FME一样,the possibilities are endless.我想如果你喜欢的话,你可以把FME变成一个网络服务器,那就去玩吧!