CN115374204A - 一种高效追踪资金来源及去向的技术方案 - Google Patents
一种高效追踪资金来源及去向的技术方案 Download PDFInfo
- Publication number
- CN115374204A CN115374204A CN202211025091.5A CN202211025091A CN115374204A CN 115374204 A CN115374204 A CN 115374204A CN 202211025091 A CN202211025091 A CN 202211025091A CN 115374204 A CN115374204 A CN 115374204A
- Authority
- CN
- China
- Prior art keywords
- data
- bank
- account
- database
- row
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/02—Banking, e.g. interest calculation or account maintenance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Development Economics (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
一种高效追踪资金来源及去向的技术方案,属于计算机数据处理技术领域。其特征在于:包括如下步骤:步骤A,数据处理准备流程,步骤B,数据导入处理流程;步骤C,数据导出处理流程。在本高效追踪资金来源及去向的技术方案中,依据各个银行现有的银行流水电子数据,对不同文件格式、不同数据结构、不同数据形式的银行流水电子数据的读取、去重、映射、补缺、导入、存储、导出、排序、比对和追踪的技术方案,较好地解决了传统技术中工作效率低、劳动强度大、容易出纰漏的弊端,通过计算机批量数据快速处理的方式,填补了对相关资金来源及去向高效追踪的技术空白,大大提高了资金来源及去向高效追踪的高效性和准确性。
Description
技术领域
一种高效追踪资金来源及去向的技术方案,属于计算机数据处理技术领域。
背景技术
目前,在某些特殊的场合,需要对某些特定资金的来源和去向进行追踪,然而对于资金的追踪难度越来越大,具体表现为:
(1)各个银行导出的交易流水文件的文件格式不尽相同、数据结构各不相同,数据要素呈现的形式也不相同,此前追踪一笔资金时,需要在涉及该笔资金转移的各个银行流水文件之间、不同数据列之间、不同数据行之间来回切换,通过肉眼识别记忆,让工作人员眼花缭乱,追踪的准确性无法保证,追踪效率极其低下,有效统计用户之间资金转移的笔数、体量更是无从谈起。
(2)相关资金账户的流水数量越来越多,有的任务涉及银行流水多达30余万条,在浩如烟海的银行流水中追踪区区几笔资金的转移过程,其难度巨大,若将银行流水打印成成百上千页的纸质表格逐行查找已不现实,若通过手工方式在原始的银行流水电子文件中搜索到某笔资金,电脑屏幕也已无法显示数据表格表头,造成数据理解困难继而无法有效追踪,况且有些银行流水电子文件存在大量不可见的非打印字符,难以高效运用电脑搜索功能实现资金追踪。
(3)各银行导出的流水数据各不相同,就是同一银行导出的流水数据表格也不断变化,原始的流水数据上下行无法准确反映资金上下游的逻辑关系,更无法反映实际的跨银行、跨用户、跨账号、跨表格的资金转移,通过传统方法人工追踪资金转移带来的工作量是巨大的,传统方法越来越不可行。
因此,设计一套技术方案,将各个银行的交易流水数据进行整理,使全部的银行流水数据的数据结构、呈现形式、逻辑关系完全统一,通过交易双方账户户名、交易账号、交易金额、交易日期等关键要素,自动关联资金转移互为对手的逻辑关系,从而实现相关资金的来源和去向快速准确追踪等功能,以便大大提高工作效率,成为特定领域亟待解决的问题。
发明内容
本发明要解决的技术问题是:提供了一种高效追踪资金来源及去向的技术方案,克服传统技术的不足,较好地解决了传统技术中工作效率低、劳动强度大、容易出纰漏的弊端,填补了对相关资金来源及去向高效追踪的技术空白,大大提高了特定工作的高效性和准确性。
本发明解决其技术问题所采用的技术方案是:该高效追踪资金来源及去向的技术方案,其特征在于:包括如下步骤:
步骤A,数据处理准备流程,选择或新建一个目标任务,选中目标任务全部的银行数据文件,过滤无效文件,识别银行名称并进行银行数据文件的格式转换;
步骤B,数据导入处理流程,逐行识别银行数据行类型,选择或新建银行数据表格各表头的映射规则,结合要素行提取的数据要素和数据行字段内容,映射出固定结构的银行账户数据和银行流水数据,分别查重导入银行账户数据库和银行流水数据库,同时记录导入的相关人员账户户名、导入文件记录和错误数据行的记录;
步骤C,数据导出处理流程,将步骤B中所确定的银行账户数据、银行流水数据进行排序,依靠步骤B中所形成的银行账户数据库补齐残缺的对手户名,将每名相关人员的银行流水分别导出到一张工作表中,加入原始银行数据文件的链接以及交易对手流水的链接,最终生成数据处理结果工作簿,银行交易中付款账户流水与收款账户流水的对应关系。
优选的,所述的步骤A中,包括如下步骤:
步骤A-1,选择目标任务,若目标任务不存在,则新建任务,并将新建任务作为目标任务;
步骤A-2,选择步骤A-1中所述任务对应的所有银行数据文件,排除无效文件;
步骤A-3,根据步骤A-2选择的银行数据文件路径,确定所属银行名称;
步骤A-4,若步骤A-2选择的银行数据文件中包括“*.TXT”格式的银行数据文件,则将其转换为表格数据文件。
优选的,在所述的步骤B,包括如下步骤:
步骤B-1,后台逐个打开步骤A中确定的银行数据文件,逐个工作表、逐行读入银行数据文件中某行数据,自动识别该行数据的类型,即无效行、要素行、表头行或数据行;
步骤B-2,若当前行为无效行,跳到下一行,并读取下一行的数据;
步骤B-3,若当前行为要素行,则提取数据要素,跳到下一行,并读取下一行的数据;
步骤B-4,若当前行为表头行,在所述技术方案积累的表头及映射规则数据库查找,若该表头已存在,则提取对应的映射规则,跳到下一行,并读取下一行的数据;若该表头不存在,则新建对应的映射规则,并加入到所述技术方案积累的表头及映射规则数据库,跳到下一行,读取下一行的数据;
步骤B-5,若当前行为数据行,结合步骤B-4确定的映射规则、本行数据各字段内容、B-3可能提取到的数据要素,映射出固定结构的银行账户数据和银行流水数据;
步骤B-6,执行银行账户数据导入流程和银行流水数据导入流程;
步骤B-7,对银行数据文件逐个工作表、逐行导入完成后,以“*.XLSX”格式备份,重新命名并在目标任务每条银行流水数据中记录该备份文件名。
优选的,在所述的步骤B-6中,银行账户数据导入流程包括:
步骤B-6-1,对映射出的账户数据,如果账户户名残缺,或银行账号、银行卡号均残缺,则视为残缺数据,予以记录,则跳到下一行,并读取下一行的数据;
步骤B-6-2,映射出的账户数据在银行账户数据库中查找,如果该账户数据存在,则完善账户数据库中存在的账户数据,跳到下一行,并读取下一行的数据;
步骤B-6-3,将映射出的账户数据导入到目标任务的银行账户数据库中,则跳到下一行,并读取下一行的数据;
银行流水数据导入流程包括:
步骤B-6-1′,对映射出的流水数据,将交易日期、交易金额、账户余额、交易备注字段形式格式化;
步骤B-6-2′,对步骤B-6-1′格式化的流水数据,如果账户户名残缺,或交易账号、交易卡号均残缺,或交易日期残缺,或交易金额残缺,则视为残缺数据,予以记录,则跳到下一行,并读取下一行的数据;
步骤B-6-3′,对步骤B-6-1′格式化的流水数据在本银行流水数据库中查找,如果该流水数据存在,则跳到下一行,并读取下一行的数据;
步骤B-6-4′,在步骤B-6-1′格式化的流水数据中提取其银行名称、账户户名、账号卡号字段,形成流水中银行账户数据,再提取其对手银行名称、对手户名、对手账号字段,形成流水中对手的银行账户数据,按照步骤B-6-1至B-6-3的方法加入目标任务的银行账户数据库中,
步骤B-6-5′,将步骤B-6-1′格式化的流水数据既非残缺又不重复的,则导入到银行流水数据库中。
优选的,所述的步骤C,包括如下步骤:
步骤C-1,后台预设数据处理结果工作簿,按照导入相关人员数量n确定该工作簿中工作表的数量n+1,首张工作表命名为全部账户,其余工作表以查询的银行账户户名命名,生成账户数据固定表头和流水数据固定表头,设置各列字体、字号、单元格格式和完整显示的合适列宽,冻结首行固定表头;
步骤C-2,将步骤B中所确定的银行账户数据按照银行账户类别、银行账户户名、银行名称、银行账号、银行卡号排序,将所有出现过的银行账户导出到第一张工作表中;
步骤C-3,将步骤B中所确定的银行流水数据按照银行账户户名、银行名称、交易账号、交易卡号、交易日期、交易时间排序;
步骤C-4,对每条流水数据,依靠目标任务银行账户数据库中的全部账户信息,补齐该条流水残缺的对手账户户名;
步骤C-5,对每条流水数据,根据其户名、账号卡号、对手户名、对手账号、交易日期、交易金额,在目标任务银行流水数据库查找对手流水的数据库ID;
步骤C-6,如果找到交易日期相同、交易金额相反、对手户名为本条流水户名或对手账号为本条流水账号卡号的,即可确定找到对手流水数据,则在数据库中记录对手流水数据的数据库ID;
步骤C-7,如果找到交易日期相同、交易金额相反、对手户名残缺且对手账号残缺的,即找到疑似对手流水数据,则在数据库中记录疑似对手流水数据的数据库ID;
步骤C-8,将查询的所有账户全部流水数据,分别导出到各自对应的工作表中,结合每条流水所在原始数据备份文件名、工作表名、所在行,写出该条数据打开定位超链接;同时在临时数据库中记录每条流水数据的数据库ID、在结果工作簿中的工作表名及行号、对手流水数据的数据库ID信息;
步骤C-9,对目标任务全部银行流水数据写出完成后,临时数据库记录与目标任务全部银行流水数据库记录将一一对应,为写出对手流水数据追踪链接,对临时数据库中每条记录逐一处理;
步骤C-10,如果临时数据库某记录存在确定的对手流水数据,则在临时数据库中查找确定对手流水数据的写出位置,依此在原流水数据的目标位置写出跳转定位超链接;
步骤C-11,如果临时数据库某记录存在疑似的对手流水数据,则在临时数据库中查找疑似对手流水数据的写出位置,在原流水数据的目标位置写出跳转定位超链接;
步骤C-12,目标任务所有的银行账号数据和银行流水数据全部导出到数据处理结果工作簿后,自动保存;
步骤C-13,在桌面新建目标任务的数据文件夹,并将目标任务原始数据备份文件、数据处理结果工作簿以及导入查询对象记录、导入文件记录、导入数据错误记录复制到目标任务文件夹。
与传统技术相比,本发明所具有的有益效果是:
通过所述技术方案,首先对查询某一任务相关人员全部的银行流水电子数据进行连续读取、去除重复、映射字段,按照预定的数据结构导入数据库并累积存储,尔后对数据要素进行匹配补缺,按逻辑顺序排序,最后将目标任务全部的银行流水数据按照一定的数据结构导出到一个工作簿中,在首张工作表中汇总呈现目标任务涉及的全部银行账户信息及全部交易对手账户信息,将所有相关人员以每人一张工作表的方式,按照统一的数据结构汇总呈现该人每个开户银行的全部流水数据,并添加每笔银行流水对手数据的跳转定位链接,以及与原始数据比对的打开定位链接,在最终的工作簿中直观显示了相关人员包括账户户名、开户银行、交易账号、交易卡号、交易金额、账户余额、交易日期、交易时间、交易网点、交易方式、对手户名、对手账号、对手银行、交易备注等要素在内的所有银行流水数据,对各不相同的银行流水数据进行数据结构统一,在此基础上实现数据补缺、逻辑排序、定位追踪,大大提高了追踪工作的高效性和准确性。工作人员通过所述技术方案所形成的数据处理结果工作簿,可从三个维度进行有效使用。
1、资金转移追踪。某笔银行流水存在对手流水数据的,所述技术方案将在数据处理结果工作簿中添加“追踪”链接,点击链接文字,可自动跳转定位到对手流水的所在工作表和所在行。某笔银行流水存在疑似对手流水数据的(如取现后又存现的),所述技术方案将在数据处理结果工作簿中添加“追疑”链接,点击链接文字,可自动跳转定位到疑似对手流水的所在工作表和所在行。比如,通过筛选对手户名,发现对手中存在大笔资金转账记录,通过上述追踪,可查明该笔大额资金经多个账户多次转账的记录。
2、资金转移统计。数据处理结果工作簿除2处链接外,包含银行流水的17个关键要素,可按任一要素进行筛选,再选中目标列进行统计。比如:(1)在某个相关人员全部银行流水工作表中筛选对手户名,选中交易金额整列,文件将自动统计显示该人员与对手之间相互转账共计x笔,进出相抵净金额y万元,其中筛选条件可以增加交易时段、交易账户、交易方式、资金转入或转出等更多限制,能够统计得到更多条件下的资金转移笔数和资金转移体量。如该相关人员向对手转账净金额非常大,排除双方存在债权债务关系和生意往来的可能,结合双方的职业和职权,则可考虑该相关人员转账的动机。即便该相关人员通过第三人迂回转账,亦可通过上述逻辑分析资金转移的关系。(2)在某个相关人员全部银行流水工作表中筛选交易方式为“银证转账”等资金进出股市的银行流水,选中交易金额整列,文件将自动统计显示该相关人员历史上转入转出股市资金的总笔数和净金额,转入转出股市的净金额扣除其持有股票的市值,即为该相关人员炒股的净盈利额或净亏损额,如果该相关人员炒股净亏损额非常大,则可考虑其特殊的主观动机。
3、原始数据比对。分析某笔银行流水前后存在逻辑矛盾时,可以点击“原表”链接,打开原始银行流水数据备份文件,并定位到该笔流水所在工作表和所在行,查看原始数据是否存在其他要素能够排除逻辑矛盾(比如转账失败自动冲正等),或该技术方案在处理数据时是否存在设计错误,以便及时校验并更正错误。
附图说明
图1为高效追踪资金来源及去向的技术方案流程图。
图2为高效追踪资金来源及去向的技术方案数据准备流程图。
图3为高效追踪资金来源及去向的技术方案数据导入流程图。
图4~5为高效追踪资金来源及去向的技术方案数据导出流程图。
具体实施方式
图1~5是本发明的最佳实施例,下面结合附图1~5对本发明做进一步说明。
如图1所示,一种高效追踪资金来源及去向的技术方案(以下简称所述技术方案),包括如下步骤:
步骤1001,数据准备流程;
首选选择或新建一个目标任务,选中该目标任务全部的银行数据文件,过滤无效文件,识别银行名称,如存在TXT格式数据文件则转化为XLSX格式表格文件。
如图2所示,数据准备流程具体包括如下步骤:
步骤1001-1,确定目标任务。
步骤1001-2,目标任务是否存在;
判断目标任务是否已经存在,如果已经存在,执行步骤1001-4,如果不存在,执行步骤1001-3。
步骤1001-3,新建目标任务;
新建任务,并将新建的任务作为目标任务。
步骤1001-4,逐个读取目标任务的全部银行数据文件;
从目标任务对应的文件夹中选择目标任务对应的某个银行数据文件。
步骤1001-5,是否包括无效格式文件;
判断选择的银行数据文件是否为无效格式文件,从目标任务对应的文件夹中,是否包括.XLS、.XLSX、.CSV、.ET、.TXT文件以外的其他格式数据文件,如果包括则相应格式的文件为无效格式文件,执行步骤1001-12,否则执行步骤1001-6。
步骤1001-6,是否包括重复文件;
判断选择的银行数据文件是否包括重复文件,如果包括重复文件,执行步骤1001-12,否则执行步骤1001-7。
步骤1001-7,是否包括曾导入文件;
判断选择的银行数据文件是否包括已经导入过的文件,如果包括,执行步骤1001-12,否则执行步骤1001-8。
步骤1001-8,确定所属银行名称;确定当前文件所对应的银行名称。
步骤1001-9,是否包括.TXT文件;
判断当前文件夹是否包括.TXT文件,如果包括,执行步骤1001-10,否则执行步骤1001-11。
步骤1001-10,转换文件格式为. XLSX;
将所选银行数据文件中的.TXT格式文件转换为. XLSX格式的文件,并执行步骤1001-11。
步骤1001-11,作为待处理文件并记录其路径;
将所选择的所有银行数据文件作为待处理文件,并记录该银行数据文件的路径。
步骤1001-12,是否为最后文件;
判断所选择的当前文件是否为最后文件,如果是最后文件,执行步骤1001-13,如果不是最后文件,返回步骤1001-4。
步骤1001-13,形成待处理文件路径列表。
步骤1002,数据导入流程;
将步骤1001中选择的银行数据文件逐个打开,逐行识别银行数据行类型(无效行、要素行、表头行、数据行),选择或新建银行数据表格各表头的映射规则,结合要素行提取的数据要素和数据行字段内容,映射出固定结构的银行账户数据和银行流水数据,分别查重导入银行账户数据库和银行流水数据库,同时记录导入的账户户名、导入文件记录和错误数据行的记录。
如图3所示,数据导入流程包括如下步骤:
步骤1002-1,逐个打开数据文件;
后台逐个打开步骤1001中确定的银行数据文件。
步骤1002-2,逐个工作表读取银行数据;
在打开的所有银行数据文件中,读入银行数据文件中每个工作表中的数据,自动识别该行数据的类型(无效行、要素行、表头行、数据行)。
步骤1002-3,读取工作表内行数据。
步骤1002-4,当前行是否为无效行;
判断当前行是否为无效行(如空白行),如果是无效行,返回步骤1002-24;如果不是无效行,执行步骤1002-5。
步骤1002-5,当前行是否为要素行;
判断当前行是否为要素行,如果是要素行,执行步骤1002-6,如果不是要素行,执行步骤1002-7。要素行指工作表以外银行账户户名、身份证号、银行名称、银行卡号等要素的表外行。
步骤1002-6,提取表外要素;
读取要素行中的数据要素,如银行账户户名、身份证号、银行名称、银行账号、银行卡号等要素。并执行步骤1002-24。
步骤1002-7,当前行是否为表头行;
判断当前行是否为表头行,如果是表头行,执行步骤1002-8,如果不是要素行,执行步骤1002-09。
步骤1002-8,判断是否存在映射规则;
判断当前行是否存在映射规则,如果存在,则提取已保存的映射规则,执行步骤1002-24,否则执行步骤1002-10。
在所述技术方案中,映射规则的具体解释为:在所述技术方案中,首先认为确定一个数据库表格中表头的规则,如第一列为户名、第二列为交易金额、第三列为交易账号、第四列为交易日期……,并将每一列分别进行标注,如第一列表头~第N列表头以此标记为“1”、“2”、“N”。然而在银行提供的流水数据文件中,并不会按照所述技术方案设定格式,而是不同的银行具有不同格式。因此所述技术方案在打开某个银行数据文件时,判断银行流水数据文件中的每一个表头分别对应与所述技术方案设定格式表头的对应位置,如在该银行流水文件中,缺少所述技术方案设定格式表头的相应内容,则用其他形式进行表示,如“0”。因此在打开某个银行流水数据文件后,与所述技术方案设定格式表头的规则进行映射(对照),即可得到当前银行流水数据文件与所述技术方案设定格式表头的对应规则的映射关系,及映射规则。
步骤1002-9,当前行为数据行;
如果当前行非无效行、要素行以及表头行,则当前行为数据行。
步骤1002-10,创建映射规则;
根据上述映射规则的具体解释,创建当前表头行的映射规则。并将新建的映射规则加入到表头及映射规则数据库中。
步骤1002-11,是否生成账户数据,
结合步骤1002-8中确定的映射规则、本行数据各字段内容、步骤1002-6中提取到的数据要素,映射出固定结构的银行账户数据和银行流水数据。
步骤1002-12,账户数据是否残缺;
判断映射出的账户数据是否存在残缺,如账户户名残缺及银行账号及银行卡号均残缺,如果账户数据存在残缺,执行步骤1002-13,如果映射出的账户数据未出现残缺,执行步骤1002-14。
步骤1002-13,记录残缺账户数据;
对存在残缺数据的账户数据进行记录,并执行步骤1002-24。
步骤1002-14,判断账户数据是否重复,如果重复执行步骤1002-13,否则执行步骤1002-16。
步骤1002-15,完善原始数据;
账户数据重复表明,该账户数据已经录入数据库,但可能存在数据要素不全的情况,结合当前重复的账户数据,补齐缺失的数据要素。
步骤1002-16,导入银行账户数据库;
将映射出的账户数据导入到本任务的银行账户数据库中,并执行步骤1002-24。
结合步骤1002-11的判断,如果映射出的数据不是账户数据,则为流水数据。对该流水数据,将交易日期、交易金额、账户金额、交易备注等字段形式格式化,将所有不存在残缺和重复流水数据导入银行流水数据库。
步骤1002-17,生成流水数据。
步骤1002-18,格式化流水数据;
对映射出的流水数据,将交易日期、交易金额、账户余额、交易备注字段进行格式化。
步骤1002-19,流水数据是否残缺;
判断步骤1002-16格式化的流水数据,是否存在账户户名残缺,或交易账号、交易卡号均残缺,或交易日期残缺,或交易金额残缺,如果存在则视为残缺数据,执行步骤1002-20,否则执行步骤1002-21。
步骤1002-20,记录残缺数据;
将残缺的流水数据进行记录,并执行步骤1002-24。
步骤1002-21,流水数据是否重复;
在本任务的银行流水数据库中查找,判断1002-18格式化的流水数据是否已经存在(重复),如果重复,执行步骤1002-24,否则执行步骤1002-22。
步骤1002-22,提取流水中的账户数据并入库;
将步骤1002-18格式化的流水数据中提取银行名称、账户户名、账户卡号等字段,形成流水中账户数据,再提取对手银行名称、对手户名、对手账号等字段,形成流水中对手的账户数据,按照步骤1002-12~步骤1002-16的步骤,将流水中的账户数据和流水中对手的账户数据导入银行数据库。
步骤1002-23,流水数据入库。
步骤1002-24,当前行是否为表末行;
判断当前行是否为当前工作表中的末行,如果是,返回步骤1002-2,读取下一个工作表,否则跳转到下一行,并返回步骤1002-3。
步骤1003,数据导出处理流程;
将步骤1002中所确定的全部银行账户数据按照银行账户户名、身份证号、银行名称、银行账号、银行卡号排序,将全部的查询账户及对手账户导出到第一张工作表中;将步骤1002中所确定的全部银行流水数据按照银行账户户名、银行名称、交易账号、交易卡号、交易日期、交易时间排序,依靠步骤1002中所形成的银行账户数据库补齐残缺的对手户名,将每名相关人员的银行流水分别导出到一张工作表中,加入原始银行数据文件的链接(打开定位),以及对手流水的链接(跳转定位),最终生成数据处理结果工作簿,呈现每笔银行交易付款流水和收款流水的对应关系。
对手是指在同一笔银行交易中,交易的双方互为对手,如相关人员的账户为付款账户时,则对应的收款账户对应的主体(自然人或企业)即为该交易流水的对手。
如图4所示,步骤1003具体包括如下步骤:
步骤1003-1,预设导出结果工作簿;
后台预设(生成)数据处理结果工作簿,按照导入相关人员数量(n人)确定该工作簿中工作表的数量(n+1张工作表)。其中首张工作表命名为“全部账户”,其余工作表以相关人员名称命名,生成账户数据固定表头和流水数据固定表头,设置各列字体、字号、单元格格式和完整显示的合适列宽,冻结首行固定表头。
步骤1003-2,全部账户数据排序;
将步骤1002中所确定的银行账户数据按照银行账户类别、银行账户户名、身份证号、银行名称、银行账号、银行卡号排序。
步骤1003-3,全部账户数据写入首个工作表;
将所有出现过的银行账户导出到第一张工作表中。
步骤1003-4,对全部银行流水数据进行排序;
将步骤1002中所确定的全部银行流水数据按照银行账户户名、银行名称、交易账号、交易卡号、交易日期、交易时间排序。
步骤1003-5,逐条读取某流水数据。
步骤1003-6,对手账户是否残缺;
判断对手账户户名是否存在残缺,如果存在残缺,执行步骤1003-7,否则执行步骤1003-8;
步骤1003-7,补齐对手户名;
对每条流水数据,依靠本任务银行账户数据库中的全部账户信息,补齐该条流水残缺的对手账户户名。
步骤1003-8,查找对手流水数据;
对每条流水数据,根据其户名、账号(卡号)、对手户名、对手账号、交易日期、交易金额,在本任务银行流水数据库中查找对手ID。
步骤1003-9,判断是否存在确定对手流水;
判断是否存在确定对手流水,如果存在,执行步骤1003-10,否则执行步骤1003-11。
如果找到交易日期相同、交易金额相反、对手户名为本条流水户名或对手账号为本条流水账号(卡号)的,即可确定找到对手流水数据。
步骤1003-10,记录记录确定对手流水ID;
在数据库中记录流水数据的确定对手ID。
步骤1003-11,判断是否存在疑似对手流水;
判断是否存在疑似对手流水,如果存在,执行步骤1003-12,否则执行步骤1003-13。
如果找到交易日期相同、交易金额相反、对手户名残缺且对手账号残缺的,即找到疑似对手流水数据。
步骤1003-12,记录疑似对手流水ID;
在数据库中记录流水数据的疑似对手ID。
步骤1003-13,该流水数据写入对应工作表;
将相关人员全部流水数据,分别导出到各自对应的工作表中。
步骤1003-14,写出流水数据原表超链接;
结合每条流水所在原始数据备份文件名、工作表名、所在行,写出原始文件数据打开定位超链接。
步骤1003-15,临时数据库记录写出位置及对手ID;
在临时数据库中记录每条流水数据ID、在结果工作簿中的工作表名及行号、对手流水数据ID等信息。
步骤1003-16,判断当前数据是否为末条数据,如果是末条数据,执行步骤1003-17,否则返回步骤1003-5,读取下一条流水数据。
步骤1003-17,逐条读取临时数据库记录;
对本任务全部银行流水数据写出完成后,临时数据库记录与目标任务全部银行流水数据库将一一对应,为写出对手流水数据追踪链接,读取临时数据库的每一条记录,并逐一处理。
步骤1003-18,判断是否存在确定对手流水;如果存在,执行步骤1003-19,否则执行步骤1003-20。
步骤1003-19,查找对手流水写出位置;
如果临时数据库某记录的对手ID为确定的对手流水数据,则在临时数据库中查找确定对手流水数据的工作表名及行号。
步骤1003-20,写出对手追踪超链接;
在原流水数据所在的工作表及对应行的位置写出跳转定位超链接,标记显示为“追踪”。
步骤1003-21,是否存在疑似对手流水;如果存在,执行步骤1003-22,否则执行步骤1003-24。
步骤1003-22,查找疑似对手流水写出位置;
如果临时数据库某记录的对手ID为疑似的对手流水数据,则在临时数据库中查找疑似对手流水数据的工作表名及行号。
步骤1003-23,写出疑似对手追踪超链接;
在原流水数据所在的工作表及对应行的位置写出跳转定位超链接;标记显示为“追疑”。
步骤1003-24,判断当前流水数据库是否为末条记录,如果是末条记录,执行步骤1003-25,否则返回步骤1003-17,读取下一条记录。
步骤1003-25,保存导出结果工作簿并复制数据到桌面;
将目标任务所有的银行账户数据和银行流水数据全部导出到数据处理结果工作簿后,自动保存,后台将在桌面新建目标任务数据文件夹(如果该文件夹存在,则强制清空),并将目标任务原始数据备份文件、数据处理结果工作簿以及导入查询对象记录、导入文件记录、导入数据错误记录复制到桌面上目标任务数据文件夹。
下面以“房某任务”为例,对所述技术方案的具体流程进行具体说明:
在特殊行业领域,为查清房某的某些特定资金走向,工作人员依法获取了房某全部的银行流水电子数据77份,通过所述技术方案为基础自主开发的“资金走向追踪系统”计算机软件(以下简称软件)进行追踪。需要说明的是,通过该软件分析银行数据,需要在计算机上预先安装Office Excel 2007和SQL Server 2005软件,并进行必要设置。
工作人员通过软件新建“房某任务”,软件在SQL Server中相应建立固定结构的“房某任务_流水.dbo”、“房某任务_账号.dbo”2个数据库(表),在软件所在文件夹内新建房某任务数据文件夹,对应上述步骤1001-1~1001-3。
工作人员点击“导入数据”按钮,将弹出浏览文件夹对话框,选中已调取(第一批)的银行数据所在文件夹。软件将自动排除其中的无效格式文件、已导入的数据文件以及存在副本的重复文件,经筛选共需导入银行数据电子文件14份。需要说明的是,除XLS、XLSX、CSV、ET、TXT以外的其他文件格式难以识别数据内容,视为无效格式文件,如PDF、JPEG等,将被自动排除,对应上述步骤1001-4~1001-7。
软件根据银行数据文件的路径确定所属银行名称。当前导入“工商银行2085号.XLS”文件,软件自动识别为工商银行数据。需要注意的是,在导入之前,工作人员须将各个银行数据文件或其所在的文件夹进行统一更名,更名后的每一文件路径须含有该银行唯一的4字标准简称,如“工商银行”“农业银行”“建设银行”“齐商银行”等,软件依靠银行数据文件路径中存在的4字标准简称来确定所属银行名称。对应上述步骤1001-8。
软件在导入农商或兴业等银行数据时,银行提供的数据电子文件为TXT文本格式,为了准确识别银行数据各行、各字段的内容,需将TXT文本文件转换为XLSX表格格式文件。软件将根据数据表格各字段固定长度(兴业银行)或者字段分割标识符(农商银行),将每行数据按照表头字段分割成若干列,再逐行、逐列填充形成新的XLSX格式表格文件,对应上述步骤1001-9~步骤1001-10。
软件依次打开14个银行数据文件,通过Excel COM对象,逐个工作表读入整张表格数据,对中国银行、工商银行等数据文件中可能存在的多余的水平制表符Char(9)和“"”等不可见字符进行替换,形成纯文本的、以单个水平制表符分割各列的多行数据,再逐行读入行数据,自动识别该行数据的类型,即无效行、要素行、表头行、数据行,对应上述步骤1002-1~1002-3。
在软件读入的“工商银行2085号.XLS”文件第1张工作表Sheet1中,第1行数据为“商密二级”,第2行数据为“说明:此表格所列账户为未查到明细账户或此账户类型不属于联动查询范围”,类似数据仅仅提示查询结果,对追踪相关资金走向没有意义,软件通过关键字识别,将其确定为无效行,尔后自动跳过到下一行,再行数据读取和处理,对应上述步骤1002-4。
在软件读入的“建设银行03348号.XLS”文件第2张工作表“个人活期明细信息-新一代”中第9行数据,其中“客户名称、客户账号、卡号”为数据表中残缺的关键要素,软件通过关键字识别,将其确定为要素行,提取这些关键要素之后,自动跳过到下一行,再行数据读取和处理,对应上述步骤1002-5~1002-6。
在软件读入的“工商银行2087号.XLSX”文件第1张工作表Sheet1中第10至25行为2个数据表格,根据某行数据各字段是否均含有汉字来识别,如果每个字段均含有汉字,则可确定为表头行。(极个别银行数据表格的个别表头字段为纯英文字母,已作特殊处理)。由此可判断第10行、第18行为表头行,对应上述步骤1002-7~1002-8。
读取第10行数据,软件将其识别为表头行,并将该行处理成为“查询ID||姓名||证件类型||证件号码||客户编号||账号类型||账号||币种||子账户序号||账户状态||开户日期||开户网点||账户余额||账号对应卡号||卡片状态||余额日期||销户日期||销户机构||”字符串,通过此字符串在软件预设的映射规则数据库“系统_规则库”中查找,找到该表头的类别为“账户表格”,映射规则为“2_4_7_14”。尔后,自动跳过到下一行,再行数据读取和处理。
需要说明的是,根据查找到的表头类别,可确定此表格(第10行至第17行)为账户数据,随后需导入“房某任务_账号.dbo”数据库中;银行账户数据库的字段依次为“姓名、身份证号、银行账号、银行卡号”,查找到的映射规则“2_4_7_14”,表示在处理第11行至第17行数据时,将从第2列、第4列、第7列、第14列依序提取数据,形成数据库统一的字段结构顺序。
读取第18行数据,软件将其识别为表头行,并将该行处理成为“卡号||交易时间戳||交易日期||记帐时间||摘要||服务界面||借贷标志||交易金额||交易币种||发生额||币种||更新后余额||交易场所简称||交易地区号||交易地区号(原始)||小费金额||手续费金额||交易柜员号||对方卡号/账号||对方卡种||对方帐户户名||交易检索参考号||交易描述||”字符串,该表头第一次出现时,通过此字符串在“系统_规则库”中查找,不能找到其表头类别和映射规则,则弹出“映射规则创建”窗口。工作人员需手动选择新表头的表头类别,结合窗口上方的新表头及4行新表数据,人工识别新表头各字段的实际意义,在下方的流水数据库固定结构的字段(绿色)对应的输入框(白色)中填写目标列号,选择“进账金额”字段的计算方法(取正负),右侧标签(灰色)将同步显示映射的原表表头,以便核对确认。经过人工设置,新表头类别为“流水表格”,映射规则为“0_0_1_3_贷正借负:10+7_0_14_23_21_19_0_22_0_18_13_4”,经确认后,新的映射规则(以下均含表头类别)将加入到“系统_规则库”中,同时将此作为当前表格的映射规则。尔后,自动跳过到下一行,再行数据读取和处理。
需要说明的是,随着软件持续使用,映射规则也不断积累,需要人工识别创建映射规则的次数越来越少,目前软件能够识别160种以上的银行数据表格的表头,几乎无需人工识别创建映射规则。同时软件具备映射规则的导出、导入、修改、删除功能,可将导出的映射规则文件转发实现类似任务中多人长期共享。
软件在读取第11行至第17行数据时,根据某行数据是否存在纯数字的字段来识别,如果至少存在一个纯数字的字段,如交易账号、交易卡号、交易日期、交易金额、账户余额等,则可确定为数据行。软件依据前述可能提取到的关键要素和当前映射规则,按照“房某任务_账号.dbo”数据库或“房某任务_流水.dbo”数据库的字段顺序,提取本行数据的字段内容,形成固定结构顺序的银行账户数据或银行流水数据。
需要说明的是,银行数据文件各行类型只能是无效行、要素行、表头行、数据行4种,某行数据已确定均非无效行、要素行、表头行时,其只能是数据行,此处仍以是否存在纯数字的字段进行识别判断,是为进一步确认,如果此时确认仍非数据行,则行类型判断必然存在漏洞,可进一步修正完善软件。
某行银行数据经过上述处理,要么形成固定结构的银行账户数据,其字段依次为“姓名、身份证号、银行账号、银行卡号”;要么形成固定结构的银行流水数据,其字段依次为“客户姓名、交易账号、交易卡号、交易日期、进账金额、账面余额、交易网点、交易方式、对手名称、对手账号、对手银行、流水号码、传票号码、柜员号码、交易备注、时间戳码”。尔后对两类数据分别进行处理。
经过数据处理得到的固定结构的银行账户数据,如果账户户名残缺,或银行账号、银行卡号均残缺,则没有实际意义,视为残缺数据,软件将生成日志文件“异常_导入文件记录.log”,并在其中以“【文件】工商银行20211123115242526.XLSX【表序】1【表行】66☆账号:银行账号、银行卡号同时为空”类似文本行予以记录。尔后,自动跳过到下一行,再行数据读取和处理,对应上述步骤1002-12~1002-13。
经过数据处理得到的固定结构的银行账户数据,在“房某任务_账号.dbo”数据库中查找,如果该账户数据存在(此前已导入),则比对当前账户数据和已存在账户数据的完整程度,补齐已存在账户数据残缺的“银行名称”“身份证号”等内容(提取的流水中账户数据和流水中对手的账户数据,可能缺少这些要素),尔后自动跳过到下一行,再行数据读取和处理。,对应上述步骤1002-14~步骤1002-15。
经过数据处理得到的既非残缺又非重复的银行账户数据,通过SQL Server软件“INSERT INTO”语句加入到“房某任务_账号.dbo”数据库中,尔后自动跳过到下一行,再行数据读取和处理,对应上述步骤1002-16。
经过数据处理得到的固定结构的银行流水数据,对其交易日期、交易金额、账户余额、交易备注等字段进行格式化,实现数据形式统一,对应上述步骤1002-17~步骤1002-18。
经过数据处理得到的固定结构的银行流水数据,如果账户户名残缺,或交易账号、交易卡号均残缺,或交易日期残缺,或交易金额残缺,则视为残缺数据,软件将在日志文件“异常_导入文件记录.log”中以“【文件】工商银行20211123115242526.XLSX【表序】1【表行】12152★流水:交易日期为空或格式不正确”类似文本行予以记录。尔后,自动跳过到下一行,再行数据读取和处理,对应上述步骤1002-19~1002-20。
经过数据处理得到的固定结构的银行流水数据,在“房某任务_流水.dbo”数据库中查找,如果该流水数据存在(此前已导入),则自动跳过到下一行,再行数据读取和处理。对应上述步骤1002-21。
经过数据处理得到的固定结构的银行流水数据,提取其银行名称、账户户名、账号卡号等数据,形成流水中银行账户数据;再提取其对手银行、对手户名、对手账号等数据,形成流水中对手的银行账户数据。按照前述银行账户数据的审核、查重、补缺等步骤,将流水中银行账户数据和流水中对手的银行账户数据,导入“房某任务_账号.dbo”数据库中,对应上述步骤1002-22。
经过数据处理得到的既非残缺又非重复的银行流水数据(17个字段),连同该数据在原文件中的位置信息确定的“原文件名、表格序号、表格名称、表格行号”4个字段,通过SQL Server软件“INSERT INTO”语句加入到“房某任务_流水.dbo”数据库中。同时在日志文件“户名_导入流水记录.log”中,以“〖房某〗”、“〖李某〗”格式文本,每人一行记录导入流水的账户户名(如果该户名已经记录则不再加入)。尔后,自动跳过到下一行,再行数据读取和处理。
对“工商银行2087号.XLSX”银行数据电子文件逐个工作表、逐行导入完成后,在房某任务数据文件夹中备份为“工商银行20211123115242526.XLSX”,以便后期通过超链接打开原表备份予以核对校验。同时在日志文件“完成_导入文件记录.log”中以“【文件】E:\房某任务\银行数据\第一批\工商银行2087号.XLSX【大小】134144字节【MD5】c7608e529e440e49cdf2a85f586069fb【SHA1】45d1fabfb3f2eef4b701bfdbdac585abc123ff53”类似文本行予以记录。通过此日志文件,对后续导入选取的文件中可能存在之前已导入的文件,通过文件路径、文件尺寸、文件MD5值、文件SHA1值予以判断,排除已导入的文件对应上述步骤1002-23。
需要说明的是,对多个不同的银行数据文件,均按照上述方式读取、识别、映射、查重、补缺、导入。对后续几批次调取的63份有效的银行数据电子文件,选中“房某任务”后可继续导入,“房某任务_流水.dbo”、“房某任务_账号.dbo”2个数据库及“异常_导入文件记录.log”、“户名_导入流水记录.log”、“完成_导入文件记录.log”3个日志文件将同步更新,实现多批次连续导入导出、数据积累和全面分析。
房某任务经多批次调取银行数据并导入软件系统后,共26465条流水数据,归属8家银行,工作人员选中“自动导出”选择框,软件在导入数据完成后,自动导出数据处理结果。
在导出数据开始后,软件将通过Excel COM对象,预先设置数据处理结果工作簿,从日志文件“户名_导入流水记录.log”中读取已导入流水的账户户名,按导入户名数量n设置该工作簿中工作表的数量n+1,首张工作表命名为“全部账户”,其余工作表以导入的流水户名命名,每张工作表生成固定结构表头,设置各列字体、字号、单元格格式和完整显示的合适列宽,冻结首行,方便后期使用分析,对应上述步骤1003-1。
软件将“房某任务_账户.dbo”数据库中的全部银行账户数据,按照银行账户类别(即查询账号、对手账号)、银行账户户名、银行名称、银行账号、银行卡号进行排序,将所有出现过的银行账户全部导出写到第一张工作表中,对应上述步骤1003-2~步骤1003-3。
软件将“房某任务_流水.dbo”数据库中的全部银行流水数据,按照银行账户户名、银行名称、交易账号、交易卡号、交易日期、交易时间进行排序,对应上述步骤1003-4。
需要说明的是,大多数银行流水数据已按照流水发生的时间先后顺序排列,但也有一些银行(如邮储银行、交通银行)流水数据,没有按照时间顺序排列,容易导致数据分析错误,因此对全部银行流水数据进行排序是必要的。
在导出某条流水数据时,如果交易对手账号存在而对手户名残缺,软件则通过对手账号在“房某任务_账户.dbo”数据库中查找可能存在的对应户名,如果找到,软件则在“房某任务_流水.dbo”数据库该条记录中补齐对手户名,便于相关人员快速直观地掌握相关资金走向,对应上述步骤1003-5~步骤1003-7。
在导出某条流水数据时,软件根据其账户户名、账号卡号、对手户名、对手账号、交易日期、交易金额,在“房某任务_流水.dbo”数据库中查找交易对手的银行流水数据的数据库ID,并对找到的两类情况依次进行处理,对应上述步骤1003-8。
对某流水数据记录A,如果找到交易日期相同、交易金额相反、对手户名为本条流水户名或对手账号为本条流水账号卡号的流水数据记录B,则B可确定为A准确的对手流水数据,软件在“房某任务_流水.dbo”数据库记录A中补充B的数据库ID,对应上述步骤1003-9~步骤1003-10。
对某流水数据记录M,如果找到交易日期相同、交易金额相反、对手户名残缺且对手账号残缺的流水数据记录N,则N可确定为M疑似的对手流水数据,软件在“房某任务_流水.dbo”数据库记录M中补充N的数据库ID(记录为该ID的相反数),对应上述步骤1003-11~步骤1003-13。
将上述已排序的全部银行流水数据,按照流水账户户名分别导出写到各自对应的工作表中。结合每条流水数据的写出位置信息字段“原文件名、表格序号、表格名称、表格行号”,在数据处理结果工作簿对应工作表首列,写出用于核对校验原数据文件的打开定位超链接。同时在软件系统预设的数据库“系统_临时库”中记录每条流水数据的数据库ID、在数据处理结果工作簿中的写出位置信息(即工作表名、行号)及其准确或疑似的对手流水数据的数据库ID。对应上述步骤1003-14~步骤1003-15。
在“房某任务_流水.dbo”数据库全部流水数据导出完成后,“系统_临时库”记录与“房某任务_流水.dbo”数据库记录将一一对应。软件将对“系统_临时库”全部数据记录逐一进行处理,按照下面两种情况生成追踪对手流水的跳转定位超链接。对应上述步骤1003-16。
如果“系统_临时库”某记录A的对手流水数据的数据库ID>0,则存在准确的对手流水数据B,通过此ID在“系统_临时库”中查找B的写出位置信息(工作表名、行号),在数据处理结果工作簿A的目标位置(最后一列)写出跳转定位到B位置的超链接“追踪”。对应上述步骤1003-17~步骤1003-20。
如果“系统_临时库”某记录M的对手流水数据的数据库ID<0,则存在疑似的对手流水数据N,通过此ID的绝对值在“系统_临时库”中查找N的写出位置信息(工作表名、行号),在数据处理结果工作簿M的目标位置(最后一列)写出跳转定位到N位置的超链接“追疑”,对应上述步骤1003-21~1003-23。
房某任务全部的银行账号数据和银行流水数据全部导出写到数据处理结果工作簿后,该工作簿在房某任务数据文件夹中自动保存为“管理_房某任务2021-11-23.XLSX”。对应上述步骤1003-24。
为便于工作人员共享使用上述数据处理结果,软件将房某任务数据文件夹中全部文件(含原始数据备份文件、数据处理结果工作簿以及前述3个日志文件)复制到桌面“管理_房某任务2021-11-23”文件夹中。此前该桌面文件夹如果存在,则强制清空后复制,如果不存在则新建后复制。
经过以上数据处理过程,得到数据处理结果工作簿(“管理_房某任务2021-11-23.XLSX”)、三个日志文件(“异常_导入文件记录.log”“户名_导入流水记录.log”“完成_导入文件记录.log”)和原始数据备份文件(77个原数据文件的备份)。其中原始数据备份文件用于打开定位查看并核对校验各类错误异常;“户名_导入流水记录.log”用于记录导入流水账户户名,依此设置“管理_房某任务2021-11-23.XLSX”工作表数量和名称;“完成_导入文件记录.log”用于记录已导入的银行数据文件,在后续导入数据时对重复选取予以排除,提高导入效率。
“异常_导入文件记录.log”记录原始数据文件中出现残缺的数据(未导入数据库),通过文件名、工作表序号、所在行号3个要素,工作人员可在77个原数据文件的备份中找到异常数据的准确位置,打开文件并定位到该位置,经核实,如果该数据确实存在问题,且该数据与相关资金走向关联重大的,应到所在银行调取原始交易凭证,以准确查证相关资金真实走向。
“管理_房某任务2021-11-23.XLSX”是数据处理结果工作簿,也是工作人员分析相关资金真实走向的核心文件。
其中A列为原始数据打开定位超链接,工作人员鼠标点击某超链接“原表”,计算机则自动打开该行数据对应的原始数据备份文件,并准确定位到对应工作表中的对应行。
其中S列为对手流水数据的跳转定位超链接“追踪”或“追疑”,工作人员鼠标点击某超链接,计算机则自动跳转到对手流水数据所在的工作表,并准确定位到相应行,实现相关资金快速准确追踪。
其余各列为银行流水的重要要素,可通过Excel多重筛选功能,选择性查看其中一部分流水数据。在预先设置该工作簿时,各数据列的单元格格式已作设置,身份证号、交易账号等超长文本不会被计算机默认作为超长数字而错误处理;进账金额、账面余额已设置为数字格式,选中所在列,Excel将在表格下方自动统计筛选数据的数目以及该列总和、平均值,实现相关资金统计功能。
需要说明的是,在原始银行数据文件中,单元格格式一般都是文本格式,无法使用Excel自动统计求和功能。在数据导出前银行流水数据已经排序,且表格中存在含有对手流水数据位置信息(工作表名、行号)的超链接,因此,工作表内不能再次排序,否则追踪对手流水的超链接跳转将会错乱。
工作人员打开数据处理结果工作簿,即“管理_房某任务2021-11-23.XLSX”,切换到房某银行流水所在的工作表,选中全部数据并使用Excel筛选功能,在K列(对手户名)中发现存在某特殊账户,房某收到该账户15笔钱款共计792825.22元。
工作人员标记上述数据行并解除筛选,拖动表格到3801行(上述15笔中的一笔),发现2016-07-25房某工商银行2280账户收到28078.45元,2016-07-27将110000元(包含上述28078.45元)转至其工商银行8573账户中。点击追踪超链接,跳转到其工商银行8573账户对应的流水数据(收款账户流水,即对手流水),位于357行,后续交易流水显示2016-07-28房某工商银行8573账户向XX房地产公司转账120000元(含上述28078.45元)。通过银行流水追踪超链接,能够快速查清房某利用此笔资金用于买房。通过类似的方法,可以清晰追踪房某涉及钱款15笔792825.22元的真实走向及用途。
工作人员使用Excel筛选功能,在J列(交易方式)中筛选“银证”或在R列(交易备注)中筛选“银证转账应用”,工作表将显示房某转入转出股市的全部交易流水,再选中G列(交易金额),Excel将自动统计房某股市盈亏总和为-179162元,工作人员查证房某股票账户已经清仓,由此可知房某炒股净亏损17.9万元。
工作人员还发现,房某工商银行9150账户存在与多家外地商户大额资金密集往来,对个别商户转账只出不进,净转出资金1557940元;房某实际控制其父房某某名下的工商银行9034账户,也存在与多家外地商户大额资金密集往来,且多通过手机银行网络转账,净转出资金321815元。经了解,房某及其父房某某与这些商户并无业务往来,结合经验可以判断,房某上述资金往来可能属于某种极端用途。
以上所述,仅是本发明的较佳实施例而已,并非是对本发明作其它形式的限制,任何熟悉本专业的技术人员可能利用上述揭示的技术内容加以变更或改型为等同变化的等效实施例。但是凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与改型,仍属于本发明技术方案的保护范围。
Claims (5)
1.一种高效追踪资金来源及去向的技术方案,其特征在于:包括如下步骤:
步骤A,数据处理准备流程,选择或新建一个目标任务,选中目标任务全部的银行数据文件,过滤无效文件,识别银行名称并进行银行数据文件的格式转换;
步骤B,数据导入处理流程,逐行识别银行数据行类型,选择或新建银行数据表格各表头的映射规则,结合要素行提取的数据要素和数据行字段内容,映射出固定结构的银行账户数据和银行流水数据,分别查重导入银行账户数据库和银行流水数据库,同时记录导入的相关人员账户户名、导入文件记录和错误数据行的记录;
步骤C,数据导出处理流程,将步骤B中所确定的银行账户数据、银行流水数据进行排序,依靠步骤B中所形成的银行账户数据库补齐残缺的对手户名,将每名相关人员的银行流水分别导出到一张工作表中,加入原始银行数据文件的链接以及交易对手流水的链接,最终生成数据处理结果工作簿,银行交易中付款账户流水与收款账户流水的对应关系。
2.根据权利要求1所述的高效追踪资金来源及去向的技术方案,其特征在于:所述的步骤A中,包括如下步骤:
步骤A-1,选择目标任务,若目标任务不存在,则新建任务,并将新建任务作为目标任务;
步骤A-2,选择步骤A-1中所述任务对应的所有银行数据文件,排除无效文件;
步骤A-3,根据步骤A-2选择的银行数据文件路径,确定所属银行名称;
步骤A-4,若步骤A-2选择的银行数据文件中包括“*.TXT”格式的银行数据文件,则将其转换为表格数据文件。
3.根据权利要求1所述的高效追踪资金来源及去向的技术方案,其特征在于:在所述的步骤B,包括如下步骤:
步骤B-1,后台逐个打开步骤A中确定的银行数据文件,逐个工作表、逐行读入银行数据文件中某行数据,自动识别该行数据的类型,即无效行、要素行、表头行或数据行;
步骤B-2,若当前行为无效行,跳到下一行,并读取下一行的数据;
步骤B-3,若当前行为要素行,则提取数据要素,跳到下一行,并读取下一行的数据;
步骤B-4,若当前行为表头行,在所述技术方案积累的表头及映射规则数据库查找,若该表头已存在,则提取对应的映射规则,跳到下一行,并读取下一行的数据;若该表头不存在,则新建对应的映射规则,并加入到所述技术方案积累的表头及映射规则数据库,跳到下一行,读取下一行的数据;
步骤B-5,若当前行为数据行,结合步骤B-4确定的映射规则、本行数据各字段内容、B-3可能提取到的数据要素,映射出固定结构的银行账户数据和银行流水数据;
步骤B-6,执行银行账户数据导入流程和银行流水数据导入流程;
步骤B-7,对银行数据文件逐个工作表、逐行导入完成后,以“*.XLSX”格式备份,重新命名并在目标任务每条银行流水数据中记录该备份文件名。
4.根据权利要求3所述的高效追踪资金来源及去向的技术方案,其特征在于:在所述的步骤B-6中,银行账户数据导入流程包括:
步骤B-6-1,对映射出的账户数据,如果账户户名残缺,或银行账号、银行卡号均残缺,则视为残缺数据,予以记录,则跳到下一行,并读取下一行的数据;
步骤B-6-2,映射出的账户数据在银行账户数据库中查找,如果该账户数据存在,则完善账户数据库中存在的账户数据,跳到下一行,并读取下一行的数据;
步骤B-6-3,将映射出的账户数据导入到目标任务的银行账户数据库中,则跳到下一行,并读取下一行的数据;
银行流水数据导入流程包括:
步骤B-6-1′,对映射出的流水数据,将交易日期、交易金额、账户余额、交易备注字段形式格式化;
步骤B-6-2′,对步骤B-6-1′格式化的流水数据,如果账户户名残缺,或交易账号、交易卡号均残缺,或交易日期残缺,或交易金额残缺,则视为残缺数据,予以记录,则跳到下一行,并读取下一行的数据;
步骤B-6-3′,对步骤B-6-1′格式化的流水数据在本银行流水数据库中查找,如果该流水数据存在,则跳到下一行,并读取下一行的数据;
步骤B-6-4′,在步骤B-6-1′格式化的流水数据中提取其银行名称、账户户名、账号卡号字段,形成流水中银行账户数据,再提取其对手银行名称、对手户名、对手账号字段,形成流水中对手的银行账户数据,按照步骤B-6-1至B-6-3的方法加入目标任务的银行账户数据库中,
步骤B-6-5′,将步骤B-6-1′格式化的流水数据既非残缺又不重复的,则导入到银行流水数据库中。
5.根据权利要求1所述的高效追踪资金来源及去向的技术方案,其特征在于:所述的步骤C,包括如下步骤:
步骤C-1,后台预设数据处理结果工作簿,按照导入相关人员数量n确定该工作簿中工作表的数量n+1,首张工作表命名为全部账户,其余工作表以查询的银行账户户名命名,生成账户数据固定表头和流水数据固定表头,设置各列字体、字号、单元格格式和完整显示的合适列宽,冻结首行固定表头;
步骤C-2,将步骤B中所确定的银行账户数据按照银行账户类别、银行账户户名、银行名称、银行账号、银行卡号排序,将所有出现过的银行账户导出到第一张工作表中;
步骤C-3,将步骤B中所确定的银行流水数据按照银行账户户名、银行名称、交易账号、交易卡号、交易日期、交易时间排序;
步骤C-4,对每条流水数据,依靠目标任务银行账户数据库中的全部账户信息,补齐该条流水残缺的对手账户户名;
步骤C-5,对每条流水数据,根据其户名、账号卡号、对手户名、对手账号、交易日期、交易金额,在目标任务银行流水数据库查找对手流水的数据库ID;
步骤C-6,如果找到交易日期相同、交易金额相反、对手户名为本条流水户名或对手账号为本条流水账号卡号的,即可确定找到对手流水数据,则在数据库中记录对手流水数据的数据库ID;
步骤C-7,如果找到交易日期相同、交易金额相反、对手户名残缺且对手账号残缺的,即找到疑似对手流水数据,则在数据库中记录疑似对手流水数据的数据库ID;
步骤C-8,将查询的所有账户全部流水数据,分别导出到各自对应的工作表中,结合每条流水所在原始数据备份文件名、工作表名、所在行,写出该条数据打开定位超链接;同时在临时数据库中记录每条流水数据的数据库ID、在结果工作簿中的工作表名及行号、对手流水数据的数据库ID信息;
步骤C-9,对目标任务全部银行流水数据写出完成后,临时数据库记录与目标任务全部银行流水数据库记录将一一对应,为写出对手流水数据追踪链接,对临时数据库中每条记录逐一处理;
步骤C-10,如果临时数据库某记录存在确定的对手流水数据,则在临时数据库中查找确定对手流水数据的写出位置,依此在原流水数据的目标位置写出跳转定位超链接;
步骤C-11,如果临时数据库某记录存在疑似的对手流水数据,则在临时数据库中查找疑似对手流水数据的写出位置,在原流水数据的目标位置写出跳转定位超链接;
步骤C-12,目标任务所有的银行账号数据和银行流水数据全部导出到数据处理结果工作簿后,自动保存;
步骤C-13,在桌面新建目标任务的数据文件夹,并将目标任务原始数据备份文件、数据处理结果工作簿以及导入查询对象记录、导入文件记录、导入数据错误记录复制到目标任务文件夹。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211025091.5A CN115374204A (zh) | 2022-08-25 | 2022-08-25 | 一种高效追踪资金来源及去向的技术方案 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211025091.5A CN115374204A (zh) | 2022-08-25 | 2022-08-25 | 一种高效追踪资金来源及去向的技术方案 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115374204A true CN115374204A (zh) | 2022-11-22 |
Family
ID=84067153
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211025091.5A Pending CN115374204A (zh) | 2022-08-25 | 2022-08-25 | 一种高效追踪资金来源及去向的技术方案 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115374204A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117421357A (zh) * | 2023-06-07 | 2024-01-19 | 广州市公安局经济犯罪侦查支队 | 导入资金流水数据的方法及系统、设备、存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011152087A1 (ja) * | 2010-05-31 | 2011-12-08 | データ・フォアビジョン株式会社 | 経済活動指標提示システム |
CN107944996A (zh) * | 2017-10-17 | 2018-04-20 | 九派天下支付有限公司 | 一种资金对账方法及系统 |
CN110597816A (zh) * | 2019-09-17 | 2019-12-20 | 深圳追一科技有限公司 | 数据处理方法、装置、计算机设备和计算机可读存储介质 |
CN112488839A (zh) * | 2020-12-17 | 2021-03-12 | 中国农业银行股份有限公司 | 一种大额资金流向追踪方法及装置 |
CN112581268A (zh) * | 2019-09-30 | 2021-03-30 | 北京宸瑞科技股份有限公司 | 海量资金交易数据情报分析方法及系统 |
CN113240508A (zh) * | 2021-05-18 | 2021-08-10 | 惠州市乐享数字科技有限公司 | 一种银行流水智能处理系统 |
CN113761202A (zh) * | 2021-08-30 | 2021-12-07 | 上海快确信息科技有限公司 | 一种将非结构金融Excel表格映射到数据库的优化系统 |
-
2022
- 2022-08-25 CN CN202211025091.5A patent/CN115374204A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011152087A1 (ja) * | 2010-05-31 | 2011-12-08 | データ・フォアビジョン株式会社 | 経済活動指標提示システム |
CN107944996A (zh) * | 2017-10-17 | 2018-04-20 | 九派天下支付有限公司 | 一种资金对账方法及系统 |
CN110597816A (zh) * | 2019-09-17 | 2019-12-20 | 深圳追一科技有限公司 | 数据处理方法、装置、计算机设备和计算机可读存储介质 |
CN112581268A (zh) * | 2019-09-30 | 2021-03-30 | 北京宸瑞科技股份有限公司 | 海量资金交易数据情报分析方法及系统 |
CN112488839A (zh) * | 2020-12-17 | 2021-03-12 | 中国农业银行股份有限公司 | 一种大额资金流向追踪方法及装置 |
CN113240508A (zh) * | 2021-05-18 | 2021-08-10 | 惠州市乐享数字科技有限公司 | 一种银行流水智能处理系统 |
CN113761202A (zh) * | 2021-08-30 | 2021-12-07 | 上海快确信息科技有限公司 | 一种将非结构金融Excel表格映射到数据库的优化系统 |
Non-Patent Citations (1)
Title |
---|
王华树: "《计算机辅助翻译概论》", pages: 387 - 389 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117421357A (zh) * | 2023-06-07 | 2024-01-19 | 广州市公安局经济犯罪侦查支队 | 导入资金流水数据的方法及系统、设备、存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5390113A (en) | Method and electronic apparatus for performing bookkeeping | |
CA2035953C (en) | Method and apparatus for the classification of data | |
US5237159A (en) | Electronic check presentment system | |
US7940899B2 (en) | Fraud detection, risk analysis and compliance assessment | |
US8370232B2 (en) | System and method for back office processing of banking transactions using electronic files | |
US20040030621A1 (en) | Method of reconciling credit union corporate accounts | |
JP4617050B2 (ja) | 取引データの登録および処理方法 | |
CN112926299B (zh) | 一种文本比对方法、合同审阅方法、审核系统 | |
CN107798515A (zh) | 一种数据库自动生成会计凭证的方法 | |
CN107274291A (zh) | 跨平台的估值表解析方法、存储介质及应用服务器 | |
CN106845781A (zh) | 用于业务测试的场景及流程的生成系统和方法 | |
CN105786961A (zh) | 一种基于金融资讯的数据分类处理方法 | |
CN110070426A (zh) | 一种审计报告生成方法 | |
CN115374204A (zh) | 一种高效追踪资金来源及去向的技术方案 | |
CN110941652A (zh) | 银行流水数据的分析方法 | |
JP6507459B2 (ja) | 会計処理システム | |
CN111292068A (zh) | 一种合同信息审核方法、装置、电子设备及存储介质 | |
CN110750302A (zh) | 一种会计用流水线做账方法 | |
CN112581268A (zh) | 海量资金交易数据情报分析方法及系统 | |
Bates et al. | A new nationwide data base for minority business | |
CN113590684A (zh) | 一种非税收缴大数据分析系统 | |
WO2005091747A2 (en) | System and method for providing access to detailed payment experience | |
Saygili | Taking advantage of computer assisted audit tools and techniques during testing phase in financial audits: An empirical study in a food processing company in Turkey | |
WO2010111328A1 (en) | Methods, systems, and software for processing financial documents | |
Rather et al. | National Aspects of Creating and Using MARC/RECON Records. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |