oracle EBS数据移植工具FNDLOAD的用法_第1页
oracle EBS数据移植工具FNDLOAD的用法_第2页
oracle EBS数据移植工具FNDLOAD的用法_第3页
oracle EBS数据移植工具FNDLOAD的用法_第4页
oracle EBS数据移植工具FNDLOAD的用法_第5页
已阅读5页,还剩7页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

oracle

EBS数据移植工具FNDLOAD的用法整理(转)文章收集于网络,向原作者致谢,谢谢你们。

大家做二次开发时一般都会在测试系统上进行测试,然后再挂到正式系统上,如果在测试系统上需要用到自己建立值集,则挂到正式系统上还要重新设置一边,麻烦的很,这里我就用提取ldt的方法免去这个麻烦!

代码如下:

1.在测试环境下cd$FND_TOP/admin/import(可以用pwd查看路径,一般都是这个目录)进入这个目录

2.FNDLOADapps/<密码>0YDOWNLOAD$FND_TOP/admin/import/afcpprog.lct你要移植的值集名.ldtVALUE_SETFLEX_VALUE_SET_NAME='值集名'

3.用fxpflash下载你这个ldt文件到本地

4.在正式环境下用fxpflash上传你这个ldt文件到cd$FND_TOP/admin/import这个目录下(应该与测试系统的路径相同)

5.FNDLOADapps/密码0YUPLOAD$FND_TOP/admin/import/afcpprog.lct你要移植的值集名.ldt

在实际的EBS二次开发中,我们经常会碰到需要在各个环境之间移植二次开发的程序对象以及数据定义,如在EBS二次开发中并发请求的定义会涉及到:可执行、并发程序、值集、请求组等的定义,定义需要从开发环境、测试环境、UAT环境一直到正式环境,开发人员完成一个并发请求开发后,同样的定义需要在多个环境中手工完成,势必导致中间出现错误,导致浪费很多时间来进行检查,无形中增加了工作量;而更多的时候系统管理人员和开发人员是分离的,开发人员和系统管理人员之间还需要进行任务的交接,进一步增加了程序移植工作的难度和工作量。而FNDLOAD则是为了移植EBS数据定义而诞生的工具,它可以移植定义在AOL中的数据定义,如我们常见的并发程序、值集、预置文件等等,严格来说它可以实现任意两个Oracle数据库之间数据的移植,有了这个工具,我们就无需在多个环境中重复进行手工定义了。在OracleEBS环境下,和FNDLOAD工具类似的移植工具随处可见,并被广泛应用,如用来移植BIPublisher报表模板定义的XDOLoader工具;工作流定义移植工具WFLOAD;数据库对象移植工具ODF和XDF.04年在做一个项目的时候,我简单写过一个通过FNDLOAD工具在多个EBS环境间移植程序定义的文档,其中主要描述了如何使用FNDLOAD将AOL模块中的数据从一个环境移植到另一个环境,下面将从如何掌握并应用FNDLOAD这个工具的角度补充说明。

一、FNDLOAD介绍数据移植的目的无非是将一个EBS系统下数据库中的某个表中的数据按照条件筛选出来后传到另外EBS系统下数据库中对应的表中。FNNDLOAD的根本原理就是将数据从源数据库中下载到数据文件中,然后再通过FNDLOAD将数据文件上传到目标数据库中。由于两个数据库系统不能保证是连接的,无法采用Oracle的DBLink技术,因此FNDLOAD采用了数据文件作为两个系统间传递的中介,而为了完成数据的下载和上传,FNDLOAD引入了控制文件(lct):用来定义移植那张表中的数据列,并分DOWNLOAD和UPLOAD模式定义数据抽取和更新的逻辑,DOWNLOAD用在源数据库环境下,UPLOAD应用于目标数据库环境下。控制文件是FNDLOAD工具的核心,下面我们来分析一下并发请求移植的控制文件($FND_TOP/patch/115/import/afcpprog.lct)的部分内容:ViewCodeTEXT

控制文件由4部分组成:1.实体(entity):说明控制文件是用来移植什么的,如上面的是PROGRAM,一个控制文件中可以有多个实体,实体可以实现嵌套,实体和后面的section对应,一般一个实体对应一个数据库表2.段(section):定义实体的数据结构,定义了移植时数据的结构和类型,但不会包含内部的ID,如使用APPLICATION_SHOURT_NAME代替APPLICATION_ID,一般和实体对应的数据库表的定义一致,如例子中的EXECUTABLE和PROGRAM段,运行FNDLOAD命令时需要指定段名3.下载(download):定义了下载数据时所使用的SQL语句,SQL语句中以冒号(:)打头的变量是FNDLOAD的变量,在运行命令时可传入参数的值来显示数据的提取,如:APPLICATION_SHORT_NAME既是限制并发请求所属的应用上载(upload):定义了上载数据时所执行的SQL语句或者PLSQL代码,如fnd_concurrent_programs_pkg.TRANSLATE_ROW和fnd_concurrent_programs_pkg.LOAD_ROW方法

FNDLOAD命令工具的语法

FNDLOADapps/appspwd0Ymodeconfigfiledatafileentity[param...]1.Mode:有DOWNLOAD和UPLOAD

2.Configfile:就是FNDLOAD用来控制上传和下载的控制文件(lct)

3.Datafile:是生成的数据文件

4.Entity:是要多控制文件中的哪部分数据移植(数据可以嵌套,如并发请求包括了引用的值集)5.Param:是用来控制数据移植的参数,可以多个

下面是FNDLOAD的流程描述图二、FNDLOAD使用步骤使用FNDLOAD来移植数据的步骤如下:1.找到控制文件,这是非常关键的一步,很多网上文章介绍使用FNDLOAD来移植AOL模块的数据,很少提到其它内容,实际上FNDLOAD可以用来移植数据库中的任何数据,只是说如果Oracle没有提供控制文件(lct)的话,需要自己来制作控制文件会得不偿失,而随着FNDLOAD的广泛应用,很多模块的都提供了FNDLOAD的功能,控制文件一般都放在各模块下的patch/115/import/目录下,如AOL模块的在$FND_TOP/patch/115/import下,总帐模块$GL_TOP/patch/115/import下;进入控制文件目录后具体某个控制文件是用来进行什么数据的移植那就只能打开文件看里面的实体部分、DOWNLOAD和UPLOAD部分了2.查看DOWNLOAD部分中SQL语句的参数,通过查看SQL语句得出可以使用哪些参数来限制数据的下载,如afcpprog.lct控制文件中并发程序的限制可以通过APPLICATION_SHORT_NAME来限制,这样就可以限制只下载某个应用下的并发,同时可以使用多个参数,参数通过key=value的方式提供,参数之间用空格隔开3.运行FNDLOAD命令的下载模式从源系统下载数据,如下载并发请求:FNDLOADapps/apps0YDOWNLOADafcpprog.lctprog.ldtPROGRAMAPPLICATION_SHORT_NAME=XHUCONCURRENT_PROGRAM_NAME=XHUPOR004.使用ftp工具下载源系统生成的数据文件(ldt)5.使用ftp工具上传数据文件(ldt)到目标系统6.运行FNDLOAD上载模式将数据从数据文件上载到目标数据库中,如上传上面下载的并发请求:FNDLOADapps/apps0YUPLOADafcpprog.lctprog.ldt–三、如何移植多语言定义数据AOL模块中很多数据的定义都是多语言的,如并发请求的定义,而通过FNDLOAD来进行数据的移植一次只包括一个语言的信息,因此如果定义存在多语言的情况,需要按照语言环境进行多次移植,即生成多个数据文件(ldt),在控制文件的目录下,如$FND_TOP/patch/115/import/下存在US和ZHS这样的语言目录,控制文件内容的开始指定了语言环境,如LANGUAGE=“US”,而很多控制文件并未分多语言版本,这个需要在运行FNDLOAD命令的时候指定语言环境,所以使用控制文件的时候无需使用指定语言的版本,只要在运行FNDLOAD命令的时候通过下面的命令来切换语言环境ViewCodeSHELL1234567--中文NLS_LANG="AMERICAN_AMERICA.AL32UTF8"exportNLS_LANG

--英文NLS_LANG="SIMPLIFIEDCHINESE_CHINA.AL32UTF8"exportNLS_LANG通过上面的环境设置后再执行FNDLOAD,生成的数据文件就是相应语言环境的定义,只要切换不同的语言环境执行下载,多次生成数据文件就实现了多语言数据的生成;然后执行多次上载操作即可.NLS_LANG可以通过下面的SQL查询获得:ViewCodePLSQL1234SELECT'"'||nls_language||'_'||nls_territory||'.'||VALUE||'"'nls_langFROMfnd_languages,v$nls_parametersWHERElanguage_codeIN('US','ZHS')ANDparameter='NLS_CHARACTERSET';

四、开发员常用FNDLOAD控制文件列表模块文件名描述FNDafcpprog.lct可执行、并发程序、值集、弹性域FNDafcpexec.lct可执行程序FNDafattach.lct附件FNDafcpreqg.lct请求组FNDafcprset.lct请求集FNDafffload.lct值集、关键性弹性域和描述性弹性域及相关安全性设置FNDaflvmlu.lctLookupsFNDafmdmsg.lct消息FNDafscprof.lctprofileoptions预制文件FNDafscursp.lct

Applicationusers,UserResponsibilities,Securitygroups,Applications,ApplicationResponsibilitiesandExclusionFunctionsFNDafsload.lctFORM,FUNCTION,MENU,ENTRY,OBJECT,OBJECT_INSTANCE_SET,GRANTFNDaffrmcus.lctForm个性化定义

更多控制文件请到各模块的patch/115/import目录下去查找。

培训期间,第一次移植数据时对fndload理解的有些似是而非,虽然大概知道了是怎么一回事,但是并没有真正的理解是怎么一回事!项目期间,再次遇到数据移植的问题,要把自己开发的功能从demo环境移植到CRP环境,经过衡量,最后决定还是放弃手工移植,采用fnd工具来移植,以下就针对移植过程中遇到的问题做一些总结:1、首先要确定自己要移植哪儿些数据(比如:Message、Lookup、ConcurrentProgram等等EBS中涉及到的数据),找到控制文件(lct文件),比如说对于AOL模块的数据,可以到$FND_TOP/patch/115/import下面寻找,常用的FNDLOAD控制文件列表如下:模块文件名描述FNDafcpprog.lct可执行、并发程序、值集、弹性域FNDafcpexec.lct可执行程序FNDafattach.lct附件FNDafcpreqg.lct请求组FNDafcprset.lct请求集FNDafffload.lct值集、关键性弹性域和描述性弹性域及相关安全性设置FNDaflvmlu.lctLookupsFNDafmdmsg.lct消息FNDafscprof.lctprofileoptions预制文件FNDafscursp.lctApplicationusers,UserResponsibilities,Securitygroups,Applications,ApplicationResponsibilitiesandExclusionFunctionsFNDafsload.lctFORM,FUNCTION,MENU,ENTRY,OBJECT,OBJECT_INSTANCE_SET,GRANTFNDaffrmcus.lctForm个性化定义2、查看lct文件中的参数首先lct文件的内容大概如下:(以afmdmsg.lct消息的控制文件为例)其中的COMMENT不用管,DOWNLOAD(UPLOAD)后的实体(Entity)就是DEFINE位置定义的实体,DEFINE和END之间的部分为实体的段(Section)FNDLOAD命令工具的用法:FNDLOADapps/appspwd0Ymodeconfigfiledatafile.ldtentity[param...]

Mode:有DOWNLOAD和UPLOAD

Configfile:就是FNDLOAD用来控制上传和下载的控制文件(lct)

Datafile:是生成的数据文件(ldt)

Entity:是要多控制文件中的哪部分数据移植(数据可以嵌套,如并发请求包括了引用的值集),当一个控制文件中有多个实体定义的时候,选择其中要操作的部分

Param:是用来控制数据移植的参数,可以多个(可以从DOWNLOAD部分中的sql语句中的参数来知道下载某个entity需要什么样的参数,其实参数都是可选的,如果不加控制,就会下载全部)3、下面以Message的DOWNLOAD为例来说明:NLS_LANG="AMERICAN_AMERICA.AL32UTF8"

exportNLS_LANG

FNDLOADapps/apps0YDOWNLOAD$FND_TOP/patch/115/import/afmdmsg.lct$FND_TOP/patch/115/import/hjit_message_xia_en.ldt

FND_NEW_MESSAGESAPPLICATION_SHORT_NAME=HJITNLS_LANG="AMERICAN_AMERICA.AL32UTF8"其中前两句是linux中设定暂时性环境变量的方式,因为Message是由多语言的,所以要事先指定一下语言,对于多语言的数据的导入导出都可以这样,先设定系统的语言种类,然后执行导出,(非多语言的则不需要),第3句中就包含了FNDLOAD命令中的用法和参数,参数也可以使用模糊限定,比如对function的导出:FNDLOADapps/apps0YDOWNLOAD$FND_TOP/patch/115/import/afsload.lct$FND_TOP/patch/115/import/function_xia.ldtFUNCTIONFUNCTION_NAME=HJIT%其中的FUNCTION_NAME=HJIT%就是使用了模板限定,只要Function_name是以HJIT打头的都会进行DOWNLOADNLS_LANG可以通过下面的SQL查询获得:SELECT'"'||nls_language||'_'||nls_territory||'.'||VALUE||'"'nls_langFROMfnd_languages,v$nls_parametersWHERElanguage_codeIN('US','ZHS')ANDparameter='NLS_CHARACTERSET';4、对于报表开发中定义的xml模板文件的导出,则需要使用XDOLoader命令工具,这是因为xml文件被作为了clob类型进行了处理,XDOLoader命令工具的使用如下:导出clob型数据(XMLpublisher定义的数据模版):

javaoracle.apps.xdo.oa.util.XDOLoader

DOWNLOAD-DB_USERNAMEapps-DB_PASSWORDapps-JDBC_CONNECTION'(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1531))(CONNECT_DATA=(SID=DEMO)))'

-APPS_SHORT_NAMECUX1-LCT_FILE$XDO_TOP/patch/115/import/xdotmpl.lct

-LDT_FILE$XDO_TOP/patch/115/import/cux_cxpz_xia.ldt-DS_CODEHJITCXPZ其中绿色部分为连接数据库服务器的tns。

FNDLOAD用法补充

语法:

FNDLOADlogon0Ymodeconfigfiledatafile[entity[param...]]logon

:EBS用户名/密码[@TNS连接别名]

mode

:UPLOAD或DOWNLOAD

configfile:配置文件路径,根据同步对象的不同需要选择不同的配置文件。

datafile:数据文件

entity

:条目名称,或者上载时的所有相关值

param

:参数格式为NAME=VALUE

环境变量:

NLS_LANG="SIMPLIFIEDCHINESE_America.ZHS16GBK"

exportNLS_LANG

1,并发请求,可执行程序。

FNDLOADapps/xshx87246788OYDOWNLOAD$FND_TOP/patch/115/import/afcpprog.lctafcpprog.ldtPROGRAMAPPLICATION_SHORT_NAME="HOM"CONCURRENT_PROGRAM_NAME="HOM_WIP_ISSUE_PROC_PUB"

FNDLOADapps/hxgg82645988OYUPLOAD$FND_TOP/patch/115/import/afcpprog.lctafcpprog.ldt

2,请求组,请求集。

FNDLOADOYDOWNLOAD$FND_TOP/patch/115/import/afcpreqg.lctfile_name.ldtREQUEST_GROUPREQUEST_GROUP_NAME=”requestgroup”APPLICATION_SHORT_NAME=”prod”

#Forthisyouwillbefirstlyrequiredtodownloadtherequestsetdefinition.

##NextyouwillberequiredtodownloadtheSetsLinkagedefinition

##Well,letsbeclearhere,theabovesequenceismoreimportantwhileuploading

FNDLOADapps/$CLIENT_APPS_PWD0YDOWNLOAD$FND_TOP/patch/115/import/afcprset.lctXX_GL_MY_INTERFACE_SET.ldtREQ_SETREQUEST_SET_NAME="FNDRSSUB4610101_Will_look_like_this"

FNDLOADapps/$CLIENT_APPS_PWD0YDOWNLOAD$FND_TOP/patch/115/import/afcprset.lctXX_GL_MY_INTERFACE_SET_LINK.ldtREQ_SET_LINKSREQUEST_SET_NAME="FNDRSSUB4610101_Will_look_like_this"

##NotethatFNDRSSUB4610101canbefoundbydoinganexamineonthe

########----->selectrequest_set_namefromfnd_request_sets_vl

########----->whereuser_request_set_name='Uservisiblenamefortherequestsethere'

##Nowforuploadingtherequestset,executethebelowcommands

FNDLOADapps/$CLIENT_APPS_PWD0YUPLOAD$FND_TOP/patch/115/import/afcprset.lctXX_GL_MY_INTERFACE_SET.ldt

FNDLOADapps/$CLIENT_APPS_PWD0YUPLOAD$FND_TOP/patch/115/import/afcprset.lctXX_GL_MY_INTERFACE_SET_LINK.ldt

3,配置文件

FNDLOADapps/xshx87246788OYDOWNLOAD$FND_TOP/patch/115/import/afscprof.lctafscprof.ldtPROFILEPROFILE_NAME="HX_PO_LINE_ALLOW_MODIFY_ITEM_DESC"APPLICATION_SHORT_NAME="HX"

FNDLOADapps/hxgg82645988OYUPLOAD$FND_TOP/patch/115/import/afscprof.lctafscprof.ldt

4,键弹性域。FNDLOADOYDOWNLOAD$FND_TOP/patch/115/import/afffload.lctfile_name.ldtKEY_FLEXP_LEVEL=?COL_ALL:FQL_ALL:SQL_ALL:STR_ONE:WFP_ALL:SHA_ALL:CVR_ALL:SEG_ALL?APPLICATION_SHORT_NAME=”prod”ID_FLEX_CODE=”keyflexcode”P_STRUCTURE_CODE=”structurename”描述性弹性域

FNDLOADapps/xshx872467880YDOWNLOAD$FND_TOP/patch/115/import/afffload.lctXX_PO_REQ_HEADERS_DFF.ldtDESC_FLEXAPPLICATION_SHORT_NAME="PO"DESCRIPTIVE_FLEXFIELD_NAME="PO_REQUISITION_HEADERS"

FNDLOADapps/xshx872467880YUPLOAD$FND_TOP/patch/115/import/afffload.lctXX_PO_REQ_HEADERS_DFF.ldt5,菜单

FNDLOADapps/apps_pwdOYDOWNLOAD$FND_TOP/patch/115/import/afsload.lctICX_POR_SSP_HOME.ldtMENUMENU_NAME="ICX_POR_SSP_HOME"

FNDLOADapps/apps_pwdOYUPLOAD$FND_TOP/patch/115/import/afsload.lctICX_POR_SSP_HOME.ldt6,Form个性化。

FNDLOADapps/apps_pwd0YDOWNLOAD$FND_TOP/patch/115/import/affrmcus.lctXX_AP_APXVDMVD.ldtFND_FORM_CUSTOM_RULESfunction_name="AP_APXVDMVD"

FNDLOADapps/apps_pwd0YUPLOAD$FND_TOP/patch/115/import/affrmcus.lctXX_AP_APXVDMVD.ldt7,功能

$FNDLOADapps/xshx872467880YDOWNLOAD$FND_TOP/patch/115/import/afsload.lctxxx.lctFUNCTIONFUNC_APP_SHORT_NAME=”CFA”FUNCTION_NAME=”XXX”

$FNDLOADapps/xshx872467880YUPLOAD$FND_TOP/patch/115/import/afsload.lctxxx.lct

7,附件。

$FNDLOADapps/apps0YDOWNLOAD$FND_TOP/patch/115/import/afattach.lctxxx.ldtFND_ATTACHMENT_FUNCTIONSFUNCTION_NAME=”xxx”

$FNDLOADapps/apps0YUPLOAD$FND_TOP/patch/115/import/afattach.lctxxx.ldt8,消息。

FNDLOADapps/$CLIENT_APPS_PWD0YDOWNLOAD$FND_TOP/patch/115/import/afmdmsg.lctXX_ALL_GMS_MESSAGES_00.ldtFND_NEW_MESSAGESAPPLICATION_SHORT_NAME='XXGMS'FNDLOADapps/$CLIENT_APPS_PWD0YDOWNLOAD$FND_TOP/patch/115/import/afmdmsg.lctXX_ICX_POR_LIFECYCLE_PAY_TIP.ldtFND_NEW_MESSAGESAPPLICATION_SHORT_NAME='ICX'MESSAGE_NAME=XX_ICX_POR_LIFECYCLE_PAY_TIP

FNDLOADapps/$CLIENT_APPS_PWD0YUPLOAD$FND_TOP/patch/115/import/afmdmsg.lctXX_ICX_POR_LIFECYCLE_PAY_TIP.ldt

9,值集和值。

FNDLOADapps/xshx872467880YDOWNLOAD$FND_TOP/patch/115/import/afffload.lctxxx.ldtVALUE_SETFLEX_VALUE_SET_NAME=”VALUE_SET_NAME”

FNDLOADapps/xshx872467880YUPLOAD$FND_TOP/patch/115/import/afffload.lctxxx.ldt

10,LOOKUPCODE

FNDLOADapps/xshx872467880YDOWNLOAD$FND_TOP/patch/115/import/aflvmlu.lctaflvmlu.ldtFND_LOOKUP_TYPEAPPLICATION_SHORT_NAME='HOM'LOOKUP_TYPE="HOM_ALTERNATION_ALLOWED_RANGE"

FNDLOADapps/hxgg826459880YUPLOAD$FND_TOP/patch/115/import/aflvmlu.lctaflvmlu.ldt

11,职责

FNDLOADapps/apps_pwdOYDOWNLOAD$FND_TOP/patch/115/import/afscursp.lctXX_PERSON_RESPY.ldtFND_RESPONSIBILITYRESP_KEY="XX_PERSON_RESPY"

FNDLOADapps/apps_pwdOYUPLOAD$FND_TOP/patch/115/import/afscursp.lctXX_PERSON_RESPY.ldt

12,用户

FNDLOADapps/apps_pwd0YDOWNLOAD$FND_TOP/patch/115/import/afscursp.lctXX_FND_USER_PASSI.ldtFND_USERUSER_NAME='XZB'

FNDLOADapps/apps_pwd0YUPLOAD$FND_TOP/patch/115/import/afscursp.lctXX_FND_USER_PASSI.ldtFND_USER

13,打印机定义。

FNDLOADOYDOWNLOAD$FND_TOP/patch/115/import/afcppstl.lctfile_name.ldtSTYLEPRINTER_STYLE_NAME=”printerstylename”

14,FND字典。

15,帮助配置。

16,单据序列。

17,并发管理器计划员。

18,WebADI

--Integrators

FNDLOADapps/xshx872467880YDOWNLOAD$BNE_TOP/admin/import/bneint.lctbneint.ldtBNE_INTEGRATORSINTEGRATOR_ASN="HX"INTEGRATOR_CODE="GENERAL_208_INTG"

FNDLOADapps/0YUPLOAD$BNE_TO

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论