前言:想要写出一篇引人入胜的文章?我们特意为您整理了企业分布式账务监管系统信息化浅析范文,希望能给你带来灵感和参考,敬请阅读。
摘要:数字经济时代各行业的系统管理软件应运而生,企业的财务管理也逐渐走向信息化,尤其是在业务流程复杂化、账务数据海量化的影响下,实现账务核算、账务查询并面向业务流程、可外延的账务监管系统对企业尤为重要。电商平台在面对海量账务数据的处理时大多采用分布式账务管理模式,在该模式下可以实现多样化的账务监管功能。由此,本文从数据动态监测、账务查询、账务核对以及业务事件重现四个功能开展分布式账务监管系统的信息化构建,力求为企业实现账务监管工作信息化提供思路。
关键词:账务监管分布式系统信息化
一、引言
在社会经济不断发展和数字技术日益成熟的推动下,企业管理系统逐渐走向信息化。目前,企业的账务管理通常采用手工记账或Excel电子记账的传统方式,在传统记账方式下账务管理存在统计工作效率低、核对准确性差、信息无法共享等缺点,无法满足数字经济时代的快节奏需求,尤其是在企业业务与账务分离的情况下,无法为管理者的决策提供及时、准确的账务信息[1]。电商平台因其商业模式的特殊性每天需要处理上亿订单,海量的账务管理必然需要高效率的信息化系统作为支撑。目前全球领先的电商平台多采用分布式账务处理方式,主要是将业务层和存储层分离,基于业务交易形成的数据被存储于多个数据库进行机器学习并形成分配策略知识库,其业务交易数据包含账务信息和事件信息,通过分配策略知识库可以实现选择数据库记录新的业务交易数据,并能够对信息数据开展诸多功能的处理。电商平台基于分布式账务处理方式构建的账务监管系统能够实现定时更新、共享作业、作业状态监控等功能,对于企业账务监管系统信息化的构建具有十分重要的借鉴作用。由此,本文在分析企业账务监管需求和电商平台账务监管系统的基础上开展分布式账务监管系统的信息化构建。
二、账务监管系统的需求分析
(一)数据动态监测功能分析
数据动态监测功能一方面需要实时从外部获取资金变动业务信息并及时开展业务处理,更为重要的是对资金流动的相关信息进行动态监测和数据加密存储[2]。按照业务范畴来看,需要将采购、生产、营销等职能部门设定为业务单位,从各业务单位的周报、月报中获取资金变动业务信息并在后期进行校验,此外,为了实现信息数据的实时收集需要各职能部门及时传递相关信息,或者由财务人员、系统管理人员定期手动获取。从具体的功能来看,需要实现数据收集和数据加密:数据收集主要通过与ERP系统连接可以实现信息数据的自动获取,此外,还应与各业务单位制定标准格式的文本文件,采用人工传递补录的方式收集信息数据;数据加密则需要首先实现数据校验在确定信息数据的准确性和完整性后才能加密,数据校验应在信息传递源头开启身份验证并验证信息是否被篡改,然后运用加密技术进行加密。
(二)账务查询功能分析
在账务系统中各项账务事件均为记账事件,需要在接受外部信息后生成日记账行记录,将信息数据整合成为账务明细和账务事件,在全面了解这两方面相关信息数据后才能进一步开展账务处理和制定财务决策。账务查询功能需要实现应收账款、应付账款、银行存款等账务的明细和相关事项的查询管理。为了方便用户对账务的查询,账务查询首先需要对各类账务进行分类并制定唯一标识,例如将应收账款和应付账款按照时间进行分类,将急需处理的账务设置预警提示,然后根据账务的分类标识满足用户的明细查询要求,最后根据用户权限设置账务相关事项查询功能。账务明细查询功能应根据不用的用户需求提供多种类型的查询接口,一种是根据日记账行提供实时账务明细查询,另一种是根据分批次处理提供以周或月为单位的明细查询,具体而言,可以通过账务标识、账务时间以及账务类型等方式查询单一账务或批次账务。对于已经进行处理完毕的账务应立即设置为处理锁定状态,避免不同系统操作人员或财务人员开展重复操作。
(三)账务核对功能分析
账务核对是账务监管系统中重要的环节,在资金方面需要核对资金流水生成日记账,在业务方面需要核对业务收支数据,在资金数据核对完成后需要根据对账结果反向核对业务单据的收付款结果[3]。账务核对功能需要实现出入账核对和账户余额查询两大功能,出入账核对功能需要根据每一笔业务的经营状况核对应付账款、应收账款等出入账金额是否一致,若存在差异则需要追溯业务事件各项单据收付款的具体情况,寻找差异产生原因,在业务事件所有的账务核对完毕后立即设置为核对锁定状态。在出入账核对完毕后整理各业务事件的明细账,然后与银行账户的出入账以及余额进行核对。业务收支数据和资金流水可能会存在时间差,所以要满足延后对账的需求,但延迟时间太长可能会核销到错误的业务流水,因此,同一业务事件涉及的业务收支数据和资金流水数据均需要制定统一的标识。此外,在账务核对完成后应将向账务系统传递核对结果,同时将业务单据收付款状态传递给各业务部门,由财务部门和业务部门开展进一步核对。
(四)业务事件重现功能分析
在每一笔业务的生命周期中,业务订单生成、采购生产、仓储发货以及售后服务等环节都可能产生账务变动,系统操作人员根据接收的信息对数据的增加或删改可能会导致部分事件数据丢失,无法执行后续操作。在传统的增删改查模式中,一个典型的数据过程就是从数据库中读出数据,修改完后再把修改后的数据更新到数据库中,多个用户可能会同时操作同一张表,数据更新造成的冲突可能影响数据的准确性和完整性。事件溯源模式则记录事件数据库中增加数据操作过程中经历过的事件,应用程序代码会将数据操作过程中经历的所有动作描述成事件,然后持久化到事件数据库中。借鉴事件溯源模式可以实现业务事件重现,在缺失业务部门和系统操作人员提供信息数据的情况下,借助该功能将整个业务事件全过程重现,进而对账务监管过程中出现的问题进行追溯。业务事件重现功能需要将每一项业务事件在账务监管系统中出现的操作进行记录,在需要追溯重现时将业务事件状态的结果作为输入条件,验证以前操作的合理性并逐步将所有操作整理成事件发展历程。
三、分布式账务监管系统信息化构建
(一)电商平台账务监管系统分析
全球领先电商平台的账务系统大多采用了先进的分布式账务管理模式,其中,领域驱动设计模式将业务层和存储层分离,在业务层采用事件溯源构架保证业务事件的准确处理和完全追溯重现,在存储层采用读写分离架构保证系统稳定性和准确性。此外,数据库采用分库分表的模式将数据进行流量切分。电商平台为了保证账务数据在流动过程中的安全性以及实时发现业务问题,应用了Sherlock账务监管系统平台,该账务监管平台每天处理的日志、事件和指标高达百亿条。Sherlock账务监管系统平台通过构建FlinkStreamingjob实时处理系统能够及时处理日志、事件,主要是在Flink上搭建元数据微服务,能够用Json来描述一个作业的DAG且相同的DAG共用同一个作业,能够更加方便地创建作业。系统管理者可以通过调用API来描述和提交作业,无需了解FlinkStreamingAPI就可以创建Flink作业,若需要迁移到其他的流处理框架,只要增加一个适配器,就可以将现有的作业迁移到新的流处理框架上。此外,Sherloc账务监管系统平台通过配置各种软件程序可以实现更加丰富的监控功能,具体如表1所示:通过以上分析可以发现,电商平台的分布式账务管理模式对于企业账务管理信息化具有十分重要的借鉴作用,尤其是Sherlock账务监管系统实现的多项监控功能为企业账务监管系统的构建提供了大量的思路和技术指导。
(二)账务监管系统构建
Sherlock账务监管系统将业务层和存储层分离,借鉴该架构将账务监管系统的总体框架设计如图1所示:业务层主要实现账务监管系统的各项功能,在系统接收外部业务信息触发资金变动时通过对账务数据的监测、校验、加密以及日志记账等主动操作实现业务事项的基础账务处理并存储相关数据;在系统接收操作人员或用户的需求信息时,则开展账务查询、业务查询以及业务重现等被动操作。(1)数据动态监测设计。数据动态监管功能的实现需要通过装载、处理、加密以及控制四个模块实现。数据装载模块主要是承接外部传递的信息数据并进行预处理,将外部信息数据转换成ER数据并载入Zone数据库。数据装载模块需要与账务管理系统、ERP系统等进行连接,各系统将账务相关信息数据压缩为指定文件,数据装载模块通过数据采集ETL每隔5分钟对各系统的数据库访问一次并提取指定文件获取信息数据。数据处理模块首先从Zone数据库中提取ER数据并开展数据清洗、统一口径等处理并存储至Data数据库,然后从Data数据库提取处理后的数据,按照业务模型、处理规则对数据进行加工处理并存储于Sheet数据库中。加密模块主要是对数据的完整性进行校验并对敏感数据进行加密和解密。数据完整性校验通过分布式区块链记录业务信息,每一个区块记录单一业务的事件变化过程和资金流动过程,通过Hash计算生成唯一标识哈希值,在整个区块链中任何一个区块记录都难以修改而且一旦修改需要对后续所有区块进行修改,因此能够有效保证账务数据的完整性[4]。数据加密采用DES对称加密方式转化为密文,数据接收方需要通过数字签名验证后才能解密。数据控制模块主要对数据流转过程中的处理、流程、权限进行控制,保证数据流转过程中各项操作的合规性。在数据装载环节严格审查获取数据的正确性,首先确定数据源正确性,通过数字身份验证、指定文件验证保证连接各系统的正确性,其次注明数据抽取逻辑、限制条件以及定期与源系统核对,并定期对数据库中的历史数据进行筛选和清理,然后建立故障检测机制,对数据动态监测功能各模块的运行定期进行扫描,在发现故障时及时报警并主动采取控制措施,最后制定业务数据校验机制:对于单字段业务数据开展字段类型校验、长度/精度校验、可逻辑条件化约束校验、取值规则约束校验;对于多字段业务数据开展非空约束校验、规则约束校验;记录间业务数据开展规则取值约束校验、一致性约束校验、唯一性约束校验。(2)账务查询设计。账务查询的基本功能是满足使用者对账务明细、业务事件的查询,需要提供可视化端口,此外,根据使用者不同的需求还应制定个性化端口。一种情况是在特定场景下使用者需要查询某项业务具体事项的账务明细或事件信息,可以根据业务标识从Zone数据库、Data数据库和Sheet数据库中分别提取出原始数据、筛选数据和处理数据供使用者进行查询和核对,该功能采用日记账行即可以实现[5]。另一种情况是使用者需要查询一个或多个业务在一定时期内的账务情况,则需要通过批处理(Batch)按照使用者的需求将一定时期内产生的日记账行汇总整理成为表格。使用者在web端口输入查询内容后,系统会接受到请求将查询结果显示在web端口,对于业务事件查询的结果以Json格式显示,可以进一步通过链接查询所需的事件信息。账务查询在用户界面应设置日记账端口(JournalLine)、批处理端口(Batch)以及事件端口(event)三个使用者进入端口,根据使用者的实际需求提供多样化、灵活的查询方式。日记查询功能通过记账服务(JournalServiceImpl)能够实现单条日记查询、日记账查询、日记账行列表查询,该功能模块采用分库分表模式增强数据库读写性能,并根据业务类型标识通过分片方式对日记账行进行存储。批处理查询功能通过批处理服务(BatchServiceImpl)能够实现根据批号查询批处理账务明细、根据业务标识查询批处理账务明细。事件查询功能通过事件控制器(EventControlle)能够实现根据事件标识查询、根据有效装载信息查询、根据日期查询,有效装载信息查询主要包含订单信息、商品信息以及付款人信息等,使用LIKE从数据库中查询符合条件的信息,经解码后可以向使用者展示业务事件的编号、创建事件、事件类型、生产者以及具体事件信息。(3)账务核对设计。账务核对不仅需要对应收账款、应付账款、银行存款及出入账明细进行核对,在发现问题时还需要追溯业务事件各项单据收付款的具体情况,寻找问题产生原因。账务核对主要面向账务管理者和业图1账务监管系统总体框架务管理者,对于账务管理者需要及时发现出入账之间差异以及急需处理的账务,对于业务管理者需要了解负责业务的资金流动情况进而制定下一步经营决策。账务核对模块主要按照各业务分类开展出入账核对、账账核对(核对不同会计账簿之间的账簿记录是否相符)、账证核对(核对会计账簿记录与原始凭证、记账凭证是否一致)、账实核对(核对会计账簿记录与财产等实有数额是否相符),及时发现各业务存在的账务问题。账务核对通过日记账(JournalLine)可以对业务产生的各项明细进行准确记录,通过编制报表(PreparedStatement)可以按照业务标识从数据库中收集相关数据并汇总整理支出账务明细和收入账务明细,通过账务计算逻辑(findVendorPayout)对支出账务明细和收入账务明细进行逐个计算,最终判断是否存在账务问题[6]。账务核对在出入账核对的基础上还需要将支出账务明细和收入账务明细与原始凭证、记账凭证、财产数额进行核对,确定各项数据的正确性。此外,通过核对应付账款、应收账款的金额和时间确定亟需处理的应付账款。业务管理者端口主要为输出端口,业务的资金流动情况的查询可以通过账务查询功能实现,在系统发现某项业务的出入账存在差异时,及时通过端口向业务管理者报警并传递相关信息。在账务核对模块发现账务问题时会通过事件控制器(eventController)将相关信息数据传递至业务管理者显示层端口。(4)业务事件重现设计。在账务管理过程中账务和事件可能存在时间差,而在账务系统中是根据账务处理和事件发生的时间进行记录,在开展账务核对时可能会出现错误或无法进行下一环节的问题,但此时并非实际的操作错误。事件溯源模式可以将业务执行过程中产生的账务数据和事件信息记录到数据库中,账务管理人员在发现账务问题时可以通过业务事件重现功能将整个业务的账务数据和事件信息还原寻找问题发生原因。尤其是在业务部门无法实时反馈问题信息的情况下,业务事件重现功能能帮助账务管理人员及时找到问题发生原因,进行处理或预警等操作。在每项业务制定标识进行分类的基础还应当为事件的类型、生产者、时间等信息制定唯一标识。业务事件重现模块需要通过事件查询程序(EventFinder)接收使用者的事件重现需求,然后由查找帮助程序(FinderHelper)从各数据库中查询账务数据和事件信息并按照时间历程重现整个业务事件。使用者输入查询业务ID由事件查询程序生成该业务所有的事件信息,使用者可以选择生成整个业务的事件重现或选择部分事件进行重现,查找帮助程序通过事件信息标识可以从各数据库中查询发起事件(capture)、支付事件(Payment)、结算事件(settlement)等信息生成业务事件。
(三)系统功能测试
账务监管系统的测试环境需要在正常的办公配置条件下满足各项功能需求,因此将测试环境配置如下:办公PC电脑;操作系统Windows7;服务器为阿里云ECSn4;线上环境为阿里云docker线上平台;测试软件为IntelijIDEA;数据库为阿里云RDS。本文按照月度编制业务账务信息和事件信息存储于ERP子数据库用于系统测试,其中部分业务的账务处理时间和事件处理时间进行打乱,在上述测试环境下对各功能模块的测试结果如表2所示。四、结论与启示随着信息技术的日益发展,目前大多数电商平台的账务管理系统采用业务层和存储层分离的分布式,分布式技术因数据存储一致、数据存储及时、数据难篡改等特点,解决了传统集中式技术难以克服的问题。电商平台的账务监管系统每天可以处理高达百亿条的账务、事件,同时保证较高的准确率。由此,本文开展分布式账务监管系统的信息化构建,力求实现企业账务监管工作的信息化。在分析账务监管需求以及Sherlock账务监管系统的基础上,账务监管系统应从数据动态监测、账务查询、账务核对以及业务事件四项功能实现信息化,通过对账务监管系统信息化的构建可以实现上述四项功能,满足企业对账务进行数据动态监管、查询、核算以及事件重现的需求。对于企业而言,尤其是中小型企业在实现账务监管系统信息化后能够大幅缩减账务查询、核对的工作量而且实现账务问题的及时报警,释放财务人员繁琐的账务工作,致力于决策管理方面的工作。各项数字化技术在企业的应用许可、财务人员的专业技术能力等均存在空缺,但随着数字化经济的不断深化,数字化技术对财务领域的影响会越来越大,推动企业财务管理的信息化。
参考文献:
[1]董晓丹.供电企业账务管理创新与优化探讨[J].中国国际财经(中英文),2017(23):192.
[2]王丽华.现代企业财务会计信息化管理体系创新研究—评《互联网时代的企业财务会计实践发展研究》[J].商业经济研究,2020(17):193.
[3]程平,尹赤.大数据时代下基于云会计的小微企业账务管理探析[J].财务与会计,2017(17):17-19.
[4]李治国.基于区块链的财务系统应用研究[D].中国地质大学(北京),2018.
[5]曾强,袁明明,张永强.基于B-S的文印公司账务管理系统研发[J].计算机应用与软件,2017,34(5):322-328+333.
[6]马勰,张亶.基于SSH技术移动账务系统管控平台的设计[J].中国科技论文,2012,7(4):290-293.
作者:许静 单位:郑州经贸学院会计学院