IFS寫oracle腳本包中 空字符的判斷

FUNCTION Get_Machine_Work_Center_No (
   contract_ IN VARCHAR2,
   part_no_ IN VARCHAR2,
   routing_revision_ IN VARCHAR2,
   bom_type_ IN VARCHAR2,
   alternative_no_ IN VARCHAR2) RETURN VARCHAR2
IS
   temp_          ROUTING_OPERATION_TAB.work_center_no%TYPE;
BEGIN
   temp_ := '';
   temp_ := Get_Work_Center_No(contract_,part_no_,routing_revision_,bom_type_,alternative_no_,3);
   if (temp_ = '') then
     temp_ := Get_Work_Center_No(contract_,part_no_,routing_revision_,bom_type_,alternative_no_,1);
   END if;
   RETURN temp_;
END Get_Machine_Work_Center_No;

//取工作中心編號,首先取第三個工序的工作中心,若取不到,則取第一個工序的工作中心;
測試中發現:若有第三個工序,則能取正確;若只有一個工序就是取不出來,真是奇怪;
估計是判斷有問題:修改如下資料就正確無誤:

FUNCTION Get_Machine_Work_Center_No (
   contract_ IN VARCHAR2,
   part_no_ IN VARCHAR2,
   routing_revision_ IN VARCHAR2,
   bom_type_ IN VARCHAR2,
   alternative_no_ IN VARCHAR2) RETURN VARCHAR2
IS
   temp_          ROUTING_OPERATION_TAB.work_center_no%TYPE;
BEGIN
   temp_ := '';
   temp_ := Get_Work_Center_No(contract_,part_no_,routing_revision_,bom_type_,alternative_no_,3);
   if (temp_ = '') or (temp_  IS NULL ) then
     temp_ := Get_Work_Center_No(contract_,part_no_,routing_revision_,bom_type_,alternative_no_,1);
   END if;
   RETURN temp_;
END Get_Machine_Work_Center_No;

小問題,也要一個一個來解決...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值