tanggang1740 发表于 2015-9-20 12:24:59

[转载]SAP预装服务器全编译

  一.说明
  SAP系统初始安装后,每当事物码第一次运行时,GUI的左下角会显示编译的状态(如图 1所示),费时很多尤其是对于一些业务内容很丰富的事物码如ME21N、VA01。

图 1 编译状态
  产生编译的原理是:SAP初始安装时ABAP程序只是源代码状态,也就是ASCII码。在第一次执行时,需先将源代码其编译成伪码,系统再对伪码解释运行;以后再次运行,则无需编译直接解释伪码。
  产生编译除了系统初始安装后第一次运行外,新建或修改的ABAP程序、组件和支持包的升级也需要重新编译;另外如果在WEB中产生编译,经常会因时间过长产生超时(timeout)报错。如果多人同时运行并产生编译,则服务器的运行效率很低,尤其对于档次不高的服务器。
  为避免以上问题,可以采用集中强制编译方式,使用事物码SGEN,选定某些或全部组件执行编译,这时间通常很长但以后再次运行则速度很快,全部组件的编译通常需要比系统安装时间还要长。在编译过程中可以暂停并且能够重启编译任务。
  编译一个ABAP程序,数据库中会多一些内容;集中编译大量的程序,则数据库需要的空间很大。在编译前和编译过程中需密切注意数据库空间的变化。
  二.操作
  在前台执行事物码SGEN,进入图 2界面,有多种编译的选择,如全部生成、重新生成系统升级后的(System Upgrade),最后两项是针对BSP、WEB相关组件的(两者均与网页有关)。本例选择第一项,对所选组件的全部对象进行编译。选中后点击“Continue”按钮进入图 3界面。

  图 2 初始界面(选择对组件的全部对象编译)

  图 3 组件选择
  图 3界面选择要编译的组件(Software Component),如果全选则时间非常长所以要谨慎,本例选择两个基本组件(SAP_BASIS、SAP_APA),选择后点击“Continue”按钮继续。
  图 4是选择服务器,无其它选项,再次点击“Continue”按钮继续。

  图 4 选择Server
   
图 5 任务调度选择
  图 5是任务调度界面,可以选择立即执行或指定时间执行,本次选择在后台立即执行点击“Start Job directly”按钮,生成一个后台作业,前台操作就可以退出了。
  在前台再次执行事物码SGEN,可以看到编译的进度,如图 6所示,可以看出仅选择的两个组件需编译近5万个对象,目前编译了362个,评估还需10小时55分钟完成(机器档次低并且是在虚拟机中运行)。

  图 6 进度查看
  三.中断及重启任务
  如果在长时间的编译过程中需要暂时中断,可以在图 6界面下部点击右边的“Terminate Generation”按钮,系统弹出图 7对话框询问是否中断(cancel),在其点击“YES”按钮,系统弹出图 8对话框告知中断需要数分钟时间,此时后台的任务仍在继续,需要耐心等候。

  图 7 中断提示对话框

  图 8 中断信息(提示需数分钟时间)
  当编译任务停止后,就允许关闭SAP服务器了。如果还想继续完成上次的任务,可在前台再次输入事物码SGEN进入,如图 9所示选择重新执行上次任务,按“Continue”按钮再次运行。
   
图 9 选择继续任务(last run)
页: [1]
查看完整版本: [转载]SAP预装服务器全编译