Oracle Form Builder操作步骤
ORACLE FORMS BUILDER 开发实战

ORACLE FORM 开发实战李正海2008/09/22目录1一个基础的FORM (3)2一个查询FORM (12)3多画布的操作方法 (13)4LOV使用 (15)5LIST的使用 (22)6FORM的参数调用 (23)7包含主从表的FORM (26)8加入自定义菜单 (29)9加入图像的方法 (31)10一个选择的范例 (32)11常用系统热键 (35)1一个基础的FORM1.在文件中选择新建,表格,从而新增出一个FORM。
2.建立数据块a)在导航器中点击该FORM,选择数据块向导b)输入表名,点刷新,显示出字段名c)使用,把字段全部选择到数据库项中。
d)点下一步,注意使用默认的:“请先创建数据库,然后调用布局向导”。
3.建立布局a)进入布局向导b)选择默认的布局向导c)选择显示项,把可用项全部变成显示项d)选择框架风格为默认的表格e)指定框架的名称及显示记录数f)完成布局向导4.运行FORMa)运行FORMb)点击查询中的执行,显示出所有数据c)点增加,新建立一条记录,输入数据,点保存,完成一条记录的输入d)在某条记录中,改变数据内容,点保存,完成一条记录的修改e)点删除,则删除该记录f)点退出,结束FORM运行2一个查询FORM1.新建一个块2.加入一个框架3.加入数据项4.加入按纽,输入如下代码:GO_BLOCK('LZHTEST001');SET_BLOCK_PROPERTY('LZHTEST001',DEFAULT_WHERE,'NAME LIKE :block15.text_item21||''%''');EXECUTE_QUERY;3多画布的操作方法1.加入一个画布,再加入一个堆叠式画布。
2.加入两个块3.设置块的关系4.加入向子画布切换的按纽其对应的WHEN_BUTTON_PRESSED语句为go_block('lzhtest0011'); --lzhtest0011为子块名5.加入子画布隐藏的按纽HIDE_VIEW('CANVAS39');-- CANVAS39为子块所在的画布名GO_BLOCK('LZHTEST001');-- LZHTEST001为主块名4LOV使用设置LOV的基本过程包括如下:b)增加LOV,点击在导航器中的LOVS,点后,进行LOV添加。
05_Oracle Form Builder

17
|
© Copyright IBM Corporation 2009
IBM Global Business Services
2
|
© Copyright IBM Corporation 2009
IBM Global Business Services
Building an Application
3
|
© Copyright IBM Corporation 2009
IBM Global Business Services
Register Your Application
Elements of the Interface
Single-Record Formats
A layout that shows only one record at a time.
Multi-Row Formats
A layout that allows several records for a single entity to be displayed at once.
In a ―Combination Block‖, the user can view the data in a multi-row format, but can also view a single-record format to see complete information about the current record in a separate window.
Copy the form TEMPLATE and rename it. Create your form objects and layout in adherence with the Oracle Applications User Interface Standards for Forms-Based Products. Code your form logic using Oracle Applications Developer’ s Guide. Register your form. Create a form function for your form and register any sub functions. Add your form function to a menu, or create a custom menu. Assign your menu to a responsibility and assign your responsibility to a user. Test your form from within Oracle Applications (especially if it uses features such as user profiles or function security).
formbuilder用法

FormBuilder是一个Angular的库,用于简化在Angular应用中构建表单的过程。
使用FormBuilder可以更加轻松地创建和管理表单控件,并且提供了一些便利的方法来处理表单数据。
下面是FormBuilder的基本用法:1. 导入FormBuilder和FormGroup:```typescriptimport { FormBuilder, FormGroup } from '@angular/forms';```2. 在组件中注入FormBuilder:```typescriptconstructor(private formBuilder: FormBuilder) { }```3. 使用FormBuilder创建表单:```typescript// 在组件初始化时使用FormBuilder创建一个FormGroupmyForm: FormGroup = this.formBuilder.group({// 在这里定义表单控件username: '',password: ''});```4. 在模板中使用FormGroup和FormControl:```html<form [formGroup]="myForm" (ngSubmit)="onSubmit()"> <label>Username:<input type="text" formControlName="username"></label><label>Password:<input type="password" formControlName="password"> </label><button type="submit">Submit</button></form>```5. 处理表单数据:```typescriptonSubmit() {// 处理表单提交逻辑const formData = this.myForm.value;// 使用formData进行后续操作}```通过以上步骤,你可以使用FormBuilder来创建Angular表单,并在组件中轻松地进行表单控件的管理和表单数据的处理。
oracle forms builder开发流程

oracle forms builder开发流程英文版Oracle Forms Builder Development ProcessOracle Forms Builder is a powerful tool that allows developers to create interactive, database-driven applications. It offers a visual interface for designing forms, reports, and other user interfaces that can seamlessly integrate with Oracle databases. Here's a brief overview of the Oracle Forms Builder development process:1. Requirement Analysis:Begin by understanding the requirements of the application. Identify the necessary data fields, relationships, and business logic. Determine the user interface elements required, such as buttons, text fields, combo boxes, etc.2. Environment Setup:Ensure that you have the necessary software and licenses installed, including Oracle Forms Builder and the associatedOracle database. Set up your development environment, including the required tools and libraries.3. Database Design:Design the database schema based on the requirements. Create tables, views, and stored procedures as needed. Define relationships and constraints to ensure data integrity.4. Form Design:Open Oracle Forms Builder and start designing the form. Use the visual design tools to add controls, such as text fields, buttons, combo boxes, and other interface elements. Arrange these controls layout to create an intuitive and user-friendly interface.5. Data Binding:Bind the form controls to the database fields. Define the necessary data sources and queries to populate the form with data from the database. Set up triggers and event handlers to handle user interactions, such as button clicks or data validation.6. Logic Implementation:Implement the business logic using PL/SQL or other programming languages supported by Oracle Forms Builder. This includes data validation, calculations, and other operations required to process form data.7. Testing:Thoroughly test the form to ensure it functions correctly. Test various scenarios, including edge cases and error conditions. Use debugging tools to identify and fix any issues.8. Deployment:Deploy the form to the production environment. This involves packaging the form and deploying it to the server where it will be accessed by users. Ensure that the necessary dependencies and configurations are in place.9. Maintenance and Enhancements:Regularly monitor and maintain the form to address any issues or bugs that arise. Continuously improve the form based on user feedback and business requirements.中文翻译Oracle Forms Builder开发流程Oracle Forms Builder是一个强大的工具,允许开发人员创建交互式、基于数据库的应用程序。
oracleformsbuilder详细学习步骤

oracleformsbuilder详细学习步骤步骤:1、建表:头表:cux.cux_order_headers_z_all行表:cux.cux_order_lines_z_all2、建SEQUENCE:Sequence:头表:CREATE SEQUENCE cux.cux_order_headers_z_all_s行表:CREATE SEQUENCE cux.cux_order_lines_z_all_s ;3、建同义词:头表:CREATE SYNONYM apps.cux_order_headers_z_all FORcux.cux_order_headers_z_all ;CREATE SYNONYM apps.cux_order_headers_z_all_s FORcux.cux_order_headers_z_all_s ;行表:CREATE SYNONYM apps.cux_order_lines_z_all FORcux.cux_order_lines_z_all ;CREATE SYNONYM apps.cux_order_lines_z_all_s FORcux.cux_order_lines_z_all_s ;4、建立唯一索引:create unique index CUX.cux_order_headers_z_U1 onCUX.cux_order_headers_z_all (HEADER_ID)tablespace APPS_TS_CUX_IDX;create unique index CUX.cux_order_LINE_z_U1 on CUX.cux_order_lines_z_all (LINE_ID)tablespace APPS_TS_CUX_IDX;5、建立视图:cux_order_headers_z_vcux_order_lines_z_v6、进入formbuilder建立块7、创建程序包:(1)执行生成包语句:(2)DECLARE(3)BEGIN(4)HAND_PLSQL_AUTOCREATE.TABLE_HANDLE_PKG(P_TABLE_NAM E => 'CUX_ORDER_HEADERS_Z_ALL',(5) P_OWNER => 'CUX',(6) P_PRIMARY_KEY =>'HEADER_ID');(7)END;查看输出output,生成了创建包的语句8、创建存储过程:(1)执行生成存储过程语句:(2)DECLARE(3)BEGIN(4)HAND_PLSQL_AUTOCREATE.form_table_handle(p_block_name => 'HEADER',p_package_name => 'CUX_ORDER_HEADERS_Z_ALL_PKG'(5) ,p_table_name => 'CUX_ORDER_HEADERS_Z_ALL',p_primary_key =>'HEADER_ID');(6)END;输出output存储过程体语句;9、创建值列表:组织值列表编制人值列表10、创建参数:11、创建CUXORDER程序包12、头、行块中增加触发器13、建立主从块之间的关系14、注册程序。
ORACLE EBS FORM利用模板开发步骤

ORACLE EBS FORM利用模板开发步骤1、在formbuilder开发form—>从服务器的以下路径$AU_TOP/forms/US下载模板:TEMPLATE.fmb,并将模板名字改为STUDENTS.fmb—>将服务器$AU_TOP目录下的resource文件夹所有文件下载—>将以上STUDENTS.fmb和resource文件夹分别放在以下目录D:\ErpForm\Form , D:\ErpForm\Library—>在Regedit > HKEY_LOCAL_MACHINE > SOFTWARE > ORACLE > FORMS60_PA TH 加入client 端存放form 及resource的路径D:\ErpForm\Library;D:\ErpForm\Form(放在最前较好)—>运行formbuilder,打开STUDENTS.fmb后,修改名字,删除不需要使用的数据块和画布—>首先建一个窗口,因为画布放在窗口上。
这里将原来的一个窗口BLOCKNAME,改名为WIN_MAIN,并双击进入属性面板修改名称—>添加要用的数据块:右键数据块>数据块向导—>制作要用的画布:—>修改新建数据块和画布的名字为相同(建议),这里都改为MAIN。
并进入属性面板修改子类信息和窗口属性将数据块MAIN里的项STUID、STUNAME、STUSCORE的属性里的子类信息改为TEXT_ITEM,以下只列出STUID的截图将画布MAIN里的子类信息选为CANV AS,窗口选为WIN_MAIN,因为该画布放在WIN_MAIN 展示—>修改FORM上得Trigger2、将开发完的form上传到到服务器并编译—>通过SecureCRT登录到dev3(例如),在SecureCRT里通过echo $AU_TOP获得AU_TOP 路径—>通过FXPFlash也登录到dev3,进入$AU_TOP目录—>通过FXPFlash,将开发完成的form传到$AU_TOP/forms/ZHS目录下—>进入SecureCRT里的$AU_TOP/forms/ZHS目录,然后执行以下命令:f60gen userid=apps/apps module=STUDENTS.fmb output_file=$CPER_TOP/forms/ZHS/STUDENTS.fmx module_type=FORM batch=no3、将编译完成的form挂到EBS前台菜单—>以应用开发员职责登录,注册表单—>以应用开发员职责登录,定义功能—>将以上定义的功能加入MENU,此处加入的是系统管理员职责的MENU。
Form Builder基础开发文档【入门级】Form Builder Basic Development

1 相关软件的安装1.1 Oracle Client1.1.1 Setup安装路径:\\hi4-sv11\Oracle\Software\9iclient目前我们都是用9iClient,安装基本上是一路Default,如果出现setup.exe不能执行的情况,请到\\hi4-sv11\Oracle\Software\9iclient\install\win32安装。
安装时建议安装管理员(Administrator)1.1.2 注册表修改<1>、NLS_LANGHKEY_LOCAL_MACHINE\SOFTWARE\ORACLE搜索NLS_LANG,出现NLS_LANG=ZHS16GBK或者NLS_LANG=ZHS16CGB231280的地方请全部修改成NLS_LANG=AMERICAN_AMERICA.UTF8Project Code: Project Name: Doc.No.: Page: 45<2>、FORMS60_PATH变量在后面加上TEMPLATE/APSTAND.FMB所在的路径(F:\WORK\FORM)和PLL文件所在的路径(F:\WORK\PLL)。
1.2 Patch安装路径:\\hi4-sv11\Oracle\Software\patch\p3095277_9204_WINNT\Disk1安装这个Patch的原因(来自MetaLink):The information in this article applies to:Oracle Server - Enterprise Edition - Version: 9.2.0.1 toOracle Provider for OLE DB - Version: 9.2.0.1Microsoft Windows 2000Microsoft Windows XPMicrosoft Windows (32-bit)SymptomsUsing the Oracle Provider for OLEDB 9.2.0.1.0 with web applications, the data retrieved and sent to the webpage is good for the first 100 rows.After the First 100 rows, th data is displayed as garbage or .The OLEDB registry default fetchsize has been changed from the default of 100.CauseThis is a known BUG in the OCI API Layer. The BUG number is 2549186.Fi xApply the 9.2.0.4.0 Patch 2 Client/Database patchset on the client machine.The Patch number is 3160576 for the Microsoft Windows (32-bit) platform安装这个补丁就是要修正Oracle的100 Records的BUG。
FORM_BUILDER

复选项
一个对象是否被选中
键 并单击复选框使之失效,从而忽略复选框的值
列表项
单选项 显示项 按纽项
一组预定义选择的对象,每 1 、弹出式列表(Pop_List)该项右端有一图标按纽单击列表显示所有列值 个对象对应数据库中一个值, 2、文本列表(T_List)该项右边有滚动条通过滚动条查看所有列值 列表项中的值一次只能选一 3、组合框(Combo Box)与弹出列表形式一样,允许输入 个 当选项多于3个或4个最好使用列表项,当选项是2个或3个时使用单 一个单选按纽 选 项当选项为2个时使用复选项 它的值必须是设计时指定或运行时程序赋值、在运行时不能编辑查询 一个只读文本框 导航输入操作 一种界面对象不能存储显示 值
当Form刷新当前块时触发
当Form开始运行时触发 例:go_block(‘主块名’) 当焦点从一个块的某项移动到另一块的某项时触发 当输入焦点移动到下一个项时触发 当按纽被按下时触发 当检查框的值改变时触发 当图像被单击或双击被触发 例:read_image('图像文件名'),'图像文件格式',‘块名.图像项项名’ 当单选组中的按纽发生改变时触发 当窗口激活时触发 当窗口关闭时触发 当删除主块记录时触发 当保持主块与从块记录同步而从数据库中取数到从块时触发 当企图删除主块记录时被触发 当Form需要清除从块记录时被触发以便保持与主块一致 例:clear_all_master_details
触发器
类别
块级触发器
触发器
WHEN-CREATE-RECORD 当Form试图在块里创建一个新记录时触发
功能
WHEN-CLEAR-RECORD
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Layout Wizard
1 : 将要 display 的 Item 选入右边 Displayed Item 中 2 : 若 Item Type 需修改, 可于此处修改,也可以在以后修改
Layout Wizard
可于此处修改 Column Prompt 及 Width
Layout Wizard
TEMPLATE.fmb模板文件
•因 ERP Form须套用所有 ERP 的相关 设定及操作方式, 一定要从Server download TEMPLATE.fmb 作为模板 进行开发修改 • 下载模板TEMPLATE.fmb存放于本机 路径 $AU_TOP/forms/ZHS/ 注意事项:Form的名字请注意大小写 例如: TEMPLATE.fmb
值集设计
选中LOVs点+,选择使用LOV向导
值集设计
选择基于查 询的新记录 组
输入查询数据 的SQL
值集设计
选择要在值集里显示的列
值集设计
输入LOV 标题,设 置大小
点击查看返回项, 选择值返回到的 ITEM
设置LOV每 次显示多少 行
值集设计
新增两个对象,建议将名字改成一样的。
值集设计
一定要改为自己的BLOCK Name
Form 上一定要修改的 Trigger
Program Units > APP_CUSTOM (Package Body)
一定要改为自己的Window Name (大写)
Data Block Property Palette
1 : property Subclass Information
1 2 3
2 : Property Class 3 : Data Block 的 Class 选 BLOCK 注意 : 每一个Data Block / Item / Canvas….都要指定 Property Class Name 作法相同, 但不同的 Object 选不同的 Class
Data BlocITEM级触发器 WHEN-VALIDATE-ITEM,当 ITEM发生改变时触发
其他常用功能
FORM级触发器WHEN-NEW-FORMINSTANCE 在这个触发器里加上 Go_block(‘blockname’); execute_query; 可以在FORM打开时就查出数据。
其他常用功能
目标
通过本章学习,您将可以了解: • Form Builder程序开发 • Form Builder程序编译 • Form上挂到Oracle EBS环境中 • LOV的开发过程 • 日历的使用 • 常用触发器的使用
Form Builder简介
Form就是界面操作程序,是一个用户与数据库进行交互的 界面。通过Form Builder你可以做出供用户查询,输入, 修改,删除数据的功能,他与Oracle DB结合的很好,采 用PL/SQL语言,同过Trigger的触发来处理用户的每个操 作动作。
选择 Data 呈现的方式
Layout Wizard
一页要 display 多少笔 每一笔之间的距离 是否要 Scrollbar
Layout Wizard
Layout Finish
Layout Wizard
新产生的 Data Block 及 Canvas
新的 Data Block 要移至 所有 Data Block 的最上方
2
1
注意: 每一个 Item 都要指定 Property Class Name 若是一般可输入资料的 Item, 选 TEXT_ITEM 只 是 显 示 , 不 可 输 入 查 询 条 件 的 Item, 选 DISPLAY_ITEM 有指定 Class 的 Object 左下角会有一个红色箭头
格式调整
Data Block Wizard
选择Data Block的Data source
Data Block Wizard
1. 添入Table or View的名字,或者点Browse选择 2. Refresh 出现该 Table or View 中所有的Column 3. 选择使用的 Column 按欲排列在画面的顺序选入 右边 Database Items
总结
– 透过Oracle Form Builder可开发Form程序 ,将程序挂到Oracle EBS 环境中。 – 在Form中使用LOV功能 – 了解在Form中使用日历 – 了解Oracle Form 中常用的触发器
Data 是否可查询
查询 Data 的 Where 及 Order by 可写在此处 是否可新增/删除/修改 Data
指定 Canvas 对应的Window
要指定 Canvas 是出现于哪一个 Window
Windows Name 建议与Canvases相同,或者改为 与 Form 相关的名称
指定Item属性
信息窗口 错误 FND_MESSAGE.Set_Name(‘FND’, ‘XXXXX’); FND_MESSAGE.ERROR; 附注 FND_MESSAGE.Set_Name(‘FND’, ‘XXXXX’); FND_MESSAGE.SHOW;
其他常用功能
建程序包 可以单独建过程 建包必须包头包体都建
Items的顺序就是实际的 [Tab] 的順序, 可在此处上下拖拉調整 新的 Canvas 移至 所有 Canvas 的最上方 建议將 Canvas rename 与Data Blocks相同
Form 上一定要修改的 Trigger
Form Level Trigger > PREFORM
定义表单 应有开发员职责下 应用>表单
在ERP中定义FORM
定义功能 应有开发员职责下 应用>功能
将功能挂到菜单上
应有开发员职责下 应用>菜单
将功能挂到菜单上-效果
值集设计
• LOV一般都是和Item联系在一起,是 方便Item取值,验证数据的一种方法 。 • 记录组用来存储由一个LOV显示的阵 列数据.一般和LOV 一起使用,用来提供 LOV显示的数据。
显示效果
日历Calendar的使用
设置Item的LOV属性
如果需要日期验证,请把Item的Data Type属性设置为Date
日历Calendar的使用 增加Item Trigger KEY-LISTVAL
calendar.show是可以带参数的 calendar.show(to_date('2004-12-25','YYYY-MM-DD'));
开发ERP FORM的准备工作
1.下载 ERP Library (.pll)存放于本机 路径 $AU_TOP/ resource/ 2.下载所有form(.fmb)存放于本机 路径 $AU_TOP/forms/ZHS/ 3.修改注册表HKEY_LOCAL_MACHINE > SOFTWARE > ORACLE > FORMS_PATH ,将 .pll和.fmb的存放路 径添加在最前面。
Canvas : 所有的 Item 都必须在该范围内 View : 执行时所看到的实际大小
保存FORM
点击文件选另存 为,将新做的 FORM保存,注 意FORM名大写, 后缀小写。另存 后注意修改对象 导航器的FORM 名称,保持和文 件名一致。
编译FORM
1.将本机.fmb上传到服务器的XX_TOP/forms/ZHS/目录下 2.Telnet到目录 $AU_TOP/forms/ZHS
常用触发器
FORM级 PRE-FORM 打窗口打开的时候会 触发这个触发器的动作。
增加一个赋值语句 效果
常用触发器
数据块级触发器WHEN-NEW-RECORD-INSTANCE,
新纪录产生时触发
加入测试语句
效果
常用触发器
ITEM级触发器 WHEN-NEW-ITEMINSTANCE,新建ITEM时触发
Form Object
Data Block Canvas LOVs Program Units Windows
TEMPLATE.fmb
改为自己需要的Form的名称
不需要 可删除
新增Data Block
1.选择Data Blocks
2.选择Create
3.选择使用Wizard
3.编译命令: frmcmp_batch userid=user/password module=$XX_TOP/forms/ZHS/XX_SUPPLY.fmb output_file=$XX_TOP/forms/ZHS/XX_SUPPLY.fmx piler 成功,生成.fmx 文件
在ERP中定义FORM
Data Block Wizard
若同一个 Form 里有一个以上的 Data Block , 可选择 Create Relationship将 Data Blocks 之间的关系建立起来
Data Block Wizard
Finish
Layout Wizard
1 : 选择 Data 要 display 于哪一个 Canvas 2 : 选择 Type