永发信息网

postgre 存储过程 返回 <unnamed portal 1>

答案:1  悬赏:0  手机版
解决时间 2021-01-17 17:04
postgre 存储过程 返回 <unnamed portal 1>
最佳答案
CREATE OR REPLACe FUNCTION paymentavailable(p_c_payment_id numeric)
RETURNS numeric AS
$BODY$

DECLARE
v_Currency_ID NUMERIC(10);
v_AvailableAmt NUMERIC := 0;
v_IsReceipt C_Payment.IsReceipt%TYPE;
v_Amt NUMERIC := 0;
r RECORD;

BEGIN
-- Charge - fully allocated
SELECT MAX(PayAmt)
INTO v_Amt
FROM C_Payment
WHERe C_Payment_ID=p_C_Payment_ID AND C_Charge_ID > 0;
IF (v_Amt IS NOT NULL) THEN
RETURN 0;
END IF;

-- Get Currency
SELECt C_Currency_ID, PayAmt, IsReceipt
INTO v_Currency_ID, v_AvailableAmt, v_IsReceipt
FROM C_Payment_v -- corrected for AP/AR
WHERe C_Payment_ID = p_C_Payment_ID;
-- DBMS_OUTPUT.PUT_LINE('== C_Payment_ID=' || p_C_Payment_ID || ', PayAmt=' || v_AvailableAmt || ', Receipt=' || v_IsReceipt);

-- Calculate Allocated Amount
FOR r IN
SELECt a.AD_Client_ID, a.AD_Org_ID, al.Amount, a.C_Currency_ID, a.DateTrx
FROM C_AllocationLine al
INNER JOIN C_AllocationHdr a ON (al.C_AllocationHdr_ID=a.C_AllocationHdr_ID)
WHERe al.C_Payment_ID = p_C_Payment_ID
AND a.IsActive='Y'
LOOP
v_Amt := currencyConvert(r.Amount, r.C_Currency_ID, v_Currency_ID, r.DateTrx, null, r.AD_Client_ID, r.AD_Org_ID);
v_AvailableAmt := v_AvailableAmt - v_Amt;
-- DBMS_OUTPUT.PUT_LINE(' Allocation=' || a.Amount || ' - Available=' || v_AvailableAmt);
END LOOP;
-- Ignore Rounding
IF (v_AvailableAmt BETWEEN -0.00999 AND 0.00999) THEN
v_AvailableAmt := 0;
END IF;
-- Round to penny
v_AvailableAmt := ROUND(COALESCE(v_AvailableAmt,0), 2);
RETURN v_AvailableAmt;
END;

$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
ALTER FUNCTION paymentavailable(numeric)
OWNER TO postgres;
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
保护臭氧层就是保护人类阅读答案
江西菜属那个菜系,各有什么特点
老大叫大毛,老二叫二毛,老三叫什么
10千瓦的一天能发多少电
古代保健养生人物的墙绘
本田噢德赛车的刹车片多少钱一付
恳求有音乐达人能告诉我一个视频里的一首英文
嘉善县大云镇江家村徐家浜2号怎么走呢?
透过滴在玻璃台板上的水滴看过去,可以发现压
PU是什么材料
word如何批量添加红头文件
盘点韩国白羊座明星有哪些
20天的玄凤鹦鹉怎么分公母
一部微电影.内容女儿为了报答养父献出第一次
七长八短的成语意思及歇后语
推荐资讯
建筑结构图中的 钢砼翻边什么意思
广东坐船去海南受法院限制能去吗
我跖疣冰冻了三天了,接下来怎么处理它?谢谢
网址换什么了
12减25分之12等于多少?
尉氏县开封金农种业怎么去啊,谁知道地址啊
长期服用巢倍滋真的会发胖吗
UFO动漫体验中心地址有知道的么?有点事想过
赣B87K39是哪个的车?
生产经营和经营含义一样吗?
小青读一本书第一天读了二十页,第二天多读四
24x()-()x12等于18括号里填相同的数
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?