【问题标题】:How to make debit and credit formula如何制作借方和贷方公式
【发布时间】:2016-04-06 05:08:58
【问题描述】:

我想逐行汇总所有借方并从借方金额中减去贷方。 就像前两行的总借方金额并从第 3,4 行中减去贷方并显示在 ttl blnc 列中,但以下结果不正确,它只是从借方中减去贷方

我需要这个结果

debit   Credit  Running Total
144       0       144
264       0       408
0        264      144
0        441     -297
2464      0       2167
144       0       2311
0      27306      -24995
264       0       -24731

这是我的代码

  result number:=0;
begin
  result:= result +  debit - credit;
  return result;

【问题讨论】:

    标签: php plsql


    【解决方案1】:

    使用这个公式

    RETURN(NVL(:CF_ttl_blnc,0)+NVL(:debit,0)-NVL(:credit,0));
    

    【讨论】:

      【解决方案2】:

      假设您想逐行查看运行总计,我将使用 SUM() 分析函数。

      SELECT 
       xti.dr_amount
      ,xti.cr_amount   
      ,SUM(dr_amount-cr_amount) OVER (ORDER BY xti.invoice_num)  running_total
      FROM
       xxcjp_test_invoices       xti
      ORDER BY
       xti.invoice_num
      ;
      

      使用以下创建测试数据

      CREATE TABLE XXCJP_TEST_INVOICES
      (invoice_num    VARCHAR2(10)
      ,dr_amount      NUMBER
      ,cr_amount      NUMBER
      )
      ;
      
      INSERT INTO XXCJP_TEST_INVOICES VALUES ('A001',144,0) ;
      INSERT INTO XXCJP_TEST_INVOICES VALUES ('A002',264,0) ;
      INSERT INTO XXCJP_TEST_INVOICES VALUES ('A003',0,264) ;
      INSERT INTO XXCJP_TEST_INVOICES VALUES ('A004',0,441) ;
      INSERT INTO XXCJP_TEST_INVOICES VALUES ('A005',2464,0) ;
      INSERT INTO XXCJP_TEST_INVOICES VALUES ('A006',144,0) ;
      INSERT INTO XXCJP_TEST_INVOICES VALUES ('A007',0,27306) ;
      INSERT INTO XXCJP_TEST_INVOICES VALUES ('A008',264,0) ;
      INSERT INTO XXCJP_TEST_INVOICES VALUES ('A009',55500,0) ;
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多