当前位置: 首页 > 知识库问答 >
问题:

甲骨文表单10g

富凯旋
2023-03-14

我刚接触oracle forms,遇到了一个问题。我在表单中有两个具有相同字段的多个记录块。

我查询一个块的数据,它被填充。

哪里有一种方法可以将所有行从填充的块复制到“复制”块?

共有1个答案

钱锐
2023-03-14

是的,有办法。一种是在那里手动输入这些值,但这可能不是您想要的。

另一种方法是创建一个按钮(我们称之为BTN_COPY)并在其上创建WHEN-BUTTON-PRESSED触发器。它看起来像下面的代码(基于属于Scott的EMP表的项目);请注意,我不能测试它,但是-我希望它可以。

declare
  -- local variables; should contain all items you'd want to copy
  l_empno  emp.empno%type;
  l_ename  emp.ename%type;
  l_job    emp.job%type;
  -- l_currec will contain current row number in the first block
  l_currec number := 0;
  -- l_exit will be used if we're at the end of the first block
  l_exit varchar2(1) := 'N';
begin
  loop
    -- go to the source (first block) and the [last row you were in + 1]
    go_block('first');
    l_currec := l_currec + 1;
    go_record(l_currec);

    -- check whether this is the last row of the first block; if so, exit the loop
    if :system.last_record = 'TRUE' then
       l_exit := 'Y';
    end if;

    -- save current row's items
    l_empno := :first.empno;
    l_ename := :first.ename;
    l_job   := :first.job

    -- go to the second block's bottom and create a new record
    go_block('second');
    last_record;
    create_record;

    -- put stored values into the second block's items
    :second.empno := l_empno;
    :second.ename := l_ename;
    :second.job   := l_job;

    -- exit the loop if this was the last record to be copied
    exit when l_exit = 'Y';
  end loop;
end;
 类似资料:
  • Support for the Oracle database. The following table summarizes current support levels for database release versions. 支持的Oracle版本 The following dialect/DBAPI options are available. Please refer to ind

  • 问题内容: 在OracleDoc中没有表达式背后的例子,所以我尝试使用Java语法,这应该在查询后得到任何数字 但是什么也没显示! 问题答案: 出于争论的考虑,REGEXP_SUBSTR也可以工作:

  • 问题内容: 我有一个表(日期,有效负载),其中包含约10年的数据,我想基于14天(2周)和90天(12周)的间隔计算移动平均值(MA),以显示有效负载的趋势 我已经写了这个查询,但是它得到了错误的值 实际上我知道是什么,但我不了解Oracle的工作原理! 我可以在Excel中进行计算,但是我需要在数据库级别执行此操作,能否请您告诉我如何执行此操作? 问题答案: 我不明白使用的目的是什么?根据文档,

  • 我需要一个特定的业务场景来设置一个实体(不是PK)上的字段,一个序列中的数字(序列必须是最小值和最大值之间的数字) 我这样定义序列: 在Java代码中,我从序列中检索数字,如下所示: 我的问题是: 如果我在一个事务中调用这个“中选择mySequence.nextval”,同时在另一个事务中调用相同的方法(并行请求),那么确定序列返回的值是不同的吗? 不可能从第一个事务中读取未提交的值吗? 因为假设

  • 问题内容: 我有一个名为的约束。我如何找到该约束是什么?有没有办法查询所有约束? 问题答案: 像所有数据字典视图一样,如果您只想检查当前架构,则为USER_CONSTRAINTS视图,对于管理用户则为DBA_CONSTRAINTS视图。 约束名称的构造指示系统生成的约束名称。例如,如果我们在表声明中指定NOT NULL。或者实际上是主键或唯一键。例如: 检查,主要。 通常,给关系约束一个明确的名称

  • Android studio曾经抱怨使用OpenJDK,并推荐Oracle JDK。然而,在最新的Android Studio中,这个提示消失了(可能是由于两家公司之间的法律纠纷)。 我今天安装了甲骨文1.8.0.92 JDK和Android Studio 2.1.1似乎运行速度更快,明显更快。 你知道Android studio在Java 1.8和OpenJDK与Oracle JDK方面的现状吗