zoukankan      html  css  js  c++  java
  • EBS_FORM_开发:实现form record ctrl+F6复制

    1.先写

      /*=====================================
      ** PROCEDURE:   DEFAULT_ROW()
      **=====================================*/
      PROCEDURE DEFAULT_ROW IS
      BEGIN
        :LINES.HEADER_ID := :HEADERS.HEADER_ID;
      IF :LINES.LINE_ID IS NULL THEN
          SELECT CUX_HRSC_LINES_S.NEXTVAL INTO :LINES.LINE_ID FROM SYS.DUAL;
        END IF;
      END DEFAULT_ROW;
    END LINES_DATA;

    2.在block的WHEN-CREATE-RECORD中

    MEND_DATA.default_row;

    3.blcok创建触发器KEY-DUPREC

    begin
     duplicate_record;
    end;

    结束.

    -----------------------------------------------------------------

    出现错误:app-fnd-10206 this record already exists.

    错误原因:

    1.表是通过生产环境复制过来的,但是只复制了table 并没有复制对应的sequence,导致line_id验证唯一值的时候出错 .

    2.之后又发现当按F6的时候会将line_id一同复制过来,于是在代码中加入:

    begin
    duplicate_record;
    SELECT CUX_HRSC_MEND_S.currval
                  INTO :MEND.MEND_ID
                  FROM SYS.DUAL;
    end;
  • 相关阅读:
    装饰
    统一软件开发过程之2:用例文本书写
    统一软件开发过程之1:创建领域模型
    工厂方法
    volatile
    中介者
    建造者
    C#委托,事件与回调函数
    控件资源嵌入
    装饰
  • 原文地址:https://www.cnblogs.com/hopedba/p/5777556.html
Copyright © 2011-2022 走看看