ORACLE 截断字符串

SevinaWang

SevinaWang

2016-02-19 15:44

下面图老师小编要跟大家分享ORACLE 截断字符串,简单的过程中其实暗藏玄机,还是要细心学习,喜欢还请记得收藏哦!

create or replace procedure ModifyLadingItemPack
(
  ASoditemguid varchar2,                  --合同电子仓单明细GUID
  ALadingitemGUID varchar2,               --提单子项GUID
  ACDResID varchar2,                      --电子仓单号
  APackageIDList varchar2,                --仓单捆包具体GUID列表
  Aladingnum float,
  Aladingpieces float,
  AReturnValue out integer                --返回值:
)
is
  ALadingItem_PackagesGUID varchar(32);
  ATempIDList varchar2(4000);
  AID varchar2(32);
  APackageWeight float;
  APackagePiece float;
  ATotalPackWeight float;
begin
  AReturnValue := 1;
  ATempIDList := APackageIDList;
  APackageWeight :=0;
  APackagePiece :=0;    ---------------------------------更新合同电子仓单明细---------------------------
  while ( INSTR(ATempIDList,':' ) 0 ) or ( LENGTH(ATempIDList ) 0 ) loop
        if INSTR(ATempIDList,':' ) 0 then            select sys_guid() into ALadingItem_PackagesGUID from dual;
           AID := SUBSTR(ATempIDList ,1,INSTR( ATempIDList,':') - 1 );
           ATempIDList := SUBSTR(ATempIDList,INSTR( ATempIDList,':') + 1 , LENGTH(ATempIDList) - INSTR(ATempIDList,':'));            ---------------------------------提单捆包明细----------------------------------
           insert into HT_LadingItem_packages(sGUID, sLadingItemGUID, sCDResID, sPackageID)
          values(ALadingItem_PackagesGUID, ALadingitemGUID, ACDResID,AID);            ---------------------------------更新仓单捆包明细状态---------------------------
           UPDATE ZY_Packages SET state = 5 WHERE SGUID = AID;            select fWeight into ATotalPackWeight from ZY_Packages where sGUID=AID;            APackageWeight:=APackageWeight+ATotalPackWeight;
           APackagePiece:=APackagePiece+1;
        else
           AID := ATempIDList;
           ATempIDList := '';
        end if;
   end loop;    update HT_SODItem set fLadingNum=fLadingNum+APackageWeight,fLadingPieces=fLadingPieces+APackagePiece
   where sGUID=ASoditemguid;   COMMIT;
EXCEPTION
  WHEN OTHERS THEN BEGIN
    AReturnValue := 99;
    ROLLBACK;
  END;
end;

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)
展开更多 50%)
分享

猜你喜欢

ORACLE 截断字符串

编程语言 网络编程
ORACLE 截断字符串

oracle 字符串转成行

编程语言 网络编程
oracle 字符串转成行

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

字符串分割

编程语言 网络编程
字符串分割

字符串格式定义

电脑入门
字符串格式定义

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

复制字符串中的字符

编程语言 网络编程
复制字符串中的字符

ORACLE中如何实现ASCII字符串和16进制串互相转换

编程语言 网络编程
ORACLE中如何实现ASCII字符串和16进制串互相转换

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Win10进行磁盘分区的多种方法

Win10进行磁盘分区的多种方法

在Win系统该怎样用U盘分区

在Win系统该怎样用U盘分区
下拉加载更多内容 ↓