分享好友

×
取消 复制
vvyjp 栈主 2020-03-01 11:13:07

如何学EBS 概述 因为自己也是从那个阶段过来的,而现在工作年限也比较短,当初的那个迷茫现在还依然记得。 个人觉得公司这方面做得比较欠缺,至少我自己是没有觉得公司会专门让你学这个学那个,而且确实对以后是有帮助、对于提升个人能力很有用的东西。如果真要说,可能也就是培训的时候了。有一句话叫做“师傅领进门,修行靠个人”,而个人修行开始的时候确实是比较困难的,实在是没有方向,需要自己摸黑的摸索,有时候比较痛苦。 在这里,结合自身的成长,交流下学习EBS的一些顺序,方式,大家在空闲的时候可以尝试以这种途径来提升能力,记住是空闲时间,项目上的事情还是位哦! 技术能力提升 这个想必都很是关心,刚进来都希望把自己的技术练高超一点,能多学点东西就多学点东西,能深入钻研什么就钻研什么。 多学东西还好,钻研个人觉得是很早的东西,现在我还没有觉得EBS的哪项技术是学的特别好的,而且每当感觉到自己有点能力的时候,不用一个月时间立马觉得自己很菜! 具体对某项技术的实际应用,深入理解大部分还是靠项目上的锻炼!平时不用刻意深入查看,要做的只是了解、完成step by step的教程练习,有个记忆,以后碰到类似的情况可以马上翻阅并加以深入学习。有时候觉得做 EBS,实际的具体知识是一块大硬盘,大脑更像一个建立了索引的数据库,如何在短的时间内获取对应知识来源是我们需要掌握的。 笔记软件 随时记录自己探究或者学到的新东西,好记心不如烂笔头,谁知道几个月之后你还记不记得当时解决问题的方法。难不成重新探究一次? OneNote 很多同学都用这个,我也用,树形结构,很方便的整理,不过搜索性能似乎不够理想 EverNote 搜索性能感觉比较好,PDF可以直接拖进去搜,平时记录东西也方便,但是没有树形结构,很纠结。 CyberArticle 可以将网页原封不动直接保存,用起来感觉很好,平时网上搜到的牛逼记录,解决方法,或者metalink,都可以保存下来。 必备文档 对于很多技术上的东西,前辈们都已经有了比较详细的文档,他们已经研究过了,我们只要拿过来练习加理解就可以了。 这里以自己成长所学的东西以及自身体会大致描述一下本人觉得必备的文档。 培训教材 初公司统一培训用的教材,包含EBS基本技术SQL、PLSQL、FORM、REPORT、OAF,step by step,效果很好。(这里的workflow貌似没什么用) 深入浅出系列 黄建华大牛的亲笔技术知识汇集,可以说涉及到EBS技术的方方面面,宝典也! ORACLESEEKER http://oracleseeker.com 以前张礼军,张老大的亲笔研究,很多精髓、技巧,只有在你真正用到的时候才知道是多经典! 学习顺序 这个也是之前比较纠结的一点,不知道哪个阶段到底该学习什么!一系列的好文档摆在眼前,那也不是一下子就能吃进去的,迷茫期主要的还是这个。 1.SQL、PLSQL 这个可以说是老本行,也该精通的东西了,EBS无时无刻都在用,打好基础重要! 相关资料 深入浅出Oracle EBS之DB、PLSQL专题研究 深入浅出Oracle EBS之安全机制探索 (你可以在这里获取APPS密码、任何用户密码的方法!) 2.FORM EBS常用的界面开发技术,建议培训教程做一遍,深入浅出Oracle EBS之Forms开发指南 再看一遍,有兴趣可以深入浅出的做一遍,但是AMS毕竟不是实施,实际上真正做FORM的机会很少。 相关资料 FORM培训资料的FLASH 教程,非常形象,易懂 深入浅出Oracle EBS之Forms开发指南 http://oracleseeker.com 关于FORM的文章,写的很好,遇到的时候很实用 3.接口/API 也算是各种常用的东西,建议随机挑选几个实行尝试即可,不必一一测试,当遇到类似接口需求的时候,想起在什么地方能找到例子! 相关资料 深入浅出Oracle EBS之常用接口开发参考 4.REPORT 跟PLSQL有交集,项目上很多很多报表全部是用纯PLSQL写的。REPORT BUILDER现在看来用的比较少,但是可以了解一下,有机会肯定会用到。 相关资料 REPORT培训资料的FLASH 教程,非常形象,易懂 Oracle_BI_Publisher.pdf 深入浅出Oracle EBS之XML Publisher技巧集锦 5.WORKFLOW 别以为AMS用不到WORKFLOW!即使平时真的接触不到,但是也要大概知道一些东西,不然真正遇到问题的时候束手无策,建议深入浅出Workflow跟着做一遍! 相关资料 深入浅出Oracle EBS之Workflow实例详解 深入浅出Oracle EBS之Alert实例详解 (可以试试用EBS直接配置为用邮件收取notification,蛮有意思) 深入浅出Oracle EBS之Business Events实例详解 6.OAF 别以为AMS用不到OAF!R12是现在的趋势,怎么也要懂点这个知识,不求可以重新做,但求可以查问题,可以改逻辑! 相关资料 入门建议看培训教材的OAF教程,STEP BY STEP,多做几次.. 深入浅出Oracle EBS之OAF学习笔记 http://oracleseeker.com OAF的一些文章 自己安装一个EBS 这个可以作为可选项,我们又不是DBA….. 不过自己尝试安装的话,一些简单的系统知识,DBA知识都可以接触下,以后打补丁什么的都没有什么问题。而且自己的系统,可以爱怎么搞就怎么搞。 心态调整 有时候不是外面的世界怎么怎么样,是自己的感受决定了这一切。很多不愉快的东西忍一忍就过去了,凡事看开一点,没有什么难关过不去的,保持一颗好心态。 不要放过项目过程或者学习过程中遇到的问题,有问题才会有进步,如果有问题给你处理,你应该高兴才是,终于有机会可以进步了! 如果遇到项目过程中多个技术都在解决问题的情况,偶尔可以关注一下其他人的问题、解决方法,不要因为不是自己在处理,就事不关己,获得别人研究过来的成果难不成你还不开心了? 业务能力提升 如果你在的项目不是一直都很闲很闲,相信按照上面的学习顺序学完那些该学的东西,半年或者一年多也就过去了…..迷茫期差不多也过去了,怎么说这个时候也可以干点事情啦!之后是继续钻研技术还是什么就看个人的想法。 其实AMS跟实施比起来更容易学到业务上的东西。实施过程中的技术,个人感觉大多数是做做FORM、做做报表、写点代码,忙一镇子,然后就换项目循环了。想必下来运维平时都建立在至少会操作系统,走系统流程的基础上去处理问题的,时间久了,功能顾问可以做的事情多多少少你也会,而且真的说到去研究系统流程的话,懂技术确实是个很大的优势。 因为本人接触实施、开发稍微多点,真正的纯运维项目接触的很少,业务这方面想想真的是比较欠缺。但是技术的话,应该可以直接看深入浅出Oracle EBS之核心功能 那堆文档进行系统测试,一步步增进自己的能力。

展开
4
vvyjp 栈主 2020-02-28 13:16:10

EBS 虚拟机 使用 步、插入移动硬盘。 第二步、打开VMware Workstation,然后选择移动硬盘中的Red Hat Enterprise Linux 4.vmx文件。 第三步、启动虚拟机。 注意,你的内存好超过2G,双击下面的红框可以调节虚拟机内存的大小 我本身3G的内存,就分给虚拟机2G,如果我是2G的就分给它1.5G,分配的原则就是好超过1.5G 启动虚拟机,单击下面的红框 注意:如果弹出选择keep、create,alwayscreate和always keep,你要选择always keep 启动正常后会显示如下 然后你到windowsxp下在运行中cmd,然后ping 192.168.1.8看是否可以ping通。 否则检查如下是否配置过。 第1、修改网络联机中VMware Network Adapter VMnet1的IP地址,修改后如下 第2、在虚拟机菜单上VM虚拟机设置EthernetDevice status看是否下面的Connected是否已经打上小勾了。 第3、可以参考Oracle_EBS_R12&11i在RedHat_AS4中系统安装与设置_v3.5.3.pdf文档中第85页关于Linux中的mac地址的设置。 现在我已经把x-window关掉了,如果要开启图形界面,就要在输入用户名和密码后,然后输入startx,这样就可以进入图形化界面的,然后修改mac地址就可以ping通了。 ,该完mac地址后重新虚拟机,开启的还是dos界面的图样。这样可以节约很多资源。 第四步,启动数据库 进入后直接输入数据库用户的登陆名 oravis 密码oravis 然后启动数据库,因为在/home/oravis下我已经下好启动数据库的脚步了 启动数据库即运行./startdb.sh,这里运行该脚步 停止数据库即运行./stopdb.sh 注意:当然如果你要切换成其他用户就输入 su - root 密码是root 启动正常后是全部返回0的。否则需要检查一下,看是否没启起来,在停掉后再重新启动 启动正常如下图所示 第五步,启动应用 这里切换一下应用用户applvis,输入命令 su - applvis 密码applvis 然后启动应用,因为在/home/applvis下我已经下好启动应用的脚步了 启动应用即运行./startapp.sh,这里运行该脚步 停止应用即运行./stopapp.sh 启动正常后是全部返回0的。否则需要检查一下,看是否没启起来,在停掉后再重新启动 有的时候确实是要启好几次,才可以启起来。就看你机子的性能是否总是被其他东西耗用着。 一定要记住,停系统,需要先停应用,然后停数据库,然后输入命令:shutdown -h now 具体步骤:注意su 后面的是减号 、 su - oraprod oraprod 停止数据库即运行./stopdb.sh 第二、 su - applprod applprod 停止应用即运行./stopapp.sh 第三、 su - root oracle shutdown -h now 第六步、Host添加如下: 192.168.1.9 vm.oraclekinglong.com vm TNSNAMES.ORA添加如下: vm= (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.9)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = VIS) ) ) 第七步、访问web地址如下 http://vm.oraclekinglong.com:8000/ 或 http://vm:8000/ 正常需要5分钟进入后如下: 配置host192.168.2.2 zslebs.oracle.com zslebshttp://zslebs.oracle.com:8000/ 启动虚拟机时,网络用host-only,要用oracle/welcome1用户登录linux,一定要正常开关机 1.启动服务(www.everyskycs.com) --1.1初始化db环境变量 . /d01/oracle/VIS/db/tech_st/11.1.0/VIS_zslebs.env --1.2启动db cd /d01/oracle/VIS/db/tech_st/11.1.0/appsutil/scripts/VIS_zslebs ./addlnctl.sh start VIS ./addbctl.sh start --1.3初始化apps环境变量. . /d01/oracle/VIS/apps/apps_st/appl/APPSVIS_zslebs.env --1.4启动apps cd /d01/oracle/VIS/inst/apps/VIS_zslebs/admin/scripts ./adstrtal.sh apps/apps 2.停止服务 --2.1初始化apps环境变量 . /d01/oracle/VIS/apps/apps_st/appl/APPSVIS_zslebs.env --2.2停止apps cd /d01/oracle/VIS/inst/apps/VIS_zslebs/admin/scripts ./adstpall.sh apps/apps --2.3初始化db环境变量 . /d01/oracle/VIS/db/tech_st/11.1.0/VIS_zslebs.env --2.4启动db cd /d01/oracle/VIS/db/tech_st/11.1.0/appsutil/scripts/VIS_zslebs ./addlnctl.sh stop VIS ./addbctl.sh stop 打开VMWARE STATION时,VM中有VM网卡,个VM网卡。 VM软件中的网卡的IP地址:192.168.2.1子网掩码:255.255.255.0 202.102.9.141 在VM中选取Oracle Enterprise Linux 64-bit(EBS).vmdk文件。启动LINUX操作系统。 将LINUX中的网卡地址设为:IP地址:192.168.2.2子网掩码:255.255.255.0 查找vmdk启动后,系统中的HOST文件名,将HOST中的IP地址改为: IP地址:192.168.2.2子网掩码:255.255.255.0在VMDK中,字符界面运行AUTOCONFIG文件,运行完成后,要无报错。1.网上邻居2. VM的共享文件夹,装完VMware tools的时候会有提示 方法一:把虚拟机里面的操作系统打开,然后点击菜单栏的虚拟机→设置→option→sharing floder→always enabled→add→……→ok。 接着打开虚拟机里的“网上邻居”→左侧的“添加一个网上邻居”→……→找到vmware host文件夹→完成。设置完就可以在网上邻居看到文件。 方法二:打开虚拟机里的操作系统→点击菜单栏的虚拟机→install vmware tools……安装完后,要共享文件,可以直接将文件拖到虚拟机里(要稍等一会,文件才会复制)。

展开
0
vvyjp 栈主 2020-02-28 13:13:01

发票管理及协同平台 目录 1 平台总体架构图 5 1.1 总体功能架构 5 1.2 进项管理功能架构 5 2 平台功能说明 6 2.1 结算清单信息管理 6 2.1.1 结算数据规则维护 6 2.1.2 结算数据接收 6 2.1.3 结算数据查询 6 2.1.4 结算清单合并 7 2.1.5 结算清单拆分 7 2.2 预制发票管理 7 2.2.1 预制发票生成 7 2.2.2 预制发票确认 8 2.2.3 预制发票查询 8 2.3 发票管理 9 2.3.1 发票开具管理 9 2.3.2 发票寄送管理 9 2.3.3 发票提取管理 9 2.3.4 发票红冲管理 10 2.3.5 发票OCR管理 10 2.3.6 发票认证管理 11 2.3.7 发票查询管理 11 2.3.8 发票差异处理 12 2.4 发票信息预警 12 2.5 统计查询及报表管理 12 2.5.1 整体统计管理 12 2.5.2 业务报表管理 13 2.6 基础管理 13 2.6.1 公司信息管理 13 2.6.2 用户帐号管理 14 2.6.3 用户权限设置 14 3 接口管理 16 3.1.1 接口数据监控 16 4 系统部署图 17 5 平台非功能性指标说明 18 5.1 可靠性与稳定性 18 5.2 安全性 18 5.3 可维护性和可管理性 20 5.4 可扩展性 20 5.5 开放性和标准化 20 6 集成能力 21 1平台总体架构图 1.1总体功能架构 1.2进项管理功能架构 1.3销项管理功能架构 2平台功能说明 2.1结算清单信息管理 2.1.1结算数据规则维护 可对客户整体、也可对个体客户维护商品合并规则、金额拆分规则、商品描述替换规则等多项清单维护规则。 2.1.2结算数据接收 接收ERP系统发送的开票清单,并在接收时对开票清单的(销方、银行帐号、开 户 行、电话等)信息进行核对;检查税率等数据是否为有效值,并对异常情况给出提示,由财务人员决定是否接收。 在发票正式开具后,发票平台会将结算单对应的发票号信息自动反写回ERP系统。 2.1.3结算数据查询 购销双方均可按单据号、发票类型、销方公司、销方税号、购方名称等条件对结算清单进行查询并在推送时点进行在线提醒。 结算单查询页面 2.1.4结算清单合并 可按同一税号下不同分支机构、金额、商品(服务)类别等多种条件对开票清单进行自动合并。并可对商品描述信息进行修改。 2.1.5结算清单拆分 通过系统规则配置实现开票规则的设置包括:发票限额、备注信息、折扣设置、发票明细设置、税率拆分规则等。自动按规则对开票信息进行拆分,形成预制发票信息。 也可对某一有特殊要求的购方配置单独的开票规则(如:某一类型商品要单独开票等)满足客户的特殊需求。 2.2预制发票管理 2.2.1预制发票生成 系统根据开票规则自动或手动将开票清单拆分为一张或多张发票。生成发票时,若一次开票事项超出票面明细数量,则系统自动生成该张发票的清单,与原发票一起作为完整发票。 同时对于折扣数据进行逐行拆分或合并显示。 生成预制发票 2.2.2预制发票确认 可实对预制发票的信息进行确认,确认预制发票无误后再将开票信息推送金税系统开票。 2.2.3预制发票查询 系统提供预制发票查询功能,可直接在平台中直观查看预制发票信息。 预制发票查询 2.3发票管理 2.3.1发票开具管理 系统自动将已确认的预制发票信息推送金税系统开票。 在直连开具发票后,系统自动获取发票号码、发票代码、字符密文、二维码密文、机器码、销货清单等票面信息,形成完整发票电子信息。 2.3.2发票寄送管理 系统提供 “实物发票物流跟踪“ 功能。即发票开出后,可以设定物流公司并录入单号,通过与第三方物流平台接口,显示出该实物发票的物流寄送情况,并提供实物发票签收功能。 发票寄送管理 2.3.3发票提取管理 在直连开具发票后,系统自动获取发票号码、发票代码、字符密文、二维码密文、机器码、销货清单等票面信息,形成完整发票电子信息。 2.3.4发票红冲管理 由于实际操作中发票可能存在一系列的问题(无法认证、需要进项税转出等),所以对是本月已抄税、隔月、对方已认证的那些发票,需要进行发票红冲,开具红字增值税发票。发票红冲的一般步骤为:购方向税务机关填开并上传《开具红字增值税专用发票信息表》→主管税务机关通过网络接收纳税人上传的《信息表》,系统自动校验通过后,生成带有“红字发票信息表编号”的《信息表》,并将信息同步至纳税人端系统中→红冲,销售方凭税务机关系统校验通过的《信息表》开具红字专用发票,在增值税发票系统升级版中以销项负数开具。 对于增值税普通发票,进行发票红冲时,只要输入发票号两遍,系统进行判断是否满足红条件,判断通过后系统即显示负数发票内容,确认后即可开具红字发票。 对于增值税专用发票,进行发票红冲时,只需要输入红冲通知单号,系统进行判断是否满足红冲条件,确认后即可开具红字发票。 开具红字发票后,本系统自动释放原开票事项并可等待重新开票。 2.3.5发票OCR管理 通过扫描客户端的配置,在收到发票后,扫描获取发票信息包括(购方税号、销方税号、发票代码、发票号码、开票日期、税率、税额、金额、密文、录入人、机器码等),并自动与平台抽取或从结算数据中获得的对应信息进行比对,如无问题则直接通过扫描验证,如有问题系统将自动在扫描客户端上标注异常内容,人工确认是否可接收本张发票; 在发票信息确认后,扫描客户端将确认结果及发票影像信息发送发票平台保存。 2.3.6发票认证管理 在同一平台上根据企业的实际税务状况和业务需求完成同一地各类认证(国税认证平台和电子底账平台)的实现; 发票认证:自动或手动将发票信息发送认证平台认证,对于抽取发票自动认证的发起点可在获得发票信息时,对于供应商发票自动认证的发起点在扫描确认信息接收时; 发票认证结果:平台实时接收发票认证结果,用户可直接在平台上对认证过程进行跟踪; 2.3.7发票查询管理 可按销方公司、购方公司、发票代码、发票号码、开票日前等条件对销项发票进行查询,页面如下图。 提供发票关联开票清单信息、发票发票详细信息、发票关联物流信息等关联查询按钮,对发票关联信息进行快速查询。 销项发票查询页面 2.3.8发票差异处理 平台会根据扫描情况对差异部分进行操作提示 扫描异常:当扫描识别到信息异常时,自动将异常区域标红,由操作人员手工修改或重新扫描; 信息比对异常:当扫描客户端比对抽取客户端获取时发现信息不匹配时,自动将异常区域标红,由操作人员对此信息进行确认是否接收此张发票; 2.4发票信息预警 发票红冲信息预警 设置可红冲发票数量的阀制,当红冲发票数量达到此阀制,则进行预警提示。 发票作废信息预警 设置可作废/注销发票数量的阀制,当作废/注销发票数量达到此阀制,则进行预警提示。 发票寄送时间预警 设置发票寄送时间阀值,当发票寄出后到此阀制仍未被签收,则进行预警提示。 发票认证管理预警 可通过阀值的设定或进销对比值的事先设定在认证环节进行预警提示。 2.5统计查询及报表管理 2.5.1整体统计管理 销项发票按多种条件进行统计,可实时统计各类发票开具情况、针对某一购方的开票情况等。页面信息如下图。 整体统计页面 2.5.2业务报表管理 可生成多种发票、业务相关报表。报表样例,如下图所示 图2.2.6.2账龄分析表 2.6基础管理 2.6.1公司信息管理 对公司信息维护,如新增,修改,查看详情等,如下图所示 公司信息管理 2.6.2用户帐号管理 对用户帐号进行管理,新建,查询用户等,页面如下图所示 用户帐号管理 2.6.3用户权限设置 对用户权限进行设置,如新增,修改用户权限等,页面如下图所示 用户权限设置 3接口管理 3.1与阿里系统进项接口描述 序号 系统名称 信息交换时机 主要交换信息 备注 1 结算单接收接口 抛送结算单 销售系统开票结算信息 获取 2 结算单接收反馈接口 接收成功 结算单接收状态 抛送 3 发票信息回写接口 开票完成 销售发票信息 抛送 4 发票信息回写反馈接口 接收成功 发票信息接收状态 获取 5 发票物流信息查询调用 用户触发 发票物流状态 获取 6 发票认证请求接口 用户触发 待认证发票信息 抛送 7 发票认证结果接口 认证完毕时 发票认证结果信息 获取 3.2进项接口调用时序 3.3与阿里系统销项接口 序号 接口名称 功能描述 1 结算单接收接口 通过此接口接收阿里系统发送的结算单。 2 结算单接收反馈接口 通过此接口反馈接收结果给阿里系统。 3 发票信息回写接口 通过此接口将发票信息回写阿里系统。 4 发票信息回写反馈接口 通过此接口接收阿里系统反馈信息。 3.4销项系统接口描述 序号 系统名称 信息交换时机 主要交换信息 备注 1 结算单接收接口 抛送结算单 销售系统开票结算信息 获取 2 结算单接收反馈接口 接收成功 结算单接收状态 抛送 3 发票信息回写接口 开票完成 销售发票信息 抛送 4 发票信息回写反馈接口 接收成功 发票信息接收状态 获取 5 发票作废协同接口 作废申请提交 申请作废销售发票信息 获取 6 发票作废协同反馈接口 接收成功 发票信息接收状态 抛送 3.5销项管理接口调用时序 3.6接口数据监控 接口数据表可监控接口数据接收、发送情况,及接口信息统计; 4系统部署图 5平台非功能性指标说明 5.1可靠性与稳定性 1)采用高可靠性的产品和技术,充分考虑整个系统运行的安全策略和机制,具有较强的容错能力和良好的恢复能力,保障系统安全、稳定、高效的运行。系统的各个部分都采用冗余技术,使整个系统不存在单点故障。 2)系统设计和开发上,各个模块应能独立开发,独立验证,这样保证了程序运行的稳定性的同时,分离应用系统和硬件设备,对系统的各个组件部分独立保证运行可靠性,降低系统故障率。 3)应用系统采用负载均衡加分布式服务部署模式,实现单点服务热发布,在提升系统处理能力的同时,大程度上提升系统可靠性与稳定性。 4)数据库采用分布式双节点部署模式(物理分离),主节点发生故障、秒级切换至备份数据,保证系统连续、稳定运行。 5)某大型用户案例(每年进项交易额1200-1500元亿人民币;销项交易额2500-3000元亿人民币),2010年上线至今,实现系统全程热发布(0系统停机故障)。 5.2安全性 安全性是平台建设的基本原则,需要充分考虑整个系统运行的安全策略和机制,具有较强的容错能力和良好的恢复能力,保障系统安全、稳定、高效的运行。 1)访问安全 由全球信任认证机构签发的CA数字证书对网站身份进行验证,帮助您轻松识别官方网站,远离假冒钓鱼网站的危害。 使用HTTPS对数据传输链路加密,能有效保证数据的机密性、完整性,防止窃听、篡改、伪装等攻击手段,确保各类核心数据的安全。 2)攻击防护 能防护多种DDoS类型攻击,包括但不限于以下攻击类型 ICMP Flood、UDP Flood、TCP Flood、SYN Flood、ACK Flood 等。 3)数据安全 数据库拥有两个物理节点进行主从热备 主节点发生故障,秒级切换至备节点,服务可用性高 多重防火墙及数据加密存储 SQL审计等多种系统跟踪日志 4)文件安全 文件数据使用海量、安全和高可靠的云存储服务 数据三重备份,可靠性高 提供多层次安全防护 实行多用户隔离机制 完备访问日志,非法访问追查与隔离 5)接口安全 数据通讯层面使用HTTPS现实数据传输链路加密和服务器身份验证 通讯方接入账号和IP白名单的双重验证,提高集成接口安全性 实时监控系统接口,发生异常时自动隔离异常应用系统 6)控制台安全 系统提供基于角色的权限管理功能来对控制台管理操作进行授权,授权操作是基于配置式的,且对于角色的授权可以到菜单级,也可以授权到更细的单个数据、按钮操作,并对用户的每一步操作都留有日志供审计与追溯。 5.3可维护性和可管理性 1)记录完整的系统错误日志,在系统处理异常时,都能够根据已记录的日志,快捷方便地定位出错误地具体位置、原因,而不是查阅程序,方便系统的维护。 2)系统提供对运行情况的监测和控制功能,从而保证系统的正常运行,同时,有效的业务量监控有助于对业务发展作出准确评估,可保证系统处理能力的及时扩容。系统应具备有效的、统一的手段和机制进行设备管理、应用软件环境设置调整管理、开发管理以及操作员、管理员管理。 5.4可扩展性 平台系统架构的设计模式,实现应用层、数据库层的全层级分布式部署,使业务功能的扩展可以方便的实现;因此系统软硬件平台具有良好的可扩充能力,可以通过工具配置,自动部署,支持系统规模的扩大和业务范围的扩展。 5.5开放性和标准化 系统采用基于SOA技术架构,实现技术上具备前瞻性,遵循国际标准;为适应将来业务和技术发展的需求,系统实现底层的接入与业务的处理分离,并采用模块化,在增加新业务时不需要更改系统的软件结构和网络结构。具有易于维护的特点,除具有标准的开放式技术标准接口外,还能够实现与各类异构系统的全面集成。 6集成能力 平台与用户ERP系统集成,直接关系到用户ERP系统、平台各项功能使用的连贯性、稳定性、可靠性。平台商解决方案必须基于对用户ERP系统及管理流程全面的了解,提供稳定、高效、便捷的集成方案,且应把用户ERP系统集成工作量降到低。 1)系统集成成功案例包括但不限于(SAP、Oracle、Infor、Microsoft【MBS、Navison】、用友、金蝶、浪潮、)等1000+个应用系统 2)某大型用户平台系统集成案例,集成应用系统93个,集成系统地域分布:北京、上海、天津、江苏、浙江、广东、新疆、陕西、四川等) 3)平台提供多种企业应用集成中常用的适配器,如文件适配器、FTP适配器、HTTP适配器、Soap适配器、Rest适配器、Socket适配器、JDBC适配器及JMS适配器等,可快速实现应用集成,减少开发工作量;除了系统本身集成的适配器之外,还提供了可灵活扩展的适配器开发API,便于用户开发适合自己需要适配器,并无缝集成到系统中。

展开
1
vvyjp 栈主 2020-02-28 13:10:57

LoadRunner 技术参考手册 — 产品实施 Oracle e-Business Suite R12 数据导入参考手册 作者: 制定日期: 更新日期: 目录 1. LoadRunner简介 1 1.1. 引用程序负载测试 1 1.2. LoadRunner解决方案 2 1.3. LoadRunner Vuser技术 4 1.4. LoadRunner Vuser类型 4 2. 环境准备 6 2.1 LoadRunner的安装 6 2.2 R12环境准备 6 3. 数据导入 9 3.1 录制脚本 10 3.1.2 凭证数据录入(R12) 10 3.1.2 供应商数据录入(R12) 11 3.1.3 要点关注 12 3.2 参数设置 12 3.3 后续注意事项 14 3.4 修改脚本 16 附录 21 NCA函数列表 21 待补充内容 24 参考文档 24 1. LoadRunner简介 LoadRunner是用于测试应用程序性能的 Mercury 工具。LoadRunner 通过对整个应用程序进行压力测试来隔离和标识潜在的客户端、网络和服务器瓶颈。 LoadRunner 使您可以在可控制的峰值负载条件下测试系统。要生成负载,LoadRunner 需要运行分布在网络中的数千个虚拟用户(即 Vuser)。只需使用少的硬件资源,这些 Vuser 就可提供一致的、可重复的并可度量的负载,并像真实用户一样使用应用程序。LoadRunner 的深入报告和图提供评估应用程序性能所需的信息。 LoadRunner 通过模拟一个多用户并行工作的环境来对应用程序进行负载测试。当应用程序在负载下运行时, LoadRunner 会准确地度量、监控并分析系统的性能和功能。 1.1. 引用程序负载测试 现代的系统体系结构很复杂。在提供空前强大的功能和灵活性的同时,这些系统也难以测试。单用户测试主要侧重于系统组件的功能和用户界面,而应用程序测试则侧重于整个系统的性能和可靠性。 例如,一个典型的应用程序测试场景描述了星期一早上 1000 个用户同时登录到一个系统。该系统的响应时间是多少?系统会崩溃吗?要能够回答这些问题(以及更多的问题),一个完整的应用程序性能测试解决方案必须做到以下几点: 测试一个组合了各种软件应用程序和硬件平台的系统 确定服务器与任何给定应用程序的适应性 在开发出必要的客户端软件之前测试服务器 模拟多个客户端与单个服务器应用程序之间进行交互的环境 在几十、几百甚至几千个潜在用户的负载情况下测试应用程序 手动测试的局限性 传统的或手动的测试方法只提供不完全的负载测试解决方案。例如,您可以构建一个许多用户同时使用一个系统的环境,然后手动测试整个系统。每个用户使用一台计算机并向系统提交输入内容。然而,这种手动测试方法具有下列缺陷:  昂贵,需要大量的人员和设备  复杂,尤其是使多个测试人员协调和同步  需要高度严密的组织,尤其是要有针对性地录制和分析结果  手动测试的可重复性是有限的 1.2. LoadRunner解决方案 LoadRunner 着眼于解决手动性能测试的缺陷: LoadRunner 用虚拟用户(即 Vuser)代替真实用户来减少人员需求。这些Vuser 模拟真实用户的行为 - 操作实际的应用程序。 由于一台计算机上可以运行许多 Vuser,因此 LoadRunner 减少了测试需要的硬件。 LoadRunner Controller 使您可以从一个单一的控制点简单有效地控制所有的Vuser。 LoadRunner 联机监控应用程序的性能,使您可以在测试执行期间对您的系统进行优化。 测试期间, LoadRunner 将自动录制应用程序的性能。您可以从众多的图和报告选择查看性能数据。 LoadRunner 可检查所出现性能延迟的类型:网络或客户端延迟、CPU 性能延迟、I/O 延迟、数据库锁定延迟或数据库服务器上的其他延迟。LoadRunner 监控网络和服务器资源来帮助您提高性能。 因为 LoadRunner 测试是完全自动的,所以您可以根据需要轻松地反复执行这些测试。 场景 使用 LoadRunner 可以将您的应用程序性能测试需求划分为多个场景。场景定义每个测试会话中发生的事件。例如,一个场景可以定义并控制要模拟的用户数、用户执行的操作以及他们运行模拟时所用的计算机。 Vuser 在场景中, LoadRunner 用虚拟用户(即 Vuser)代替真实用户。运行场景时,Vuser 将模拟真实用户的操作来使用应用程序。一台工作站只能容纳一个真实用户,而多个 Vuser 可以同时运行在一台工作站上。实际上,一个场景可以包含几十、几百甚至几千个 Vuser。 Vuser脚本 Vuser 脚本中描述了场景运行期间 Vuser 执行的操作。运行场景时,每个 Vuser都执行一个 Vuser 脚本。Vuser 脚本包含用来度量和录制应用程序组件性能的函数。 事务 要度量服务器的性能,需要定义事务。事务代表您要度量的一个操作或一组操作。在 Vuser 脚本中,可以通过嵌入适当的 start 和 end 事务语句脚本段来定义事务。例如,您可以定义一个事务,用于度量服务器处理一个查看帐户余额的请求的时间,以及在 ATM 上显示该信息的时间。 集合点 您可以在 Vuser 脚本中插入集合点来模拟服务器上较重的用户负载。集合点指示Vuser 在测试执行期间等待多个 Vuser 到达某一特定点,以便他们可以并行执行某个任务。例如,要模拟银行服务器上的峰值负载,您可以插入一个集合点来指示 100 个 Vuser 同时向他们各自的帐户存入现金。 Controller 您可以使用 LoadRunner Controller 来管理和维护场景。使用 Controller,可以从一台工作站控制一个场景中的所有 Vuser。 负载生成器 执行场景时, LoadRunner Controller 会将该场景中的每个 Vuser 分配给一个负载生成器。负载生成器是执行 Vuser 脚本,从而使 Vuser 可以模拟真实用户操作的计算机。 性能分析 Vuser 脚本包含用来在负载测试会话期间度量和录制系统性能的函数。场景运行期间,您可以监控网络和服务器资源。场景运行后,您可以在报告和图中查看性能分析数据。 假设您要测试一个有许多 Internet 用户访问的在线银行 Web 服务器。该网站为客户提供全面的银行服务,例如转帐和检查帐户余额。要测试此服务器,需要创建一个场景。该场景定义负载测试期间对服务器执行的操作。 在为银行服务器生成负载并对其进行监控的场景运行期间,您要执行下列操作: 模拟服务器上受控的负载的情形 模拟服务器上大的负载的情形 度量负载下的服务器性能 检查所出现性能延迟的类型:网络或客户端延迟、CPU 性能延迟、I/O 延迟、数 据锁定延迟或服务器上的其他延迟 监控负载下的网络和服务器资源 1.3. LoadRunner Vuser技术 在每个 Windows 负载生成器上,您需要安装远程代理调度程序(进程)和LoadRunner 代理。远程代理调度程序(进程)可使 Controller 在负载生成器计算机上启动应用程序。 LoadRunner 代理可使 Controller 和负载生成器互相通信。运行场景时,Controller 将指示远程代理调度程序(进程)启动LoadRunner 代理。该代理根据从 Controller 接收到的指令来初始化、运行、暂停和停止 Vuser。同时,该代理还将各个 Vuser 的状态数据传回 Controller。 1.4. LoadRunner Vuser类型 LoadRunner 有多种类型的 Vuser。每种类型都用于处理当前系统体系结构的不同方面。您可以在场景中使用任意组合的 Vuser 类型,以便创建全面的应用程序测试。以下为可用的 Vuser 类型: 应用程序部署解决方案 适用于 Citrix 协议。 客户端/ 服务器 适用于 MS SQL、ODBC、Oracle Web Applications 11i、DB2 CLI、Sybase Ctlib、Sybase Dblib、Windows Sockets 和 DNS 协议。 自定义 适用于 C 模板、Visual Basic 模板、Java 模板、Javascript 和 VBScript 类型的脚本。 分布式组件 适用于 COM/DCOM、Corba-Java 和 Rmi-Java 协议。 电子商务 适用于 FTP、LDAP、Palm、Web (HTTP/HTML)、Web 服务和双 Web/Winsocket 协议。 Enterprise Java Bean 适用于 EJB 测试和 Rmi-Java 协议。 ERP/CRM 适用于 Baan、Oracle NCA、Peoplesoft 8、Peoplesoft-Tuxedo、SAP-Web、SAPGUI、SAPGUI/SAP-Web 双协议和 Siebel (Siebel-DB2 CLI、Siebel-MSSQL、Siebel-Web 和 Siebel-Oracle)协议。 传统 适用于终端仿真 (RTE)。 邮件服务 适用于 Internet Messaging (IMAP)、MS Exchange (MAPI)、POP3 和 SMTP。 中间件 适用于 Jacada 和 Tuxedo (6、7)协议。 流 适用于 MediaPlayer 和 RealPlayer 协议。 无线 适用于 i-Mode、VoiceXML 和 WAP 协议。 2. 环境准备 关于LoadRunner的使用在Oracle e-Business实施的过程中比较常用的是利用Vuser来导入初始化数据及统一修改,另外关于压力测试部分将会另外文档说明。本文档就关于Vuser数据导入部分作相应说明供参考。考虑到针对11i环境而言数据导入方法已经很成熟,本处主要针对R12环境的LoadRunner数据导入方法作相应说明 2.1 LoadRunner的安装 LoadRunner 8.1以上版本支持Oracle e-Business Suite R12。 2.2 R12环境准备 R12服务端环境的准备非常关键,R12版本的Forms 10G stack默认是Servlet mode启动,LoadRunner针对Forms 10G stack支持的模式是Socket mode,所以在启用LoadRunner之前需要APPS DBA变更服务端的Forms 10G的Forms Servlet mode到Forms Socket mode,具体步骤如下: ShutDown应用层所有服务 按以下格式执行从Forms Servlet mode到forms Socket mode转 变命令 格式:$FND_TOP/bin/txkrun.pl -script=ChangeFormsMode \ [-contextfile=<CONTEXT_FILE>] \ -mode=socket \ [-port=<Forms port number>] \ -runautoconfig=<No or Yes> \ -appspass=<APPS password> 例如:$FND_TOP/bin/txkrun.pl -script=ChangeFormsMode \ -contextfile=$INST_TOP/appl/admin/mycontext.xml \ -mode=socket \ -port=9095 \ -runautoconfig=No 详细的参数说明见下面表格描述。 Parameter Description -contextfile Full path to application tier context file, using the syntax: On UNIX: $INST_TOP/appl/admin/<CONTEXT_NAME>.xml -mode servlet - to enable Forms Servlet mode. This is the default value. socket - to enable Forms Socket mode -port Port number used to run Forms in socket mode. The default port number is 9095. A port number is not needed if servlet mode is used. -runautoconfig Specify whether AutoConfig should be run after changing the forms mode. Possible values are: No - Do not run AutoConfig after enabling Forms servlet/socket mode. This is the recommended value. Yes - Run AutoConfig after enabling Forms servlet/socket mode. -appspass Password for the applications user. Required only if -runautoconfig=Yes. 服务端执行AutoConfig 启动应用层服务 察看是否Forms Server正在运行 $INST_TOP/admin/scripts/adformsrvctl.sh status  访问方法: //<web_host>.<web_domain>:<web_port>/OA_HTML/frmservlet  在完成期初数据导入后,建议从forms Socket mode转变为Forms Servlet mode,方法如下: 格式:$FND_TOP/bin/txkrun.pl -script=ChangeFormsMode \ [-contextfile=<CONTEXT_FILE>] \ [-mode=servlet] \ -runautoconfig=<No or Yes> \ -appspass=<APPS password> 示例:$FND_TOP/bin/txkrun.pl -script=ChangeFormsMode \ -contextfile=$INST_TOP/appl/admin/mycontext.xml \ -mode=servlet \ -runautoconfig=No 完成后执行AutoConfig 访问模式//<web_host>.<web_domain>:<web_port>/forms/frmservlet 3. 数据导入 主要步骤: 1、录制脚本,脚本分为三大块,INIT部分,Action部分,End部分。 Init:初始化部分,主要操作连接服务器,进入相关责任功能, 启动后运行一次; Action:活动部分,这部分代码会循环运行,具体导入数据的操作; End:结束部分,Action循环指定次数后,运行该部分,可用来退出系统,该部分运行一次; 2、整理数据,设置参数:为需要导入的数据设置参数,Loadrunner将使用这些参数输入数据; 3、修改调整脚本:删除一些无用代码,提供导入效率;或对付一些更复杂的情况; 4、导入数据。 3.1 录制脚本 录制脚本的过程很类似EXCEL的录制宏,操作一遍即可,如果在操作过程中做了无用功,Loadrunner也会记录下来,会影响以后的导入效率。在了解loadrunner语句后可以修改脚本,但好还是在录制之前手工录入一边对录入界面的风格了解过后再准备相应的举措,正式录制的时候尽量一次操作成功,录制一个比较完美的脚本。 本文档分别针对凭证行数据及供应商数据(针对R12,需要选择不同协议)为例,步骤如下。 3.1.2 凭证数据录入(R12) 启动Loadrunner,点击 Create/Edit Scripts, 选择协议 ORACLE NCA,针对APPS Forms界面数据导入。 ORACLE WEB APPLICATION 11i,针对WEB风格界面数据导入。 注:在选择ORACLE WEB APPLICATION 11i协议的时候,如果录制内容过多,录制完毕过后停止的时候,脚本可能会没法产生,可以尝试变更一下License,可以选择10000 web client注册号尝试下。 设置Recording参数。 Application type:Internet Applications; Program to record:选择IE浏览器; URL Address:http://<web_host>.<web_domain>:<web_port>/OA_HTML/frmservlet Record Into Action:Vuser_init; 点击OK,Loadrunner启动IE进入系统并开始录制。 首先进入凭证录入界面,输入凭证头信息。 选择Record into Action: Action 鼠标点击凭证行信息块,选择新建(该动作一定要选择,以便循环使用),针对默认出来的凭证行号,可修改为不同于默认值的数字,便于事件录制(如果保持为默认值,可鼠标Click,后续通过脚本处理亦可,如果仅仅是删除默认值,再录入默认值,LoadRunner是不录制该事件的)。针对借项和贷项可分别输入值,不需要的可输入数字0,仅为了让LoadRunner记录事件而已,后续便于用参数处理。 每一行录制完毕选择保存,因为凭证行在借,贷不平时会有提示,选择是保存即可。 注:实际导入时,当导入后一行数据因为此时借贷是平的,弹出窗口事件没有触发和脚本中的录制触发会有冲突,在导入时后一行出现该类处理错误时,可不用做处理。 录制完毕过后选择Record into Action: vuser_end,关掉凭证录入界面,退出应用系统。然后选择停止录制,保存脚本。 3.1.2 供应商数据录入(R12) 启动Loadrunner,点击 Create/Edit Scripts, 选择协议 ORACLE WEB APPLICATION 11i,针对WEB风格界面数据导入。 注:在选择ORACLE WEB APPLICATION 11i协议的时候,如果录制内容过多,录制完毕过后停止的时候,脚本可能会没法产生,可以尝试变更一下License,可以选择10000 web client注册号尝试下。 设置Recording参数。 Application type:Internet Applications; Program to record:选择IE浏览器; URL Address:http://<web_host>.<web_domain>:<web_port> Record Into Action:Vuser_init; 点击OK,Loadrunner启动IE进入系统并开始录制。 由于在R12里面供应商界面风格与R11i差异很大,所以需要根据界面的风格定制录制方法。 首先选择进入供应商录入菜单,通过供应商编号进行查询(事前已手工录入的供应商信息),进入供应商维护的界面。 选择Record into Action: Action 选择左上角的“供应商”,选择“创建供应商”。这样定制Action循环的时候,每次都可以新建供应商咯。 录制完毕过后选择Record into Action: vuser_end,选择“注销”,然后点击停止按钮,系统保存脚本,录制结束。 3.1.3 要点关注 把握Action循环的要点,录制时的开始必须是有新建事件触发,这样循环时才可以每次循环均会从新建开始。 由于R12有大量界面均为WEB风格,此类录入和传统的Form风格录入在协议,URL地址选择上不同。 录制时遇到默认值时,选择不同于默认值的数值进行录入,便于录制该录入事件后续通过变量处理。 Vuser_end必须有注销或者退出系统的录制,以便于中断Session释放资源。 3.2 参数设置 录制的脚本记录的是手工输入的数据,所以需要建立参数和数据文件,用于大批数据导入; (1) 点击Param List,进入设置参数窗口; (2) 点击New添加参数,该参数命名需要和我们定制的参数文件标题一致,便于进行匹配。 整理数据。 Loadruner默认数据文件为 *.dat 文件,可以使用*.txt和*.csv文件,数据在EXCEL整理后另存为txt(保存类型选择为:文本文件(制表符分隔)(*.txt))或csv格式,数据尾部不能出现空行或空列。建议选择以txt文件以制表符(TAB)作为分隔处理。 数据行为标题行;数据列必须和设置的变量保持一致,每个变量需要有对应的数据(如果相应行步需要录入,可保持为空)。 选择参数对应的数据文件和列。 选择文件:通过File path 选择 ;选择后Loadrunner显示数据预览,并把行数据作为标题。 选择列:通过By name选择。 选择下行:除列,其他所有列均选择Same line AS First_Column_Name(列名称) 替换参数 1)找到输入的数据,点击右键,选择Use existing paramaters。 2)系统列出设置的所有参数,选择并替换,如果有参数没有列出,可通过select from parameter list进行选择。 3)参数会通过{}进行引用。具体参数引用的标示符通过系统菜单:Tools->General Options->Parameterization->Parameter Braces中的Left Brace/Right Brace进行定义的。 设置循环次数 1)点击Runtime Settings,进入设置循环次数; 2)输入Run 次数,就是数据文件的行数(除掉标题行)。 导入数据。 1)点击导入即可; 2)如果导入过程中出错,Loadruner会终止,更改数据后注意 修改循环次数,Loadrunner每次都会从行数据开始运行,所以还需要删除数据文件中已导入的部分。 3)通过协议层数据包处理的规则与用户通过界面进行处理的验证规则是一致的,这样也大可能避免了数据错误的可能性。 3.3 后续注意事项 循环次数:如果循环次数大于数据文件行数,Loadruner会从行开始继续导入,所以为了避免这种错误发生,可以把数据文件中后一行添加一行错误数据(比如不存在的供应商编码),确保Loadrunner运行到这里时能够终止,省的每次都要修改循环次数。 窗口变量:Loadruner是针对窗口进行操作的,有时候同样的窗口但是窗口名不同,Loadruner就会不认了。针对一些动态窗口变量可能有时会出现窗口或者对象无法显示现象,针对LoadRunner 9.0 For R12环境此类问题已解决,不需要再另外提供窗口变量处理。 操作设计:在录制的时候要考虑清楚,循环得部分应该怎么处理,划分清楚init和Action的界限,以及窗口的变化; 常见错误 常见错误1:无法打开数据文件,(1) Loadruner加载数据文件后,不能用其他程序打开(比如EXCEL,记事本等),否则会报错;2)另外一种情况比较奇怪,需要变更文件格式多尝试即可。比如另存为了csv,但是怎么导入都会报这次错误,再另存为txt就行了。同样,txt如果也总报这个错误,另存为csv就可以了。 常见错误2:没有找到窗口或对象,这个错误比较麻烦,是数据问题。主要还是要修改数据,如果比较频繁而且又没办法规范数据的话,需要修改脚本来处理了,另外亦可通过简化录制方法,仅进入窗口,然后退出,察看系统有无报错提示。 3.4 修改脚本 脚本基本上不需要做修改就可以使用,效率上也不会有太大的损失,如果对协议层操作没有信心,可有意放慢录制速度。从脚本上看主要由lr_think_time函数来体现。 Loadrunner整个脚本从ORACLE NCA协议及Oracle WEB APPLICATION 11I看都是由一个个函数构成的,从录制属性看是支持C语言进行结构化编程的,此类内容后续再另行追加,目前有很多内容通过LoadRunner来处理还是很吃力或者几无可能,如果支持结构语言编程的话,将会开辟一个崭新的空间。 函数对激活的对象进行操作,如果这些对象不存在或没有被激活,Loadrunner都会报错,在修改脚本的时候可以按照这个原则在系统中进行调试修改。 函数事例介绍 1)nca_connect_server("192.168.168.6", "9095", "module………"); 链接字符串,如果更换环境,可以直接修改该函数参数; 2)nca_edit_set 文本框编辑,可用变量替代用户及密码,其中密码可以为非加密编码格式,更换用户可修改该函数; 3)nca_lov_retrieve_items("Responsibilities", 1, 15); nca_lov_select_item("Responsibilities", "41_AP_Superuser"); 选择责任,更换责任注意同时修改这两个函数; 4)lr_think_time(14);系统模拟思考时间,可以全部删除,这将是删除多的语句。 通过上面的一些修改,可以简单提高一点效率;函数列表见文档尾页。 变量定义 通过变量定义可以直接替换脚本中的字符串,达到方便修改或共享。 变更环境以后,只需要修改变量值即可。一般此类定义可用在连接不同服务期环境中的若干连接字符串信息。常用的模式有两种,一种是在GLOBALS.H中定义,一种是直接参数文件中定义。 1)GLOBALS.H模式 Loadrunner里默认一个头文件GLOBALS.H,在该文件中设置。 设置格式:类型 *常量名 = 值; 例:一家公司有多个环境多用户,在GLOBALS_H中定义好多个链接字符串、用户名和密码,在导入数据时,直接通过注释GLOBALS_H来切换。在脚本中涉及字符串时用定义的变量名替代即可。 例:GLOBALS_H中设置: /****** 服务端连接信息********/ /*Domain*/ char *ServerURL="test.lanbeibeer.com"; /****** 服务端连接信息********/ 脚本中修改如下: /********脚本中连接字符串和用户登录修改如下*************/ web_add_cookie("oracle.uix=0^^GMT+8:00^p; DOMAIN={ServerURL}"); /********************************************************/ 2)参数定义模式 可在文本文件中定义好,然后直接参数调用该文本文件即可。 例如参数文件格式如下所示: ServerURL ApplicationLoginURL test.lanbeibeer.com http://test.lanbeibeer.com:8001 用户只需要在参数定义中选择导入该参数文件即可。 使用C函数 Loadruner可以使用C函数,语法也和C一样,以解决上面导入供应商信息常见错误为例。 注意:Loadrunner对字符的大小写是敏感的; (1) 用到的函数说明: char strcat ( char *to, const char *from ) 连接字符串; int strcmp ( const char *string1, const char *string2 ) 比较字符串; char strcpy ( char *dest, const char *source ) 复制字符串; int nca_edit_get_text(LPCSTR edit, char *out_string) 取得编辑栏中字符; int nca_get_top_window ( char *winName ) 取windows窗口名; (2) 问题产生原因: 因为有的供应商地址信息不完整,所以在保存的时候,ORACLE会提示“地址信息可能不完整,是否继续的信息”的信息窗口。如果地址信息完整的供应商,则不会出现。 (3) 解决思路:ORACLE判断根据是地址栏的行和城市这两个栏位的属性,如果这两个信息只要有一个为空,就会出现警告窗口。 设置变量,取得地址栏行字符和城市栏字符,如果都为空,则在保存后激活警示窗口,点击确认按钮,再激活地址层窗口;否则直接激活地址层窗口。 (4) 代码如下: /************添加三个变量***********/ char Temp[100]; char City[10]; int Flag; /***********添加如下代码*************/ nca_edit_get_text ("SITE_ADDRESS_LINE1_0",Temp); /* 取地址栏值*/ nca_edit_get_text ("SITE_CITY_0",City); /*取城市栏值*/ Flag = strcmp(City,"")*strcmp(Temp,""); /*比较字符串*/ nca_obj_type("SITE_AMOUNT_INCLUDES_TAX_FLAG_0", 'S', MODIF_CONTROL); /*保存*/ if (Flag = = 0) { nca_set_window("Note"); /* 激活警示窗口*/ nca_popup_message_press("Note", "OK"); /*点击OK关闭窗口*/ nca_set_window("{Windows}"); /*激活Site窗口*/ } nca_win_close("Supplier Sites"); /*关闭地址层窗口*/ (5) 再一个例子,处理导入数据时存在不同币种的情况 /***以下输入币种信息,如果币种列是CNY,我们这段代码就不要再运行***/ nca_edit_get_text("PO_HEADERS_COMMENTS_0",TempString); ComResult = strcmp(TempString,"CNY"); if (ComResult != 0) { nca_button_press("PO_CONTROL_CURRENCY_0"); strcpy(TempString, CurrencyFormName); strcat(TempString, PONumber); nca_set_window(TempString);/*币种输入窗口名,已在后缀加上PO订单号*/ nca_edit_set("PO_CURRENCY_CURRENCY_CODE_0","{CURRENCY_CODE}"); /*币种*/ nca_edit_set("PO_CURRENCY_DISP_RATE_TYPE_0", "{RATE_TYPE}");/*类型*/ nca_edit_set("PO_CURRENCY_RATE_DATE_0", "{RATE_DATE}"); /*汇率日期*/ nca_edit_set("PO_CURRENCY_DISP_RATE_0", "{rate}"); /*汇率*/ nca_button_press("PO_CURRENCY_DONE_BUTTON_0"); /*币种输入窗口确定*/ strcpy(TempString, POFormName); strcat(TempString, PONumber); nca_set_window(TempString); /*订单输入主窗口,窗口名已加上订单号*/ } 注:此处只是提供参考,具体通过C来进行结构化控制的方式后续再另外追加内容。 调试 调试相对比较麻烦,可以保存脚本过后首先进行编译处理,主要还是从事Oracle e-Business Suite产品实施的顾问对脚本不熟悉的原因造成。 1.可以断点和分步运行,可以通过编译来检查脚本是否有错误; 2.不知道哪里查看变量的值,可以通过sprintf()等函数输出到文件; 3.可以插入CVuser消息函数,可以插入其他C函数辅助调试,没有测试; 附录 NCA函数列表 函数 说明 按钮对象函数 nca_button_double_press 在按钮上双击 nca_button_press 激活按钮 nca_button_set 设置指定按钮的状态 组合框对象函数 nca_combo_select_item 在组合框中选择项 nca_combo_set_item 在组合框中设置新项 连接函数 nca_connect_server 连接到 Oracle NCA 服务器 nca_logon_connect 登录到 Oracle NCA 数据库 nca_logon_cancel 与 Oracle NCA 数据库断 编辑对象函数 nca_edit_box_press 单击编辑框消息 nca_edit_click 单击编辑对象 nca_edit_get_text 返回编辑对象中的文本 nca_edit_press 激活编辑字段中的浏览按钮 nca_edit_set 替换编辑对象的全部内容 Flex对象函数 nca_flex_click_cell 单击 Flexfield 窗口中的表单元格 nca_flex_get_cell_data 获取 Flexfield 单元格中的数据 nca_flex_get_column_name 获取 Flexfield 窗口中的列名 nca_flex_press_clear 单击 Flexfield 窗口中的“清除” nca_flex_press_find 单击 Flexfield 窗口中的“查找” nca_flex_press_help 单击 Flexfield 窗口中的“帮助” nca_flex_press_lov 单击 Flexfield 窗口中的“值列表”按钮 nca_flex_press_ok 单击 Flexfield 窗口中的“确定” nca_flex_set_cell_data 在 Flexfield 窗口中插入数据 nca_flex_set_cell_data_press_ok 输入数据之后,单击 Flexfield 窗口中的“确定” 列出项函数 nca_list_activate_item 激活列表中的项( 双击) nca_list_select_index_item 按照索引选择列表项 nca_list_select_item 按照名称选择列表项 nca_lov_auto_select 指定项的个字母 nca_lov_find_value 单击“值列表”窗口中的“查找” nca_lov_get_item_name 按照项的索引编号检索值列表中的项的名称 nca_lov_retrieve_items 检索值列表 nca_lov_select_index_item 按照索引编号从值列表中选择项 nca_lov_select_item 从值列表中选择项 nca_lov_select_random_item 从值列表中选择随机项 JAVA对象函数 nca_java_action 在 Java 对象上执行事件 nca_java_get_value 检索 Java 对象的值 nca_java_set_reply_property 设置 Java 对象的 reply 属性 菜单对象函数 nca_menu_select_item 从菜单中选择项 消息函数 nca_popup_message_press 单击弹出窗口中的按钮 nca_message_box_press 单击消息窗口中的按钮 对象函数 nca_obj_get_info 返回对象属性的值 nca_obj_mouse_click 单击对象 nca_obj_mouse_dbl_click 双击对象 nca_obj_status 返回指定对象的状态 nca_obj_type 在编辑框中键入特殊字符 响应对象函数 nca_response_press_lov 单击“响应”框中的下拉箭头 nca_response_press_ok 单击“响应”框中的“ 确定” nca_response_set_cell_data 向“响应”框中的单元格中插入数 nca_response_set_data 向“响应”框中插入数据 滚动对象函数 nca_scroll_drag_from_min 将滚动条从小化位置 (0) 拖到指定距离处 nca_scroll_line 滚动指定的行数 nca_scroll_page 滚动指定的页数 会话函数 nca_console_get_text 检控制台消息 nca_set_iteration_offset 设置对象 ID 的偏移值 nca_set_server_response_time 设置服务器响应时间 nca_set_exception 指定处理异常的方式 nca_set_think_time 设置思考时间范围 树对象函数 nca_tree_activate_item 激活 NCA 树中的项 nca_tree_collapse_item 折叠树项 nca_tree_expand_item 展开树项 nca_tree_select_item 选择 NCA 树中的项 窗口对象函数 nca_win_get_info 返回窗口属性的值 nca_win_close 关闭窗口 nca_set_window 指明当前窗口的名称 可以使用CVuser函数(如lr_output_message和lr_rendezvous) 可以使用ANSI C函数 待补充内容 1.后续内容是引用之前系统自动产生的数值进行处理。 2.压力测试内容。 3.很多不规则输入很难固定循环次数导入,后续考虑用脚本编程来辅助测试。 4.Oracle WEB Applications 11i协议函数说明。 参考文档 1.Loadruner官方帮助文档。 2.Oracle Metalink官方文档。 3.网络相关论坛。

展开
1
vvyjp 栈主 2020-02-28 13:09:25

1.Hyperion Planning Smart View应用 1.1安装Smart View插件 (1)下载Smart View安装文件 登录Hyperion系统,,进入应用程序“CFME”选择工具>安装>Smart View a, 登陆地址:http://19.229.1.71:28080/workspace/index.jsp b,用户名:uat 密码:uat 点击进入 CFME 应用程序。 点击 Smart View 进行下载。 (2)安装Smart View 找到下载路径,双击Smart View.exe,点击运行. 如图: 1.2连接Smart View (1)配置office 安装完Smart View 后需要配置Office联接,就可查看编辑相关的表单数据了。 打开Excel 点击Smart View菜单下的打开Smart View面板将会在Excel右边弹出SmartView主页. 选择专用连接 (2)连接Smart View A、创建新连接 B、选择Smart View HTTP提供程序: 位置处输入:http://19.229.1.71:28080/HyperionPlanning/SmartView C、点击下一步后,选择CFME应用程序 D、输入用户名、密码,然后点击连接 连接 下一步 完成 登陆 1.3设置Smart view 1、设置smartview,点击Smart View选择“选项”,选择“数据选项”,如下图把 #Nodate/Missing 清空,作用是当数据表格无数据时不显示#Missing,而是显示空白。 2、设置单元格的样式颜色,如锁定显示什么颜色,支持详细信息显示什么颜色在这里设定。 1.4 Smart View界面介绍 1、smartview界面介绍 2、Smart view界面介绍 在SmartView中看到的功能菜单如下所示,几个菜单的具体功能如下所示: 刷新数据表单:刷新表单显示数据内容; 单元格支持详细信息:添加单元格明细信息; 锁定单元格:锁定单元格数据无法更改; 提交数据:填报完成数据后,点击“提交数据”按钮,将数据保存至服务器中。 1.5 Smart View基本操作 1、在SmartView中可看到与Web界面,相同树结构目录列表,从“计划预算管理”中双击任务进入预算模块列表, 2、对选定的单元格批量调整,调整数据的具体步骤如下: a、选择需要调整的数据范围 b、单击“调整”按钮 c、选择调整类型、输入调整数值 3、单元格注释,选中单元格,点击单元格注释,填写注释,点击保存。 4. 支持详细信息,选中需要填写详细信息的单元格,填写详细信息,点击提交,如下图所示: 5.切换表单中的纬度成员 A.在下拉框中选择不同成员 b.单击“刷新”,更新表单内容 6.smartview数据填报,选择相应的情景,版本,币种后,点击“刷新”按钮,填写表单数据,点击提交数据按钮。

展开
1
vvyjp 栈主 2020-02-28 13:08:09

Essbase Studio开发操作手册 目录 1 综述 3 2 Essbase studio操作手册 4 3 登录Essbase studio 4 4 Essbase Studio工作平台 5 4.1 数据源管理 5 4.2 微型架构管理 7 4.2.1 新建微型架构 8 4.2.2 微型架构的编辑 11 4.3 元数据元素管理 13 4.3.1 添加到元数据导航器 15 4.3.2 创建层次 19 4.3.3 创建度量层次 21 4.3.4 创建多维数据集架构 22 4.4 Essbase 模型属性 25 4.4.1 Essbase 分析模型属性 25 4.4.2 Essbase 维度属性 26 4.4.3 Essbase 模型维度别名设置 28 4.5 部署多维数据集到essbase Server 29 5 查看essbase 模型 32 6 添加层代 33 7 Essbase Cube数据加载 34 7.1 方法一 34 7.2 方法二 34 1综述 此文档主要描述使用Essbase studio 进行Essbase server 模型开发的操作说明。但是,此文档仅仅为入门级别的操作使用。 2Essbase studio操作手册 启动Hyperion Foundation OpenLDAP、 Hyperion Foundation Shared Services - Web Applicationhe 和Hyperion Essbase Services 11.1.1 - hypservice_1。如果Hyperion Foundation OpenLDAP无法启动,处理方法如下: 将D:\Hyperion\products\Foundation\openLDAP\var\openldap-data下的__db.001,__db.002...,__db.005重命名为__db.001.bak,__db.002.bak...,__db.005.bak,重新启动应用。 启动essbase studio 服务。 3登录Essbase studio 分别填写服务器、用户和密码,默认的超级用户为admin,密码password。 4Essbase Studio工作平台 Essbase Studio 工作画面如上图。 4.1数据源管理 点击数据源标签,右键 Data Sources(右上角) 新建 数据源: 在连接向导中,输入需要连接的事实表,维度表所在的关系型数据库相关信息。点“下一步”,选择事实表和维度表,如下图: 直接点“完成”按钮,跳过“微型架构”和“元数据元素”,这两部分内容将在后续过程创建。 在数据源实体表元数据导入到EssBase Studio知识库之后,无法避免物理结构的变更引起的模型调整工作,但在Essbase Studio中,目前还没有找到删除实体表的方法,变通处理方法是直接从Essbase Studio知识库中删除实体表记录,先删除cp_sourcecomponent中的记录,删除语句delete from cp_sourcecomponent where source_oid=xxx;再删除cp_source中的记录,删除语句delete from cp_source where id_oid=xxx;。 4.2微型架构管理 微型架构是位于一个或多个数据库中的表或文本文件的图形模型。可在创建数据源连接的过程中创建微型架构,也可在这之后通过已连接的数据源创建微型架构。 对于大多数数据源类型,微型架构的显示方式类似于实体关系图表中的逻辑模型,其中将源数据库中表和类别值之间的联接显示为维。可以选择要包含于微型架构中的表,从而使这些显示的表成为一个或多个数据源中数据的子集。 4.2.1新建微型架构 点击微型架构标签项,右键 Minischemas 新建 微型架构。 输入微型架构名称,点击下一步。添加/删除表,也可点击完成,到微型架构编辑界面上,添加/删除表。 首先选择数据源连接,然后选择需要添加到架构中的表(事实表、维度表)。 点击完成,结果如下图: 4.2.2微型架构的编辑 进入了微型架构的编辑画面。 在编辑界面中,建立事实表、维度表之间的关系,可有多种方式实现。 方法一: 选中事实表,右键, 点击 添加链接,建立事实表和维度表之间的关系。 下拉列表中选择时间维度表D_DATE,然后选择其表中的列ACCTDT。点击确定。 同样的过程,建立其他的维度和事实表间的关系。 方法二: 以事实表内维度字段为基点,托拉到维度表上的维度字段,即可建立事实表和维度表间的关系。 如果是父子维度,父子成员的维度字段之间也必须建立关系,如机构维度。 为了便于区分事实表和维度表,可将事实表显示为红色,维度表显示为绿色,编辑好的微型架构终效果如下图: 4.3元数据元素管理 元数据元素是在创建数据源连接时从数据源中的物理对象派生的逻辑对象。元数据元素也可从已存储并分类以供 Essbase Studio 用的其它元数据创建。有几种类型的元数据元素用于特定的目的。这些元数据元素是: 维元素 — 物理源列的逻辑表示。 o维元素可在数据源连接处理的过程中或之后的任何时间创建。 o维元素可以基于文本、数字或日期。 o维元素可经过编辑以指定绑定(其所依据的物理列除外)。 o维元素可经过编辑以添加筛选器。 o可对维元素添加排序顺序。 派生的文本度量 — 一种文本度量,其值由表示为范围的预定义规则来控制。 日期元素 — Essbase Studio 从现有的日期型元数据元素派生的粒度日期型元数据元素。 创建的元数据元素可用于构建其他元数据元素,如层次、度量层次和日历层次。在层次结构中描述层次。 文件夹是另一种类型的元数据元素。文件夹有助于组织元数据导航器中的项。 首先创建管理元数据元素的目录,如下图: 4.3.1添加到元数据导航器 以机构维度为例,在微型架构编辑界面中,选中机构维度表D_BRCH,右击,选择 添加到元数据导航器。 选择存放目录,点 “确定”完成添加。 如图所示,左侧元数据导航器会列出机构维度表的字段。左侧元数据导航器内的元数据元素都可以根据需要做修改。 双击brchno字段,弹出上图的属性编辑对话框。可以对brchno字段的属性进行编辑。 为了维度成员显示的需要,可对维度标题和键值做修改,由于机构维是父子维,而父子关联是靠字段标题关联,所以针对机构维主键字段修改成下图所示效果: 修改父机构字段: 同样的操作,添加模型中其他维度表、事实表到元数据元素管理器,并根据需要修改元数据元素,如下图: 特别说明: Essbase 分析模型中有父子维度时,而父子关联是靠字段标题关联,当Essbase模型中不同维度成员的键值有重复值时(如存在机构1001,科目1001),部署之后构建的模型大纲中维度父子关系会出现紊乱,为避免这样的错误发生,则在标题前追加特殊字符,如上图所示。追加的特殊字符约定如下: 机构—B; 币种—C; 频度—F; 内部科目—I; 核心科目—I; 损益指标—I; 指标—I; 期限—T; 业务代码—D; 行业类别—S; 尽量保证同一模型中的所有维度成员的性! 4.3.2 创建层次 层次确定合并和导航数据的方式。在 Essbase Studio 中,层次用于对 Essbase 多维数据集中的维建模。在创建了层次后,便可将其从逻辑树直接拖放到多维数据集架构向导中。此外,可在任意数目的多维数据集架构中重新使用层次。通过创建多个层次,可自定义每个用户组的多维数据集架构。Essbase Studio 支持标准、度量和日历层次。 如上图: 机构维新建层次。 点击添加 添加同级。 弹出选择实体对话框: 选择”brchup”字段,确定。 重复步骤,添加 添加子代 ,点击brchno,确定。 4.3.3创建度量层次 使用度量层次,通过表示数据值的维元素来创建层次。如果数据包含一个以上度量(数据值),则定义一个度量层次并将所有度量添加到该层次。 新建 度量层次 (度量层次,可以理解为anlysis services 2005里面的measures),以事实表的分析数据为基础的层次。 4.3.4创建多维数据集架构 多维数据集架构是 Essbase 多维数据集的基础结构。在多维数据集架构中,用户选择层次、度量和度量层次,并为层次中的个别成员指示任意数据加载覆盖。还可以选择通过多维数据集架构创建 Essbase 模型。 如图:选择上面创建的层次、度量层次到相应的位置。 下一步: 复选框,选中创建essbase模型(可修改模型名称),点击完成。 选择到元数据导航器,可以看到刚刚创建多维数据集,以及分析模型。 4.4Essbase 模型属性 右击分析模型,选择 Essbase 属性,对essbase模型的属性进行设置。 4.4.1Essbase 分析模型属性 存储模式 Essbase支持两中存储模式,聚合存储Aggregate Storage Option (ASO)和块存储Block Storage Option (BSO),ASO通过采用一个新的数据存储体系架构、集中运算和简化建模等功能,Essbase将大大提高分析稀疏的大规模多维数据集的能力。并且,ASO的计算性能和数据负载性能超乎想像,远远高于目前使用的BSO。此外,用户不需要对ASO进行性能调优就可以享受到它所带来的出色性能。所以公司开发的所有Essbase 分析模型都将是ASO存储模式。 重复成员支持 在支持重复成员名称的 Essbase 大纲中,允许不同维中和不同父代级别下的重复。这大大增强降低了创建其中成员(如客户维和供应商维中的城市)可能具有重复名称的分析应用程序的难度。 Unicode字符集支持 选择非 Unicode模式 4.4.2Essbase 维度属性 维类型 “标准” — 将维标记为不属于任何特别类型。(默认维类型) “帐户” — 将维标记为帐户维。该维类型包含要度量的项,如利润或库存。 注: 在一些模型中,帐户维在创建模型时即确定,且不可更改。在该情况下,帐户选项被禁用。 “时间” — 将维标记为时间维。该维类型描述用户收集和更新数据的频率。标记为时间的维启用了几个帐户维函数,如个剩余时间和后一个剩余时间。 两遍计算 默认情况下,Essbase 大纲是从下到上进行计算的:首先计算子代的值,再计算父代的值。但有时,子代的值取决于父代的值或另一个成员的值。 要获得相关维和成员的正确值,首先计算大纲,再计算取决于其他维和成员的计算所得值的维和成员。在第二次通过 Essbase 大纲时计算的维和成员称为两遍计算。 默认无两遍计算。 注: 虽然可对任何成员提供两遍计算这一属性,但该属性仅对帐户维成员、动态计算成员以及动态计算和存储成员生效。如果将两遍计算分配给其他成员,Essbase 将忽略。 维存储 “密集” — 对可用数据位置的填充百分比较高的维使用密集存储。例如,任意营业时间内在所有机构都可以办理所有科目的业务,因此日期、机构、科目、频度是密集维。 “稀疏” — 对可用数据位置的填充百分比较低的维使用稀疏存储。例如,不是所有机构都可以经营所有币种的业务,币种是稀疏维。 “现有的” — 使用当前设置的维的存储方法。 数据存储 “存储数据” — 存储数据值和成员。这是默认设置。 “动态计算和存储” — 在用户作出请求时计算数据值,接着存储该数据值。 “动态计算” — 在用户作出请求时计算数据值,接着丢弃该数据值。 注: 当配合聚合存储大纲使用“动态计算和存储”设置或“动态计算”设置时,可能会在大纲验证和数据加载过程中生成警告。这些警告通常是状态消息,且除非用户的多维数据集部署不成功,否则可能被忽略。 “从不共享” — 不允许对成员进行隐式共享。 “仅标签” — 创建用于导航的成员。仅标签成员不包含数据值。  “现有的” — 使用现有的数据存储方法。 解析顺序 解析序号确定在维中计算成员的顺序。可在 1 和 127 之间选择一个数。首先计算解析序号高的成员(例如,先计算解析序号为 20 的公式,再计算解析序号为 5 的公式)。 解析序号相同的成员将按各自的维在数据库大纲中出现的顺序来计算。在计算完所有带有解析序号的成员之后才计算没有解析序号的成员。 注: 默认值是 0。解析顺序为 0 的成员将继承其维的解析顺序。 无特殊需要,可采用默认解析顺序。 在“维解析顺序”文本框中指定一个数,来表示在维中计算成员的默认顺序。可在 1 和 127 之间指定一个解析顺序。默认值是 0。在“成员解析顺序”文本框中,指定维成员的解析顺序。 维成员合并 成员合并运算符确定了子代累计到其父代的方式。默认情况下,赋予新成员加法 (+) 运算符,表示 Essbase 将这些成员相加。例如,Essbase 将 January、February 和 March 数字相加并将结果存储在其父代 Qtr1 中。 重要:当使用聚合存储大纲时,应用以下合并属性准则: 对于标记为账户的维,可使用所有合并运算符。 对于其他维,只能用 (+) 合并运算符。 另外,如果对维中的成员使用“仅标签”属性,则低级别的“仅标签”成员的直接子代可具有任何合并运算符;但低级别的“仅标签”成员的间接子代必须用 (+) 合并属性进行标记。 注意: 如果使用聚合存储大纲,则在从“外部源”合并选项中选择数据库列时应慎重。在执行加载时,Essbase Studio 服务器可能不识别存储在数据库列中的合并运算符。服务器在验证期间不会通知用户可能发生的错误。 对于帐户维的成员,当通过数值表创建帐户维时,不显示“从数据库列”下拉列表框。  “+ [加法]” — 将成员与对其他成员执行的计算结果相加。如果没有找到其他有效值,则此运算符为默认运算符。 “- [减法]” — 将成员乘 -1,然后将结果与对其他成员执行的计算之和相加。 “* [乘法]” — 将成员与对其他成员执行的计算结果相乘。 “/ [除法]” — 将成员与对其他成员执行的先前计算结果相除。 “% [百分比]” — 将成员与对其他成员执行的先前计算之和相除,再将结果乘以 100,得到一个百分比值。 “~ [忽略]” — 在对其父代的合并中不使用该成员。 “^ [从不]” — 从不将成员用于任何合并。 “外部源” — 在下拉列表中,从存储合并运算符的数据库中选择一列。将数据源选定列的合并值 (+, -, *, /, %, ~) 用于合并。 在Microsoft的Analysis Services中,维度成员有成员.memberdata属性,但在Essbase则没有,如果采用聚合存储所有父代成员的值可由子代累加计算出,但科目维度非常特殊,有科目余额方向属性,子代的余额方向可能和父代不一致,所以父代的值由子代累加计算是不正确的。目前这个问题还没有解决办法! 4.4.3Essbase 模型维度别名设置 指定维度的别名集合(别名是维或成员的备用、用户友好名称。例如,SKU 产品代码 100 所标识的成员可能获得更直观的别名 "Kool Cola"。接着可显示这一易于识别的别名而不是显示成员名称。因此,别名的使用改善了 Essbase 大纲和报表的可读性。)。 附:创建别名集: 欢迎别名集管理器 4.5部署多维数据集到essbase Server 右击分析模型,选择 多维数据集部署向导。 点击新连接 创建Essbase数据库连接(连接到已安装的Essbase Server) 名称:按照命名规则进行命名 服务器: essbase server服务器(eg:10.100.100.69) 端口: 一般情况下默认(如果安装的时候有更改端口,这里修改成安装时候的端口) 用户: essbase默认管理员admin (可以新建用户) 密码: 默认password 如图,选择你要部署的应用程序,及应用数据库(采用非Unicode方式,Unicode模式有问题,名称不能太长,建议用事实表代码)。 加载任务类型: 1、构建大纲 只发布模型 2、加载数据 只加载数据 3、构建大纲并加载数据 发布模型并发布数据 点击完成。Essbase模型开始部署。 确定,这样一个多维分析集合就建立完成了。 5查看essbase 模型 点击 Start Administration Services Console 登录eas服务:admin/password 这样就可以查看刚才所部署的多维iit_glis。 6添加层代 定义维度成员的层次关系,方便维度数据的展示。 7Essbase Cube数据加载 7.1方法一 MAXL脚本处理。 7.2方法二

展开
1
vvyjp 栈主 2020-02-28 12:58:14

ODI迁移手册 一、修改ODI的工作资料库信息 1.ODI工作资料库的JDBC连接,改为生产环境上的JDBC连接。 二、导出ODI的工作资料库和主资料库 1.导出过程 A.导出主资料库 exp odi_master/odi_master@99 file=d:\odi_master.dmp B.导出工作资料库 exp odi_work/odi_work@99 file=d:\odi_work.dmp 2.导入过程 A.导入主资料库 imp odi_master/odi_master@kevin fromuser=odi_master touser=odi_master file=d:\odi_master.dmp B.导入工作资料库 imp odi_work/odi_work@kevin fromuser=odi_work touser=odi_work file=d:\odi_ work.dmp 三、修改ODI安全存储库连接 1.修改ODI安全存储连接的JDBC的URL。 2.修改工作资料库连接的JDBC的URL 四、登录Topology Manager和Designer。 1.修改Topology Manager里的物理体系结构里的数据库连接为生产库上的连接信息。 2.配置方案计划的运行时间等具体信息。

展开
0
vvyjp 栈主 2020-02-28 12:57:57

ODI布局和安全机制 1布局: 1.1设计器(Designer):在这个工具中,用户能够为数据转换和数据完整性定义声明规则。数据库和应用系统的元数据能够被导入或定义。设计器使用元数据和规则为实际的生产环境生成方案(scenarios)。所有项目的开发都是通过这个界面完成的,并且它还是在设计阶段开发人员和元数据管理员的主要用户工具。 1.2操作器(Operator):在这个工具中,用户在生产环境管理和监控Oracle Data Integrator的任务。它是为了生产环境的操作者设计的,能够显示执行日志,包括错误数、被处理的行数、执行的统计信息和被执行的实际代码等等。在设计阶段,开发人员也能够使用操作器进行调试。这是运行阶段的主要用户工具。 1.3拓扑管理器(Topology Manager):在这个工具中,用户定义基础架构的物理和逻辑体系结构。通过这个工具,服务器、方案(schema)和代理被注册在Oracle Data Integrator主存储库中。它主要被项目或系统的管理员使用。 1.4安全管理器(Security Manager):在这个工具中,管理员能够管理用户的账户和权限。它给Oracle Data Integrator对象和功能分配属性信息和用户权限。它主要被安全管理员使用。 架构示例: 图表 1 实际操作架构示例: 图表 2 上图中,ODI服务器包含ODI Repository & ODI Agent 2安全机制 2.1Security Manager中的安全机制 2.1.1Security Manager的用户标签下可以创建用户,每个用户只能看见自己创建的工作库内的信息,设置用户过期时间和用户权限等。如下图表3 2.1.2Security Manager的主机标签下可以创建连接主机。对每一个连接到ODI Repository库的主机进行权限控制。如ODI GUI的使用权限。如下图表4 图表 3 图表 4 2.2Designer的安全机制 由于ODI的部署往往会通过网络通信来对源数据和目标数据的操作,以及指令的执行。在复杂的网络环境里难免会暴露数据库的一些信息。ODI在Designer也引入了加密机制。 KM的加密。 右键选择一个知识模块,点击加密。 选择“获得新的加密密钥”,保存。该KM已经加密。 方案的加密 由于方案是通过网络部署到ODI Agent上的,所以也存在危险。 步骤和KM的加密一样。

展开
1
vvyjp 栈主 2020-02-28 12:57:34

ODI的备份和恢复机制 1资料库和工作库的备份和恢复 1.1数据库方式备份和恢复 通过数据库工具导出ODI的资料库和工作库。 exp odimaster/odimaster@odi file=d:/odimaster.dmp log=d:/odimaster.log odimaster/odimaster用户名密码 odi连接串 d:/odimaster.dmp备份文件的位置和文件名 d:/odimaster.log备份的日志文件 这样我们得到资料库和工作库的数据库备份文件dmp文件。 恢复可以通过数据库工具导入dmp文件即可 imp odimaster/odimaster@odi fromuser=odimaster touser=odimaster file=d:/odimaster.dmp log=d/odimaster_imp.log odimaster/odimaster 数据库的用户名密码 odi 连接串 fromuser=odimaster dmp导出的用户 touser=odimaster 导入的用户 file=d:/odimaster.dmp 导入文件的位置和文件名 log=d/odimaster_imp.log 导入文件的日志文件 1.2ODI对象的备份和恢复 A.创建备份版本 选择要备份的对象,例如一个包。点击右键->版本->创建->确定即可 B.恢复版本 选择要恢复的对象,如一个包。右键点击->版本->还原->选择一个版本点击确定即可。

展开
0
vvyjp 栈主 2020-02-28 12:56:50

ODI里同步更新CDC的设置 1触发器方式实时单项复制 沿用之前的配置,准备好源和目标数据模型。 1.1针对数据源模型配置日记记录(选择合适的JKM) 在源模型库的定义框,选择“日记记录”标签,进行如下配置: 日志记录模式 一致性适用于多表之间有关系(如主外键等),对多表进行CDC。简单适用于单表或者虽然是多表,但是表之间的CDC没有顺序问题。此处我们选择简单 JKM 选择JKM Oracle Simple(触发器方式) 1.2将需要进行CDC的数据存储添加到CDC 选中需要添加到CDC的数据存储如kevina添加到CDC。 数据存储添加到CDC成功后,“刷新”Designer,可以发现相应的数据存储前面加了一个黄色的钟。 1.3添加订阅 选中数据存储如KEVINA,右键,已更改数据捕获->订户->订阅。 输入订户名称如kevin(在后面接口中条件设置上要使用),添加,确定。 在右面的订户列表添加里输入kevin点击后面的红色箭头,选中kevin点击确定。 本地无代理执行。 1.4启动日志 数据存储如KEVINA,右键,“已更改数据捕获”->“启动日记”, 启动日记成功后,刷新Designer,数据存储前面的钟变为绿色。 1.5创建接口 新建一个接口如:KEVINB_CDC,从模型拖拽添加了CDC的表,接口其他配置参考ODI_2_使用步骤。 注意选择:“仅已进行日志记录的数据”。 选择小“漏斗”,编辑。 JRN_SUBSCRIBER = 'kevin /* AND JRN_DATE < sysdate */(kevin订户名) 流和控制里面的KM都是默认就可。 1.6创建包 创建的包中,包含三个步骤:OdiWaitForLogData(在工具箱的已更改数据捕获中),实现单项复制的接口,OdiSleep(在工具箱的事件检测中)。如下图: 要注意:需要将 OdiWaitForLogData 设置成“步”。 选中OdiWaitForLogData配置。 OdiWaitForLogData将轮询数据源,发现变化数据。如果发现了变化数据则会进入下一步。 要配置的属性主要包括: 逻辑架构:数据源表所对应的逻辑架构 轮询间隔:每隔多长时间轮询一次。例子中间隔是5000毫秒。 订户:CDC的订户名称。 表名称:数据源表。这个表应该启动了CDC日志 “单元行计数”和“全局行计数”:可以定义必须要发生多少行变化才进行同步。 OdiSleep配置 OdiSleep使得执行完接口之后可以等待一段时间再开始轮询。主要配置的参数有: 等待延迟:等待的毫秒数。例如5000毫秒,或者180000表示30分钟。 无需配置计划,直接在代理上执行包就可以实现实时单项复制数据了。

展开
0
vvyjp 栈主 2020-02-28 12:56:30

ODI的初步使用 目录 主资料库的创建 1 启动ODI 2 创建工作存储库 4 创建数据架构 6 创建执行代理 9 创建项目和模型 11 创建接口 14 创建包 18 创建方案和计划 20 主资料库的创建 1.从开始菜单找到ODI下的master Repository Creation,点击开始ODI主工作库的创建。(主资料库主要存储一些规则,如同JAVA开发必要的JDK一样) 图表 1 2.创建用来存储主资料库和工作资料库的2个用户。我们这里选用oracle数据库。 Grant resource,connect,dba to username identified by userpasswrod; 3.启动master Repository Creation后,出现创建主资料库的界面。我们可以发现,ODI支持创建主资料库数据库主要有:oracle、mssql、db2等主流数据库。这里我们选用ORACLE。连接配置信息如图。确定,开始生成。 图表 2 图表 3 这里的用户名/密码是之前创建的主资料库的用户信息。 图表 4 图表 5 确定退出。 启动ODI 1.从开始菜单启动Topology Manager(拓扑结构管理) 图表 6 图表 7 2.点击新建一个连接信息。如图所示:登录名可以随便设置,用户名为:SUPERVISOR 密码为:SUNOPSIS(ODI预设值)。用户名和密码为创建主资料库的数据库用户的用户名和密码。链接信息如图所示。 这个地方点选择一下URL。设置好了以后,确定进入。可以先点击测试,进行测试一下。 图表 8 创建工作存储库 1.登陆到Topology Manager。选择存储库标签()。 2.选中存储库然后点击右键。选择“插入工作存储库” 图表 9 3.出现创建工作存储库的窗口。如图: 名称根据规则定义。 技术根据我们实际的工作库的存储用的数据库来选。 用户名密码为之前创建的第二个用户(即工作存储库用户)。 要填写实例名,如果是远程数据库(主资料库和工作存储库不在一个数据库上)这里要填写DBLINK的名字。 图表 10 4.选择JDBC标签,填写数据库连接信息。 图表 11 填写完毕后,测试,测试通过后点确定。 5.确定以后出现在主资料库内定义工作库的界面 图表 12 图表 13 这里的ID是ODI内部来标示工作库的ID。注意:不要和以前定义的工作库ID重复。 类型我们选开发就好。 下面的名称自己定义。 确定,创建工作存储库成功。 创建数据架构 1.登录到Topology Manager。 图表 14 这里有几个地方要介绍一下。 A.物理体系架构。用来创建ODI所使用的数据库的物理连接。 B.上下文。关于上下文,我的理解就是像是桥,同一个河上,不同的桥可以连接不同的录。这里呢,上下文是联系物理架构和逻辑架构的“桥”,一个物理架构通过不同的上下文创建不同的物理架构。 C.逻辑架构。逻辑架构相对物理架构来说的。我们操作时使用的虚拟的数据库。 D.语言。 E.存储库。这里创建工作资料库。 F.主机。当有机器连接到本主资料库的时候,这里会自动显示主机。 G.一般操作。 我们常用的就是A,C,E这三个。 2.添加物理体系架构,这里我们可以看见ODI是支持多种数据库和文件结构的。这个我们通过一个Oracle数据库来演示如何添加物理体系架构。 A.Oracle数据架构创建。单击右键,选择插入数据结构服务器。 图表 15 图表 16 图表 17 B.在这里定义界面,填写如图参数。名称:根据容易识别为规范。实例/dblink(数据服务器):这里如果是Oracle数据到Oracle数据库进行数据转换需要从目标库建立到源库的DBLINK。这里填写DBLINK名称。用户/密码:这里填写数据库的用户/密码。如上图。 C.点击JDBC标签。填入JDBC连接Oracle的参数。点击按钮可以选择一些ODI已经定义好的参数。如上图。 D.确认以后出现的界面只需要选择一下架构和工作架构。如图 图表 18 这里选择的是所需数据所在的数据库用户,架构(架构)和架构(工作架构)强烈建议选择一样的数据库用户。 E.选择逻辑体系架构页签。(详见登录到Topology Manager)选中Oracle右键->“插入逻辑架构” 图表 19 确定即可。 F.其他的数据类型。需要拷贝驱动到~\oracledi\oracledi\drivers下。有些数据类型可以使用ODBC连接。 创建执行代理 1.在Topology里的物理架构这里,右键点击代理->插入代理。 2.代理名称请参照ODI命名规范。 图表 20 应用即可 3.逻辑代理。点击逻辑架构页签。右键点击代理,插入逻辑代理。命名请参与ODI命名规范。 图表 21 4.配置代理 到ODI的安装目录下的bin里面找到odiparams.bat文件。右键编辑。 set ODI_SECU_DRIVER =oracle.jdbc.driver.OracleDriver rem 主资料库使用的jdbc Driver set ODI_SECU_URL=jdbc:oracle:thin:@localhost:1521:huang rem 主资料库的JDBC连接串 set ODI_SECU_USER=snpm rem 为主资料用户名 set ODI_SECU_ENCODED_PASS=hpfptq2JzkQ7L8ri8iseHWr59 rem 主资料用户名的密码经过加密后得的值, 此处需进入dos里运行. set ODI_SECU_WORK_REP=WORKREP1 rem 工作资料库名称 set ODI_USER=SUPERVISOR rem 默认是SUPERVISOR,这是连接ODI的用户名 set ODI_ENCODED_PASS=hZyp,JnYfCfUR.RuirzQ1r rem 就是SUPERVISOR的密码经过加密后的值 上面提到的密码加密步骤如下。 开始—运行—cmd—cd (到ODI目录下)~oracledi\bin—D:-- agent encode oracle(oracle为主资料用户的密码,可根据你主资料用户密码不同做修改) 图表 22 5.启动代理 进入DOS命令窗口,cd ODI安装路径\oracledi\bin agentscheduler -port=20910 -name=local_agent -v=5 图表 23 port是指物理代理的端口 name是指物理代理的名称(区分大小写) v是指日志等级,5是详细级别 图表 24 启动成功 创建项目和模型 1.通过开始菜单,打开Designer。 图表 25 A.项目。在这里创建项目,我们进行数据转换的具体操作都在这里进行。 B.模型。我们所操作的数据项都在这里。 C.其他。 D.解决方案。 2.创建一个项目。点击添加一个项目。填写项目名称就可以。 3.导入只是模块。点开,知识模块的加号。右键点一个*KM。点击导入知识模块。 图表 26 图表 27 选择的目录为:~oracledi\oracledi\impexp 图表 28 下面的选择要导入的文件,Ctrl+A全选然后点确定,大约需要等10~20分钟不等,导入全部的知识模块。知识模块相当于ODI已经定义好的一些规则,我们可以调用的包。 4.插入模型。选择模型标签,点击然后填写如下 图表 29 点击选择上下文。 图表 30 然后选择“选择行反向”使用如图配置 图表 31 在表名称栏里选择要使用的表。然后点击下方的反向。等反向完毕确定即可。 图表 32 不同的技术这个地方的配置信息稍有不同。 创建接口 1.创建一个接口。(接口就是连接源和目标,在里面实现各种数据转换) 图表 33 右键->插入接口。出现如下图的接口创建界面。 图表 34 这里填写接口名称(建议参考命名规范) 2.添加源和目标表 图表 35 在模型里选择一个目标表,拖拽到。同样拖拽源表到中间灰色区域。效果如下图: 图表 36 表关系。当多个表作为源的时候,表之间建立的关系,而且如果是多个表作为源的话,表之间必须建立联系。 建立方法:选中A表的字段a,按住左键不放,直到鼠标到达B表的b字段,放开鼠标。关系建立(A.a=B.b) 主键。表的主键。在目标表上必须有主键。 约束。对源数据的过滤。 建立方法:选中一个字段,拖拽到空白处即可。然后点击,里面可以写具体条件。如:A.a>100等。 3.建立映射 图表 37 选择目标表的一个列,在下方出现该列的映射。 拖动源表的映射字段到下方的空白处即可。 4.其他配置 选择没一个表,选择表的上下文。 选择流标签 图表 38 点击目标+临时区域标题 FLOW_CONTROL选择否 CREATE_TARG_TABLE选择是 图表 39 点击应用,然后点击执行,选择本地无代理执行。 创建包 1.在文件夹下的包点右键->插入包 图表 40 名称请参照ODI命名规范。 2.点击关系图标签,出现包编辑页面。 图表 41 拖拽要加入的接口或者组建放到右侧的灰色窗口。 右键选择个执行的对象,选择步。 选中对象,在属性窗口有选项,选择下一步执行的对象和执行失败后的处理方法。以及是否将记录保持到日志中。 图表 42 图表 43 选定执行步骤之后为下图: 图表 44 创建方案和计划 1.右键选择要生成方案的对象如:包,接口等。 图表 45 2.点击生成方案,弹出窗口默认,确定。可能需要等待大约半分钟。 3.选择方案下的计划。右键点击计划。 图表 46 4.计划设置如图。计划为自动执行方案的计划。 图表 47 计划类型如图47。

展开
0
vvyjp 栈主 2020-02-28 12:56:02

ODI安装文档 1.准备工作 A.安装ODI客户端图形化软件需要JVM1.4.2或以上版本以及JDK1.4.2或以上版本支持 B.安装ODI Agent需要JVM1.3.1或以上版本以及JDK1.4或以上版本支持。 C.安装ODI Metadata Navigator需要兼容JSP1.2和Servlet2.3的Web Server,例如Tomcat;需要JDK1.4或以上版本 2.安装客户端图形化软件 A.选择安装介质下的~\setup\windows文件夹,双击里面的setup.exe,安装开始…… B.Next C.这个地方有4个选项。 i.Evaluation测试评估版本。 ii.Development这个是开发安装需要安装的版本。 iii.Runtime这个是运行的版本,主要是代理运行。 iv.Full这个是包括所有的组件。 D.点Next,选择安装路径。 E.建立开始菜单项 F.下一步,选择Choose a Java VM already installed on this system,这里需要 JDK下的java.exe,如果你已经配置java环境变量,这里会自动显示。也可能没有,可以点击左面的search自动搜索,或者右面的选择,指定已知的java.exe。 G.下一步,正式安装开始。大约需要3分钟左右的时间,安装结束。 3.ODI Metadata Navigator安装步骤 A.先安装兼容JSP1.2和Servlet2.3的Web Server如Tomcat,注意Tomacat的安装路径中不要有中文、空格等 B.Software\odi\oracledimn文件夹拷贝到Tomcat安装路径\webapps下 C.将ODI客户端或者Agent安装路径下\bin\snps_login_work.xml文件拷贝到ODI Metadata Navigator安装路径\WEB-INF下 D.重起Tomcat Service登陆ODI Metadata Navigator。 http://<machine name>:<port http>/oracledimn/(port http如果是tomcat的话如:8080,8090等)。例如:http://localhost:8080/oracledimn 登陆界面。 使用界面

展开
0
栈栈 成员 2020-02-26 22:15:22
展开
0
栈栈 成员 2020-02-26 22:14:26
展开
0
栈栈 成员 2020-02-26 22:12:38
展开
0
栈栈 成员 2020-02-26 22:09:55
展开
0
栈栈 成员 2020-02-25 15:37:36
展开
0
分享好友

分享这个小栈给你的朋友们,一起进步吧。

企业信息化存在普遍现象
创建时间:2020-02-11 17:15:00
原因之一:领导不重视,氛围没形成 原因之二:认识不到位,配合力度不够 原因之三:投资不到位,巧妇难为无米之炊 原因之四:融合发展不够,顶层设计不足 原因之五:创新不够,实施策略针对性不强 原因之六:功能深度不够,面上功夫多 原因之七:开发商利益驱动,为了项目而项目 原因之八:IT人员知识面不宽,引领能力欠缺 原因之九:技术厚度不够,部分难题无解决方案 原因之十:信息部门地位不高,IT人员缺乏积极性
展开
订阅须知

• 所有用户可根据关注领域订阅专区或所有专区

• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询

• 专区发布评论属默认订阅所评论专区(除付费小栈外)

栈主、嘉宾

  • vvyjp
    栈主

小栈成员

  • VIP讲师团v
  • 栈栈
  • 58沈剑
  • 唐川ITPUB
特邀嘉宾

亲爱的{{$mastername}}栈主,

作为我们尊贵的VIP,您可以免费邀请人脉圈的任何人加入小栈,与您共同建设、管理{{$stackname}}小栈,为您站场,期待您的小栈聚集各路大牛

⚠️注意事项:

1.被邀请嘉宾与您同享小栈部分权益,可共同活跃、管理小栈内用户;

2.嘉宾可在24小时之内通过下一步给到的链接注册登录,过期失效;

3.为大程度保护您小栈的隐私性,请在安全的环境下发给可信任的用户;

4.链接仅可单人单次使用;

5.目前多可邀请9位嘉宾入驻。

戳我,来吐槽~