Oracle function

create function

CREATE OR REPLACE Function Check_Bond_By_Item(p_Organization_Id Number,

                                              p_Dept_Part       Varchar2,

                                              p_ebpt_item_type  number)

  Return Varchar2 Is

  x_Hs_Code_t Msl_Bnd_Ems_Lines.Hs_Code_t%Type;

  x_site      varchar2(10);

  cursor Cur_ems is

    Select Ems_No

      From Msl_Bnd_Ems_Headers Mbeh

     Where Mbeh.Site = x_Site

       And Ems_Type = 8;

  x_Return Varchar2(2);

Begin

  begin

    Select Site  Into x_Site

      From Org_Organization_Web Oow

     Where Oow.Organization_Id = p_Organization_Id;

  Exception

    When Others Then

      x_Site := '';

  end;

  for C1r in Cur_ems loop

    Begin

      Select Hs_Code_t Into x_Hs_Code_t

        From Msl_Bnd_Ebpt

       where Dept_Part = p_Dept_Part

         And Ems_No = C1r.Ems_No

         And Hs_Code_t is not null

         And ebpt_item_type = p_ebpt_item_type

         And rownum = 1;

    Exception

      When Others Then

        Begin

          Select Hs_Code_t Into x_Hs_Code_t

            From Msl_Bnd_Twins_Ebpt

           Where Dept_Part = p_Dept_Part

             And Ems_No = C1r.Ems_No

             And Hs_Code_t is not null

             And ebpt_item_type = p_ebpt_item_type

             And rownum = 1;

        Exception

          When Others Then

            x_Return := 'N';

        End;

    End;

    If x_Hs_Code_t is not null then

      x_Return := 'Y';

      goto return_value;

    End If;

  end loop;

  <<return_value>>

  Return nvl(x_Return, 'N');

End;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值