您的位置:首页 > 编程语言 > Go语言

Compilation errors for FUNCTION AWCARGOWEBJMNEW.FUN_GETVSLVOY161110 Error: PLS-00103: Encountered t

2017-10-20 14:31 411 查看
运行存储过程报错如下:

Compilation errors for FUNCTION AWCARGOWEBJMNEW.FUN_GETVSLVOY161110

Error: PLS-00103: Encountered the symbol "SELECT" when expecting one of the following:

( - + case mod new not null <an identifier>

<a double-quoted delimited-identifier> <a bind variable>

continue avg count current exists max min prior sql stddev

sum variance execute forall merge time timestamp interval

date <a string literal with character set specification>

<a number> <a single-quoted SQL string> pipe

<an alternatively-quoted string literal with character set specification>

<an alternat

Line: 1628

Text: SELECT NVL(SUM(Fun_GetWMSCount(SvcOrderBill.OrderBillID,

Error: PLS-00103: Encountered the symbol ")" when expecting one of the following:

* & - + ; / at for mod remainder rem <an exponent (**)> and

or group having intersect minus order start union where

connect || multiset

Line: 1653

Text: AND Fun_GetWMSCount(SvcOrderBill.OrderBillID, 5) < 500);

Error: PLS-00103: Encountered the symbol "SELECT" when expecting one of the following:

( - + case mod new not null <an identifier>

<a double-quoted delimited-identifier> <a bind variable>

continue avg count current exists max min prior sql stddev

sum variance execute forall merge time timestamp interval

date <a string literal with character set specification>

<a number> <a single-quoted SQL string> pipe

<an alternatively-quoted string literal with character set specification>

<an alternat

Line: 1660

Text: SELECT NVL(SUM(Fun_GetWMSCount(SvcOrderBill.OrderBillID,

Error: PLS-00103: Encountered the symbol ")" when expecting one of the following:

* & - + ; / at for mod remainder rem <an exponent (**)> and

or group having intersect minus order start union where

connect || multiset

Line: 1685

Text: AND Fun_GetWMSCount(SvcOrderBill.OrderBillID, 5) < 500);

Error: PLS-00103: Encountered the symbol "SELECT" when expecting one of the following:

( - + case mod new not null <an identifier>

<a double-quoted delimited-identifier> <a bind variable>

continue avg count current exists max min prior sql stddev

sum variance execute forall merge time timestamp interval

date <a string literal with character set specification>

<a number> <a single-quoted SQL string> pipe

<an alternatively-quoted string literal with character set specification>

<an alternat

Line: 1696

Text: SELECT NVL(SUM(Fun_GetWMSCount(SvcOrderBill.OrderBillID, 5)),

Error: PLS-00103: Encountered the symbol ")" when expecting one of the following:

* & - + ; / at for mod remainder rem <an exponent (**)> and

or group having intersect minus order start union where

connect || multiset

Line: 1719

Text: AND Fun_GetJHFlag(SvcOrderBill.OrderBillID) = 0);

Error: PLS-00103: Encountered the symbol "SELECT" when expecting one of the following:

( - + case mod new not null <an identifier>

<a double-quoted delimited-identifier> <a bind variable>

continue avg count current exists max min prior sql stddev

sum variance execute forall merge time timestamp interval

date <a string literal with character set specification>

<a number> <a single-quoted SQL string> pipe

<an alternatively-quoted string literal with character set specification>

<an alternat

Line: 1768

Text: SELECT NVL(SUM(Fun_GetWMSCount(SvcOrderBill.OrderBillID,

Error: PLS-00103: Encountered the symbol ")" when expecting one of the following:

* & - + ; / at for mod remainder rem <an exponent (**)> and

or group having intersect minus order start union where

connect || multiset

Line: 1800

Text: END) < 300);

Error: PLS-00103: Encountered the symbol "SELECT" when expecting one of the following:

( - + case mod new not null <an identifier>

<a double-quoted delimited-identifier> <a bind variable>

continue avg count current exists max min prior sql stddev

sum variance execute forall merge time timestamp interval

date <a string literal with character set specification>

<a number> <a single-quoted SQL string> pipe

<an alternatively-quoted string literal with character set specification>

<an alternat

Line: 1807

Text: SELECT NVL(SUM(Fun_GetWMSCount(SvcOrderBill.OrderBillID,

Error: PLS-00103: Encountered the symbol ")" when expecting one of the following:

* & - + ; / at for mod remainder rem <an exponent (**)> and

or group having intersect minus order start union where

connect || multiset

Line: 1839

Text: END) < 300);

Error: PLS-00103: Encountered the symbol "SELECT" when expecting one of the following:

( - + case mod new not null <an identifier>

<a double-quoted delimited-identifier> <a bind variable>

continue avg count current exists max min prior sql stddev

sum variance execute forall merge time timestamp interval

date <a string literal with character set specification>

<a number> <a single-quoted SQL string> pipe

<an alternatively-quoted string literal with character set specification>

<an alternat

Line: 1850

Text: SELECT NVL(SUM(Fun_GetWMSCount(SvcOrderBill.OrderBillID, 5)),

Error: PLS-00103: Encountered the symbol ")" when expecting one of the following:

* & - + ; / at for mod remainder rem <an exponent (**)> and

or group having intersect minus order start union where

connect || multiset

Line: 1873

Text: AND Fun_GetJHFlag(SvcOrderBill.OrderBillID) = 0);

Error: Hint: Variable 'v_lWeightcountZC' is declared but never used in 'Fun_GetVslVoy161110'

Line: 17

Text: v_lWeightcountZC --当天已激活板仓位

Error: Hint: Variable 'v_lWeightcountZC1' is declared but never used in 'Fun_GetVslVoy161110'

Line: 19

Text: v_lWeightcountZC1 --当天已订舱仓位

Error: Hint: Variable 'v_lWeightcountZC2' is declared but never used in 'Fun_GetVslVoy161110'

Line: 21

Text: v_lWeightcountZC2 --当天众筹份数

Error: Hint: Variable 'v_lWeightcountZCReal' is declared but never used in 'Fun_GetVslVoy161110'

Line: 23

Text: v_lWeightcountZCReal --应扣除板仓位

看了下语法没有什么问题, 但是试了一上午June搞不定, 中午吃饭的时候反复想这里报错:

写法很怪:

RETURN v_lScheduleReadyWeightDown - (

SELECT NVL(SUM(Fun_GetWMSCount(SvcOrderBill.OrderBillID,

5)),

0) ScheduleOp1Weight

FROM SvcOrderBill,

SvcOrderCustomer,

SvcOrderOperate,

SvcOrderQuantity

WHERE SvcOrderBill.OrderQuantityID =

SvcOrderQuantity.OrderQuantityID

AND SvcOrderBill.OrderOperateID =

SvcOrderOperate.OrderOperateID

AND SvcOrderBill.OrderCustomerID =

SvcOrderCustomer.OrderCustomerID

AND NVL(SvcOrderCustomer.SelfFlag, 0) = 0

AND SvcOrderCustomer.ScheduleIndex = v_ScheduleIndex

AND SvcOrderOperate.Op1Flag = 1

AND SvcOrderOperate.Op40Flag = 1

AND SvcOrderOperate.Op57Flag <> 1

AND SvcOrderOperate.Op22Flag <> 1

AND SvcOrderOperate.Op22Flag <> 2

AND SUBSTR(SvcOrderBill.OrderBillCode, 0, 2) = 'DS'

AND SvcOrderBill.ShippingDate = v_Shippingdate

AND Fun_GetWebOrderStatus(SvcOrderBill.OrderBillCode) <>

'取消中'

AND Fun_GetJHFlag(SvcOrderBill.OrderBillID) = 0

AND (CASE

Fun_GetWMSCount(SvcOrderBill.OrderBillID, 25)

WHEN 0 THEN

0

ELSE

(Fun_GetWMSCount(SvcOrderBill.OrderBillID, 5) /

NVL(Fun_GetWMSCount(SvcOrderBill.OrderBillID, 23),1))-- modified by Aaron

END) < 300);

我改成了人类容易理解的方法:

SELECT NVL(SUM(Fun_GetWMSCount(SvcOrderBill.OrderBillID,

5)),

0) ScheduleOp1Weight

into v_ScheduleOp1Weight

FROM SvcOrderBill,

SvcOrderCustomer,

SvcOrderOperate,

SvcOrderQuantity

WHERE SvcOrderBill.OrderQuantityID =

SvcOrderQuantity.OrderQuantityID

AND SvcOrderBill.OrderOperateID =

SvcOrderOperate.OrderOperateID

AND SvcOrderBill.OrderCustomerID =

SvcOrderCustomer.OrderCustomerID

AND NVL(SvcOrderCustomer.SelfFlag, 0) = 0

AND SvcOrderCustomer.ScheduleIndex = v_ScheduleIndex

AND SvcOrderOperate.Op1Flag = 1

AND SvcOrderOperate.Op40Flag = 1

AND SvcOrderOperate.Op57Flag <> 1

AND SvcOrderOperate.Op22Flag <> 1

AND SvcOrderOperate.Op22Flag <> 2

AND SUBSTR(SvcOrderBill.OrderBillCode, 0, 2) = 'DS'

AND SvcOrderBill.ShippingDate = v_Shippingdate

AND Fun_GetWebOrderStatus(SvcOrderBill.OrderBillCode) <>

'取消中'

AND Fun_GetJHFlag(SvcOrderBill.OrderBillID) = 0

AND (CASE

Fun_GetWMSCount(SvcOrderBill.OrderBillID, 25)

WHEN 0 THEN

0

ELSE

(Fun_GetWMSCount(SvcOrderBill.OrderBillID, 5) /

NVL(Fun_GetWMSCount(SvcOrderBill.OrderBillID, 23),1))-- modified by Aaron

END) < 300;

RETURN v_lScheduleReadyWeightDown-v_ScheduleOp1Weight;

就可以啦
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: