第8页
第4排
我们正在尝试在FMEServer2018中运行一个脚本,该脚本使用arcpy将一个地理数据库替换为一个新的数据集。几个月后,我们将尝试使用FME的本地地理数据库编写器,但现在我需要解决以下问题:
导入fme import fmeobjectsimport arcpy主功能def delme(feature):variablestable _2b _del d=feature.getattribute('source _etl _table')sde _conn=fme _macrovalues['sde _connection']full _del _str=sde conn+'\'+table _2b _deld+'x'打印full _del str processtry:arcpy.delete _management(fullel_str)feature.setattribute(“删除结果”,“成功”),异常除外,e:logger=fmeobjects.fmelogfile()logger.logexception(e,2)feature.setattribute(“删除结果”,“失败”)feature.setattribute(“删除结果”,e)pass
在脚本运行之后,我们将Oracle中的数据从临时模式移动到生产模式中,然后尝试使用几乎相同的语法编写地理数据库注册脚本。
如果没有地理数据库,剧本写得很好。如果地理数据库已经存在,失败,并显示以下日志消息:
2018-06-06 12:10:19_21.5_0.1_warn未执行。参数无效。错误001050:已向geodatabase注册或无法打开数据集。执行失败(registerwithgeodatabase)。2018-06-06 12:10:19 21.5 0.0错误python异常:无法将属性值转换为支持的属性类型。2018-06-06 12:10:19 21.5 0.0错误,调用函数“regme”2018-06-06 12:10:19 21.5 0.0致命注册表X表(pythonFactory):pythonFactory未能处理功能2018-06-06 12:10:19 21.5 0.0|错误发生了致命错误。查看以上日志文件了解详细信息2018-06-06 12:10:19 21.5 0.0错误…最后一行重复了3次……2018-06-06 12:10:19 21.5 0.0错误桥接器未能在标记“pyoutput”2018-06-06 12:10:19 21.5 0.0致命删除X_U表格(pythonfactory):pythonfactory未能处理功能2018-06-06 12:10:19 21.5 0.0错误发生致命错误。查看上面的日志文件了解详细信息
错误日志显示两个python脚本都生成了一个致命错误。
我认为这句话是罪魁祸首:
feature.setattribute('删除\u结果\u细节',e)
问题是对象“e”是一个异常对象,其中as setattribute()需要一个字符串或数值。它不知道如何处理异常对象。
试试这个,这将给您提供arcgis错误消息:
feature.setattribute('删除\u结果\u细节',arcpy.getmessages())
文档:http://desktop.arcgis.com/en/arcmap/latest/analyze/arcpy-functions/getmessage.htm
?2019安全亚搏在线软件公司|法律