限额类费用报销单N+1原则
--添加通过自定义档案列表编码及档案编码查询主键
select bd_defdoc.pk_defdoc as defdoc --查询限额类费用类型主键
from bd_defdoc, bd_defdoclist
where bd_defdoc.pk_defdoclist = bd_defdoclist.pk_defdoclist
and bd_defdoclist.code = 'F003'--费用类型自定义档案列表编码
and bd_defdoc.code = '';--限额类费类型编码
--根据单据车辆名称主键查该车辆是否控制限额
select (case
when (bd_defdoc.shortname = '实报实销') then --不限额车辆简称标识
'false'
else
'true'
end) as islimitcar
from bd_defdoc, bd_defdoclist
where nvl(bd_defdoc.dr, 0) = 0
and nvl(bd_defdoclist.dr, 0) = 0
and bd_defdoc.pk_defdoclist = bd_defdoclist.pk_defdoclist
and bd_defdoclist.code = 'F057' --车辆信息自定义档案
and bd_defdoc.pk_defdoc = '1001H210000000HHSNQY' ; --car_name对应的pk, select name from bd_defdoc where pk_defdoc = '1001H210000000HHSNQY';
--查询会计月
select yearmth from bd_accperiodmonth where pk_accperiodmonth = '1001H2100000004ZIBPZ' ; --period
--车辆本期可报销金额N+1
select sum(erm_car_limit_b.limit_e) as car_limit_e,
sum(erm_car_limit_b.limit_l) as car_limit_l
from erm_car_limit_b, erm_car_limit
where nvl(erm_car_limit_b.dr, 0) = 0
and nvl(erm_car_limit.dr, 0) = 0
and erm_car_limit_b.pk_car_limit = erm_car_limit.pk_car_limit
and erm_car_limit.kjni = ''
and erm_car_limit.car = '1001H210000000HHSNQY'
and erm_car_limit_b.kjy <= 7; --month=6,b.kjy <= 7;这样子处理在12月份的时候即使是13也不用做特殊处理,因为也是统计到12个月的金额
-- 查询本月车辆限额量
select erm_car_limit_b.limit_e as car_limit_e,
erm_car_limit_b.limit_l as car_limit_l
from erm_car_limit_b, erm_car_limit
where nvl(erm_car_limit_b.dr, 0) = 0
and nvl(erm_car_limit.dr, 0) = 0
and erm_car_limit_b.pk_car_limit = erm_car_limit.pk_car_limit
and erm_car_limit.kjni = ''
and erm_car_limit.car = '1001H210000000HHSNQY' --PK_Car=1001H210000000HHSNQY
and erm_car_limit_b.kjy = ''
--限额已执行量
SELECT nvl(SUM(case
when er_busitem.defitem12 = '1001H21000000042XVC6' then
0
else
er_busitem.amount
end),
0) amount
from er_busitem
LEFT outer JOIN er_bxzb
ON er_bxzb.pk_jkbx = er_busitem.pk_jkbx
LEFT outer JOIN bd_accperiodmonth mon
ON mon.pk_accperiodmonth = er_busitem.DEFITEM16
where er_busitem.tablecode = 'arap_bxbusitem'
-- AND er_bxzb.djzt != 0
AND er_bxzb.djzt != -1 --不包含作废数据
AND er_busitem.pk_jkbx != 'null'
AND er_busitem.defitem24 = '1001H210000000HHSNQY' --PK_Car=1001H210000000HHSNQY
AND mon.yearmth LIKE '2016%' --YEAR=2016
AND er_busitem.dr = 0
-- AND er_bxzb.djbh != '" + djbh + "'; --修改增加如果单据存在单据编号,则表示是已保存的单据,计算执行量时扣去本带锯的执行量(本单据执行量在表体行字段扣除) --select def.name from bd_defdoc def where def.pk_defdoc = '1001H21000000042XVC6';
--er_bxzb
--实体 md_class
select * from md_class where defaulttablename ='er_bxzb'
--实体属性 md_property
select * from md_property where classid ='45a846ce-5f39-4075-8cb9-90de50517af4'and displayname ='单据状态'
--枚举 id对应md_property中的datatype
select * from md_enumvalue where id ='aed2a08a-03a0-4db7-9ab1-c30e1dc1ca17'
限额类费用报销单N+1原则的更多相关文章
- ERP费用报销操作与设计--开源软件诞生31
赤龙ERP费用报销讲解--第31篇 用日志记录"开源软件"的诞生 [进入地址 点亮星星]----祈盼着一个鼓励 博主开源地址: 码云:https://gitee.com/redra ...
- odoo10 费用报销
odo10 对费用报销进行了改进,恢复了 8.0 及之前版本具有的 单个报销包含多个 明细内容的功能. 使用步骤大致如下: 根据管理需要设立 相应的科目和分析帐户 科目 分析帐户 建立费用目录 员工录 ...
- java类为什么是单继承。类的继承,实现接口。
java中提供类与类之间提供单继承. 提供多继承会可能出现错误,如:一个类继承了两个父类,而两个父类里面都有show()方法. class Fulei1{ public void show(){ Sy ...
- php的redis 操作类,适用于单台或多台、多组redis服务器操作
redis 操作类,包括单台或多台.多组redis服务器操作,适用于业务复杂.高性能要求的 php web 应用. redis.php: <?php /* redis 操作类,适用于单台或多台. ...
- C++中的类继承之单继承&多继承&菱形继承
C++中的类继承之单继承&多继承&菱形继承 单继承是一般的单一继承,一个子类只 有一个直接父类时称这个继承关系为单继承.这种关系比较简单是一对一的关系: 多继承是指 一个子类有两个或 ...
- Web---演示Servlet的相关类、表单多参数接收、文件上传简单入门
说明: Servlet的其他相关类: ServletConfig – 代表Servlet的初始化配置参数. ServletContext – 代表整个Web项目. ServletRequest – 代 ...
- [Android面试题-7] 写出一个Java的Singleton类(即单例类)
1.首先明确单例的概念和特点: a>单例类只能有一个实例 b>单例类必须自己创建一个自己的唯一实例 c>单例类必须为其他所有对象提供这个实例 2.单例具有几种模式,最简单的两种分别是 ...
- 测试Python类成员的单下划线,双下划线,两头下划线的区别
首先原谅一个菜鸟叫他“两头下划线”.记得在windows编程中,很多宏定义使用下划线+大写,给人逼格很高的错觉.对于Python下划线的认识,大概是从__dict__这个属性开始的,看__dict__ ...
- 利用BeanUtils工具类封装表单数据
一.BeanUtils工具类的使用 1.首先导入BeanUtils工具类的jar包 commons-beanutils-1.8.0.jar commons-logging-1.1.1.jar 2.se ...
随机推荐
- Oracle闪回
在PLSQL开发时,有时候会遇到对表的误删除,其实遇到这种情况不需要紧张,如果问题较大,请DBA帮忙,如果只是小问题,只需自己处理,利用flashback闪回操作即可,可将表进行恢复 在删除表时,系统 ...
- android手机ping不通linux的ip地址
我的linux是装载虚拟机里的,修改虚拟机的网络连接方式为桥接模式即可.
- 用javascript实现简体和繁体字间的转换
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- 试读《基于MVC的JavaScript Web富应用开发》
前两年做jsp开发时,用了不少JavaScript(JS)和Ajax, 最近的项目一直在使用Flex做前台,虽然也有类似的ActionScript实现JS的功能,但没想到的是,短短几年JS发展如此迅速 ...
- SQL Server复制入门(一)----复制简介【转】
SQL Server复制入门(一)----复制简介 简介 SQL Server中的复制(Replication)是SQL Server高可用性的核心功能之一,在我看来,复制指的并不仅仅是一项技术,而是 ...
- [AngularJS] Best Practise - Module
Module definitions Angular modules can be declared in various ways, either stored in a variable or u ...
- input text框和 checkbox 连带被选中的情况
<html> <head></head> <body> <ul> <li><input type="checkb ...
- 【SSH三大框架】Hibernate基础第二篇:编写HibernateUtil工具类优化性能
相对于上一篇中的代码编写HibernateUtil类以提高程序的执行速度 首先,仍然要写一个javabean(User.java): package cn.itcast.hibernate.domai ...
- oc-15-枚举结构体
Cat.h #import <Foundation/Foundation.h> // 颜色的枚举 typedef enum{ ColorBlack, ColorYeallow } Colo ...
- THD 变量存入threads中
http://blog.csdn.net/gapaul/article/details/12047497 http://ourmysql.com/archives/930