

一、概述
财务管理子系统分为三个部分:会计业务,资产管理,成本管理。其中固定资产和流动资产前面已经有了,这里就开始会计业务-即传统财务管理的内容,
包括账务管理、应收、应付、工资核算、现金管理、材料、销售核算等业务。
(在ERP的5种流里,业务流以信息流为载体,牵动着物流和资金流,最终体现在价值流上。从宏观来看,只有两件事:收入和支出,但凡涉及这两项的业务内容都会有相应的会计科目,都需要提供凭证来入账-计入账簿。同样从宏观来看,ERP也只有两件事:资源管理和需求计划,企业资源计划这个概念也是这么来的。再从宏观来看,编程也只有两件事:I&O, 输入和输出。我们后面会把投产分析的概念应用到编程上或者某个系统上,从投入和产出上来验证整个业务流程的实施效果评估。
我们稍微扯远一点:围绕着输入和输出来聊聊编程,继续从宏观来看,任何一门语言或者任何一个框架,通常只有3个部分:数据,功能和机制,要么提供数据,要么提供功能,要么提供机制。
输入一般有两个最为广泛的渠道:一是用户输入,比如一张表单,这种表单在ERP系统里是最常见的,基本到处都是表单,采购要填采购单,入库要填入库单,还有订货单,备货单,提货单,出库单,这些单据干嘛用的?都是业务的凭证啊,最开始都是人工填,后来基础数据都准备好了,这些表单都可以自动生成。然后以表单的形式将业务数据发送到服务端进行处理-比如进行数据的验证,分析,计算和处理,或者直接持久化入数据库。直接入库的叫贴源数据,经过数据加工的叫加工数据。
流程还是比较简单的:输入-处理-归档。反过来呢,当我们需要使用这些数据,就是从归档数据中进行输出,同样进行数据处理,最后输出到可视化界面上。这个流程也同样简单:输出-处理-展示。用一张表单把数据输入到数据库,用表格将数据输出到可视化界面。除了人工输入外第二个渠道是机器设备数据采集,流程是一样的。很多时候我们看到的复杂的业务流程,大部分的复杂程度都表现在数据处理上。输入输出都是那么一下,数据库你存取数据好了,最终还是在数据分析和数据加工上。
数据库就相当于仓库,里面的物料要么是自己产出来的,要么是采购来的,反正它肯定有个来源,然后根据不同的业务需求,从库存拿出来进行包装最后卖出去。数据库里的数据有些是加工过的,有些就是原材料,有些是成品,有些是半成品。对吧,就是一个输入,一个输出。我们之前说投产分析可以应用到各个业务层面上,为毛?就是因为任何一个业务流程都是由若干个输入/输出的组合以离散或流程处理的形式形成的。有小伙伴就问了:那我看到的可视化界面是什么?是包装。最终玩还是数据,就跟你买东西最后用的还是产品一样。包装是一种体验,可是化也是一种体验或者交互的方式。
数据流:输入-处理-入库-出库-处理-输出,干的大部分的事情都集中在处理上,为毛,其他都是机制,只有处理过程才是业务流的体现。
财务管理业务比较常见的有几件事情:凭证(凭据)和记账(入账),对账(和银行),轧账(总账明细和辅助账)和查账(财务报表)。
(这里主要扯一下账套的问题,为不同的机构或所属单位分别建立账套。
财务管理实际业务没这么简单,这里都是从宏观上去描述,任何事情从宏观上看都很简单,但是宏观仅仅是便于了解,ERP的初衷还是落地到细节上。
早年间搞金蝶的AES,一个财务报表搞到到我心态炸裂。那段时间几乎一整年都在搞报表,搞到最后每个Schedule下的Transaction的成交量和交易额都能背出来。
或者说某个物料子系统仅仅升级版本,所有的BOM编号要做对应升级,也就是根据规则重新编码,ORACLE的数据库跑了两天三夜还没跑完,即便是跑完了也没有结束,还得去逐批验证,这也说明了一个道理:任何东西一旦成批量或大批量了,质量就很难保证,另外一点是ORACLE我不太熟悉,写出来的脚本可能效率差了,所以很多事情从细节上就不像宏观上这么容易,但是跳出来从宏观上看看,再回到细节就容易多了,很多时候在细节里绕啊绕啊,就把一些本质和方向绕没了,你要现在让我回过头去搞这个事:我就说我不擅长,直接找供应商来协助,这也是实情,主要现在的观点是:能够尽量的细化,让擅长的人去干擅长的事情,才是资源的最大化利。
业务过程中出现的困难通常是两个方面:一是能力不足,二是位置不对。最近正在也在反思过去的一些问题,其中最明显的一点就是什么都做,什么都自己做。精力时间和能力都分散了,效果出不来。先把一件事做好了,如果能力还有结余,再去搞搞其他事情,如果一件事情都没有搞出水平来,就算把所有事情都搞全了,充其量也就是一般,也只是做做样子。
所以我们应该有这样一个长期计划:在细分的过程中,逐步的培养一些细分领域的人才。其实任何企业都想培养人才也有能力培养人才,问题是什么?会跑呀。之前在某一篇中提过这个问题,比如我们去搞培训,这种培训很多,哪怕是培训的效果微乎其微,大佬也不会太痛心,最让大佬痛心的是什么:花时间花精力财力投入了,人是培养出来了,到了产出的时候,特么跑了,产出到别人那去了。
企业在对员工的考量上,虽然这个时代不太讲究忠诚度,但是忠诚度考量永远是第一位的,能力不足可以培养,态度不好可以教育,但是缺乏忠诚度就是死穴啊。当然能力也很重要,企业不是做慈善的,不会发善心花钱让你来玩的,肯定是需要有所产出的。不是现在产出,就是将来产出,反正你肯定要有产出,而且产出最终要大于或者远大于你所消耗的成本,这个是成本原则,不会变的。
所以如果一个人希望企业对他有所期待,无非是两件事:第一,我不跑,第二,我能干且干能多。大白话,用理论来说就是忠诚度+能力。啥意思呢?先要定心,然后定身,最后定才。
二、财务处理流程
(1)根据原始凭证或原始凭证汇总表编制记账凭证。
(2)编制转账凭证。
(3)根据收款和付款凭证登记现金日记账和银行存款日记账,并登记有关的明细账与辅助账。根据转账凭证登记有关的明细账与辅助账。
(4)根据记账凭证编制科目汇总表,由科目汇总表登记总账(小型企业可能在登记明细账的同时就登记总账)。
(5)月末进行银行对账。
(6)定期(或需要时)进行轧账,即核对总账与明细账、日记账
是否一致,月末进行结账处理。
(7)根据总账、明细账、相关资料编制会计报表。

三、财务系统处理流程
1.科目设置
每个账户的名称即为会计科目,会计科目按反映的经济业务内容的详细程度不同,可以分为一级科目、二级科目、三级科目及四级科目等明细目。
会计电算系统要求设置科目编码,设置科目的级别、级长,每个科目的科目类型、余额方向、助记码、现金账标志、银行账标志、往来账标志等性质。
2.凭证录入
大部分的记账凭证可以由原始凭证自动生成(有的会计电算系统对自动转账的凭证需进行定义),但由于原始凭证一般种类繁多、形式多样、往往不便于计算机处理,处理的依据依然是人工编制的凭证。因此,有的还要输入人工编制的记账凭证(当然,现在有些软件系统可以做到自定义原始凭证形式,可以生成记账凭证)。另外,财务处理涉及许多转账业务,这些转账业务可由系统自动完成。同一凭证的不同分录、科目之间的对应关系要比较清晰,否则,如果编制比较复杂的表格(如现金流量表),在汇集有关账户的数据时,有时还要考虑对方科目的约束条件,因此,可以在凭证分录中增加对方科目。
3.账户余额
账户余额与手工处理稍有不同,一般有两种方法,第一种账户余额计算公式如下:
期末余额=期初余额+本期借方发生额-本期贷方发生额
借方与贷方设置的符号不同(正、负),余额为正表示余额在借方,余额为负表示余额在贷方。另外一种方法是与习惯相同,初始设置科目时,同时设置科目的余额方向(借方、贷方、两性),如余额方向是两性的账户,余额为正则在借方,否则在贷方。
(借方就是借进来,贷方就是贷出去,是一个流向问题,比如这笔款,从对方手里到我手里,我就是借方,对方就是贷方)
4.总账设置
电算化财务的总账是由明细账汇总而来,它们肯定是平衡的,总账可以动态刷新或定期汇总加入记录,计算公式如下:
期末余额=年初余额 + 年借方发生额-年贷方发生额
月末余额=月初余额+月借方发生额-月贷方发生额
(上次就是搞的这东东,找对应的数据就废了老劲了,如果说这些公式都不知道啥意思,这还是简单的,其实实际业务数据很复杂,哪里就这么两参数啊,怎么把OLAP的多维数据模型做出来?所以都得弄清楚了)
5 银行对账
企业和银行处理银行结算业务时,由于凭证传递的时间差,经常会出现一方已经登账,而另一方未登账的情况,即存在未达账项。
未达账项有:银行已收企业未收、银行已付企业未付、企业已收银行未
收、企业已付银行未付四种类型。
对账后分别汇总一方已收(或已付)而另一方未收(或未付)的发生额,并根据对账单期末余额和企业银行账期末账面余额进行调整,计算如下:

调整后双方余额相等,则说明银行和企业记账正确。