Oracle_Forms开发基础知识

合集下载

oracle form编译

oracle form编译

oracle form编译标题:Oracle Form编译的工作流程概述:Oracle Form编译是一个重要的过程,它确保了应用程序的正确性和可靠性。

本文将介绍Oracle Form编译的工作流程,从源代码到可执行文件的生成。

一、源代码准备在开始编译前,首先需要准备好源代码。

这些源代码通常包括Form 模块、库文件和引用的对象等。

确保源代码的完整性和正确性,以避免编译过程中出现错误。

二、编译环境设置在进行编译之前,需要设置好合适的编译环境。

这包括指定编译器的路径、设置编译选项和参数等。

确保编译环境的配置正确,以避免编译过程中出现问题。

三、编译过程1. 语法检查:编译器首先会对源代码进行语法检查,以确保代码的正确性。

它会检查代码中是否存在语法错误、拼写错误等。

如果发现错误,编译器会给出相应的错误提示。

2. 语义检查:在通过语法检查后,编译器会进行语义检查。

它会检查代码中是否存在语义错误、逻辑错误等。

例如,检查变量的类型是否匹配、函数的参数是否正确等。

如果发现错误,编译器会给出相应的错误提示。

3. 优化处理:在通过语义检查后,编译器会对代码进行优化处理。

优化处理旨在提高代码的执行效率和性能。

它会对代码进行重构、删除冗余代码、优化算法等。

通过优化处理,可以使生成的可执行文件更加高效。

4. 生成可执行文件:在完成语法检查和优化处理后,编译器会将源代码转换成可执行文件。

这个可执行文件可以在Oracle Form运行时环境中被执行。

生成的可执行文件包括了应用程序的逻辑和界面等。

四、错误处理在编译过程中,可能会出现各种错误。

编译器会给出相应的错误提示,以帮助开发人员找出错误并进行修复。

开发人员需要根据错误提示,逐个解决错误,直到编译成功。

五、测试和调试在编译成功后,需要对生成的可执行文件进行测试和调试。

测试可以帮助开发人员验证应用程序的功能和正确性。

调试可以帮助开发人员找出和修复应用程序中的错误和问题。

六、总结本文介绍了Oracle Form编译的工作流程,从源代码准备到可执行文件生成的整个过程。

Oracle数据库实用教程-第13章 Form基本编程

Oracle数据库实用教程-第13章 Form基本编程
4
13.3 检验与例外处理 1. 在项级(Item)设置验证 2.在记录级(Record)设置验证 3.在块(Block)级和Form级设置验

5
13.4 用程序实现操作导航
块间导航语法为 GO_BLOCK('BlockName');
项间导航语法为 GO_ITEM('BlockName.ItemName' );
Form模块间导航语法为GO_FORM
('FormName');
6
13.5 错误信息捕获
相关的内部函数如下:
(1)ERROR_CODE表示错误号,数字型 。
(2)ERROR_EXIT错误信息文本,字符型 。
( 3 ) ERROR_TYPE 错 误 的 类 型 , 字 符 型

7Hale Waihona Puke 13.6 系统提示信息的处理 Oracle提供了确定提示信息
3
13.2 编写PL/SQL程序单元
Form中可用的PL/SQL程序包括程序 单元、PL/SQL程序库和包。程序单元是 Form模块的子程序。PL/SQL程序库是 一个函数和过程的集合,其中包括自定 义的函数和过程。子程序包是一组由逻 辑上相关的PL/SQL数据类型、实体和子 程序组成的一个应用实体。
9
的内部函数: MESSAGE_CODE、 MESSAGE_TYPE和 MESSAGE_CODE。
8
本章小结
在Form中编程,至少涉及到触发器、程序 单元、PL/SQL程序库、包、检验与例外处理 、用程序实现操作导航、错误信息捕获、系统 提示信息的处理等多个方面。其中最基本也是 最重要的是正确理解Form中的触发器。Form 中的触发器触发器可定义在Form、块、记录 和项4个层次上,由此可完成不同级别的数据 检验和事件处理过程。

OracleForm开发基础知识

OracleForm开发基础知识

1 相关软件的安装1.1 Form Builder安装路径:(暂时没有)在安装的过程中,可以一路默认值下去。

需要注意的时候,在安装时,会不停的自动打开很多文件夹和命令提示符的窗口,不要手工去关闭这些窗口,安装程序会自动关闭,知道提示你安装成功(这时可以手工关闭余留下来的没有被关闭的窗口)。

注册表修改<1>、NLS_LANGHKEY_LOCAL_MACHINE\SOFTWARE\ORACLE搜索NLS_LANG, NLS_LANG=CHINESE_CHINA.ZHS16GBK 简体中文NLS_LANG=CHINESE_TAIWAN.ZHT16MSWIN950 繁体中文NLS_LANG=AMERICAN_AMERICA.UTF8 英文<2>、FORMS60_PATH变量在后面加上TEMPLATE/APST AND.FMB所在的路径(D:\WORK11)和PLL文件所在的路径(D:\resource11)。

2 注册表单2.1 注册表单开发管理员 表单表单:你编译生成的XXX.fmx文件的文件名(不带后缀)用户表单名:可以是你任意输入的,并且将在下一步注册功能时用到。

2.2 注册功能开发管理员→功能下图中,功能、用户功能名、说明逗可以随意输入但用户功能名在下一步注册菜单时会用到。

表单就是上一步注册表单时你输入的用户表单名了。

2.3 增加Menu开发管理员→菜单提示可以随便填写,功能就是你上一步注册的用户功能名一个菜单可以包含很多的子菜单找某个模组的菜单名称可以到:系统管理员工→安全性→责任→定义如下图,选择或者输入你想查找的职责的名称,查找后红色框内的菜单就是你需要的菜单了。

3 Form开发入门3.1 Form的基本对象3.1.1 基本对象图示如下图,就是一个标准Form(TEMPLATE.fmb)所拥有的所有的对象3.1.2 基本对象说明FORM:可以有多个窗口。

窗口:只能有一个画布,但是还可以包括其他的类型的画布。

ORACLE_FORM_开发实战

ORACLE_FORM_开发实战

ORACLE FORM 开发实战あsdファsdファsdfas李正海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添加。

Oracle Forms开发常用技巧

Oracle Forms开发常用技巧

Oracle Forms开发常用技巧1 手动提交Request在Form里面,我们可以用APPS.FND_REQUEST.SUBMIT_REQUEST 提交一个Request到Oracle Request Manager。

如果提交成功,该函数返回Request ID,否则,返回0。

1.1 初始化在提交一个Request之前,我们会调用Oracle Standard的Procedure对这个Request做一些基本的参数的初始化。

APPS.FND_GLOBAL.apps_initialize (user_id =>APPS.FND_er_id,);resp_id =>APPS.FND_GLOBAL.resp_id, resp_appl_id=>APPS.FND_GLOBAL.resp_appl_id1.2 FND_REQUEST.SUBMIT_REQUEST函数APPS.FND_REQUEST.SUBMIT_REQUEST有105个参数:APPS.FND_REQUEST.SUBMIT_REQUEST(APPLICATION IN VARCHAR2 DEFAULT NULL, PROGRAM IN VARCHAR2 DEFAULT NULL, DESCRIPTION IN VARCHAR2 DEFAULT NULL, START_TIME IN VARCHAR2 DEFAULT NULL, SUB_REQUEST IN BOOLEAN DEFAULT FALSE,RETURN NUMBER;chr(0),'','','','','','','','','','','','','','','','','','','','','','','','','','','','','', '','','','','','','','','','','','','','','','','','','','', '','','','','','','','','','','','','','','','','','','','', '','','','','','','','','','','','','','','','','','','','', '','','','','','','','','',''1.3 参数详解1.3.1 APPLICATION 必需参数Short name of the application associated with the concurrent request to be submitted. 应用程序的名称缩写。

OracleFORM开发笔记

OracleFORM开发笔记

OracleFORM开发笔记1、所有的项都必须要继承⽗项 (2)2、form触发器–了解 (2)3、form中最好使⽤⼤写命名 (2)4、form中的参数: (2)5、fnd_message.debeg (2)6、注意使⽤block、item、form级的触发器 (2)7、画布: (2)8、⼿动创建lov: (2)9、数据块名字不需要和window名称相同 (3)10、Form Trigger触发 (3)11、fnd_message的⽤法 (3)12、将form挂到erp⽅法 (3)13、进⼊form时挑选org_id (3)14、FORM开发标准使⽤FND_STANDARD.SET_WHO (3)15、主从form,⽤块中的relations来创建主块与副块的关系 (4)16、创建form步骤: (4)17、app_find触发器的学习 (4)18、不管是基于基表还是基于视图的Block,都建议编写ON-UPDATE、ON-INSERT、ON-DELETE、ON-LOCK触发器 (5)19、app_item_property.set_property (5)20、添加⽇历项: (5)21、lov的注意 (5)22、滚动条 (6)23、创建堆叠画布 (6)24、添加⾏指⽰符: (6)25、建⽴块查询步骤: (6)26、光标从块A点⼊块B时触发器执⾏过程: (7)27、创建tab画布步骤: (7)28、⼀个导航块中必须有⼀个ITEM可UPDATE或INSERT可输⼊ (8)29、⼀个块名称超过22个字符, (8)30、创建⽂件夹步骤及注意: (8)31、Oracle开发中出现FRM-40831错误的解决办法? (11)32、JTF Grid开发步骤 (11)33、使⽤view开发form步骤: (11)34、跳转到其他的form,在触发器中添加go_item(‘item_name’)函数,⾃动弹出item所在的canvas。

Oracle_Form培训_V1.0

Oracle_Form培训_V1.0

1汉得信息技术有限公司HAND Enterprise Solutions Company Ltd.Oracle_Form培训_V1.0来源:Oracle 标准培训教材编写人:商云方编写日期:20110630版本: 1.0Form Builder 是Oracle 的界面开发工具之一;在Oracle EBS ,Oracle Retek等大型应用产品中被广泛应用;比如EBS中的销售订单Form:URL tp://:8889/forms/frmseStatic HTML files OC4Jor HTTP ServerForms ServletForms Listener Servlet Forms Runtime EngineWeb browser 123DBPLX filesMMX filesForms application executables FMX filesWeb serverForms services客户层中间层: 应用服务器Form 运行原理1、客户端在浏览器中发出一个URL 访问请求2、应用服务器上的web 服务器接收到此请求后转发给Forms Servlet3、应用服务器上Forms Servlet 创建一个包含所需信息的html 页面,启动Form SessionStatic HTML files OC4Jor HTTP ServerForms ServletForms Listener Servlet Forms Runtime EngineURL Web browser45Applet started6DBPLX filesMMX filesForms application executables FMX filesWeb serverForms services 中间层:应用服务器客户层:8889/forms/frmse4、Oracle Web 服务器(或者OC4J )提供一个Java Applet 给客户端按需下载,客户层缓存该Applet5、客户层的Applet 和应用服务器上的Forms Listener Servlet 建立连接。

ORACLE_FORMS_培训

ORACLE_FORMS_培训

开发简单例子:
五.建立控制Block: 1.创建B_CTRL,用于管理B_MAIN中数据, 如查找和保存 2.创建EMP和DATE的ITEM,用于做查询 条件 3.创建按钮FIND和SAVA,用于查找和 保存数据
开发简单例子:
6.在按钮FIND上建立Trigger,指定它 查找B_MAIN 7.在按钮SAVA上建立保存数据Trigger 8.在B_MAIN上建立PRE-QUERY,用于判 断查询条件,如EMPNO和时间等
四.Oracle Application中主要的操作画面都是由Forms Builder制作 而成的.
目录
Oracle Forms Builder介绍 开发软件安装 配置开发环境 Forms Builder基本对象 开发简单例子
开发软件安装:
一.下载Oracle Developer Suite(下载路径参照备注) 二.如下图所示
目录
Oracle Forms Builder介绍 开发软件安装 配置开发环境 Forms Builder基本对象 开发简单例子
开发简单例子:
一.打开TEMPLATE: 1.修改Forms名称. 2.去除数据块中BLOCKNAME和DETAILBLCOK. 3.去除画布中BLOCKNAME. 4.去除窗口中BLOCKNAME.
配置开发环境:
七.如无上述六个步骤的配置,我们在打开template.fmb时,系统 会提示如下图错误:
目录
Oracle Forms Builder介绍 开发软件安装 配置开发环境 Forms Builder基本对象 开发简单例子
Forms Builder基本对象:
1.窗口(Windows):包含画布的窗体. 2.画布(Canvas) :是对ITEM调整的平台. 3.数据块(Block):一般与数据库中表关联. 4.项(Item):基本组织元素. 上述四个为最基本对象,缺一不可. 5.附加库(Attached Libraries):标准PLL文件. 6.LOV:提出用户选择数据. 7.参数:传递参数,相当于全局变量. 8.程序单元:建立PLSQL. 9.记录组(Record Group):提供数据源.
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
The information in this article applies to:
Oracle Server - Enterprise Edition - Version:9.2.0.1 to
Oracle Provider for OLE DB - Version: 9.2.0.1
Microsoft Windows 2000
作用:就是方便上传你写好的Form到Server或者从Server上下载Form或者其他的文件
主机:10.89.48.198
用户名:devap/ dev2ap/ dev3ap/ dev4ap
密码:devap/ dev2ap/ dev3ap/ dev4ap
Form文件所在目录:/disk/DEV/devappl/au/11.5.0/forms/US
得到的Menu是ONT_SUPER_USER
然后我们再到Application Developer下面的Menu处搜索ONT_SUPER_USER,就可以得到你需要的菜单或者子菜单
到此,你已经在可以AP上去看你的Form的运行结果了。
修改fmb文件后,不需要重新注册,只需要重新编译,即可看到修改后的效果。
2.1
Application Developer……> Application……>Form
Form:你编译生成的XXX.fmx文件的文件名(不带后缀)
User Form Name:可以是你任意输入的,并且将在下一步注册Function时用到。
2.2
Application Developer……> Application……>Function
按照我们前面讲的注册Form之后,点击你的Menu,会弹出如下信息,并且不会把你的Form Show出来:
3.2.8
<1>、增加一个Item
<2>、修改Item的属性
好了,到此,一个基本的Form已经完成。
可以正常编译,运行,但是这个Form是一个没有任何实际意义的对象。
我们开发Form的过程,就是按照这个大致流程,后续的过程,就是自己在这个Form里面增加Window、Canvas、Block、Item、Trigger等。
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.
Cause
This is a known BUG in the OCI API Layer. The BUG number is 2549186.
和Block没有直接的对应关系,而是直接和Item对应。
一个Canvas上面可以有来自不同的Block的多个Item.
是我们对Item进行位置调整的平台。
Block:Logical owner of items,items in one block are logically related
There are two main tupes of blocks:data block and control block
找某个模组的菜单名称可以到:
System Administrator……>Security……>Responsibility……>Define
如下图,选择或者输入你想查找的Responsibility的名称,查找后
红色框内的Menu就是你需要的菜单了。
比如下图查找的Reponsibility是:Order Management (Administrator), BQP
3.2.2
这几个Object,是TEMPLATE.FMB自带的对象,需要全部删除的。
注:不删除不会有大的影响,当时会给后期的修改维护带来不便,请删除之.
3.2.3
如图,修改
Name,
SubClass Information,
Title
属性
SubClass Information属性设置:
3.2.4
为了便于识别,我们建议把Window、Canvas采取同样的命名。
framework similar to a database table
LOV:List Of Value,会直接对应到Text Item上面,点击后会弹出给用户选择数据。
Attached Libraries:存放的是Oracle标准的一些PLL文件。
Property Classes:Oracle标准的一些属性类,我们在建立Window、Canvas、Data Block等都会选择一个属性类以继承一些属性和方法
3.2.9
我们都是在Canvas上面对Item进行位置的调整,达到使整个Form看起来美观整齐的目的。
到这里,我们Form的一些基本设置都完成了。该Form可以上传,编译,
但是在编译的时候会有如下的警告信息:No Items on block QUERY_TEST
编译还是能够正常生成FMX文件。
不过Item是我们设计的最小单元,我们的一切数据操作都是对Item进行的,因此一个没有Item的Form是没有实际意义的。
<3>、选择Build a new data block manually
目前我们一般都是用手工建立一个新的Data Block,用Data Block Wizard的情况会在后面有讲解。
然后需要修改Block的一些基本属性:
其中,我们必须设置SubClass Information,其他的一些属性设置会在后面的章节讲到。
3
3.1
3.1.1
如下图,就是一个标准Form(TEMPLATE.fmb)所拥有的所有的对象
3.1.2
FORM:可以有多个Window。
Window:只能有一个CANVAS,但是还可以包括其他的类型的CANVAS,
比如CANVAS_STACKED,这种Canvas类型将在后面的章节中讲到。
Canvas:Canvas is a surface where visual objects,such as graphics and items,are arranged.
如图,需要修改
Name,
SubClass Information,
Window
属性
SubClass Information属性设置:
增加完Canvas之后,别忘了回去设置Window属性的Primary Canvas
3.2.5
如下图:
<1>、选择Data Blocks
<2>、选择Create
选择之后,会弹出一个New Data Block的对话框
Fix
Apply the9.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。
Pll文件所在目录:/disk/DEV/devappl/au/11.5.0/resource(包括Custom.pll)
Fmx文件所在目录:/disk/DEV/devappl/bqe/11.5.0/forms/US
2
在AP上面你才可以看到你所写的Form的真正效果,所以我们还需要把Form挂到Application环境。
1
1.1
安装路径:\\sie-file-svr\01_公司级共享资源\06_工具软件\06开发工具\6i
在安装的过程中,可以一路默认值下去。
需要注意的时候,在安装时,会不停的自动打开很多文件夹和命令提示符的窗口,不要手工去关闭这些窗口,安装程序会自动关闭,知道提示你安装成功(这时可以手工关闭余留下来的没有被关闭的窗口)。
下图中,
Description TabPage
Function、User Function Name、Description逗可以随意输入
但User Function Name在下一步注册Menu时会用到。
Form TabPage
Form就是上一步注册Form时你输入的User Form Name了。
在我们的开发过程中,经常用到的有FORM Trigger、Window、Canvas、Data Block(Item)、LOV(List of Value)、Record Group、Parameters。其中Window、Canvas、Data Block、Item是四个最基本的Object,缺一不可。
Microsoft Windows XP
Microsoft Windows (32-bit)
Symptoms
Using the Oracle Provider for OLEDB9.2.0.1.0 with web applications, the data retrieved and sent to the webpage is good for the first 100rows.
3.2
Oracle已经为我们提供了一个Form的开发模板,(/disk/DEV/devappl/au/11.5.0/forms/US/TEMPLATE.fmb)
我们的开发实际要基本这个模板,这个模板里面已经存在了我们将会用到的Oracle标准的对象,我们需要做的,就是这这个模板的基础上面,添加我们自己的对象。
Item:Form中最基本的组织元素,我们设计的最小单元
Parameter:相当于全局变量,其作用是传递参数,Oracle标准的Form也有单独建一个Block(多个Item)来传递参数的例子。
相关文档
最新文档