当前位置: 首页 > news >正文

Form开发指南-第二弹:基本配置与开发流程

        FORM版本:0racle Developer Suite 10g - Form Builder

1 拷贝相关程序(配置)

        请确保您可以登录到FORM的服务器中去,使用远程连接工具,比如Xshell等。

1.1 拷贝文件

        拷贝两个文件夹里的所有文件到本地。预先在本地建立一个开发文件夹,如D:0racleDev,然后把服务器

        目录下的forms resource 两个文件夹整体拷贝到本地C:0racleDev目录(这个目录需要自己创建的,创建在安装好的Oralce suit10g同目录下就好)下。

        注意forms文件夹下有ZHSUS两个文件夹,一般只需拷贝ZHS下的所有文件即中文FORM到本地forms文件夹下即可,如果全部拷贝,注册表路径也需指定到 ZHS 下。

1.2 修改注册表       

步骤如下: 

  1.         直接在操作系统运行Regedit命令进入注册表维护界面进入注册表目录:
  2.         进入注册表目录:【HKEY LOCAL MACHINE 👉 SOFTWARE👉WOW6432Node👉Oracle👉KEY_DevSuiteHome 👉 forms_path   (ctrl+F直接搜索forms_path更加简单)              修改其值为:
    C:\DevSuiteHome_1\cgenf61\ADMIN;C:\DevSuiteHome_1\forms;C:\OracleDev\forms\ZHS;C:\OracleDev\resource
  3. 说明:前两个值段是安装form 开发工具后就生成的,只需添加自己从服务器拷贝的标准form及resource 程序的路径。

 1.3 验证 Forms Developer是否模板可用

         打开 template.fmb文件,如果没有提示错误就说明设置成功了。

2  FORM开发示例 (开发)

        打开TEMPLATE.fmb模板文件后,做如下步骤:(

①删除Data Blocks下的两个块--BLOCKNAME、DETAILBLOCK,它们是模版自带的示例主从块。 ②删除Canvases下的一个画布--BLOCKNAME。

←)

—>首先建一个窗口,因为画布放在窗口上。这里将原来的一个窗口BLOCKNAME,改名为WIN_MAIN,并双击进入属性面板修改名称 

2.1 数据向导 

 —>添加要用的数据块:退出属性选项板->右键WIN_MAIN窗口->数据块向导

 

     

2.2 布局向导 

 2.3 改2个触发器、1个程序单元

        因为一个Forms有多个Window,所以需要明确指出哪个Window是主Window,这样在关闭主Window的时候将退出整个Forms;此外,我们也须要在源代码中记录作者、开发时间、版本等备注信息。这些是通过代码而非属性来控制的。“

        将数据块MAIN里的所有项,右键点击的属性里—>子类信息改为TEXT_ITEM,以下只列出SEGMENT1的截图:

         将画布MAIN里的子类信息选为CANVAS,窗口选为WIN_MAIN,因为该画布放在WIN_MAIN 展示:

        

                修改触发器->PRE-FORM ,(设置要显示哪个主题窗口)

                修改程序单元->APP_CUSTOM*(程序包主体) :(搜索“wnd”,这个条件选择语句,只需要设置第一个if分支即可)

         修改触发器->WHEN-NEW-FORM-INSTANCE:(

①第一行注释的原因:

  • 这是一个 版本控制标识,通常由版本管理系统自动生成,用于标记文件版本信息。
  • 注释掉它不会影响程序逻辑,只是让代码更简洁,或者避免某些环境下的解析错误。

②新增两行的作用:

  • Go_Block('MAIN');
    这句代码的作用是将焦点切换到数据块 MAIN
    在表单启动时,默认焦点可能不在你想要的块上,调用这句确保用户界面定位到 MAIN 数据块。

  • Execute_Query;
    这句代码执行当前数据块的查询操作,自动加载数据。
    这样表单打开时,MAIN 数据块就会显示对应的数据,而不是空白。

2.4 调整视图和画布

        Canvas(画布)与View(视图):Canvas是整个画布的大小,Item是放置在Canvas上的;View是这个画布的可见部分,如果View小于Canvas,那么通常需要借助滚动条来查看整个Canvas中的内容;可以通过菜单View中的Show View、Show Canvas来确定哪个框是Canvas哪个框是View。←

 开发完毕!!!接下来就是FORM编译!

 3 将开发完的FORM上传到服务器并编译(编译)

  1.         最开始当然需要将我们开发好的FORM另存为自己想要的名字,比如TESTJZL.fmb,到Template.fmb同目录下,随后进行如下步骤:
  2.          首先使用 XShell,登陆上FORM服务器,然后在SecureCRT里通过
    echo $AU_TOP
    (确保自己已经是开发用户,所用的是开发环境的环境配置,可以参考第四点)
  3.         然后再使用Xftp,到$AU_TOP目录下,将开发完成的FORM传到$AU_TOP/forms/ZHS目录下
  4.         XShell cd 进入 $AU_TOP/forms/ZHS 目录,然后执行下面的命令即可(                      ①记得修改TESTJZL.fmb为你另存为的fmb文件,我服务器存放开发环境的fmx的环境变量名字是叫$CUX_TOP你们不一定哦                                                                                        ② userid的账号密码,我的账号密码都是一样的apps,你们也要修改为自己的):
frmcmp_batch userid=apps/apps module=$AU_TOP/forms/ZHS/TESTJZL.fmb output_file=$CUX_TOP/forms/ZHS/TESTJZL.fmx module_type=FORM batch=no

    注意!如果运行$AU_TOP等命令没有输出的话,就不是开发用户的话,可以参考切换命令:

su - applsit

        切换为applsit开发用户,输入“R”,然后后回车,之后再运行

4 将编译完成的form挂到EBS前台菜单(注册)

 —>以应用开发员职责登录,注册表单。(“用户表单名”才是用于手电筒搜索的主要字段,之后也是绑定这个字段)

 —>以应用开发员职责登录,定义功能

—>将以上定义的功能加入MENU,此处加入的是 系统管理员职责的MENU。以系统管理员职责登录 

以系统管理员职责登录,点击常用菜单里的菜单选项 

 —>运行FORM。先进入别的职责,再进入系统管理员职责。相当于编译和刷新(我是这么想的)

http://www.xdnf.cn/news/895069.html

相关文章:

  • 用ApiFox MCP一键生成接口文档,做接口测试
  • C++ 重载和模板
  • 离散数学_数理逻辑(三):一阶逻辑概念及一阶逻辑命题符号化
  • 蒙特卡罗模拟: 高级应用的思路和实例
  • minimatch 详解:功能、语法与应用场景
  • ResolverActivity 优先级
  • 竞品分析六大步骤
  • 如何防止看板任务长期停滞不前
  • 【xshell】已经安装对应版本xftp,xshell中点击xftp快捷按钮,提示“使用此功能需要Xftp。单击下载按钮,转到Xftp下载页”
  • 如何在运动中保护好半月板?
  • 插入排序,二分查找,字符数组 day8
  • linux C语言中的动态库 静态库说明
  • 智慧停车设备选型指南:何时应优先考虑免布线视频桩方案?
  • QT中使用libcurl库实现到ftp服务器的上传和下载
  • Debugger encountered an exception:Exception at 0x7ff809232bdc
  • 【6.2-6.9学习周报】
  • [免费]SpringBoot+Vue鲜花销售商城系统【论文+源码+SQL脚本】
  • Spring Boot统一功能处理深度解析
  • 如何设置合适的缓存过期时间(TTL)?是否有必要实现缓存预热?
  • 【PmHub面试篇】PmHub集成Redission分布式锁保障流程状态更新面试专题解析
  • 【inode使用 100%,导致项目异常】
  • 【学习分享】shell基础-参数传递
  • 使用反射对任意对象进行二进制序列化的程序
  • 行内样式:深入解析与应用指南
  • Vue.js应用结合Redis数据库:实践与优化
  • 更改安卓虚拟机屏幕大小
  • ICLR文章如何寻找页码
  • 【高频面试题】快慢指针及相关应用
  • 客户体验数据使用的三种视角——场景视角
  • 等比数列的概念及性质02