收客户还款记账(或收款记账)(转)

一、说明

  本操作是FI模块应收账款中的一个记账操作,接收客户的付款,增加银行存款(或现金),并将相应的发票作清账。
  客户的发票可以是模块用事务代码FB70生成的凭证,也可以是在SD模块用事务代码VF01生成的凭证。操作后客户的应收款项将减少。
  本例操作是部分接收客户款项,未清项有多个但只选择其中一个(或者几个)。在做此操作前需查询客户的应收金额,详见《显示应收账款余额》,确认收款的冲销条目后再操作。

二、示例数据
条目R/O数据
抬头
凭证日期R<当前日期>
过账日期R<当前日期>
凭证类型RDZ
公司代码RC100枫竹丹青有限责任公司
银行数据→科目R11002000 银行存款-工商银行
银行数据→金额R1404.00
银行数据→起息日O<系统默认>
未清项选择→科目RT-C10001
未清项选择→科目类型RD 客户
未清项条目
输入金额-1404.00

      (说明:表格中R/O列:R必输;O选输)
      表1 示例数据
  以上未将系统默认数据列出,细节请查看后续截图。未清项条目的输入金额是对行项目选择后的累计值,可查看后续操作。

三、操作

  在前台输入事务代码F-28,或按图1进行操作,执行后进入图2界面。
这里写图片描述
      图1 F-28前台路径
  图2是收款记账的抬头数据界面,有一些默认值被带出。首先确认凭证类型是DZ,公司代码为C100。过账日期及过账期间系统自动带出,但需手动输入凭证日期。银行数据组里输入收款的科目及金额。未清项选择里的客户是输入客户编号,注意科目类型为D。填写清楚后,按回车键或“处理未清项项目”按钮进入图3界面。
这里写图片描述
      图2 收款记账抬头数据
  图3是处理未清项界面,系统个默认进入“标准”标签页,可以看到有多个凭证需要收款,通过凭证编号和凭证类型(RV)可知这都是由SD模块出具发票VF01生成的凭证。注意“CNY总额”的栏目文字为蓝色,它的数值合并自动转至下面“已分配”栏,而在图2输入的金额则转至“输入金额”栏。
这里写图片描述
      图3 处理未清项_标准标签页
  此时“输入金额”栏数值是1404 CNY,多项合计的“已分配”栏是4914.00 CNY,两者并不相等,需对此次不付款的条目进行取消激活操作。首先鼠标选中不需要激活的一条凭证,再点击取消激活按钮,凭证栏目的“CNY总额”栏位就变成黑色。或用鼠标双击凭证条目也可以进行激活、取消激活的切换。此项操作也可以在“部分支付”标签页下完成,两个凭证条目取消激活操作完成如图4所示,此时“输入金额”与“已分配”栏数值相等。
这里写图片描述
      图4 部分支付确认
以上操作完成,就可以保存做账了。在做账之前,也可以模拟一下记账科目。单击菜单“凭证→模拟”,显示图 5界面。
这里写图片描述
      图 5 模拟总帐界面
图5是记账模拟界面。点击保存按钮生成收款凭证。状态栏显示凭证编号及公司代码。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用还款计划表计算客户M1回率,需要进行以下几个步骤: 1. 根据还款计划表计算每个贷款的还款状态和逾期天数。 ``` SELECT loan_id, due_date, amount, CASE WHEN paid_date IS NOT NULL THEN '已还清' WHEN DATEDIFF(CURDATE(), due_date) > 30 THEN 'M2+' WHEN DATEDIFF(CURDATE(), due_date) > 0 THEN 'M1' ELSE '正常' END AS repay_status, CASE WHEN DATEDIFF(CURDATE(), due_date) > 30 THEN DATEDIFF(CURDATE(), due_date) - 30 WHEN DATEDIFF(CURDATE(), due_date) > 0 THEN DATEDIFF(CURDATE(), due_date) ELSE 0 END AS overdue_days FROM repayment_plan WHERE due_date <= CURDATE(); ``` 在以上SQL语句中,repayment_plan是还款计划表,包含贷款ID、到期日、应还款金额、实还款日期等字段。使用CASE语句计算每个还款计划的还款状态,即已还清、正常、M1、M2+,并使用DATEDIFF函数计算逾期天数,如果逾期天数大于30天,则标记为M2+,否则标记为M1。 2. 根据贷款ID计算每个客户的M1回金额和总逾期金额。 ``` SELECT customer_id, SUM(CASE WHEN repay_status = 'M1' THEN amount ELSE 0 END) AS m1_recovered_amount, SUM(CASE WHEN repay_status IN ('M1', 'M2+') THEN amount ELSE 0 END) AS total_overdue_amount FROM ( SELECT loan_id, customer_id, due_date, amount, CASE WHEN paid_date IS NOT NULL THEN '已还清' WHEN DATEDIFF(CURDATE(), due_date) > 30 THEN 'M2+' WHEN DATEDIFF(CURDATE(), due_date) > 0 THEN 'M1' ELSE '正常' END AS repay_status, CASE WHEN DATEDIFF(CURDATE(), due_date) > 30 THEN DATEDIFF(CURDATE(), due_date) - 30 WHEN DATEDIFF(CURDATE(), due_date) > 0 THEN DATEDIFF(CURDATE(), due_date) ELSE 0 END AS overdue_days FROM repayment_plan WHERE due_date <= CURDATE() ) AS temp GROUP BY customer_id; ``` 在以上SQL语句中,使用子查询计算每个贷款的还款状态和逾期天数,然后按贷款ID和客户ID进行分组,使用SUM函数计算每个客户的M1回金额和总逾期金额。 3. 计算每个客户的M1回率。 ``` SELECT customer_id, m1_recovered_amount / total_overdue_amount AS m1_recovery_rate FROM ( SELECT customer_id, SUM(CASE WHEN repay_status = 'M1' THEN amount ELSE 0 END) AS m1_recovered_amount, SUM(CASE WHEN repay_status IN ('M1', 'M2+') THEN amount ELSE 0 END) AS total_overdue_amount FROM ( SELECT loan_id, customer_id, due_date, amount, CASE WHEN paid_date IS NOT NULL THEN '已还清' WHEN DATEDIFF(CURDATE(), due_date) > 30 THEN 'M2+' WHEN DATEDIFF(CURDATE(), due_date) > 0 THEN 'M1' ELSE '正常' END AS repay_status, CASE WHEN DATEDIFF(CURDATE(), due_date) > 30 THEN DATEDIFF(CURDATE(), due_date) - 30 WHEN DATEDIFF(CURDATE(), due_date) > 0 THEN DATEDIFF(CURDATE(), due_date) ELSE 0 END AS overdue_days FROM repayment_plan WHERE due_date <= CURDATE() ) AS temp GROUP BY customer_id ) AS temp2; ``` 在以上SQL语句中,再次使用子查询计算每个客户的M1回金额和总逾期金额,然后计算每个客户的M1回率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值