电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

EAS自定义引入引出模板使用指南.doc

EAS自定义引入引出模板使用指南.doc_第1页
1/17
EAS自定义引入引出模板使用指南.doc_第2页
2/17
EAS自定义引入引出模板使用指南.doc_第3页
3/17
EAS自定义引入引出模板使用指南[EAS基础系统部][潘柱军]导读本文档对EAS引入引出管理中的自定义模板使用进行详细说明并对常见问题进行解答。适用对象需要引入引出功能的二次开发人员,实施人员,客户引入引出功能测试人员、开发人员第1页共18页1目录1.简介...........................................................................................................................21.1.目的..........................................................................................................................................21.2.适用对象..................................................................................................................................31.3.参考资料..................................................................................................................................32.背景...........................................................................................................................33.功能描述...................................................................................................................34.自定义模板使用说明...............................................................................................44.1.制作模板..................................................................................................................................44.2.引出模板..................................................................................................................................74.3.使用模板..................................................................................................................................85.发布自定义模板.......................................................................................................85.1.导出自定义模板脚本..............................................................................................................95.2.分发部署自定义模板............................................................................................................105.3.使用导入的自定义模板........................................................................................................106.自动引入数据.........................................................................................................106.1.制定自动引入计划................................................................................................................106.2.自动执行引入任务................................................................................................................116.3.立即执行引入任务................................................................................................................127.常见问题解答.........................................................................................................12第1页共18页1.简介1.1.目的本文档对EAS引入引出管理中的自定义模板使用进行详细说明并对常见问题进行解答。1.2.适用对象适用于:需要引入引出功能的二次开发人员,实施人员,客户引入引出功能测试人员、开发人员2.背景数据引入问题一直是个非常复杂且耗时的问题,不少客户会提出自己特性导入需求,研发的解决办法就是完全定制开发,就算是很简单的实体也要耗去很多时间。而现实情况是研发提供的导入功能只是针对一些有复杂关系或者有大历史数据的业务点,不可能对每个基础资料,业务单据都单独开发引入功能。因此存在如下两种系统标准数据引入引出功能处理不了的情况:1.系统中有些业务对象没有开发对应的数据引入引出功能;2.业务对象开发了引入功能,但客户针对此业务对象做了二次开发,增加了字段,以前的引入功能将不能满足新增字段的内容引入;此时可以考虑利用自定义引入实现上面两类业务对象的引入。3.功能描述本功能主要利用现有的元数据及对象-关系映射(ormapping),先制作引入的数据模板,模板格式与系统标准数据引入引出模板一致,将模板中的各个字段与实体中的每个属性形成映射关系,从而将数据文件中的一行记录转化为EAS中的一个对象,然后通过对象-关系映射(ormapping)将对象持久化到数据库中。其中形成模板文件的过程考虑到了枚举类型,布尔类型的数据录入,将数据的内值与描述的对应关系以注释形式放在模板文件中,方便使用。同时考虑到了某些字段的非空特性,在制作模板时可以设置非空属性,设置非空属性的字段将在引入时进行是否为空的检查;此功能考虑的映射关系包括了现有的各个类型字段的引入,可以将简单属性的字段设置映射关系;也可以将连接属性的字段设置映射关系,一个实体的连接属性有两种类型,即引用类型,合成类型,引用类型即表明一个对象中引用了另一个对象,如对象‘省份’中有一个引用属性‘国家’,在定义模板时可以将‘国家’属性下的‘编码’设置为映射字段,在录入时录入国家的编码将根据此编码找到对应的国家对象,并设置为省份的国家属性的值;合成类型的属性一般对应着分录,系统也支持合成属性的引入。引入中不限制属性的层次。此功能的操作非常简便,可以分为三个步骤;1,制作模板;2,引出模板,在模板文件中录入数据;3,引入数据;下面分别描述第2页共18页4.自定义模板使用说明4.1.制作模板利用administrator登录EAS系统,选择菜单系统平台-引入引出管理--引入引出模板管理,选择维护自定义模板,出现界面如下图:其中新增模板针对系统中还没有提供引入功能的业务对象;修改模板针对业务对象已经存在引入功能,如业务对象经过二次开发增加了字段,需要对增加的字段实现数据引入引出功能。选择维护模板将要求选择一个现有系统模板。选择下一步,设置基本信息。出现界面如下图:第3页共18页输入基本信息,从实体对象树中选择需要对其进入引入引出的实体对象。对于二次开发增加的实体,在发布元数据后还需要在管理控制台中执行同步子系统树操作后才能够在这里选择到。“引出查询对象”是跟“引入实体对象”对应的查询对象,用于获取引出数据。如果二次开发增加字段后需要实现数据引入引出功能,那么要先修改对应的查询对象,增加相关的查询字段。选择下一步,字段设置。第4页共18页点击‘增加字段’按钮在实体属性树上选择需要的引入引出字段。选择字段后,可以对选择的字段进行设置:‘绑定引出字段’,如果在第二步中选择了‘引出查询对象’,那么可以在下拉列表中选择“引出查询对象”中定义的查询结果字段进行绑定。‘是否关键字’,当使用‘覆盖引入’方式引入数据时,会根据这里设置的关键字段在数据库中查询是否已经存在关键字相同的数据,如果存在则用引入数据文件中的数据将数据库中的原有数据覆盖。如果不存在则往数据库新增数据。第5页共18页‘是否必录项’,引入数据时根据这个设置进行检查。‘备注’,对于系统中的布尔类型,枚举类型将在形成模板时自动生成注释信息,说明其描述与内值的对应关系。选择完成,完成制作模板在模板列表中找到刚才维护的模板,设置引入方式。‘新增引入’,引入数据时不检查系统中是否存在跟引入数据重复的数据,如果系统不允许增加重复的数据,则会引起数据引入失败。‘覆盖引入’,引入数据时会根据模板配置的‘关键字’在数据库中查询是否已经存在关键字相同的数据。、如果存在则用引入数据文件中的数据将数据库中的原有数据覆盖,如果引入数据有空值,会把数据库中原来的非空值置空。如果不存在则往数据库新增数据。‘更新引入’,如果存在则用引入数据文件中的数据将数据库中的原有数据更新,如果引入数据有空值,则不会更新数据库中的非空值。如果不存在则往数据库新增数据。4.2.引出模板在引入引出模板管理的列表界面选择维护的自定义模板,选择工具栏功能“引出模板”,将模板第6页共18页保存在本地,形成模板文件如下图:在模板文件中录入数据。4.3.使用模板选择菜单系统平台-引入引出管理--引入引出工具,出现界面如下图:选择维护的自定义模板,选择引入的文件,并运行。引入完毕浏览界面查看数据是否正常引入。5.发布自定义模板用户使用自定义模板时,有时会先在测试服务器上创建好自定义模板,测试通过后再在正式服务器上创建同样的自定义模板。这样做不但造成重复劳动,而且可能在正式服务器上再次创建自定义模板时因为人为错误生成创建的自定义模板有问题。在“模板编码”界面的工具栏中有一个“引入模板”功能按钮,但是这个“引入模板”功能只是在二次开发创建指定数据转换实现类时方便录入模板字段信息使用的。第7页共18页为了实现自定义模板的发布,可以利用“引入引出模板管理”中的“数据导出工具”导出自定义模板脚本,然后在目录服务器上执行该脚本就达到发布自定义模板的目的。下面具体描述操作步骤。5.1.导出自定义模板脚本1.在“引入引出模板”界面中按“F11”显示“数据导出工具”界面。第8页共18页2.选择“数据类型”为“数据引入引出脚本引出”;录入“导出数据编码”,就是要导出的自定义模板的编码;“sql文件的分隔符”指定为“;”。假如自定义模板脚本内容包含“;”时,如果使用EAS的管理控制台的执行脚本功能执行导出的脚本时会报语句不正常结束错误。对于这种情况,需要改用别的分隔符,如“@”,然后重新导出脚本。3.点击“导出数据”按钮,系统提示成功创建文件,及文件保存位置。这里提示的文件保存位置是指文件在服务端的保存位置。第9页共18页5.2.分发部署自定义模板1.将自定义模板脚本拷贝到需要部署的服务器。2.在EAS管理控制台中使用“执行脚本文件”功能添加自定义模板脚本。3.检查“引入引出模板”中是否增加了刚导入的自定义模板。5.3.使用导入的自定义模板使用通过执行脚本导入的自定义模板与手工创建的自定义模板一样,也是先导出模板Excel文件,将数据录入Excel文件,通过“数据引入引出”功能引入数据。6.自动引入数据自动引入功能为客户端提供制定自动引入计划,由客户端后台按计划自动执行引入任务。这个功能类似于Windows系统中的计划任务,只有客户端打开“自动引入”功能,才会按计划执行引入任务。6.1.制定自动引入计划在“自动引入列表”界面点击“新增”按钮,显示“自动引入编辑”界面。点击“调度设置”,设置调度周期。第10页共18页设置调度周期后,点击“完成”,返回“自动引入编辑”界面。点击“启用”、“保存”。6.2.自动执行引入任务当自动引入功能后台服务检查到有自动引入任务需要执行时,会从服务端获取本次自动引入任务的相关信息,向服务端发起数据引入调用。执行结束后把处理结果写到一个日志文件中(保存目录为C:\importlog),并将被子引入的数据文件改名。6.3.立即执行引入任务在“自动引入列表”界面选择一条自动引入计划记录,然后点击工具栏中的“立即执行”按钮,系统强制执行选中的引入计划。执行结束后显示执行结果保存在一个日志文件中(保存目录为C:\importlog),同样会将被子引入的数据文件改名。第11页共18页7.常见问题解答1、问:在运行过程中提示找不到模板?答:请检查solutionName是否设置正确;2、问:引入引出窗口在窗口切换后不见了?答:需要设置引入引出窗口的父窗口。如DatataskCaller.setParentComponent()3、问:运行日志提示某数据行出现了错误,却没有详细错误信息?答:一般是实现了AbstractDataTransmission抽象类的类中抛出了NullPointException异常,异常信息为空。4、问:提示文件定义错误?答:请检查数据文件格式是否与模板文件一致;5、问:引出数据时报以下异常java.lang.NoSuchMethodError:org.apache.poi.hssf.usermodel.HSSFSheet.setDefaultColumnStyle(SLorg/apache/poi/hssf/usermodel/HSSFCellStyle;)Vatcom.kingdee.eas.tools.datatask.export.ExternalExcelDataWriter.addOrgStructCell1(ExternalExcelDataWriter.java:159)atcom.kingdee.eas.tools.datatask.export.ExternalExcelDataWriter.writeStruct(ExternalExcelDataWriter.java:530)atcom.kingdee.eas.tools.datatask.task.TaskExportEASDataRunner.onInitResources(TaskExportEASDataRunner.java:114)atcom.kingdee.eas.tools.datatask.task.TaskAbstractRunnerAdapter.run(TaskAbstractRunnerAdapter.java:86)atcom.kingdee.eas.tools.datatask.app.DatataskRunServerControllerBean.runOnExportMode(DatataskRunServerControllerBean.java:92)atcom.kingdee.eas.tools.datatask.app.DatataskRunServerControllerBean._runSingleTask(DatataskRunServerControllerBean.java:751)atcom.kingdee.eas.tools.datatask.app.AbstractDatataskRunServerControllerBean.runSingleTask(AbstractDatataskRunServerControllerBean.java:211)答:问题原因。补丁或者二次开发中包含一个POI包(如Jakarta-poi-2.5.jar),而引入引出中使用的POI包是poi-bin-3.0-alpha2-20060616.jar,版本不致。在Jakarta-poi-2.5.jar中没有对应的方法,所以报异第12页共18页常。解决办法:把其它版本的POI包如Jakarta-poi-2.5.jar备份后删除,换成poi-bin-3.0-alpha2-20060616.jar,检查引入引出功能和业务功能能否正常执行。6、问:使用自定义模板引出数据时为什么报“没有提供引出功能”?答:请检查自定义模板的“引出查询对象”是否为空,如果为空就会报“没有提供引出功能”。7、问:使用自定义模板引出数据,引出的数据文件中没有记录数据,事实上系统中是有数据的。答:请检查自定义模板的模板字段是否绑定引出字段。系统根据查询对象的查询结果字段跟模板字段绑定将数据写入引出数据文件中。第13页共18页8、问:“自动引入”跟“数据引入”有什么区别?答:“自动引入”允许用户制定数据引入计划,由系统自动执行数据引入任务;“数据引入”由用户控制数据引入的执行。“自动引入”的执行结果保存在指定目录的日志文件中;“数据引入”的执行结果显示在客户端界面上。“自动引入”的执行模式固定为“更新引入”、“执行完全部数据才结束”;“数据引入”的执行模式由用户定制。9、问:为什么多次点击“自动引入列表”界面上的“立即执行”按钮都是显示“执行完成”?答:点击“立即执行”按钮后显示的“执行完成”,只是说明“立即执行”这个操作执行结束,并不表示成功或失败。执行结果保存在日志文件中(保存目录为C:\importlog)。10、问:创建自定义模板时在一个关联实体中选择了多个属性,在引入数据时报第14页共18页答:创建自定义模板时只能针对一个实体进行引入引出,跟这个实体关联的其它实体信息只是用于获取被引入实体与关联实体的关联信息。通常是根据关联实体的编码查询出对应记录的FID,然后将这个FID填入被引入实体的对应关联属性。模板中的关联实体属性是可以选择多个,但这些属性只是用于关联实体的标志(FID),并不会引入到数据库中。选择的关联实体属性越多,定位到的关联实体标志就越准确,但是同时用户录入的数据量就相应增加。因此在满足能够定位到关联实体的基础上,应该使得关联实体属性尽可能精简,通常选择关联实体的编码作为关联实体属性就可以了。11、问:创建模板后执行引入操作,执行失败。在服务端后台报创建实例异常。答:跟踪代码发出是在DatataskRunServerControllerBean的isBatchImportOperate()方法中的Objecto=classDefinition.newInstance();报的异常。原因是业务扩展AbstractDataTransmission的实现类声明成是抽象类,所以不能实例化。12、问:引出数据时失败,提示‘获取数据集失败’答:引出数据量超出EAS限制,EAS对查询结果集作了约束。配置信息保存在服务端\server\profiles\server1\config\bosconfig.xml解决办法1:引出数据时设置过滤条件,分批引出数据。第15页共18页解决办法2:改管理控制台配置文件\Server\admin\config\admin.vmoptions最后添加criticalCollection=100000criticalIDList=100000exceptionCellNumber=100000第16页共18页

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

EAS自定义引入引出模板使用指南.doc

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信