




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
理性的浪漫转帖ORALCE开发心得整理关键词ORALCE开发以下是个人整理的一些问题,希望能够抛砖引玉,首先是FORM实在对象如表格、SEQUENCE、索引等建在本应用对应的用户表空间中,其他对象如视图、别名创建在APPS下,常见错误是新手把表建在APPS下,以后又来建别名,这个时候删除别名时会报对象不存在,而建别名的时候又报对象已存在如果把脚本保存在文件里面,注意一个块比如一个创建视图的语句不要有空行,否则会出现如下情况把语句拷贝到SQLWINDOW能正常运行,用执行文件却报错如果要执行EXECUTE_QUERY,注意要GO_BLOCK到适当的BLOCK,但是GO_BLOCK是个受限过程,并不一定都能成功MASTERDETAIL关系BLOCKBOTHAREDATABASEBLOCKEACHBLOCKHASONEITEMBASEDONDATABASEDISPLAYED在PL/SQLDEVELOP中没有环境变量,所以如果要查询多组织的VIEW,需要先执行设置环境变量函数BEGINFND_CLIENT_INFOSET_ORG_CONTEXT83ENDGLOBAL变量对于所有FORM有效(可能是同一个应用,这个尚未验证),而不仅仅是你所开发的FORM变量比如GLOBAL和PARAMETER的初始化应该在PREFORM里面,在WHENNEWFORMINSTANCE里面初始化不行,因为WHENNEWFORMINSTANCE是在进入第一个导航块的第一个ITEM之后才促发的没有属性指名BLOCK的记录数,不过可以通过GET_BLOCK_PROPERTYQUERY_HITS取得查询到的记录数HIDE_VIEW并没有真正HIDE一个画布,只是放到最下层,所以如果上层的画布没有完全覆盖下层画布,下层的画布很可能用户还看得到;SHOW_VIEW则是把画布放在最上层LOV验证的时候是验证第一个可见的列,并且会把其他的返回值返回给各个ITEM,而不是仅仅验证而已LOV的查询一般是针对第一列,但是如果我们把放在最前面,则可以查询所有列用EXECUTE_QUERY执行查询的时候,会把COPYVALUEFROMITEM里面的那个ITEM的值自动作为查询条件。当创建记录的时候也会直接用该值初始化,而且不改变记录的状态。在更新记录的时候不知道会不会COPY过来尚未验证。GET_ITEM_PROPERTY的时候用ENFORCE_KEY属性,但不能SET。该属性在MASTERDETAIL设置的时候自动创建,删除的时候自动删除。如果不希望COPYVALUEFROMITEM影响查询结果,可以在PREQUERY里面把ITEM的值设为NULL。APP_QUERYRESETBLOCK_NAME如果第一次调用,会把当前的DEFAULT_WHERE,然后什么都不做,以后再来调用的时候则会把第一次设置的DEFAULT_WHERE用SET_BLOCK_PROPERTYSAA_HEADERS,DEFAULT_WHERE,设置回来,具体请参考APP_CORE库WHENCREATERECORD的时候给ITEM赋值不改变记录状态SEQUENCE,如果我们在ITEM的INITIALVALUE里面赋值,那么假如用户FOCUSTO新记录,又回到老记录,如此反复,SEQUENCE会不断变大的SQLORDERBY的时候NULL值排在最后,这个一般不符合实际要求,可以这样解决ORDERBYNVLGEOGRAPHY_CODE,CHR0解决TRIGGER顺序1PRECOMMIT块1的PREINSERT,ONINSERT,POSTINSERT块2的PREINSERT,ONINSERT,POSTINSERTPOSTFORMSCOMMITTRIGGER顺序2WHENLISTCHANGED在前,VALIDATIONITEM在后,因为VALIDATIONITEM是在要离开这个ITEM的时候才促发的TRIGGER顺序3PREFORM/WHENCREATERECORD/PREBLOCK/WHENNEWFORMSINSTANCE/WHENVALIDATERECORD/ONINSERT/POSTFORMS此内容被HUAJHUA于20050302,211806编辑过FORM开发心得整理(续)当定位到主块的一个记录,会促发子块的WHENCLEARRECORD事件和WHENCREATERECORD事件,问题是如果主块的是新记录(未保存),在子块的WHENCREATERECORD里面取主块的任何东西,居然是主块的上一次获得焦点的记录的东西;连用取块的当前记录也是上一次获得焦点的记录TRIGGER顺序4POSTCHANGED在WHENVALIDATEITEM之前所有的WHENVALIDATE事件是当FORMS自己验证通过之后才促发的禁用CLEAR功能可以通过在FORM的KEYCLRBLK里面调用APP_EXCEPTIONDISABLED,其实只是用BELL覆盖默认的执行直接放在TABPAGE上的ITEM,和放在堆叠画布上的ITEM在设计时是无法“所见即所得”,所以建议把所有的ITEM根据需要放在不同的堆叠画布上再堆到TABPAGE上FORM开发心得整理(续)伪列ROWNUM在排序之前就已经决定,如果想得到排序后的ROWNUM,应当在嵌套一个SELECT语句;另外WHERE语句中的ROWNUM只能用或者在SQL中用OVER的时候,如果整个语句没有ORDERBY语句,最后的结果还是会排序的,规则是先按OVER里面的PARTITION排序,在按OVER里面的ORDERBY排序。原因可能和分析函数的处理顺序有关(8IFUNCTIONSPDF有详细介绍)先查询到数据(JOIN/WHERE/GROUPBY/HAVING),再运算分析函数(先分区,然后排序,再算SLIDEWINDOWS,最后计算),最后是ORDERBY。另外,一个疑问我测试到的一个结果GROUPBY好像无法影响PARTITION,可是按照8IFUNCTIONSPDF的说法,应该先执行GROUPBY的,是不是因为GROUPBY只是在第一阶段的处理时作用在集合函数上,之后进入第二阶段的处理就没用了。此内容被HUAJHUA于20040509,160043编辑过FORM开发心得整理(续)实际执行的WHERE条件,是我们设置DEFAULT_WHERE,再加上通过赋过值的ITEM。注意APP_FINDQUERY_RANGE已经重载过,我们调用的时候可以不区分QUERY_NUMBER_RANGE或者QUERY_DATE_RANGE;观察其代码,发现也是通过给ITEM赋值来影响查询的,只不过是赋值的时候,可能是加上BETWEEN,或TO_DAT的错误,所以记得把字段长度加长,比如1000;总的来说,碰到FROMTO的要小心长度。FORM开发心得整理(续)当修改子类的时候,会自动更改很多属性,特别是REQUIRED,一定要注意当对块进行刷新时,会修改很多ITEM的属性,别以为你设置过了,ORACLE就会记住。我碰到的情况是INSERTALLOWED等被自动改掉了即使我的子类设置为TEXT_ITEM_DISPLAY_ONLY两个变量,如果都为NULL,判断还是不相等,所以必须用A1ISNULLANDA2ISNULL。所以在ONLOCK里面的IF条件,我们可以把所以不可以为空的字段都写成允许为空的形式。一般来说,系统变量是很好用的。然而有时候并非如此,比如CURRENT_RECORD,GET_BLOCK_PROPERTYBLOCKNAME,CURRENT_RECORD的结果并非总是一样的,后者更加保险特别是刚打开FORM的时候,在WHENNEWRECORDINSTANCE里面,前者是0,后者是1FORM开发心得整理(续)表示一个单引号,表示两个单引号。应该是这样理解,一个单引号表示转义字符,首尾两个单引号里面的内容表示字符串。重启APPLICATIONCDAPPLCSFCDSCRIPTSCDPROD/ADSTPALLSHAPPS/APPS/ADSTRTALSHAPPS/APPSTRIGGER顺序5POSTQUERY,只有在界面可见的记录才会促发,记录从不可见变为可见时促发,促发过的记录不再促发;保存的时候会引发POSTITEM/RECORD/BLOCK事件,因为要NAVIGATE到FORM数据库ORG_ID初始值TO_NUMBERDECODESUBSTRBUSERENVCLIENT_INFO,1,1,NULL,SUBSTRBUSERENVCLIENT_INFO,1,10给非数据库ITEM赋值,NEW记录会变成INSERT(所以就不能F11了)QUERY/CHANGED记录不变NEW块会变成QUERYQUERY/CHANGED块不变FORM开发心得整理(续)对ONLOCK的理解,由于先入为主的缘故,开始一直很苦恼,为什么IF里面只用了一个RETURN,FORM怎么知道要锁否后来才知道ON类型的数据库触发器是替换型的,ONLOCK也不例外,所以只要ONLOCK不RAISE什么东西出来,FORM就认为是锁成功了,至于实际的锁,我们有SELECTFORUPDATE来完成,至于IF判断只是进行更加严格的判定。对FIND的理解,开始也很纳闷,为什么在PREQUERY里面直接给ITEM赋值就可,不用自己拼语句,现在也逐渐发现里面大有文章。回想F11,这个时候的BLOCK其实是处于ENTERQUERY状态,输入的东西FORM会自动拼成WHERE语句(当然还要加上原来的DEFAULTWHERE,如果有COPYFROMITEM,也要加上),对于每个ITEM上输入的值,一般是用,如果有,就解析为LIKE,如果有,则把后边的表达式(比如BETWEEN,甚至是子查询)直接作为条件;而当FORM内部执行堆栈NAVIGATE到PREQUERY时,BLOCK也是处于ENTERQUERY状态,道理和F11一样,我们只管按业务查询要求对ITEM赋值,剩下的就交给FORM去处理了;需要注意的是当处于ENTERQUERY状态的BLOCK,是使用QUERYLENGTH属性来限制输入的数据长度,而不是通常的MAXIMUMLENGH,只不过QUERYLENGTH默认是0,即等于MAXIMUMLENGH,所以会出现当用APP_FINDQUERY_RANGE时长度不够的情况。6IREPORT开发整理向系统注册报表的时候,参数是无法根据顺序自动对应,需要我们指定TOKEN,即报表的参数名称;而对于PROCUDURE是可以根据位置自动对应的,即使定义的参数名称和PROCEDURE参数名称不一样。这个可以这样理解,PROCUDURE的参数是明确的,参数有多少个、顺序如何是由PROCEDURE明确定义的;而对于报表来说,参数非常多,如果传了某个参数,就用该参数,否则REPORT用本身的默认值,没有顺序和个数的强制要求;另外PROCEDURE有且只有两个OUTPUT(RETURN_CODE说明0/SUCCESS,1/WARNING,2/ERROR)参数,其他的IN参数可以自动根据顺序对应定义EXECUTABLE,相当于开发人员告诉系统管理员有这个功能可以用,这个和定义FORM是一样的;注意REPORT名字不用RTF后缀,PROCEDURE的格式为“包名PROCEDURE”;上传到服务器的报表后缀要小写,不然会报找不到文件输出到LOG用FND_FILEPUT_LINEFND_FILELOG,MSG,输出到OUTPUT用FND_FILEPUT_LINEFND_FILEOUTPUT,MSG定义PROGRAM的时候,日期值集要用FND_STANDARD_DATE;对应的,在PROCEDURE和REPORT里面用VARCHAR2,然后自己转换,示例代码如下L_END_DATETRUNCTO_DATEP_END_DATE,YYYY/MM/DDHH24MISS11/243600;对于数据库中的日期字段,尤其是TRANSACTIONDATE,不要用TRUNC,这样会导致无法使用该日期的索引,一般是对参数进行必要的处理,如上述的加1天减1秒定义TABLE类型的值集的时候,有三个字段其中VALUE和ID都为值,ID的优先级高于VALUE,但一般我们只定义VALUE关联子集定义的语法为WHEREFIELD_NAMEFLEXVALUE_SET_NAME;当然要求两个子集都在参数里面注意父FIELD不要紧贴CHILDGROUP的循环框,否则该父FIELD会显示在CHILDGROUP的循环框内部。我在字符模式下做SUMMARY域,它紧靠CHILDGROUP的最下面边框,最后该SUMMARY域就显示在CHILDGROUP里面,覆盖CHILDGROUP的内容。如果出现错位情况,可以加一个框套住FATHER域1INCH72POINTS;设计字符模式的报表,假如设置了WIDTH为X,CHARACTERMODEREPORTWIDTH为Y,那么,X72/Y最好为整数,这只是我个人的感觉。比如A4横向,X为11,Y为132;HEIGHT的设置也需要符合这个要求。为方便字符模式报表元素真正对齐到网格SNAPTOGRID,可以在RULERS中把GRIDSPACING、NUMBEROFSNAPPOINTSPERGRIDSPACING都设为1,这个很重要,可以省去我们无谓的对齐工作量。不管怎么设,必须在开始设计LAYOUT之前设置;如果在设计LAYOUT之后更改,会造成已经做好的FIELD没有对齐到网格。报表里面好像没有环境变量,需要建一个用户参数P_CONC_REQUEST_ID/NUMBER/20,在BEFOREREPORT触发器里加SRWUSER_EXITFNDSRWINIT,在AFTERREPORT触发器里加SRWUSER_EXITFNDSRWEXITAPPLICATION开发整理PROFILE一个PROFILE其实就是一个参数,在开发员职责里面定义,注意这个时候选择的APPLICATION仅仅是方便管理,对以后的使用没有限制;一个PROFILE的具体值需要在系统管理员职责里面定义,可以分别在四个层次上定义,即SITE/APPLICATION/RESPONSIBILITY/USER,具体来说可以给任意一个SITE或任意一个APPLICATION或任意一个RESP或任意一个USER定义这个PROFILE的值,可以四个层次都定义,也可以定义某几个层次;对于一个SESSION来说,一个PROFILE到底取什么值是和上面的定义有关系的,即后面的覆盖前面的,如果它定义了的话。我们可以通过FND_PROFILEVALUEPROFILE_NAME来取得当前会话的PROFILE值,对于库存组织MFG_ORGANIZATION_ID,一些顾问可能没有去设置它,我们需要通过其他方式取得。在用FND_REQUESTSUBMIT_REQUEST的时候,第五个参数用FALSE,不要被参数名称误导;这个函数有105个参数,前面五个定义请求本身,后面100个是传递给请求的具体参数,都是CHAR类型,我们需要转换,默认值是CHR0,代表这个参数不用传递给调用的请求;在PACKAGE里面调用只需要传递需要的参数个数,因为它有默认值指示结束;在FORM里面则不行,要写满105个,而且我们参数结束之后要用一个CHR0来表示结束用SUBMIT_REQUEST的时候,其实最终还是向FND_CONCURRENT_REQUEST(另外我们定义的REQUEST是保存在FND_CONCURRENT_PROGRAM里面的)里面插入一行数据,如果不提交的话,该请求是不会真正开始运行的,所以我们一般在SUBMIT_REQUEST之后来个COMMIT,否则的话如果使用WAIT_FOR_REQUEST的话会无限期等待下去;在FORM里面需要注意的是,必须使块基于数据库,不然没得COMMIT。假如在一个请求内部使用了SUBMIT_REQUEST,特别注意的是需要检查CONCURRENTMANAGER的PROCESS数至少为2,否则上述两个请求会处于死锁状态数据库表中的ORG_ID或者ORGANIZATION_ID对初学者来说往往搞不清楚是哪个层次的组织,一般来说前者是OU,后者是库存组织,然而这也不一定,有一个简易的方法是,只要我们碰到ITEM,比如在订单中,那么一般是指库存组织_ALL,基表,保存多组织数据,里面有一个ORG_ID字段,一般不直接出现在我们的DML中去掉_ALL的视图,根据用户环境过滤掉组织,相当于普通的基表,我们直接使用它,就当它是基表_V,视图,给FORM用_KFV,启用关键性弹性域的时候动态生成的视图,包含CONCACT过的字段组合_DFV,启用描述性弹性域的时候动态生成的视图,我们取弹性域子段的描述的时候,需要用用户出口函数。_TL,基表,有LANGUAGE字段,US肯定有,其他的看安装_VL,视图,根据环境设置过滤语种,所以做报表用_VL_S,序列号_API,PACKAGE,保证向后兼容_PKG,PACKAGE,PROGRAM_SV,PACKAGE,供FORM调用ROWID,伪列,指明记录物理位置,文件号块号等,具体的我也不清楚ROWNUM,伪列,指明符合条件的记录的记录号,需要注意的是这个记录号在ORDERBY之前就已经决定,如果想用ORDERBY之后的记录号,只能再套一层SELECTLEVEL,伪列,指明树状结构记录的层次,以下示例代码可作为FORMTREE的数据源SELECT1STATE,LEVEL,CUSTOMER_NAME,NULL,CUSTOMER_IDFROMDA_CUSTOMERSASTARTWITHPARENT_CUSTOMER_ID1CONNECTBYPRIORCUSTOMER_IDPARENT_CUSTOMER_IDWHO,五个记录创建及修改历史的字段,可以通过OA的HELP/RECORDHISTORY菜单查看文件系统FILESYSTEM的层次一般是APPL_TOP/MODULE_TOPSUCHASGL_TOP,AU_TOP/VERSION/FORMS,REPORTS,SQL,/EN,ZHS,五个层次,在URL中有一个语言参数,它的值是根据用户当前的NLS_LANG设置来的;假如指明是中文,那么FORMSERVER会到ZHS下取文件,在任何其他语言对应的目录下找不到文件的话,系统都会到EN目录下取,假如还取不到,这个时候才报错。AU指APPLICATIONUTILITY,我们编写的FORM源文件一般放在AU_TOP/VERSION/FORMS/LANG下,而PLL源文件一般放在AU_TOP/VERSION/RESOURCE下,但编译的时候前者要放到对应应用的对应语言的目录下,而后者还是在源目录;对于REPORT,则直接放在对应应用的对应语言下,不需要编译一个用户对应一个或多个RESPONSIBILITY,一个RESPONSIBILITY对应一个或多个MENU,一个底层MENU对应一个FUNCTION,一个FUNCTION对应一个FORM或者一个报表或者一个程序;一个RESPONSIBILITY对应一个请求组,一个请求组对应一个或多个报表和程序,这个应该放过来说,在定义报表的时候可以选择哪个请求组;一个RESPONSIBILITY对应一个APPLICATION,这个不要和该RESPONSIBILITY拥有的菜单混淆,菜单没有限制WORKFLOW开发整理根据SERVER安装指南一般可以完成WORKFLOWSERVER的配置。按我的经验,有几个地方需要注意1、可以直接使用8I的HTTP,不用安装IAS,根据SERVER安装指南配置HTTPDCONF的别名即可;HTTP服务起不来的可能情况2、HTTPDCONF语法错误,这个没什么好说的之前的服务没有正常结束,一般重新启动计算机即可;或者杀掉JAVA进程,如果有的话新安装了ORACLE其它产品,导致路径引用错误;我的解决办法是把新安装软件在环境变量PATH中添加的路径移到最后如果要看HTTPD为何无法启动,查看LOG是没用的;应该先运行CMD,然后CD到需要的目录,输入APACHEEXE,这个时候就会有错误出现2、NOTIFICATION默认的配置是HTMLEMAIL,这个时候易遇到NOTIFICATION就报错,因为我们自己一般没有配置MAIL服务器,所以需要在GLOBALWORKFLOWPREFERENCES里面把SENDMEELECTRONICMAILNOTIFICATIONS设置为DONOTSENDMEMAIL3、开始我没有配好BUSINESSEVENTSYSTEM,在执行APROVE等动作的时候老是NODATAFOUND;后来我根据ERRORSTACK找到WF_XML包,把里面的REMOVENOTIFICATION的RAISE语句注释掉就可以了。嘿嘿,反正我是自己研究工作流,无所谓了4、我的系统是XPHOMESP1,没有JVM,无法VIEWDIAGRAM;装了JDK,不太好用,卸掉装MSJAVX86EXE一切正常刚接触WORKFLOWBUILDER会碰到的几个疑问如何连接各个NODE用右键而不是左键连为何修改不了别人的文件在HELP菜单里面设置合适的ACCESSLEVEL为何图标不起作用在VIEW菜单里面选择DEVELOPMODE如何使用STANDARD的ITEM打开STANDARD或DEMO文件,把STANTARD这个ITEMTYPE抓过去NOTIFICATION根据什么发必须在PROCESS里面打开NOTIFICATION的属性,NODE标签里面有一个PERFORMER,根据需要设置成我们预定义的某个ROLE类型的ATTRIBUTE即可WORKFLOWBUILDER的PL/SQL函数有什么要求拷个DEMO的函数,照着写就可以了,怎么判断运行模式,怎么返回里面都有其他问题其实WORKFLOWBUILDER在保存或者我们选择VERIFY的时候都会提示,只要认真看都能解决对各个ITEM的通俗理解1、ITEMTYPE是个抽象的概念,为方便理解,可以看作是一个工作流的容器和标志2、ATTRIBUTE是全局变量,供整个ITEMTYPE里面的元素使用,可以作为MESSAGE的附加属性,SEND给用户看或者存储用户的RESPONSE内容比如NOTE和FORWARDTO;ATTRIBUTE另一个常用的地方是作为NOTIFICATION的PERFORMER。当然我们的PL/SQL代码是离不开ATTRIBUTE,几乎任何PL/SQL函数都需要通过取得ATTRIBUTE变量判断ATTRIBUTE变量设置ATTRIBUTE变量,决定程序如何走,返回什么值3、MESSAGE,就是一个消息,内容在BODY里面定义,用INSERTINTOTESTVALUESNULLINSERTINTOTESTVALUESNULLINSERTINTOTESTVALUES3SELECTFROMTESTAWHEREAID3RETURN1RECORDSELECTFROMTESTAWHEREAID3RETURN0RECORDSELECTFROMTESTAWHEREAIDISNULLRETURN2RECORD3一般来说如果视图基于单表,比如过滤多组织的表,可以对其更新,但如果有ORDERBY子句,就无法对它进行操作,很无奈4对于层次树的查询,比如BOM和客户层次,可以用CONNECTBY子句完成,先看示例SELECTPEPOS_STRUCTURE_VERSION_ID,LEVEL,PESUBORDINATE_POSITION_ID,PEPARENT_POSITION_ID,PEROWIDFROMPER_POS_STRUCTURE_ELEMENTSPEWHEREPEPOS_STRUCTURE_VERSION_ID64FROMSELECTFROMPER_POS_STRUCTURE_ELEMENTSPEWHEREPEPOS_STRUCTURE_VERSION_ID64PESTARTWITHPEPARENT_POSITION_IDNOTINSELECTPE1SUBORDINATE_POSITION_IDFROMPER_POS_STRUCTURE_ELEMENTSPE1WHEREPE1POS_STRUCTURE_VERSION_IDPEPOS_STRUCTURE_VERSION_IDCONNECTBYPRIORPESUBORDINATE_POSITION_IDPEPARENT_POSITION_IDANDPRIORPEPOS_STRUCTURE_VERSION_IDPEPOS_STRUCTURE_VERSION_ID我在使用过程中发现有几个地方要稍加注意一是对FROM后的视图的限制,比如不能有UNION等,这个只要认真看错误提示即可二是执行顺序,如上例,注意是先构建树再应用WHERE语句;如果想提前应用过滤条件,需要先建一个子查询作为FROM后的表,如上例的注释部分三是STARTWITH和CONNECTBY都可以写得很复杂四是构建原理根据STARTWITH的条件查询出的记录作为根,然后对根进行循环,根据CONNECTBY子句进行递归找出下层节点五是10G有个新增功能叫NOCYCLE,可以避免层次的死循环5做ORACLE离不开DB,我先后收集并看了不少材料,觉得网上流传较广的22讲视频还是不错的,我认真听了一遍,受益匪浅;ORACLE性能优化CHM也是值得一读,真得非常不错;作为参考材料,ORACLE8I/9I/10G_ERRMSGCHM、ORA10GSQLREFERENCECHM、11IFNDOCCNCHM是非常方便的。6重装系统之后,是可以全面保住DB以供我们学习和测试的。首先当然要保证把DB装在非系统盘。然后是备份,备份DB对应的注册表HOME分支(如HKEY_LOCAL_MACHINESOFTWAREORACLEHOME1)、ID分支(如HKEY_LOCAL_MACHINESOFTWAREORACLEALL_HOMESID1),备份注册表的相关SERVICE(比较重要的有ORACLEORA8IHTTPSERVER、ORACLEORA8ITNSLISTENER、ORACLESERVICELEIKO,当然最好是全部相关的都备份),备份环境变量PATH的设置,如果DB中含有WORKFLOWSERVER还要备份WV_GATEWAY_CFG环境变量。恢复的时候需要注意,把上述备份的东西复原之后,要看看HKEY_LOCAL_MACHINESOFTWAREORACLEALL_HOMES下的HOME_COUNTER和LAST_HOME是否正确。安装准备1、系统要求WINDOWSXP/WINDOWSSERVER都可以,我的是XP内存最好1G以上,系统装完差不多一启动就是13G的内存,我的是512M,所以设了2G的虚拟内存磁盘空间要20G(放安装盘,真搞不懂,1154才8G,到11510就要20G)60G(系统装后占用55G左右),我的本本是40内置(装操作系统、放安装文件),外挂80G移动硬盘用来装EBS2、下载ORACLEEBS11IFORMICROSOFTWINDOWSHTTP/EDELIVERYORACLECOM/EPD/GETUSERINFO/GET_FORM目前可以下到11510,我用公司的MAIL可以通过其出口限制验证WINDOWS版有49个压缩文件对应49张CD,如果不用高级功能,下载7到38就可以了,20G不到。可以建一个目录,比如STAGE11I,把下载的文件直接解压到这个目录即可,会自动创建ORAAPPDB、ORAAPPS、ORADB、ORAIAS、STARTCD等;还可以下载中文包,同样直接解压到STAGE11I,会自动创建ORANLS。当然还有MAINTAINPACK,不过我下了之后又删掉了,本本空间不够啊。3、下载GNUMAKEHTTP/FTPGNUORG/PUB/GNU/MAKE/可以下到,我用的是MAKE380TARGZ4、下载MKSTOOLKIT这个比较难下,我的是从同事那里拷来的,805、VC6网上有的下,我用的是VC6集成SP6的6、JDK13这个就不用说了安装1、安装操作系统随便装。我用的是原来的系统,没有重新安装,系统现状是C盘为98,D盘为XP,E盘放STAGE11I,J盘为移动硬盘,机器名为HUAJHUA,没有加入什么域。2、安装MKSTOOLKIT随便装。为管理方便,最好把各个工具装在同一个分区下,我
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论