📄 c_invoice_checkpaid.sql
字号:
CREATE OR REPLACE PROCEDURE C_Invoice_CheckPaid
/*************************************************************************
* The contents of this file are subject to the Compiere License. You may
* obtain a copy of the License at http://www.compiere.org/license.html
* Software is on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either
* express or implied. See the License for details. Code: Compiere ERP+CRM
* Copyright (C) 1999-2002 Jorg Janke, ComPiere, Inc. All Rights Reserved.
*************************************************************************
* $Id: C_Invoice_CheckPaid.sql,v 1.1 2002/08/13 05:27:36 jjanke Exp $
***
* Title: Set Paid for Open Invoices, where open amount = 0
* Description:
* Statement
UPDATE C_Invoice SET IsPaid = 'Y'
WHERE IsPaid = 'N' AND C_Invoice_Open (C_Invoice_ID) = 0
* does not work (??), so explicit loop
************************************************************************/
AS
CURSOR Cur_Paid IS
SELECT C_Invoice_ID
FROM C_Invoice
WHERE IsPaid = 'N'
AND C_Invoice_Open (C_Invoice_ID) = 0
FOR UPDATE;
v_Count NUMBER := 0;
BEGIN
FOR p IN CUR_Paid LOOP
v_Count := v_Count + 1;
UPDATE C_Invoice
SET IsPaid = 'Y'
WHERE CURRENT OF CUR_Paid;
-- DBMS_OUTPUT.PUT_LINE(p.C_Invoice_ID);
END LOOP;
DBMS_OUTPUT.PUT_LINE('Invoices Paid=' || v_Count);
COMMIT;
END C_Invoice_CheckPaid;
/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -