createorreplacefunctionamountfn
(
    customernum varchar2,
    startdate   date
) returncharis
    v_amount         number;
    v_receipt_amount number;
    refundamount     number;
    lastdebt         number;
begin
    ---------------------------**********得到上月欠款**************-------------------------------
selectsum(nvl(rct.extended_amount_tax, 0)) extended_amount --当前参数日期之前的所有货款
intov_amount
      from(selectctl.customer_trx_line_id,
                   ct.customer_trx_id,
                   ct.initial_customer_trx_id,
                   ct.trx_number,
                   nvl(cux_ar_utl_pkg.get_trx_gl_date(ct.customer_trx_id),
                       ct.trx_date) trx_date,
                   ct.bill_to_customer_id,
                   nvl(ctl.gross_extended_amount, ctl.extended_amount) extended_amount_tax
              fromra_customer_trx_all       ct,
                   ra_customer_trx_lines_all ctl,
                   hz_parties                hpt,
                   hz_cust_accounts          hca,
                   ra_cust_trx_types_all     ctt,
                   mtl_units_of_measure      uom
             wherect.customer_trx_id =ctl.customer_trx_id
               andct.org_id =ctl.org_id
               andct.bill_to_customer_id =hca.cust_account_id
               andhca.party_id =hpt.party_id
               andctt.cust_trx_type_id =ct.cust_trx_type_id
               andctl.line_type !='TAX'
               andctt.type in('INV', 'CM')
               andctt.cust_trx_type_id !=
                   cux_ar_utl_pkg.get_return_commitment_type
               andctl.uom_code =uom.uom_code(+)) rct
     where1=1
       andrct.bill_to_customer_id =
           (selecta.customer_id
              fromar_customers a
             wherea.customer_number =customernum)
       andrct.trx_date <=trunc(startdate, 'month') -1;
    dbms_output.put_line(v_amount ||
                         ':v_amountv_amountv_amountv_amountv_amount');
    selectnvl(sum(acr.functional_amount), 0) --当前参数日期之前的所有应付款
intov_receipt_amount
      fromar_cash_receipts_v acr
     whereacr.gl_date <=trunc(startdate, 'month') -1
       andacr.state !='REVERSED'
       andacr.customer_id =
           (selecta.customer_id
              fromar_customers a
             wherea.customer_number =customernum);
    dbms_output.put_line(v_receipt_amount ||
                         ':v_receipt_amountv_receipt_amountv_receipt_amount');
    selectnvl(sum(araa.amount_applied), 0) --当前参数日期之前的所有退款
intorefundamount
      fromar_cash_receipt_history_all    acrh,
           ar_cash_receipts_all           acr,
           ar_receivable_applications_all araa
     whereacrh.gl_date <=trunc(startdate, 'month') -1
       andacrh.status !='REVERSED'
       andacr.cash_receipt_id =acrh.cash_receipt_id
       andacrh.cash_receipt_history_id =araa.cash_receipt_history_id
       andaraa.applied_customer_trx_id isnull
       andacrh.org_id =acr.org_id
       andaraa.display ='Y'
       andaraa.status ='ACTIVITY'
       andacr.pay_from_customer =
           (selecta.customer_id
              fromar_customers a
             wherea.customer_number =customernum);
    dbms_output.put_line(refundamount ||
                         ':refundAmountrefundAmountrefundAmount');
    lastdebt :=(v_amount -v_receipt_amount +refundamount); --小于当前日期之前的所有货款 减去 小于当前日期之前的所有应付帐款 加 小于当前日期之前的所有退款=上月欠款

returnlastdebt;
end;

AR客户对账单(上月欠款)相关推荐

  1. SWIFT电文 MT940客户对账单 报文格式说明

    MT940客户对账单 这是由帐户行(报告行)发送开户人授权接收对账单的银行(集中管理账户的银行),用来发送有关账户上所有发生额详细情况的报文格式. MT 940. Customer. Statemen ...

  2. 【微服务】矩阵式客户关系管理设计、实现方案

    这学期开始,正式开始了复旦MSE工程硕士的在读生涯,其教学计划中有一门选修课程为<客户关系管理>,一向习惯了理工科的我想换换口味,也希望从另一个角度开阔一下视野,所以毫不犹豫的选择了它,乍 ...

  3. 客户总拖货款,推说以后订货时分批付,怎么办?

    这是一位外贸人的疑问: 我有一位印度客户,欠款金额不大,一共六七千美元,虽然认账但一直不归还,拖了有一年了. 现在又有了订单,却要求将欠款分批到以后订单里还,每张订单还1000美金左右.新订单付款方式 ...

  4. 快看这里,掌柜星又有新功能更新啦

    掌柜星的研发工程师们真是一个个不眠不休的工作陀螺呀!如今小程序商城.进销存功能已经完善强大的同时,并没有选择停滞不前,反而更加一鼓作气,始终致力于如何极大方便用户体验,以不辜负每一位信任掌柜星的客户朋 ...

  5. SAP 需求分析与作业流程报告

    第一部分 绪论  一. M2专案综述 国际集团为了利用现代先进资计技术辅助,提高企业的管理水平,以完善自身的机制和增强企业的市场竞争力,在集团最高层领导的倡导和推动下设立了M2专案.作为一个管理水平的 ...

  6. 通达进销存管理系统操作说明书

    基本流程模块 系统登陆 在浏览器输入登陆地址,就可以打开以下界面,输入用户名和密码,点击"登陆". 系统首页 登陆以后,打开以下操作界面,界面比较直观,清晰易懂. 左边菜单栏有:购 ...

  7. java 开源记账_生鲜配送系统ERP(JAVA开源版)-水产记账ipad

    一只老菜鸟码农,一直专注于生鲜电商行业这些年,没有积累什么高难度的编程代码水平,一直追求技术全面化,现在什么开发都懂一点,任何语言都很快上手,但是算不上高手,而是实实在在积累了一些行业用户对信息化系统 ...

  8. SAP SD信用控制管理

    SAP系统信用管理功能的介绍:       R/3系统具有强大的信用管理功能.系统可将来自于FI.SD的财务及销售信息进行汇总, 提供即时的信用数据;并可依据信用政策对订单及发货进行管理,有效地降低风 ...

  9. 表单数据自动录入_Excel总表录入、分表自动更新,只要数据透视表和一个快捷键就行...

    合并多个分表到一个总表中,这样的操作很常见.但,有时候我们也需要反过来,即将一个总表拆分成多个子表,并且在总表中录入/修改数据后,每个分表都可以自动更新数据. 如以下资金流动表. 除了资金流水,我们还 ...

  10. 企业资源计划软件 业务知识点汇编整理

    1. 变更记录功能: 对PO,SO,JO,BOM都采用"审核"后变更模式,可记录操作者的变更历史. 2. 系统内置简单的文件管理系统.各种基本资料,单据,均可上传下载对应的文档. ...

最新文章

  1. 70.打印所有Spring boot载入的bean【从零开始学Spring Boot】
  2. poj1330Nearest Common Ancestors 1470 Closest Common Ancestors(LCA算法)
  3. FFT镜头效果的新进展
  4. python使用方法视频-python读取视频流提取视频帧的两种方法
  5. 找字符串中第一个只出现一次的字符
  6. Ab工具压力测试.及相应查看web服务排查问题
  7. 入门视频采集与处理(BT656简介) 转
  8. 【UI/UX】Web应用GUI设计
  9. 10. Have assignment operators return a reference to *this
  10. 关于编辑区无法调用chekbox的问题
  11. 【项目管理/PMP/第六版/新考纲】纯干货!项目发展史/项目定义/项目集/项目组合/十五至尊图
  12. NLP+VS︱深度学习数据集标注工具、图像语料数据库、实验室搜索ing...
  13. 记忆网络之Dynamic Memory Networks模型介绍及代码实现
  14. python 删除word 某一章节_聊聊python 办公自动化之 Word(中)
  15. vue的watch监听的用法
  16. 外卖订单语音通知功能如何实现?(附外卖订单语音通知模板)
  17. 排序算法-归并排序详细图解
  18. 海量上传文件服务器端,bat批量上传ftp文件到服务器
  19. Android 引导页开发管理2
  20. Google Chrome Windows平台稳定版离线安装包下载

热门文章

  1. 如何远程办公电脑 关于电脑远程办公的方法和工具分享
  2. Andriod.mk用法
  3. Xcel Energy与D.E.Shaw签署100MW光伏电站购电协议
  4. 报错Replace Autoprefixer browsers option to Browserslist config.
  5. 【一起入门NLP】中科院自然语言处理作业二:中英文语料训练CBOW模型获得词向量(pytorch实现)【代码+报告】
  6. 无刷直流电机四象限matlab pudn,一种无刷直流电机四象限运行的PWM控制方法与流程...
  7. 使用scrapy框架爬虫实战
  8. 微信小程序 自定义日期选择器
  9. “线上食堂”项目报告
  10. 战狼2影评-20170807