码迷,mamicode.com
首页 > 其他好文 > 详细

EBS_FORM_开发:关于WHEN-VALIDATE-ITEM上面commit

时间:2016-08-18 19:49:41      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:

在这里form builder不允许commit_form 于是想着用  forms_ddl(‘COMMIT‘);  一实验果然可以实现:

--mend行 sum分拷贝到mid行
copy(name_in(mend.SUM_SCORE),mid.SUM_SCORE_M);
--copy(name_in(‘mid.STD_SCORE‘),‘mid.SUM_SCORE_M‘);
--fnd_message.debug(:mend.SUM_SCORE);
--fnd_message.debug(:mid.SUM_SCORE_M);

--mid行与难度系数比
copy(name_in(mid.SUM_SCORE_M) * nvl(name_in(mid.HARD_RATIO),1),mid.MID_AVG_SCORE);
--mid行平均分到line行
copy(name_in(mid.SMALL_AVG),lines.MID_AVG);
--line行算总分
copy(name_in(lines.MID_AVG)*name_in(lines.WPM_WEIGHTING),LINES.WPM_MEND_AVG_SCORE);
--header行算总分
copy(name_in(lines.BIG_SUM),headers.TOTAL_SCORE);
copy(name_in(HEADERS.PEOPLE_FINAL_SCORE),HEADERS.FINAL_SCORE);

/**/

if :mend.MEND_SCORE is not null then 
     :mend.MEND_SUBMIT_FLAG := 1;
     :mend.M_SU_FLAG := 已评价;
else 
   :mend.MEND_SUBMIT_FLAG := 0;
     :mend.M_SU_FLAG := 未评价;
end if;
UPDATE CUX_HRPE_MEND_T SET
      MEND_ID                        = :MEND.MEND_ID,
      MID_ID                         = :MEND.MID_ID,
      LINE_ID                        = :MEND.LINE_ID,
      HEADER_ID                      = :MEND.HEADER_ID,
      MEND_SUBMIT_FLAG               = :MEND.MEND_SUBMIT_FLAG
 WHERE ROWID = :MEND.row_id;
    IF (SQL%NOTFOUND) THEN
     RAISE NO_DATA_FOUND;
    END IF;
    forms_ddl(COMMIT); 
  --    set_record_property(:system.trigger_record,:system.trigger_block, STATUS,QUERY_STATUS);


DECLARE
  l_mend_sub_f     NUMBER  := 0;
  l_count_MID      NUMBER  := 0;
  
  l_MID_sub_f      NUMBER  := 0;
  l_count_LINE     NUMBER  := 0;

BEGIN
 --算行提交状态
   Select  SUM(nvl(MEND_SUBMIT_FLAG,0)),Count(1)
           into  l_mend_sub_f,l_count_MID
     From  CUX_HRPE_MEND_T M
     Where 1=1
     And   m.MID_id = :MEND.MID_ID;  
  
  IF 
    l_mend_sub_f = l_count_MID THEN 
    :MID.MID_SUBMIT_FLAG := 1;
    :MID.MID_SU_FLAG := 已评价;
  ELSE 
    :MID.MID_SUBMIT_FLAG := 0;
    :MID.MID_SU_FLAG := 未评价;
  END IF;
  
UPDATE CUX_HRPE_MID_T SET
      LINE_ID                        = :MID.LINE_ID,
      HEADER_ID                      = :MID.HEADER_ID,
      MID_ID                         = :MID.MID_ID,
      MID_SUBMIT_FLAG                = :MID.MID_SUBMIT_FLAG
 WHERE ROWID = :MID.row_id;
  IF (SQL%NOTFOUND) THEN
     RAISE NO_DATA_FOUND;
  END IF;
forms_ddl(COMMIT);   


Select SUM(nvl(MID_SUBMIT_FLAG,0)),Count(1)
           into  l_MID_sub_f,l_count_LINE
     From  CUX_HRPE_Mid_T M
     Where 1=1
     And   m.line_id = :MEND.line_id;  
  
  IF 
    l_MID_sub_f = l_count_LINE THEN 
    :LINES.wpm_submit_flag := 1;
    :LINES.L_SU_FLAG := 已评价;
  ELSE 
    :LINES.wpm_submit_flag := 0;
    :LINES.L_SU_FLAG := 未评价;
  END IF;
UPDATE CUX_HRPE_LINES_T SET
      LINE_ID                        = :LINES.LINE_ID,
      HEADER_ID                      = :LINES.HEADER_ID,
      WPM_SUBMIT_FLAG                = :LINES.WPM_SUBMIT_FLAG
 WHERE ROWID = :LINES.row_id;
 IF (SQL%NOTFOUND) THEN
     RAISE NO_DATA_FOUND;
  END IF;
  
  forms_ddl(COMMIT);   
    set_record_property(:system.trigger_record,:system.trigger_block, STATUS,QUERY_STATUS);  
End;

 

EBS_FORM_开发:关于WHEN-VALIDATE-ITEM上面commit

标签:

原文地址:http://www.cnblogs.com/hopedba/p/5785101.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!