开户行账户可用余额的计算方法
来源:互联网 发布:js拖动效果 编辑:程序博客网 时间:2024/06/10 01:46
select distinct b.ID BranchID,nSubjectType, b.sCode BranchNo, b.sName BranchName, b.sBankAccountCode BranchAccountNo, b.NBANKTYPE BranchTypeID, TO_CHAR(decode(ba.status, 2, 0, 5, 0, 7, 0, decode(nSubjectType, 4, 1, 5, 1, -1) * ((nvl(CurrentBalance.mDebitBalance, 0) + nvl(CurrentBalance.mCreditBalance, 0) + nvl(b.transamount, 0))) - nvl(basub.freezeamount, 0)), '999,999,999,999,999,999,990.99') muserableBalance from sett_vbranchtransamount b, ba_bankaccount ba, ba_subaccount basub, (select distinct * from sett_GlBalance where dtGlDate in (select dtopendate from sett_officetime where nofficeid = 1 and ncurrencyid = 1) and nofficeid = 1 and ncurrencyid = 1) CurrentBalance where b.sSubjectCode = CurrentBalance.sGlSubjectCode(+) and b.NBANKACCOUNTID = ba.id and ba.id = basub.accountid(+) and ba.status in (1, 8, 2) and b.nOfficeID = 1 and b.nCurrencyID = 1 order by b.sCode;
1.其中CurrentBalance表是这样的:
科目余额表
2.取出当日该开户行的科目余额(开户行的对应科目在sett_Branch表中的SSUBJECTCODE字段)
3.sett_vbranchtransamount 的SQL语句如下:
select sett_Branch."ID", sett_Branch."NOFFICEID", sett_Branch."SCODE", sett_Branch."SNAME", sett_Branch."SSUBJECTCODE", sett_Branch."SBRANCHPROVINCE", sett_Branch."SBRANCHCITY", sett_Branch."NSTATUSID", sett_Branch."SBANKACCOUNTCODE", sett_Branch."SCREDITBOOKEDACCOUNT", sett_Branch."SDEBITBOOKEDACCOUNT", sett_Branch."NISSINGLE", sett_Branch."NCURRENCYID", sett_Branch."SCASHCREDITBOOKEDACCOUNT", sett_Branch."SCASHDEBITBOOKEDACCOUNT", sett_Branch."STRANSFERCREDITBOOKEDACCOUNT", sett_Branch."STRANSFERDEBITBOOKEDACCOUNT", sett_Branch."SPRINTNAME", sett_Branch."NBANKTYPE", sett_Branch."NISAUTOVIREMENTBYBANK", sett_Branch."SBANKSERVICENAME", sett_Branch."SENTERPRISENAME", sett_Branch."SBANKEXCHANGECODE", sett_Branch."SBRANCHCODE", sett_Branch."NACCOUNTTYPEID", sett_Branch."NDEPOSITTERM", sett_Branch."SINTERESTSUBJECT", sett_Branch."SPANSUBJECT", sett_Branch."NBANKACCOUNTID", nvl(nSubjectType, 1) nSubjectType, nvl(vcheckedtrans.mamount, 0) amount, nvl(vcheckedtrans.mamount, 0) + nvl(vunchecktrans.mamount, 0) transamount from sett_Branch, (select nbankid, sum(mamount) mamount from sett_vbranchunchecktransamount group by nbankid) vunchecktrans, sett_vbranchcheckedtransamount vcheckedtrans, sett_VglSubjectDefinition vsubject where sett_Branch.sSubjectCode = vsubject.sSubjectCode(+) and sett_Branch.nOfficeID = vsubject.nOfficeID(+) and sett_Branch.ncurrencyid = vsubject.ncurrencyid(+) and sett_Branch.sSubjectCode = vcheckedtrans.sSubjectCode(+) and sett_Branch.nOfficeID = vcheckedtrans.nOfficeID(+) and sett_Branch.ncurrencyid = vcheckedtrans.ncurrencyid(+) and sett_Branch.id = vunchecktrans.nbankid(+) and sett_Branch.nStatusID = 1 and sett_branch.naccounttypeid = 1 order by sett_Branch.Scode 注: b.mamount = nvl(vcheckedtrans.mamount, 0) + nvl(vunchecktrans.mamount, 0) ;
- 开户行账户可用余额的计算方法
- 计算账户的余额及日均余额
- 多并发时支付如何保持账户余额的一致性?
- 账户余额重算问题
- 社保账户余额不够发一年,我们的养老金被谁吃了?
- 【详解】Python写入账户余额Excel表
- mycncart之账户余额支付方式
- JS打印账户余额存款.html
- 构造函数实现动态账户余额
- 设置中应用程序已用 可用空间的计算方法:
- 再度剖析AD账户新旧密码同时可用的问题
- 招行查开户行
- 案例分析警示安全隐患:免费WiFi购物卷走账户余额
- java创建银行账户,自定义取钱超过余额异常
- 余额宝的蝴蝶效应
- 假设你每年初往银行账户中1000元钱,银行的年利率为4.7%。 一年后,你的账户余额为: 1000 * ( 1 + 0.047) = 1047 元 第二年初你又存入1000元,则两年后账户余额为: (
- 查询可用短信余额 Monxin专用(PHP代码函数)
- 域控制器不可用的情况下使用域账户登录客户机
- 中医教你睡觉的诀窍
- Ubuntu系统性能优化详细教程
- JS判断是否为null
- Python中截取强大的一个东西
- 关注点
- 开户行账户可用余额的计算方法
- 2010-07-21 使用系统调用实现文件复制
- 个人技术发展-之面向需求
- firefox打开页面时,dtree显示不了
- 1920: Jojer JAVA大数
- Looksmart出售FindArticles后
- 幻云若雨在本站的首博
- Myeclipse快捷键
- ASP.NET的SEO:Linq to XML---网站地图和RSS Feed (6)