zoukankan      html  css  js  c++  java
  • 待研究结算中心memo|完结|

    create or replace trigger TNEWSAME
      before update on fts_newpayment  
      for each row
    declare
      pk1 varchar2(80);
      pk2 varchar2(80);
      -- local variables here
    begin
      select pk_newpayment into pk1 from fts_newpayment where pk_newpayment=:new.pk_newpayment
      and :new.balatype='1';
      select pk_newpayment into pk2 from fts_newpayment where pk_newpayment=:new.pk_newpayment
      and :new.balatype='2';
      update fts_newpayment_b set memo=memo||purpose where pk_newpayment=pk1;
      update fts_newpayment_b set memo=purpose where pk_newpayment=pk2;
     
    end TNEWSAME;

    据说是什么自治事务

    简化版

    create or replace trigger TNEWSAME
      before update on fts_newpayment  
      for each row
    declare
      
      -- local variables here
    begin
       
      update fts_newpayment_b set memo=purpose where pk_newpayment=:new.pk_newpayment;
     
     
    end TNEWSAME;

    更新2012-11-29

    create or replace trigger TNEWSAME
      before update of auditdate on fts_newpayment  
      for each row
    declare
      -- local variables here
    begin   
      update fts_newpayment_b set memo=purpose where pk_newpayment=:new.pk_newpayment
      and memo is null;  
    end TNEWSAME;

    使用到了update of audituser on fts_newpayment,这样最大限量减少触发,但是这里第二步user不变,不知道为什么去掉and memo is null;触发器还是会变

    15:11:46更新了|确认完结暂定|

    create or replace trigger TNEWSAME
      before update of auditdate on fts_newpayment  
      for each row
    declare
      -- local variables here
    begin   
      if :new.iscashpay='Y' THEN 
         raise_application_error(-20001,'选择了现金业务,分公司反审核修改之后重新提交!');
         else
      update fts_newpayment_b set memo=purpose where pk_newpayment=:new.pk_newpayment
      and memo is null;  
      end if;
    end TNEWSAME;

     

     2012-12-03 16:10:38 

    想完善对外付款方式下“网上支付”忘记打钩的校验,不知道这个时候else还是否可以

    create or replace trigger TNEWSAME
      before update of auditdate on fts_newpayment  
      for each row
    declare
      -- local variables here
    begin   
      if :new.iscashpay='Y' THEN 
         raise_application_error(-20001,'选择了现金业务,分公司反审核修改之后重新提交!');
         elsif :new.bustype='1' and :new.isnetsend='N' THEN
         raise_application_error(-20001,'对外付款必须选中网上支付,分公司反审核修改之后重新提交!');
         else
      update fts_newpayment_b set memo=purpose where pk_newpayment=:new.pk_newpayment
      and memo is null;  
      end if;
    end TNEWSAME;

     

  • 相关阅读:
    win7下配置JAVA环境变量
    使用PLSQL Developer和DbVisualizer、SQLDBx查询oracle数据库时出现乱码
    PL/SQL连接ORACLE失败,ORA-12154: TNS: could not resolve the connect identifier specified
    分布式计算开源框架Hadoop入门实践(三)
    分布式计算开源框架Hadoop入门实践(二)
    js使用WebSocket,java使用WebSocket
    springboot管理类,springboot注入类
    博客园点击弹出桃心的js样式、自动落雪花 、复制放进去即可实现
    jquery提交表单 提交form表单
    vue下拉列表
  • 原文地址:https://www.cnblogs.com/sumsen/p/2792713.html
Copyright © 2011-2022 走看看