我们经常会遇到这种情况,我们要把显示界面分成几块区域来分别显示不同的内容。比如在同一行左边显示messageComponentLayout,右边显示table,这时,我们就要用到tableLayout功能,下面,我们就试着创建一个tableLayout。

学习目标

1、掌握Region Style:tableLayout,rowLayout,cellFormat的创建方法,属性设置

2、了解他们的意义,从属关系,并能灵活嵌套

一、创建AM

在test.oracle.apps.cux上点右键,选择 Create Application Module

输入Package:test.oracle.apps.cux.table.server

Name:TableAM。

下一步到完成。

二、创建VO  PoHeaderVO

在test.oracle.apps.cux.table.server上点右键,选择 Create View Object。

下一步到 Step5 SQL Statement,

在Query Statement框中输入

[c-sharp] view plaincopy
  1. SELECT poh.po_header_id
  2. ,poh.segment1 po_number
  3. ,poh.vendor_id
  4. ,pv.vendor_name
  5. ,poh.vendor_site_id
  6. ,pvs.vendor_site_code
  7. ,poh.org_id
  8. FROM po_headers_all      poh
  9. ,po_vendors          pv
  10. ,po_vendor_sites_all pvs
  11. WHERE poh.vendor_id = pv.vendor_id
  12. AND poh.vendor_site_id = pvs.vendor_site_id
  13. AND nvl(pv.enabled_flag,'Y') = 'Y'
  14. AND poh.type_lookup_code = 'STANDARD'

下一步到Java页,确认View Object Class和View Row Class的勾都勾上。

点完成。

三、创建VO  PoLineVO

在test.oracle.apps.cux.table.server上点右键,选择 Create View Object

输入   Package:test.oracle.apps.cux.table.server

Name:PoLineVO

下一步到Step5 SQL Statement,

在Query Statement框中输入

[c-sharp] view plaincopy
  1. SELECT pol.po_header_id
  2. ,pol.po_line_id
  3. ,pol.line_num
  4. ,pt.line_type
  5. ,pol.item_id
  6. ,msib.segment1 item_code
  7. ,pol.item_description
  8. ,pol.unit_meas_lookup_code
  9. ,pol.quantity
  10. ,pol.unit_price
  11. ,pol.closed_flag
  12. ,pol.cancel_flag
  13. ,pol.closed_date
  14. ,pol.cancel_date
  15. FROM po_lines_all       pol
  16. ,mtl_system_items_b msib
  17. ,po_line_types      pt
  18. WHERE pol.item_id = msib.inventory_item_id(+)
  19. AND pol.org_id = msib.organization_id(+)
  20. AND pol.line_type_id = pt.line_type_id
  21. AND nvl(msib.enabled_flag,'Y') = 'Y'

下一步到完成。

四、添加VO到AM下

双击TableAM,打开AM编辑界面

在Data Model界面,将VO添加到TableAM下面

五、新建页面

在test.oracle.apps.cux.table上点右键,选择 New->Web Tier->OA Components->Page

输入    Name:TablePG

Package:test.oracle.apps.cux.table.webui

确定。

修改Region的属性

ID:PageLayoutRN

AM Definition:test.oracle.apps.cux.table.server.TableAM

Window Title:Table Test

Title:Table Test:Skycloud

在PageLayout下添加Region,并更改属性

ID:PoHeaderHdr

Prompt:订单头

在PoHeaderHdr下面新建Region,并更改属性

ID:PoHeaderLayout

Region Style:messageComponentLayout

Width:100%

在messageComponentLayout下面,新建messageLayout,并更改属性

ID:PHMessageLayout

在PHMessageLayout下面,新建Region,并更改属性

ID:RowLayoutRN

Region Style:rowLayout

Width:100%

在rowLayout下面新建三个Region

更改Region1的属性

ID:PoHeaderNumCel

Region Style:cellFormat

Width:30%

更改Region2的属性

ID:PoVendorCel

Region Style:cellFormat

Width:30%

更改Region3的属性

ID:PoVendorSiteCel

Region Style:cellFormat

Width:40%

分别为每个cellFormat,创建一个ITEM,并更改其属性

 

ID

Item Style

Search Allowed

View Instance

View Attribute

Prompt

Item1

PoHeaderNum

messageStyleText

True

PoHeaderVO1

PoNumber

采购订单

Item2

PoVendor

messageStyleText

True

PoHeaderVO1

VendorName

供应商

Item3

PoVendorSite

messageStyleText

True

PoHeaderVO1

VendorSiteCode

地点

结构图如下:

运行,看一下结果。

    下面添加查询条件

在PageLayoutRN中添加Region,并修改属性。

ID:QueryLayoutRN

RegionStyle:Header

Text:查询

在QueryLayoutRN上添加Region,并修改属性。

ID:QueryComponentLayout

Region Style:messageComponentLayout

在QueryComponentLayout上右键,选择messageLayout,修改属性。

ID:OrgMessageLayout

在OrgMessageLayout下新建Region,并修改其属性。

                ID:OrgRowLayout

Region Style:rowLayout

在OrgRowLayout下新建Region,并修改其属性。

ID:OrgSearchCel

Region Style:cellFormat

在OrgSearchCel下新建Item,修改属性。

ID:OrgSearch

Region Style:messageTextInput

Data Type:VARCHAR2

Prompt:库存组织

Max Length:20

Length:20

Repquired:yes

在QueryComponentLayout上右键,选择messageLayout,修改属性。

ID:NumMessageLayout

在messageLayout上,新建一个Region,修改属性。

ID:NumRowLayout

Region Style:rowLayout

在rowLayout上,新建两个Region,修改属性

ID:PoHdrSearchCel

Region Style:cellFormat

ID:QueryButtonCel

Region Style:cellFormat

分别在cellFormat下创建一个ITEM

更改Item1的属性。

ID:PoNumSearch

Item Style:messageTextInput

Prompt:订单编号

Additional Text:请输入订单编号进行查询

Maximum Length:20

Length:20

Repquired:yes

更改Item2的属性。

ID:Query

Item Style:submitButton

Prompt:查找

运行看一下效果吧。

    添加从块

在PageLayoutRN上点右键,新建Region,修改属性。

ID:PolineHdr

Region Style:header

Text:订单行

在PoLineHdr上点右键,新建Region,修改其属性。

ID:TableLayoutRN

Region Style:tableLayout

Width:100%

在tableLayout上,新建rowLayout,修改其属性。

ID:LineRowLayout

Region Style:rowLayout

Width:100%

在LineRowLayout上新建两个cellFormat

修改第一个cellFormat的属性。

ID:PoNumCel

Region Style:cellFormat

修改第二个cellFormat的属性。

ID:PoLineCel

Region Style:cellFormat

在PoNumCel中新建一个Item,修改属性。

ID:PoHeaderNum1

Item Style:messageStyleText

Search Allowed:True

View Instance:PoHeaderVO1

View Attribute:PoNumber

Prompt:订单编号

在PoLineCel上点右键,选择New->Region Using Wizard...

输入   Application Module:test.oracle.apps.cux.table.server.TableAM

Available View Usage:PoLineVO1。

下一步。

输入   Region ID:QueryTable

Region Style:table。

下一步,选择LineNum,LineType,Item_code,Quantity,UnitPrice,UnitMeasLookupCode。

修改表格属性,如图:

完成。

修改表格属性

View Link Instance:PoHeaderToLineLink

Width:100%

修改ITEM属性,Search Allowed为True

六、创建CO

在PayeLayoutRN上点击右键,选择Set New Controller...,创建控制文件。

输入   Package Name:test.oracle.apps.cux.table.webui

         Class Name:TableCO。

在processFormRequest函数中加入如下代码:

  1. ,PoNumber);
  2. ,OrgId);
  3. ,headerId);
  4. lineVO.executeQuery();
  5. }
  6. }

好了,可以看看最终的结果了。

OAF中的TableLayout 高级表格的更多相关文章

  1. 使用Vue.js制作仿Metronic高级表格(一)静态设计

    Metronic高级表格是Metonic框架中自行实现的表格,其底层是Datatables.本教程将主要使用Vue实现交互部分,使用Bootstrap做样式库.jQuery做部分用户交互(弹窗). 使 ...

  2. OAF中的面包屑(breadcrumbs)始无法显示(转)

    原文地址:OAF中的面包屑(breadcrumbs)始无法显示 OAF中面包屑是一种重要的导航工具.可以提示用户抵达当前页面的路径,也可以方便的切换到之前的节点. 开始做面包屑开发的时候发现面包屑总是 ...

  3. JQuery中操作表单和表格

    一:表单应用 1.HTML中的表单大致由三部分组成 (1).表单便签:包含处理表单数据所用的服务端程序URL,以及数据提交到服务器的方法. (2).表单域:包含文本框.密码框.隐藏域.多行文本框.复选 ...

  4. EBS OAF中如何在多行表中实现附件功能

    EBS OAF中如何在多行表中实现附件功能 (版权声明,本人原创或者翻译的文章如需转载,如转载用于个人学习,请注明出处:否则请与本人联系,违者必究) 在OAF中使用附件功能之前,要先明白Entity( ...

  5. HTML中关于图像和表格,链接等的知识

    下面是我分享的html中关于图像和表格,链接等知识: ①<img/>图像标签 <img/>标签中的一些常见属性:1,src是图像的路径属性,是img标签中必不可少的属性. 2, ...

  6. 在MySQL中实现Rank高级排名函数【转】

    MySQL中没有Rank排名函数,当我们需要查询排名时,只能使用MySQL数据库中的基本查询语句来查询普通排名.尽管如此,可不要小瞧基础而简单的查询语句,我们可以利用其来达到Rank函数一样的高级排名 ...

  7. AngularJS中自定义有关一个表格的Directive

    本篇体验在AngularJS中自定义一个有关表格的Directive.表格的需求包括: ● 表格结构 <table>    <thead>        <tr>  ...

  8. 详解Vue中watch的高级用法

    我们通过实例代码给大家分享了Vue中watch的高级用法,对此知识点有需要的朋友可以跟着学习下. 假设有如下代码: <div> <p>FullName: {{fullName} ...

  9. 在MySQL中实现Rank高级排名函数

    MySQL中没有Rank排名函数,当我们需要查询排名时,只能使用MySQL数据库中的基本查询语句来查询普通排名.尽管如此,可不要小瞧基础而简单的查询语句,我们可以利用其来达到Rank函数一样的高级排名 ...

随机推荐

  1. Android Multimedia框架总结(十五)Camera框架之Camera2补充

    转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼yuiop:http://blog.csdn.net/hejjunlin/article/details/52751055 前言:监于5.0之 ...

  2. PHP和MySQL Web开发学习笔记介绍

    前言 从2016年2月1日开始,之后的几个月左右的时间里,我会写一个系列的PHP和MySQL Web开发的学习笔记.我之前一直从事Java语言的开发工作,最近这段时间非常想学习一门语言,就选择了PHP ...

  3. activiti 任务节点 处理人设置

    1.1.1. 前言 分享牛原创(尊重原创 转载对的时候第一行请注明,转载出处来自分享牛http://blog.csdn.net/qq_30739519) 我们在使用activiti 工作流引擎的时候, ...

  4. 1.httpClient和ScrollView

    1 在服务器端使用sqllite编写数据库 常见命令是:sqlite3 tank.db 进入之后创建表: create table tscore ( id integer primary key au ...

  5. BeanUtils Exception 之 FastHashMap

    这里仅仅是为了记录一件十分奇怪的事情,在使用BeanUtils的过程中,所有的依赖包都添加了, common logging common collections ··· 在为boolean 这种基本 ...

  6. 20ViewPager demo1,2:接收ViewPager展示View的使用

    Demo1 MainActivity .JAVA package com.qf.day20_viewpager_demo1; import java.util.ArrayList; import ja ...

  7. Android 实现图片加水印

    加水印代码 public Bitmap addWaterMark(Bitmap src, String water, Context context){ Bitmap tarBitmap = src. ...

  8. iOS中 iOS10 权限崩溃问题 韩俊强的CSDN博客

    iOS10 权限崩溃问题 每日更新关注:http://weibo.com/hanjunqiang  新浪微博! 今天 手机升级了 iOS10 Beta,然后用正在开发的项目 装了个ipa包,发现点击有 ...

  9. JavaScript实现的网页放大镜效果

    今天在观看视频学习的时候,学到了一个小技巧.就拿过来与大家进行分享一下啦. 实现的原理 分析需求:需要两张图,一大一小.然后根据鼠标的动作显示出不同的区域块的图像. 核心:鼠标事件的获取和处理.图片显 ...

  10. 【设计模式】java设计模式总述及观察者模式

    今天在准备腾讯的面试时想起来要复习一下设计模式,而刚好前几天在参加网易的在线考试的时候,也出了一道关于设计模式的选择题,主要是考察观察者模式,虽然那道题自己做对了,但觉得还是应该好好总结一下设计模式的 ...