- ?
个人考勤记录软件报表查询统计
灵凡
展开
个人考勤记录软件报表查询统计
1 个人考勤记录软件下载考勤记录信息:当需要考勤查询统计时需要将考勤记录信息从设备下载之电脑才能统计
-连接设备-选中待下载设备-下载设备记录信息
个人考勤记录软件2 查看个人考勤记录软件考勤记录
个人考勤记录软件3 个人考勤记录软件报表统计:根据自己的需求可在查询计算后选择合适自己公司的报表导出或打印
个人考勤记录软件 - ?
超智能工资管理模板,自动生成报表数据,人劳部管理神器
梦之
展开
HELLO,大家好,我是帮帮。我将每天分享一些应用度高的模板素材,让一些初入门道的小伙伴,获取捷径,变身office高手。今天跟大家分享一个工资管理系统,自动生成报表,报税,工资条等。
这份工资表自助系统的获取方式,点击文末的“了解更多”,按照索引添加并关注我,里面有海量各类模板素材免费下载,我等着你噢^^<——非常重要!!!
大家请看表格图片,主页上设定功能跳转链接,直接点击即可跳转到目标表格。
设置公式的表格请不要随意改动,如果税率等变更,请修改公式内的数据即可。
主要需要用户录入工资明细表,比如相关人员的姓名、部门、身份证号、基本工资、绩效工资、社保基数(按社保部门规定的上年平均工资算)、公积金基数(本系统按照标准工资,即应发工资算)、社保和公积金等企业和个人缴费比例(可根据企业实际,修改公式中的相应缴费比例数字)。
大家注意单元格区域,包含公式的部门不要随意改动,表格下面有提示的可以参照执行。
所有报表可自动生成,全部公式设置完毕。
如果涉及不到的表格,大家一直略过即可。
每个单元工资表的构成大致一样,但有所区别,有点函数基础的小伙伴,可以添加项目,改动引用范围即可。
完成数据生成后,建议大家另存数据,每月存档一份。
本系统比较简单,经过测试,运行无问题。
单位员工多,进出频繁,单靠人工来处理员工的工资不但显得力不从心,而且极容易出错。运用模板管理,更为科学便利,大家依靠模板的同时,要逐步熟悉模板包含的公式引用概念,然后自我调整属性,变成自己独一无二的管理系统,这样才能轻松快捷地完成工资管理的任务。
今天的Excel工资管理系统模板分享就到这里,希望大家喜欢,帮帮祝愿大家都能get到(多看看第二段),拜拜,么么哒。
- ?
地表最强报表工具,一张模板秒杀数百Excel !
沛萍
展开
又到月末了,表格表姐、财务狗,IT人们又要赶报表了。
财务人哭诉说:
自从干了总账会计,我发现人家吃饭,我在做报表;人家睡觉,我在做报表。做报表的事真是从年头到年尾,从年尾到年头啊,现在生活中没有其他,只有EXCEL。
自从干了总账会计,我才知道一个报表不来回修改个十几二十次,那都是不正常的。我才知道周末是不能关机的,要是关机了,就嘿嘿。
所以说,做报表的,佛系才能长命。
表格表姐也憋了很多牢骚:
每到月底、季末,领导就会在群里夺命连环@
要知道,这样的报表,我要去申请业务系统的数据先核对。大包大揽导出几十万条数据,给我配备的电脑,打开需要2分钟;每写完一条函数,都要运算7、8分钟;鼠标不敢乱点,人也不敢离开,还时不时的得给主机扇风。企业级的报表,尤其数据多的时候,Excel真不是好选择。当你好不容易做完,一句“数据不对”就给打回,心中真不知是什么滋味。
IT人更是不服:
公司采购了几千万的SAP大家不用,业务系统自带的报表也不用,依旧excel邮箱满天抄送,任务系统中这里少数据,那里口径对不上。回头各种抱怨数据不对。SQL手把手教大家写了,简单的数据库功能也是花了两天培训的。结果到头来,简单的报表需求依旧交给IT,反倒是需求提得更严苛了,真是有苦无处说。
大大小小的报表,是企业里少不掉的基础事物,维系着整个经营信息的流转,但现在反而成为很多人的日常工作的束缚,不免引起一阵反思。
工欲善其事,必先利其器!
造成这些问题的很大部分原因就在于,缺乏一套高效的工具。
做报表做表格,很多人第一时间想到的是Excel。Excel作为个人办公软件绝无仅有,但作商业用,其实在效率上还有办公协同上稍有不足:用Excel收集数据容易乱,用Excel存储数据容易丢失,影响数据质量。而且普遍企业报表需求大于人员负荷,用Excel做报表改报表无疑都是在增大工作量。
懂IT的朋友可能会说,交给数据库啊my sql 、oracle,写两条SQL,借助数据库的运算性能就解决了。再不行,找程序员写代码,批量做报表,数据录入、图形化报表、甚至数据分析都可以交由程序开发,性能杠杠的。
那如果有现成的工具,可以直接和数据库交互(数据导出+填入数据),能连接各系统的数据,能高效率批量做报表,展现,交互分析,可视化大屏,并做到办公协同,那就是小编今天想来讲讲的FineReport了。
一、用FineReport做一张模板,可以替代N张手工重复劳作的Excel !
为什么这么说,先来了解FineReport的制表原理
1、FineReport的制表原理
FineReport是通过连接数据库,读取数据字段来设计报表模板的,所以在制作模板前先要知道数据库的类型、地址、访问数据库的用户名密码,两者建立一个数据连接后才可开始设计模板。然后依据所需功能(表格展示?填报?dashboard分析?)和表样来操作模板,最后在web端展示。
制作模板时处理的对象是数据字段(区别于Excel的单元格数据),模板中一个单元格放一个数据字段,web端展示时字段扩展。FineReport报表中单元格的扩展是有方向的,可纵向扩展,也可横向扩展,也可以不扩展。
单元格的扩展是针对某一个单元格,当报表主体中绑定了多个单元格时,单元格与单元格之间依靠父子格关系跟随扩展。子格的数据会根据父格的数据进行过滤分组显示,并且还会跟随父格的扩展方向而扩展。
2、三大类报表设计方式,解决日常所有报表需求,并且一表复用。
1)普通模板设计,此者最常用。依靠着单元格的扩展与父子格的关系来实现模板效果,可进行参数查询,填报报表,图表设计等。比如交叉报表、行式报表、分组报表等等。
2)聚合报表设计,针对不规则大报表。适用于一张模板中显示多个独立模块的报表,几个报表块汇总在一起的复杂报表。
3)决策报表设计,就是表单,也是dashboard,也就是大家常见的各种图表拼接在一起的可视化数据报表。
通过拖拽图表来制作,制作好的dashboard可以自己适配屏幕的大小,多以也可以做成手机端的报表,大屏可视化,下面有细讲。
以下举例一些常见的报表格式:
交叉表
行式报表
分组报表
自由报表
3、参数实现数据查询和过滤
在很多情况下,我们需要根据条件查询数据,过滤。在FineReport中,通过设置参数绑定数据字段和过滤的控件(单选框、复选框等等),参数可用JS编辑更多复杂的情况,通过界面输入查询条件来控制报表显示的内容及形式,而后导出打印。
很多公司很多员工都会要做周报月报季报等,有些全国性的公司有分公司、门店、办事处。经常性的要做这些重复性很大的报表。那用FineReport就可以集中将每一条数据明细上传到数据库中(填报功能,下面会讲)。在做报表时,做将一些常用的维度“地区”、“时间”、“城市”等等作为一个查询的参数控件,类似Excel中的筛选,导出。基本上一个周报模板,就解决了一些人一年52张手工excel报表的工作量。
4、填报
填报就是向数据库中录入数据,用于固定格式固定条件的数据收集。就好比你注册网站时提交的邮箱、收集、用户名、密码,都会按照格式存放到数据库中。
填报也需要一个模板,操作流程如下:
填报模板由控件组成,文本控件、数字控件、密码控件、单复选框、网页、文件等等。控件对应着数据字段。有了填报,就可以收集数据,并且允许用户实现对数据库的增删改。出于数据质量和数据安全的考虑,还可以对填报进入的数据做校验操作。
填报最大的用处是替代excel收集数据,做好了模板,奖模板链接发送给相关人,填完数据审核过后即可入库,省得excel传来传去,而且是在web端填写,也非常简单。
二、不只是报表,还有数据可视化
酷炫的dashboard都需要通过FineReport的表单(决策报表)来设计展现。通过拖拽报表块、图表块和各类控件初步设计界面。
不同于普通报表,普通报表是一个整体,无法实现局部刷新。表单是由各个组件组成,可以实现组件内刷新,即局部刷新。像动态大屏都是全局或者局部刷新的,所以需要用决策报表制作实现。
1、决策报表制作过程
新建表单:FineReport支持新建工作薄,即普通报表模板,还支持新建表单,两种设计模式;
拖入组件:FineReport表单支持多种不同的组件类型,包括报表块、tab块、绝对画布块、参数、图表和控件等等;
定义数据集:定义各个组件数据来源,图表组件数据即可来源于数据集,也可来源于单元格;
设置表单样式:即设置表单的显示样式。
2、数据可视化与交互
之前很多网友留言,问这样的可视化是什么图表制作的。其实大多由FineReport自带的H5图表。此前有提到FineReport良好的开放性,可让IT同事写代码开发,所以在制作时,也可接入Echarts等第三方控件来制作图表。
3、实用而强大的数据地图
finereport有很强大的地图功能:基本地图、GIS地图、热力地图、大数据流向地图等。
GIS地图基于GIS地图层进行数据展示,支持自定义GIS主题风格,能够与数据表钻取联动。比如省级钻取到市级、县级、街道。
三、总结
篇幅有限,以上只展现了FineReport的一部分功能,很多细节无法展开。
要说效率,最大的好处就是从数据库中读出数据自动产生报表,且一类报表做成一个固定样式的模板,每次只要同步一下,自动生产周期性的报表,如日报、周报、月报、季报等。 每次按照条件查询,Excel批量导出/打印,少了人力去一个一个用Excel统计汇总。
而且操作上,大多数功能FineReport都封装成模块了,包括写SQL取数,汇总筛选过滤等,基本上都有对应的功能键。像著名的资产负债表,如果按照以往写代码或者写复杂的SQL语句,就有点摧残生命了,而且那天书般的SQL语句要是出点错谁来查,如果数据来自多个源,那就彻底无法解脱了。
其次,在数据处理速度上,由于性能一部分依靠数据库,一部分依靠FineReport的行式报表引擎,相比于Excel的单机效率,几十万行的数据秒出。再者,企业数据库有各种自带或第三方的集群方案,通过堆机器就可以近似于无限的加大数据储存能力。
最后,FineReport除了解放个人,最大的贡献应该是对企业。在商业用途上,我们要考虑效率,人员的培训成本,协同性,还要考虑对企业业务的支撑、贡献,这几点Excel是比较难发挥贡献的。有知友说“Excel用得再溜,老板也不会给你涨工资,可能还革了其他同事的命”。那是因为Excel处理了数据,但没有得到有效结果去服务于业务带来效益。那如果在报表之后,基于业务基于指标去做特定主题的数据分析,站在公司角度做数据化管理,为领导的业务决策提供有效意见,这样的高度就别有不同了。
- ?
如何设计企业内部的数据平台?
连幻灵
展开
数据平台的建设可以当做一个产品来设计。从广义上来讲,所有以数据驱动为核心的都可以称为数据产品(如数据报表平台,DMP,BI平台),从狭义上来讲,就是公司内部的数据平台。今天我们要讨论的,主要是在公司内部搭建数据平台。
公司的内部数据平台,主要是给各业务提供数据处理、分析、展示,供内部所有部门人员使用的,涉及数据的收集(填报)、数据的整合、业务报表制作、业务员数据分析以及可视化数据展示,目的是让公司内部的所有业务都能通过数据来驱动和辅助决策。简单点讲就是通过数据平台来驱动公司内部的数据化运营。
那么如何设计符合企业实情并能解决实际问题的数据平台呢?
1. 平台建设主导人需要对每一块业务需求有深刻的了解,知道每个业务部门想要看什么样的数据,需要什么样的分析报表;这些数据是否现在就可以获取到,是否需要收集;业务部门通过这些数据分析,是如何推进和改善业务,是否有提升的价值意义。
2. 平台的设计需要根据业务的要求设计符合使用者需要的内容,产品要有层级和结构。如果设计的一张数据报表既要满足管理层的需求又要满足一线业务人员的需要,那么这样的数据产品体验很大可能是比较差的。因为领导和业务人员的关注点不一样,看数据的视角也不一样。领导往往需要一些能帮助把握大方向的关键指标,并且希望知道这些指标之后的问题是什么?原因是什么?所以给领导设计的报表需要直观易懂,并且能够基于这些指标的一场定位到问题。而业务人员更在乎业务的执行,关注的数据往往粒度很细,需要知道各项指标的明细。
领导关注的报表(FineReport制作)
销售领导关注的指标明细(FineReport制作)
3. 数据平台一定要注意数据质量、规范、统一。因为数据平台是面向所有业务的,怎么保证公司的所有部门人员对于数据的理解是一致的,这点特别难。(比如服装行业的“断码”,从领导层来讲,公司仓储的服装全部尺码如果不完整就是断码;从仓库的仓管员角度来讲,仓库内的服装尺码不全就是断码;从门店的业务员角度来讲,客户需要的尺码当前门店无货就是断码)。公司的业务系统各有不同,数据口径不一,数据孤岛问题,导致数据的质量和结构也千差万别,越是这样,数据仓库的数据建设就显得尤为重要。平台的数据质量依赖于数据仓库底层的数据模型,所以一个好的数据仓库很大程度上决定了数据平台的数据质量。
4. 工具选型上,有报表平台、BI。报表平台适合构建基础的规范化的数据平台,从明细报表(表格类)的,项目档案,文件报备,数据填报,数据报表,业务主题分析,文中的所有demo就是用FineReport制作,侧重于展示和报表管理。BI侧重于分析,拿到数据可以自己拖拽维度来分析,不同于报表受模板框架的限制,涵盖简单的明细报表、分析报表和主题分析,制作要简单很多,大数据量的处理性能也强劲很多,代表:FineBI、Tableau.
下面我们就从实战的角度来加以阐述。
某公司是一家电商公司,那么该公司的各部门需要看哪些数据呢?首先收集日常常用的数据指标,哪些是经常要查询的,哪些是要日常填报的,这些在过往的经营中都有备案,好收集。这就构成了日常的基础查询类报表,这类报表最占大头。
其次,我们可以观察一下各部门的KPI是什么?下放到团队以及个人的KPI是什么?是否能以具体的数字来量化?如果对负责支持的部门的KPI不了解,就去寻求部门领导帮助(使用者最懂要什么),不落实指标如何能设计出好的数据报表?通常粗略的,例如采购部门的KPI基本就是销售额、订单数、销售毛利润、采购成本;运营部门的KPI就是新老用户述、留存率、复购率、用户流失、转化率,市场部门的KPI就是PV/UV、新客数,这就构成了各部门日常管理的报表。
那么知道各个部门的核心KPI后,下一步就是针对一些特定场景的主题报表。主题报表往往是记录某一事件,其中的指标都是相互关联的。
比如,我希望知道这个月我的绩效完成的怎么样?在团队内排名是提升还是下降?每个人的绩效结果明细是怎样的?——这就构成了日常考核报表。
又比如在分析产品时,需要重点关注某些产品的相对市场份额和市场增长率,则要建立波士顿矩阵分析,以便让资源有效地分配到合理的产品结构中(当然还有其他分析角度)——这就是品类分析。
产品分析(FineReport制作)
再从业务分析和使用场景入手,拿采购部门的小王来说,他是怎样看数据的呢?
每天早上,我希望知道昨天的销售情况怎么样?所以这时候应该设计一张基础查询报表给到他,这张数据报表应该具有以下功能和内容:
1.能够查看昨天以及过去各时段的数据;能够按照产品、地域来统计;能够与过往的平均值做比较,看看是不是某区域某产品的趋势上有大的变化,是不是广告投放,活动推广带来的,影响大不大。其次,每个月,每季度的数据是多少,能够选定时间段自动展示。
请点击此处输入图片描述
2. 指标越丰富越好,如果销售额下降了,看看是不是订单数下降了,订单数没变是不是客单价的问题,是由于商品结构的原因还是活动门槛调整导致的。
3. 数据分析的能够下达的粒度越细越好。比如数据粒度可以从全国下钻到省份,从省份下钻到城市,这样交易额下降了就能知道是哪个省哪个城市出了问题?就能针对性的解决。
请点击此处输入图片描述
经过以上几个步骤,即可形成平台雏形,形成规划文档。但一个数据平台,无论前期规划得多么丰富,也不可能一蹴而就。公司的业务在不断变化,分析的内容也越来越丰富,在这过程中总需要不断磨合和调整,只有不断完善之后,才能形成一个更加量身定制的实用平台。
- ?
使用多级分组报表展现分类数据
纪大楚
展开
当你走进便利店,你会发现所有的商品都是按类排放的,分类排放可以帮助您快速找到同类商品,也可以快速发现你想要的商品。
当去饭店吃饭的时候,菜单上的菜也是按类别排列的,比如凉菜,热菜,汤类,主食等。点菜时你会直接翻到你想要的那一类菜单,点菜。
……
通过上面场景,大家就理解分组呈现数据的好处了,分组可以帮助快速定位,方便数据查找,汇总,分析数据趋势等。有时候分析某一单一的商品并无价值,所以采用分组是最常见也是最简单的数据分析手段。
分组报表则是在报表中使用分组功能,是工作中最常用的报表类型,分组功能可能会单独成一张报表,也可能与其他功能结合组成复杂功能报表。
在 葡萄城报表 中可以设置单级分组、嵌套分组,同时,还可以使用表格、列表以及矩阵等数据区域控件对数据源进行分组操作。
什么是分组报表
分组报表,是所有报表中最基本、最常见的报表类型,也是所有报表工具中都支持的报表格式。从一般概念上来讲,分组报表就是只有纵向的分组。传统的分组报表制作方式是把报表划分为条带状,用户根据一个数据绑定向导指定分组,汇总字段,生成标准的分组报表。当然,我们也可以在Excel中,进行分组报表的制作;但是这样也只是在小数据量的前提下可以实施,当数据量很大很复杂时,相信使用Excel制作分组报表,就是事半功倍了。
分组报表的类型
分组报表可以分为单级分组、复杂一点的嵌套分组。单级分组是最基本的分组报表,如商品信息按类别统计。
嵌套分组即多级分组,如销售报表中包含三层嵌套分组统计,首先按照销售月份分组、然后按照产品类别分组、最后按照产品名称进行统计,并按照产品类别和销售月份进行合计运算。
无论是单级分组还是嵌套分组,分组数据都是需要载体呈现的,而表格、列表以及矩表等数据区域控件对正是进行分组操作的载体。下图是按区域的行分组和按月份的列分组的表格报表。
分组报表应用
可以说分组报表是最常见的报表类型,分组报表在商业报表系统中应用不胜枚举,如客户信息归类统计表、商品分类统计表、销售记录年度统计、阅读统计,人员分组统计等等。分组报表应用十分广泛,甚至每一个报表系统中都存在分组报表。
操作步骤:
1. 新建RDL报表
2. 连接数据源
3. 新建数据集
输入数据库查询语句:
SELECT 订单.订单ID, strftime('%Y',订单.订购日期) AS 订购年, strftime('%m',订单.订购日期) AS 订购月, 类别.类别名称, 类别.说明, 产品.产品名称, 订单明细.数量, 订单明细.单价, 订单明细.折扣 FROM (( 订单
INNER JOIN 订单明细 ON 订单.订单ID = 订单明细.订单ID)
INNER JOIN 产品 ON 订单明细.产品ID = 产品.产品ID)
INNER JOIN 类别 ON 产品.类别ID = 类别.类别ID
WHERE strftime('%Y',订单.订购日期)='2012'
ORDER BY 订购年, 订购月, 类别.类别ID, 订单明细.产品ID
4. 添加表格控件,设置基本布局
4.1 添加表格控件到设计界面
4.2 添加表格1级分组
选中表格详细数据行,右键单击,选择插入分组
在表格-分组编辑器中,表达式输入:=[订购月],点击确定后,表格会生成【1】
4.2 插入表格2级分组
在表格-分组窗口中点击【+】符号,输入分组表达式 :=[类别名称]
添加完分组效果
4.3 在表格右侧添加5列
4.4 添加表头行,并合首行表头单元格,输入标题【=[订购年] & "年各月销售报表——明细页"】
4.5 在分组1 -组头行,合并单元格,并输入=[订购年] & "年" & [订购月] &"月"
4.6 在分组2-组头行,合并剩下单元格,并输入=[类别名称]
4.7 在详细数据区域,绑定具体的字段
4.8 在组2-尾行,输入合计:=Sum([数量] * [单价] *(1- [折扣] ))
表格样式基本设置完成.
5. 预览
访问如下网站,了解葡萄城报表:http://grapecity/enterprise-solutions/activereports_server/
转载请注明出自:葡萄城报表
关于葡萄城报表
葡萄城报表是一套强大的报表开发和系统搭建工具,既能与您开发的报表软件项目紧密集成,也可独立部署运行,支持多数据源,具有无编码、灵活、稳定等特性,可以帮您快速搭建专业的报表软件系统,实现各类报表的设计、管理、权限控制、数据填报、负载均衡及跨平台发布。
- ?
员工个人工资单明细表生成软件
一更:
展开
每到月底的时候,每家大型的公司人力资源部门中对核算每一个员工的工时也是需要耗费很多的时间和成本。尤其是子公司的工资表信息确认上来说也是很重要的。自从了解到互联网生的生成器之后,在其用途和功能上来说,其优点还是会越来越多的,在比较的时候都可以看到了其中的优点和特色还是会越来越多的,在每家公司中推出了新式的员工个人工资单明细表之后,那么在工资表上的员工工资信息上更加详细一点,尤其是在发放的时候基本上能够看出来哪些方面是否合理,哪些方面会有着问题的。
当然,员工个人工资单明细表是需要在蚂蚁工资条平台上的生成器上去完成的,在输入了相关员工的工资数据信息时,那么在明细上就会更加准确一点的。在比较的时候,其细节和要点上还是会越来越多的,在不同的方面来说,都可以看出来工资单的明细上还是会越来越全面系统的。对其信息方面的要求准确性上是很高的,这对发准工资方面还是起到了至关重要的作用。
所以,在制定员工个人工资单明细表的时候尽量还是选择蚂蚁工资条的生成器来完成,大大的减少了错误率,里面的明细表模板也是设计的比较全面系统,在输入的过程中会有着相关的提醒功能,对人力资源专员来说大大的提高了工作方面的效率,在其功能上来说还是会越来越多元化的,这在设计上来说还是会越来越全面系统的。抓住了这种明细表的特点之后,都觉得在平时当中制作工资单的时候,都觉得在明细上还是能够大大的提高了准确性的。在其细节上还是要把握好基本的要求和方法。
关于从员工个人工资单明细表的角度来说,都觉得明细的功能和特点上还是会越来越多的。在比较的过程中往往还是会让其生成器得到了很多公司的认可和信赖,这样才能够在广泛运用和推广的时候,让其功能方面逐渐的升级和更新,在操作使用方面来说还是会越来越简单的。抓住了这样的细节和要求之后,都觉得在为公司员工制作工资条的时候不仅提高了工作效率,还可以为公司大大的节约了在这方面的成本,是大多数公司对该生成器给予很高认可度的关键所在。
本文由蚂蚁工资条整理发布,转载请注明出处。
蚂蚁工资条可将Excel工资表自动生成工资条,并以短信、邮件或微信的形式发送给员工。使用蚂蚁工资条,将极大地提升HR的工作效率,也能减少与员工的沟通成本,促进员工满意度的提升。
- ?
【精选】excel财务系统-凭证批量打印-报表
蒂莫西
展开
EXCEL财务系统--全套账__操作使用说明1、系统使用前需要设置内容----科目设置(无限级设置)、常用摘要设置、年初数据设置在科目设置表输入。2、记账凭证录入,摘要,科目双击选择录入,借贷平衡后保存凭证,月末结转可通过月末结转凭证表辅助生成分录,再转到记账凭证保存。3、点击科目余额表,进入后点击查询,(资产负债表、利润表、现金流量表可自动更新)注意公式可自行定义 。4、点击凭证打印,选择对应起止日期,即可生成凭证。5、点击明细账,点击查询按钮,选择科目,即可生成明细账。6、一年使用完毕即可点击结转下年,重新开始账务处理。7、此模板为宏模板,若下载不能启用宏。可下载插件启用。插件安装后,重新下载打开模板即可正常使用。插件下载地址:https:///s/11AUFBYgjQKKMrGHcYOoKuw
免费下载链接:https:///s/1wFi6lU-rJNwnWMbXDWLBQA
,回复“财务系统02”免费获取下载“密码”
模板分享
扫描二维码关注我们
如果你喜欢我们,请分享到朋友圈,想要获得我。
如下载链接失效,请关注并联系我们,我们将第一时间回复您!
- ?
东北证券——“智能报表系统”的建设经验
Nissa
展开
原工行董事长姜建清曾说:未来的好银行一定是数据银行。数据银行的两大核心能力就是数据采集和数据分析。近来,有不少银行在数据分析方面有所行动,有的是成立“统计信息部、数据分析部”,有的是将数据分析能力重新明确到信息中心等。
按百度百科的定义:数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。这一过程也是质量管理体系的支持过程。在实用中,数据分析可帮助人们作出判断,以便采取适当行动。
这个定义比较精确,包含了几个要点:
统计分析方法:数据分析肯定需要分析方法及工具;大量数据:分析的原材料;形成结论:分析的结果;决策并采取适当行动:数据分析最终实现价值。质量管理体系:避免数据污染及模型误差。
数据分析的定义和工作流程都很清晰,同时,如何快速启动数据分析工作并尽快体现数据分析的作用,是很多数据分析类部门当前关注的重点。
数据分析的建设之路,可以从下面几个方面统筹考虑:
业务应用方向
银行的业务应用经过多年发展,已经有成熟的应用框架:客户管理、风险管理、财务管理、运营管理、及监管报送及信息披露。
数据分析部门应结合业务发展及规划,综合相关IT系统建设情况,选择数据分析的业务领域。
数据分析方法
在统计学中,统计分析方法可以简单划分为:描述性统计分析、探索性数据分析以及验证性数据分析。
在数据分析初期,分析部门更应该放在描述性及探索性方法上。在此过程中与科技、业务部门多交流沟通,以达到熟悉业务、了解数据的目的。
数据分析体系
数据分析体系包括数据分析平台的建设,分析平台包括三大模块:
数据脱敏采集平台:根据分析需要,从银行数据平台中脱敏、抽样相关数据;
数据建模平台:也可称为模型数据沙箱,用来进行数据分析;
数据服务平台:为业务应用提供数据分析结果服务。
以下就举例东北证券的数据平台建设经验。
- ?
“一体化”平台报表、账簿查询的 SQL实现原理
夏香旋
展开
一、报表查询
1.“一体化”平台中科目余额表
“一体化“平台中科目余额表查询主要涉及到期初余额、当期发生额、累计发生额及期末余额。查询参数主要包括:单位内码、查询期间、显示级别。
SQL语句编写思路:利用并集合运算将期初数、当期借贷发生额、累计借贷发生额合并为一个结果集,然后利用科目表科目编码的层次结构关系进行2次联结,计算出自上而下各科目期初数、发生额、累计发生额,最后根据科目性质计算出期末余额。
WITH a AS --科目表因子化
(
SELECT acctid,acctcode,acctname,levelno,dc
FROM t_fmaccount
WHERE acctsystypeid = &acctsystype
),
i AS
(
SELECT r.ACCOUNT,DECODE(r.dc,a.dc,r.startbal,-r.startbal) startbal,NULL c_deb,NULL c_cre,NULL t_deb,NULL t_cre
FROM t_fmyearinitbalrec r
JOIN t_fmaccount a
ON r.account = a.acctid
WHERE r.hsagency = &hsagency
AND r.acctsystype = &acctsystype --获取期初数
UNION ALL
SELECT p.account,null,SUM(DECODE(p.dc,1,amt)),SUM(DECODE(p.dc,-1,amt)),NULL,NULL
FROM t_glrecordfm p
WHERE p.hsagency = &hsagency
AND p.acctsystype = &acctsystype
AND p.term = &term
GROUP BY p.account --当期借贷发生额
UNION ALL
SELECT p.account,null,null,null,SUM(DECODE(p.dc,1,amt)),SUM(DECODE(p.dc,-1,amt))
FROM t_glrecordfm p
WHERE p.hsagency = &hsagency
AND p.acctsystype = &acctsystype
AND p.term <= &term
GROUP BY p.account --累计借贷发生额
)
SELECT acctcode,levelno,acctname,startbal,c_deb,c_cre,t_deb,t_cre,DECODE(dc,1,'借','贷') dc
, CASE dc
WHEN 1 THEN NVL(startbal,0) + NVL(t_deb,0) - NVL(t_cre,0)
ELSE NVL(startbal,0) - NVL(t_deb,0) + NVL(t_cre,0)
END AS balance
FROM(
SELECT a2.acctcode,a2.levelno,a2.acctname
, sum(i.startbal) startbal
, sum(i.c_deb) c_deb
, sum(i.c_cre) c_cre
, sum(i.t_deb) t_deb
, sum(i.t_cre) t_cre,a2.dc
FROM a a1
JOIN i
ON a1.acctid = i.account
JOIN a a2
ON regexp_like(a1.acctcode,'^('||a2.acctcode||')[[:digit:]]*$')
GROUP BY a2.acctcode,a2.levelno,a2.acctname,a2.dc
HAVING a2.levelno <= &levelno
)
ORDER BY acctcode;
执行上述代码,弹出输入对话框,需要输入一些参数:hsagency-查询单位的编码,acctsystype-核算单位类型,term-查询报表期间,levelno-显示级别,如下图所示:
查询单位编码与核算类型构成唯一主体的会计报表,hsagency引用t_pubagency表,acctsystype引用t_fmaccountsystemtype表。在本图中,“135“为行政单位核算类别。
执行结果如下:
上述代码为通用型,即根据变量输入的不同,生成不同单位、不同期间的科目余额表(类似于资产负债表),表中acctcode-科目编码,levelno-科目级别,acctname-科目名称,startbal-年初数,c_deb-当期借方发生额,c_cre-当期贷方发生额,t_deb-累计借方发生额,t_cre-累计贷方发生额,dc-余额方向,balance-期末余额。
为节省篇幅,示例代码中没有考虑凭证状态,考虑凭证状态时,应将凭证主表(t_fmvoucher)与凭证状态表(t_fmvoucherstatus)关联。
2.行政事业单位往来余额表
往来余额表显示要素主要包括:科目名称、往来名称、期初数、当期借贷发生额、累计借贷发生额、余额方向及期末余额。与科目余额表查询类似,输入参数为单位编码、会计期间。
SQL语句编写思路:利用并集合运算,从余额明细表(t_fmyearinitbalrecdetail)获取往来科目明细数据(calagency列不为0与空值),从凭证明细表(t_glrecordfm)中获取指定期间往来科目明细记录及年初至当前期间明细记录,然后分别与科目表(t_fmaccount)、往来单位信息表(t_calagency)关联并汇总。
WITH i AS
(
SELECT d.ACCOUNT
, d.calagency
, DECODE(d.dc,a.dc,d.startbal,-d.startbal) startbal
, NULL c_deb
, NULL c_cre
, NULL t_deb
, NULL t_cre
FROM t_fmyearinitbalrecdetail d
JOIN t_fmaccount a
ON d.account = a.acctid
WHERE d.hsagency = &hsagency
AND d.acctsystype = &acctsystype --获取期初数,根据科目性质,调整余额正负性
AND COALESCE(calagency,0) <> 0 --剔除0与空值
UNION ALL
SELECT ACCOUNT
, calagency
, NULL
, DECODE(dc,1,amt)
, DECODE(dc,-1,amt)
, NULL
, NULL
FROM t_glrecordfm
WHERE hsagency = &hsagency
AND acctsystype = &acctsystype
AND term = &term --当期往来明细记录
AND COALESCE(calagency,0) <>0
UNION ALL
SELECT ACCOUNT
, calagency
, NULL
, NULL
, NULL
, DECODE(dc,1,amt) c_deb
, DECODE(dc,-1,amt) c_cre
FROM t_glrecordfm
WHERE hsagency = &hsagency
AND acctsystype = &acctsystype
AND term <= &term --年初至指定期间往来明细记录
AND COALESCE(calagency,0) <>0
)
SELECT a.acctcode||'-'||acctname acctname
, c.code||'-'||c.name cname
, sum(i.startbal) startbal
, sum(i.c_deb) c_deb
, sum(i.c_cre) c_cre
, sum(i.t_deb) t_deb
, sum(i.t_cre) t_cre
, decode(a.dc,1,'借','贷') dc
, SUM(DECODE(a.dc,1,nvl(i.startbal,0)+NVL(i.t_deb,0)-NVL(i.t_cre,0),nvl(i.startbal,0)-NVL(i.t_deb,0)+NVL(i.t_cre,0))) balance
FROM i
JOIN t_fmaccount a
ON i.account = a.acctid
JOIN t_calagency c
ON c.itemid = i.calagency
GROUP BY a.acctcode||'-'||acctname,c.code||'-'||c.name,decode(a.dc,1,'借','贷')
ORDER BY 1,2;
执行上述SQL语句,弹出输入变量对话框,分别输入单位编码、核算类型及指定期间,结果如下:
3.总预算收支报表
总预算收入报表一般对收入科目按功能进行分类汇总,收入科目如:一般公共预算本级收入、政府性基金预算本级收入、财政专户管理资金收入、专用基金收入;与此对应,总预算支出报表也是按上述支出科目进行功能分类,如一般公共预算本级支出等。上述报表生成的方式相同,本例将总预算报表分为收入报表、支出报表,并以支出报表为例编写SQL脚本。
SQL编写思路:从凭证明细表中获取指定支出科目的按功能分类的汇总数,然后与功能分类信息表关联,设法生成自上而下按功能分类的金额。显示要素:功能分类编码、功能分类名称、金额、显示级别。
由于总预算财务核算数据量较大,应使用临时表(事务级)为宜,将当期发生额、累计发生额汇总后,插入到临时表,最后与功能信息表联结,产生支出报表。
示例代码如下:
--步骤一:创建事务级临时表
CREATE GLOBAL TEMPORARY TABLE tran_temp
(
CODE VARCHAR2(50) PRIMARY KEY,
NAME VARCHAR2(100) NOT NULL,
c_amt NUMBER(18,2),
t_amt NUMBER(18,2)
) ON COMMIT DELETE ROWS;
--插入汇总数据
INSERT INTO tran_temp
SELECT f.code,f.name,SUM(c_amt),SUM(t_amt)
FROM (
SELECT p2.expfunc,p2.dc*p2.amt c_amt,NULL t_amt
FROM t_glvoucherfm p1
JOIN t_glrecordfm p2
ON p1.vchid = p2.vchid
JOIN t_fmaccount a
ON a.acctid = p2.account
WHERE p1.hsagency = &hsagency
AND p1.acctsystype = &acctsystype
AND regexp_like(a.acctcode,'^('||&acctcode||')\d*$')
AND p1.vchattr <>7
AND p1.term = &term --当期发生额
UNION ALL
SELECT p2.expfunc,null,p2.dc*p2.amt
FROM t_glvoucherfm p1
JOIN t_glrecordfm p2
ON p1.vchid = p2.vchid
JOIN t_fmaccount a
ON a.acctid = p2.account
WHERE p1.hsagency = &hsagency
AND p1.acctsystype = &acctsystype
AND regexp_like(a.acctcode,'^('||&acctcode||')\d*$')
AND p1.vchattr <>7
AND p1.term <= &term --年初至当期累计发生额
) i
JOIN t_pubfunc f
ON i.expfunc = f.itemid
GROUP BY f.code,f.name;
--步骤三:执行查询
SELECT f.code,f.name,f.levelno,SUM(t.c_amt) c_amt,SUM(t.t_amt) t_amt
FROM t_pubfunc f
JOIN tran_temp t
ON regexp_like(t.code,'^('||f.code||')\d*')
GROUP BY f.code,f.name,f.levelno
ORDER BY f.code;
--提交事务
COMMIT;
在事务级临时表“tran_temp”创建后,执行步骤2,弹出输入变量对话框如下:
输入参数释义:
Hsagency-引用t_pubagency表,核算单位内码,一般为财政局;
Acctsystype-引用t_systemtype表,核算类型,为总预算;
Acctsystype-引用t_fmaccountsystemtype表,科目代码,为“一般公共预算本级收入”、“一般公共预算本级支出”等支出科目编码;
Term-会计期间。
单击“确定”,则将汇总结果插入到tran_temp临时表。
执行步骤三语句,则输出以下结果:
最后执行提交,释放临时数据。
对于总预算收入报表查询,方法类似,只需将步骤二中的“p2.dc*p2.amt”修改为”-p2.dc*p2.amt”即可,也可以根据输入的科目性质对正负性进行判断,这里不再赘述。
4.行政事业单位经费支出报表
行政事业单位支出报表,主要是对支出科目按经济用途进行的分类,因经费支出科目按支出资金来源分为财政拨款支出、其他资金支出,按资金来源进一步细分为基本支出、项目支出。因此需要对上述分类在报表中一并反映。
--以行政单位经费支出报表为例:
WITH i AS
(
SELECT '['||a.acctcode||']'||a.acctname acctname,e.code,SUM(p2.dc*amt) amt
FROM t_glvoucherfm p1
JOIN t_glrecordfm p2
ON p1.vchid = p2.vchid
JOIN t_pubexpeconormic e
ON e.itemid = p2.expeconormic
JOIN t_fmaccount a
ON a.acctid = p2.account
WHERE p2.hsagency = &hsagency
AND p2.acctsystype = &acctsystype
AND p1.vchattr <> 7 --剔除结转凭证
AND p2.term <= &term
GROUP BY '['||a.acctcode||']'||a.acctname,e.code
)
SELECT *
FROM
(
SELECT e.code,e.levelno,e.name,i.acctname
, SUM(i.amt) amt
FROM t_pubexpeconormic e
JOIN i
ON regexp_like(i.code,'^('||e.code||')\d*')
GROUP BY e.code,e.levelno,e.name,i.acctname
)
PIVOT
(SUM(amt) FOR acctname IN('[50010101]基本支出' "[50010101]基本支出"
,'[50010102]项目支出' "[50010102]项目支出"
,'[50010201]非项目资金' "[50010201]非项目资金"
,'[50010202]项目资金' "[50010202]项目资金")
)
ORDER BY CODE;
以某行政单位12月份经费支出报表为例,结果如下图所示:
本例的难点是pivot中in列表的生成方法,软件对列表的生成一般采用动态生成字符串变量方式,然后串联、拼接成SQL语句字符串,利用execute immediate来执行。对于in列表的生成方法,可以通过以下语句生成:
SELECT listagg(CHR(39)||'['||acctcode||']'||acctname||chr(39)||SPACE(1)||CHR(34)||'['||acctcode||']'||acctname||CHR(34),',')
WITHIN GROUP(ORDER BY acctcode) acctname
FROM t_fmaccount
WHERE acctsystypeid = &acctsystype
AND regexp_like(acctcode,'^(5001)\d+$')
AND isleaf = 1;
执行上述语句,输入经费支出科目编码“5001“,输入行政单位核算类型编码135(事业一般为136,根据系统设置不同改变),就能输出透视列列表。输出结果如下:
二、账簿查询
1.总分类账查询
总分类账一般是每月产生一笔汇总记录,与期初余额合并,利用窗口函数生成余额,这种查询比较简单。需要注意的是,凭证明细表中记录的是末级科目,当查询总账科目时,需要在凭证明细表中检索总账科目下的所有子级科目。
示例代码如下:
WITH i AS
(
SELECT r.acctyear,r.term,'年初数' remark
, DECODE(a.dc,1,DECODE(a.dc,r.dc,r.startbal,-startbal)) deb
, DECODE(a.dc,-1,DECODE(a.dc,r.dc,r.startbal,-startbal)) cre
, a.dc
FROM t_fmyearinitbalrec r
JOIN t_fmaccount a
ON r.account = a.acctid
WHERE r.hsagency = &hsagency
AND r.acctsystype = &acctsystype
AND a.acctcode = &acctcode
UNION ALL
SELECT p1.acctyear,p1.term,'本月合计'
, SUM(DECODE(p2.dc,1,amt)) deb
, SUM(DECODE(p2.dc,-1,amt)) cre
, a.dc
FROM t_glvoucherfm p1
JOIN t_glrecordfm p2
ON p1.vchid = p2.vchid
JOIN t_fmaccount a
ON a.acctid = p2.account
WHERE p2.hsagency = &hsagency
AND p2.acctsystype = &acctsystype
AND regexp_like(a.acctcode,'^('||&acctcode||')')
GROUP BY p1.acctyear,p1.term,a.dc
)
SELECT acctyear,term,remark,deb,cre,decode(dc,1,'借','贷') dc
, SUM(DECODE(dc,1,NVL(deb,0)-NVL(cre,0),NVL(cre,0)-NVL(deb,0)))
OVER(ORDER BY term) balance
FROM i
ORDER BY 2;
假设查询某单位2016年“2305-其他应付款“科目总账,输入相关变量后,结果如下:
“5001-经费支出”科目:
2.明细账查询
明细账查询与总账查询类似,当查询某个科目期初数时,应该将其子级科目明细余额合并(如果余额方向与科目性质不同,则应调整),查询凭证明细表时,其子级科目应全部显示在明细账中,如果只查询末级,则仅显示末级科目明细记录。
WITH i AS
(
SELECT NULL acctdate,NULL vchno,0 acctseq,0 acctseqsub,'年初数' remark,NULL deb,NULL cre,a.dc,SUM(DECODE(d.dc,a.dc,startbal,-startbal)) balance,0 term
FROM t_fmyearinitbalrecdetail d
JOIN t_fmaccount a
ON d.account = a.acctid
WHERE d.hsagency = &hsagency
AND d.acctsystype = &acctsystype
AND regexp_like(a.acctcode,'^('||&acctcode||')')
GROUP BY a.dc
UNION ALL
SELECT p1.acctdate,p1.vchno,p2.acctseq,p2.acctseqsub,p2.digest,DECODE(p2.dc,1,amt),DECODE(p2.dc,-1,amt) cre,a.dc
, decode(a.dc,1,DECODE(p2.dc,1,amt,0)-DECODE(p2.dc,-1,amt,0),DECODE(p2.dc,-1,amt,0)-DECODE(p2.dc,1,amt,0))
, p2.term
FROM t_glvoucherfm p1
JOIN t_glrecordfm p2
ON p1.vc...
- ?
分栏报表 - 物品清单报表实现
念旧
展开
提起分栏报表,它的数据组织形式就如同小时候使用的数学作业本一样,将数据分为多栏显示,当然写作业时有的人习惯横向写,有的人则喜欢竖着写完,在写另一栏。所有的电子技术都是采用隐喻的手法,从物理世界而来,分栏报表也是源于生活,分栏报表也可以行分栏(竖向分栏)和列分栏(横向分栏)。分栏数可以分为两栏或多栏。行分栏数据流从上往下的方向显示数据,超过固定的行数就另起一栏显示,列分栏的数据的流向是从左往右,超过固定的列数就另起一栏显示。
在商业报表系统中常见的分栏报表有商品标签、员工工卡、条码打印等。由此可见,分栏报表常用于需要重复显示结构相同的条目信息,如商品标签中,标签结构相同,只是填充的商品信息不同等。采用分栏报表可以很大程度上的节省空间且美观。如此重要的报表分类要是实现操作能够简便易操作设置,就更好,葡萄城报表提供了非常便捷的分栏设置,只需要一个属性即可解决分栏报表需求。
分栏报表实现
新建RDL报表
2.绑定数据
3. 新建数据集
SELECT * FROM 物品清单ORDER BY 行号
4. 添加表格控件
5. 设置分栏属性
选择报表的灰色区域,点击属性对话框命令,注意设置分栏数量,一定要保证报表的纸张宽度> 单栏宽度* 分栏数量,否则分栏效果不会出来。
6. 预览
了解葡萄城报表:http://grapecity/enterprise-solutions/activereports_server/
转载请注明出自:葡萄城控件
关于葡萄城
葡萄城是全球控件行业领导者,世界领先的企业应用定制工具、企业报表和商业智能解决方案提供商,为超过75%的全球财富500强企业提供服务。
明细报表系统
-
1、只需3秒快速实现求和
-
2、如何快速填充序号
-
3、如何自动填充序号(公式法)
-
4、数据条的神奇应用
-
5、多文本快速合并
-
6、查找与替换的不同玩法
-
7、快速定位到指定区域
-
8、数据排序、工资条制作
-
9、快速筛选(模糊、精确筛选)
-
10、快速插入空行
-
11、快速删除空行
-
12.快速跳转到天涯海角
-
13、.同时查看两个Excel文件
-
14、用条件格式扮靓报表
-
15、一键插入Excel图表
-
16、批量处理行高、列宽
-
17、利用拆分功能查看数据
-
18、批量录入相同内容
-
19、工作表快速跳转
-
20、批量录入表格模板(精品课程)
-
21、Excel函数与公式的应用、公式循环引用的查找
-
22、IF函数单条件判断同比增长
-
23、用sum函数 格式相同,连续多表数据汇总
-
24、excel快捷键
-
25、VLOOKUP函数——根据销售员匹配销售额
-
26、统计各部门销售总额
-
27、统计指定条件个数
-
28、怎样输入当前日期和时间、星期数
-
29、销售业绩排名
-
30、Sumproduct函数-万能函数(销售额汇总求和)
-
31、根据销售员,地区,商品名称汇总
-
32、批量替换PPT字体
-
33、给销售额数据批量添加万元单位
-
34、一秒快速核对两列数据
-
35、快速定位到指定单元格或区域
-
36、快速制作双行标题工资条
-
37、给你的表格做个瘦身
-
38、快速打开常用的Excel文件
-
39、快速打开多个Excel文件
-
40、利用创建组—快速隐藏/展开多列数据
-
41、快速制作下拉菜单
-
42、复制粘贴表格,如何保留数据源列宽格式一致?
-
43、两列数据位置互换
-
44、1秒钟扮靓报表——如何实现表格隔行换色
-
45、快速删除重复记录——保留唯一值
-
46、快速向下填充、向右填充,文本或公式
-
47、给Excel文件添加密码
-
48、插入带图片的批注
-
49、输入公式后不计算?
-
50、如何设置单元格缩进
-
51、快速解决Excel表格总显示货币格式
-
52、批量添加万元单位
-
53、你会四舍五入么?
-
54、用RAND函数机选彩票
-
55、冻结首行你会么?
-
56、超链接的高级应用
-
57、IFERROR函数-屏蔽错误值
-
58、批量填充颜色
-
59、录入数据
-
60、快速输入工号
-
61、快速行列转置
-
62、自定义缩放界面
-
63、多个单元格同时输入
-
64、如何计算立方米?
-
65、快速制作双行标题工资条
-
66、输入带方框的√和×
-
67、快速将姓名对齐
-
68、快速输入性别
-
69、按单位职务排序
-
70、自动计算合同到期日期
-
71、计算时间间隔
-
72、日期和时间的拆分
-
73、快速处理不规范的日期格式
-
74、快速填充合并单元格
-
75、效率加倍的快捷键
-
76、快速复制表格和对象
-
77、快速创建工作表副本
-
78、快速复制序列号
-
79、快速显示公式
-
80、多个单元格同时输入
-
81、快速调整显示比例
-
82、快速自动填充
-
83、快速填充(Ctrl+E)
-
84、Ctrl与数字键结合
-
85、快速将多列数据整理为1列
-
86、快速将1列数据拆分为多列
-
87、快速定位公式
-
88、快速录入数据
-
89、快速累计求和
-
90、身份证号码显示为0怎么办?
-
91、快速制作斜线表头
-
92、文本竖向显示
-
93、神奇的监视窗口
-
94、不一样的格式刷
-
95、快速美化图表
-
96、快速生成当前日期
-
97、快速找出循环引用
-
98、快速提取信息
-
99、二维表快速转换为一维表
-
100、快速多表合并