APEX2天开发操作手册Author:彭美CreationDate:2014-11-09LastUpdated:2014-11-10DocumentRef:DocumentReferenceNumberVersion:1.0CopyNumber_____2DocumentControlChangeRecord59DateAuthorVersionChangeReference2014-11-09PM2164071.0NoPreviousDocumentReviewersNamePositionDistributionCopyNo.NameLocation1234NoteToHolders:Ifyoureceiveanelectroniccopyofthisdocumentandprintitout,pleasewriteyournameontheequivalentofthecoverpage,fordocumentcontrolpurposes.Ifyoureceiveahardcopyofthisdocument,pleasewriteyournameonthefrontcover,fordocumentcontrolpurposes.3ContentsDocumentControl..................................................................................................................2一前提摘要........................................................................................................................4二开发步骤.......................................................................................................................5OpenandClosedIssuesforthisDeliverable....................................................................59OpenIssues.....................................................................................................................59ClosedIssues..................................................................................................................594一前提摘要本文档主要是依据APEX官方版进行部分中文翻译,个人理解不对的地方,欢迎指出。经过通篇阅读2Days+DeveloperGuide.pdf,发现里面第一,二,三章基本可以略过;第一章主要介绍APEX,第二章主要介绍APEX的开发环境(工作区申请以及创建账户),第三章主要介绍APEX开发界面的几个组成部分以及怎样导入APEX应用程序。在本文档中,这三章就不进行具体的讲叙了。第五章主要将怎样将APEX发布到EBS中,第六章主要将全球化,这两章我也没怎么操作过,在此就不阐述了。本文档重点讲解第四章APEX的开发过程(35-71页)。要能进行APEX最基础的开发,先必须大致了解操作下SQL工作室的几个主主要操作的地方1.1对象浏览器当前工作区下的数据对象,包括表,视图,包,函数,触发器等等,为什么先要了解这呢?因为你在开发APEX中需要用到许多表或包或函数,那如果没有的话,是需要自己创建的。1.2SQL命令--单条操作类似toad中操作,sql创建语法与toad中创建的语法一致,结束符号可以有:/;已经不写(置空)。操作方式与toad中基本相似,也只能执行一条完整语句,不能同时执行多条。51.3SQL脚本,类似批量操作二开发步骤2.1创建第一个实例进入应用构建器界面,点击创建6选择数据库,点击下一步填写应用id,此应用ID必须唯一,不能与现有的ID重复名称:填写自己的名字,此处以PM21640703为例,点击下一步7在页进程处,选择空白,点击添加页选择报表类型,表名选择OEHR_DEPARTMENTS(此表必须先存在),其他默认,点击添加页8编辑页3,将Oehr_Departments更改为Departments点击应用更改9回到页面,点击下一步在共享组件中,默认否,点击下一步设置选项页以及需要的日期格式,点击下一步10在用户主题界面,选择所有主题,之后在显示的主题中选择主题2,点击下一步点击创建11至此,一个交互报表已经创建完成,点击运行结果画面,登录用户名和密码与开发的用户一致122.2修改刚创建的报表主要是实现将OEHR_EMPLOYEES的三个栏位显示在部门报表中编辑此页13双击department或右键选择编辑对Department区域的数据源进行修改SELECTd.DEPARTMENT_ID,14d.DEPARTMENT_NAME,(selectcount(*)fromoehr_employeeswheredepartment_id=d.department_id)NumberofEmployees,substr(e.first_name,1,1)||'.'||e.last_nameManagerName,c.COUNTRY_NAMELocationFROMOEHR_DEPARTMENTSd,OEHR_EMPLOYEESe,OEHR_LOCATIONSl,OEHR_COUNTRIEScWHEREd.LOCATION_ID=l.LOCATION_IDANDl.COUNTRY_ID=c.COUNTRY_IDANDd.DEPARTMENT_ID=e.department_idANDd.manager_id=e.employee_idANDinstr(upper(d.department_name),upper(nvl(:P2_REPORT_SEARCH,d.department_name)))0点击应用更改15运行结果16将添加的栏位显示出来17全部移入,点击应用18UsingAnInteractivereport(45-50)这五页的内容就不在此处翻译了,主要是将怎样操作交换报表的。2.3增加员工的报表和表单回到应用程序界面,点击创建页19选择表单,点击下一步选择表单和报表,点击下一步20按如下图修改,添加面包屑,选择主页,点击下一步选择表,点击下一步21此处默认,点击下一步选择页面中可查询显示的列,点击下一步22选择编辑图标,点下一步修改要显示的页名,点击下一步注意这是新增的一个创建或修改employee的页,所以页码要在刚创建的基础上增加123选择rowid,点击下一步选择可以更新,创建,删除中的列默认,点击下一步24创建Run结果252.4编辑EMPLOYEES表单主要是添加计算总薪水的列,以及薪水的FORMAT26首先在SQL工作室中创建获取总薪水的function(已创建不再操作)下面讲怎样添加总薪水列编辑页4,点击进入修改数据源,点击应用更改selectE.ROWID,E.EMPLOYEE_ID,E.FIRST_NAME,E.LAST_NAME,E.EMAIL,E.PHONE_NUMBER,E.HIRE_DATE,E.JOB_ID,E.SALARY,E.COMMISSION_PCT,27E.MANAGER_ID,E.DEPARTMENT_ID,CALC_SALARY(E.SALARY,NVL(E.COMMISSION_PCT,0))TOTAL_SALARY,D.DEPARTMENT_NAMEfrom#OWNER#.OEHR_EMPLOYEESE,OEHR_DEPARTMENTSDWHEREE.DEPARTMENT_ID=D.DEPARTMENT_ID(+)点击应用更改28点击运行,结果如下将新添加的两列加入进来,点击应用(由于显示栏位过多,会看不到汇总列,故将其他不需要的列先隐藏)29接着操作薪水的格式化编辑页4双击salary(total_salary操作相同)30选择对应的格式,点击应用更改31一列是格式化的,一列是未修改的,两者的显示就不一样322.5将Employees页添加到主页中主页未添加前是这样的编辑主页133右键,选择编辑列表点击按钮列表条目标签(即在主页中导航处显示的名称)目标页(即点击此处要跳到的页)34运行,此处主页的导航中已经有了Employees的标签了2.6增加一个department的显示栏位到Employes表单中最主要的也是在页的数据源中添加此栏位,并将其显示出来(步骤增加total_salary的时候已经加进来的,此处不再讲解)35报表的保存方式建议选择作为默认报表设置同时选择主要,下次进来的时候就是你保存的这个显示格式了,同时用户也可以更新(不知道理解的对不对)362.7Departments报表的一个栏位连接到Employees表单编辑Department所在的页3,双击Departments,选择编辑报表属性点击进入修改NumberofEmployees属性37之后点击应用更改Run结果38加了过滤器392.8设置高量操作中选择格式,选择突出显示,设置高量的条件效果如图402.9在Employees表单中增加LOV选择共享组件41用户界面,选择值列表42点击创建默认,点击下一步43输入LOV名称以及类型,点击下一步输入如下sqlSELECTdepartment_named,department_idvFROMoehr_departmentsORDERBYd注意标准的LOV中,此处的d&r必须写上,不然没有返回值点击创建44回到页4的编辑界面,创建一个查询ITEM选择列表,点击下一步45ITEM的名称,点击下一步修改Item的标签(PROMPT)46当查询值变动时,后台的RETURNid值也跟着变此处问是否显示空值,选择是(相当于显示所有值)当为空值时,ITEM的显示值为NoDepartmentAssigned,返回值为-147默认,点击下一步修改此页对应的数据源,将刚刚添加的Item作为查询条件加入48Run&结果49修改Departments页的连接ITEM的属性,将列链接的项1修改为P4_Department_Id(不区分大小写)50运行结果51点击进入Employees表单522.10增加公司的名称点击编辑应用程序属性在用户界面,选择要显示的名称XYGGLASS,颜色选择兰色文本,点击应用更改53运行结果2.11更改主题从共享组件进入54选择主题55点击创建,出现编辑界面,默认点击下一步默认,点击下一步56选择想切换的主题,点击下一步点击创建即可57点击切换主题选择当前的主题和切换的主题,点击下一步默认,选择下一步58点击切换主题重新运行应用程序。至此,2天开发已经讲解完了,之后的学习就需要自己去对应论坛或从其他资料中学习深入的知识了。59OpenandClosedIssuesforthisDeliverableOpenIssuesClosedIssues