Financial data processing method and device, computer device and storage medium

By using a server cluster with a microservice architecture to process financial data, and by utilizing data filtering, association, and instance selection modules, the problem of low efficiency in financial data processing under different financial accounting standards is solved, thus achieving efficient and accurate financial data processing.

CN115239450BActive Publication Date: 2026-02-13CHINA PING AN LIFE INSURANCE CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210920927.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-02
Publication Date
2026-02-13
Estimated Expiration
2042-08-02

AI Technical Summary

Technical Problem

In the current technology, with the release of different financial accounting standards, it is necessary to build new financial accounting systems or make disruptive changes to existing systems, resulting in low efficiency and low accuracy of financial data accounting.

Method used

A microservice architecture is adopted, and financial data is processed through a server cluster. Using data filtering, data association and instance selection modules, the initial business data is associated with multiple data processing criteria to form a financial data control group, and the target instance module is used to match and generate multiple financial data matching results.

Benefits of technology

It improves the comprehensiveness and accuracy of financial data processing, and enhances the efficiency and accuracy of financial data accounting.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115239450B_ABST
    Figure CN115239450B_ABST
Patent Text Reader

Abstract

The application discloses a kind of financial data processing method, device, computer equipment and storage medium, the method is received after financial data processing instruction, to initial business data is carried out data screening and obtains to be processed business data;Obtain the first preset quantity of data processing criterion, and according to to be processed business data and data processing criterion generate the first preset quantity of financial data contrast group;From all service instance module, select the second preset quantity of target instance module;According to financial data contrast group, obtain financial data matching result by target instance module, and based on all financial data matching result, determine the financial data voucher corresponding to to be processed business data.The application improves the accuracy and efficiency of financial data accounting.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of data processing, and in particular to a financial data processing method and device, computer equipment and a storage medium. BACKGROUND

[0002] With the passage of time, there are more and more financial accounting standards for accounting for financial data. Each different financial accounting standard has different requirements for financial data, which leads to differences in financial vouchers obtained by different financial accounting standards for accounting for financial data.

[0003] However, in the prior art, when different financial accounting standards are issued, a new financial accounting system needs to be built or the existing financial accounting system needs to be revolutionized. This will result in a huge investment of manpower and material resources, resulting in low efficiency of financial data accounting. If the financial accounting system is not updated, the final financial vouchers will be inconsistent, resulting in low accuracy of financial data accounting. SUMMARY

[0004] The embodiments of the present application provide a financial data processing method, device, computer equipment and storage medium to solve the problem of low efficiency and accuracy of financial data accounting in the prior art.

[0005] A financial data processing method, applied to a server cluster, the server cluster comprising at least one service instance module; the financial data processing method comprising:

[0006] After receiving a financial data processing instruction containing at least one initial business data, data screening is performed on the initial business data to obtain to-be-processed business data;

[0007] A first preset number of data processing criteria are obtained, and a first preset number of financial data comparison groups are generated according to the to-be-processed business data and the data processing criteria; one of the financial data comparison groups comprises the to-be-processed business data and one data processing criterion;

[0008] A second preset number of target instance modules are selected from all the service instance modules; the second preset number is less than or equal to the first preset number;

[0009] A financial data matching result is obtained by the target instance module according to the financial data comparison group, and a financial data voucher corresponding to the to-be-processed business data is determined based on all the financial data matching results.

[0010] A financial data processing device, comprising:

[0011] The data screening module is configured to perform data screening on the initial business data to obtain to-be-processed business data after receiving the financial data processing instruction containing the initial business data.

[0012] The data association module is configured to obtain a first preset number of data processing criteria and generate a first preset number of financial data control groups according to the to-be-processed business data and the data processing criteria; one of the financial data control groups includes the to-be-processed business data and one data processing criterion.

[0013] The instance selection module is configured to select a second preset number of target instance modules from all the service instance modules; the second preset number is less than or equal to the first preset number.

[0014] The data matching module is configured to obtain financial data matching results according to the financial data control groups by the target instance modules, and determine the financial data voucher corresponding to the to-be-processed business data based on all the financial data matching results.

[0015] A computer device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor implements the financial data processing method when executing the computer program.

[0016] A computer readable storage medium stores a computer program, and the computer program is executed by a processor to implement the financial data processing method.

[0017] The financial data processing method, device, computer device, and storage medium can improve the response speed of the financial data processing instruction by constructing a micro-service architecture and sending all financial data processing instructions to a server cluster through a sending end. Different data processing rules and to-be-processed business data are associated as financial data control groups, and the target instance module matches the to-be-processed business data according to different data processing rules to obtain multiple different financial data matching results. In this way, different data processing rules can be adapted, and corresponding financial data matching results can be generated for each different data processing rule. Thus, the final financial data voucher is more accurate. The embodiment improves the comprehensiveness of financial data processing and the accuracy and efficiency of financial data accounting. BRIEF DESCRIPTION OF DRAWINGS

[0018] In order to make the technical solutions of the embodiments of the present application clearer, the drawings needed to be used in the description of the embodiments of the present application will be briefly introduced as follows. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor on the basis of these drawings.

[0019] Figure 1 is a schematic diagram of an application environment of a financial data processing method in an embodiment of the present application;

[0020] Figure 2 is a flowchart of a financial data processing method in an embodiment of the present application;

[0021] Figure 3 is a principle block diagram of a financial data processing device in an embodiment of the present application;

[0022] Figure 4 is a schematic diagram of a computer device in an embodiment of the present application. DETAILED DESCRIPTION

[0023] The technical solutions in the embodiments of the present application will be described clearly and completely in combination with the drawings of the embodiments of the present application. Obviously, the described embodiments are only some embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor fall within the protection scope of the present application.

[0024] The financial data processing method provided by the embodiments of the present application can be applied in an application environment as shown in Figure 1 . Specifically, the financial data processing method is applied in a financial data processing system, which includes a sending end and a server cluster as shown in Figure 1 . The sending end and the server cluster communicate through a network, which is used to solve the problem of low efficiency and accuracy of financial data accounting in the prior art. The sending end is used to send instructions. The server cluster can be composed of multiple servers. The servers can be independent servers, or cloud servers providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content distribution networks (CDN), and big data and artificial intelligence platforms.

[0025] In an embodiment, as shown in Figure 2 , a financial data processing method is provided, which is applied in the server cluster in Figure 1 , including the following steps:

[0026] S10: After receiving the financial data processing instruction containing at least one initial business data, data screening is performed on the initial business data to obtain the to-be-processed business data.

[0027] It can be understood that the above description indicates that the financial data processing method provided by the present application is applied in a financial data processing system. The financial data processing system provided by the present application is constructed based on a micro-service architecture. The financial data processing system includes a sending end and a server cluster. The sending end is used to send a financial data processing instruction. The sending end can be a message middleware such as ActiveMQ, RabbitMQ, RocketMQ or Kafka. In the sending end, the financial data processing instruction sent by the client (the client is also called the user end, and the client can be installed on but not limited to various personal computers, notebook computers, smart phones, tablet computers and portable wearable devices) will be received. Different financial data processing instructions sent by the client are added to the message queue according to the sending time. Then the financial data processing instructions in the message queue are sent to the server cluster in turn. The server cluster includes a plurality of service instance modules. A service instance module can be regarded as a server. After the server cluster receives the financial data processing instruction, a service instance module for responding to the financial data processing instruction is selected from all service instance modules.

[0028] Further, the initial business data can be the to-be-accounted financial data of an enterprise. Since the data submitted by the enterprise can have exceptions (such as some data being null or some data not meeting the accounting conditions), after the sending end receives the data sent by the enterprise, the data can be first subjected to exception detection (mainly involving null detection), and the abnormal data is removed. The data after removing the abnormal data is determined as the initial business data. Then when the server cluster receives the financial data processing instruction, the initial business data in the financial data processing instruction is subjected to data screening based on the preset accounting conditions, and the to-be-processed business data meeting the preset accounting conditions is screened from the initial business data.

[0029] S20: A first preset number of data processing criteria are obtained, and a first preset number of financial data comparison groups are generated according to the to-be-processed business data and the data processing criteria; one of the financial data comparison groups includes the to-be-processed business data and one data processing criterion.

[0030] It can be understood that the data processing criterion is the enterprise accounting criterion. The currently published enterprise accounting criterion includes but is not limited to the enterprise accounting criterion explanation No. 1, No. 2, No. 25 or IFRS9, etc. The first preset number can be set according to the demand, but the first preset number is less than or equal to the total number of the currently published enterprise accounting criterion. For example, when the total number of the currently published enterprise accounting criterion is five, the first preset number can be set to three or four, but cannot be greater than five. One financial data matching group includes one data processing criterion and all the to-be-processed business data. That is, the number of the financial data matching group is the same as the first preset number.

[0031] Specifically, after the initial business data is data-screened to obtain the to-be-processed business data, a first preset number of enterprise accounting criteria is randomly selected from the currently published enterprise accounting criteria, and the selected enterprise accounting criterion is determined as the data processing criterion. Since each data processing criterion is different, each data processing criterion is associated with the to-be-processed business data, thereby generating a first preset number of financial data matching groups. That is, one financial data matching group has all the to-be-processed business data and one data processing criterion. For example, after the first preset number of data processing criteria is obtained, the first preset number of financial data matching groups is constructed. After the to-be-processed business data is stored in each financial data matching group, a data processing criterion is randomly assigned to each financial data matching group.

[0032] S30: Selecting a second preset number of target instance modules from all the service instance modules; the second preset number is less than or equal to the first preset number.

[0033] It can be understood that in the above description, it is pointed out that the server cluster selects the service instance module for responding to the financial data processing instruction from all the service instance modules after receiving the financial data processing instruction. Therefore, the selected service instance module is the target instance module. In each service instance module, there are multiple task thread units, so when responding to the financial data processing instruction, that is, when data matching is performed based on the data processing criterion and the to-be-processed business data in the financial data matching group, a first preset number of task thread units can be selected for data matching processing.

[0034] Further, the second preset number is the total number of the selected target instance modules. The second preset number is less than or equal to the first preset number. When the second preset number of the selected target instance modules is equal to the first preset number, any one task thread unit in each selected target instance module responds to the financial data processing instruction. When the second preset number of the selected target instance modules is less than the first preset number, there are two or more task thread units in a target instance module responding to the financial data processing instruction. For example, assuming that the first preset number is three. When the selected target instance modules are three, any one task thread unit in each target instance module is selected, and the number of the selected task thread units is equal to the first preset number. Assuming that the selected target instance modules are one, any three task thread units in the target instance module are selected, and the number of the selected task thread units is also equal to the first preset number. That is, regardless of whether the second preset number of the selected target instance modules is less than or equal to the first preset number. The number of the selected task thread units is equal to the first preset number.

[0035] S40: obtaining a financial data matching result by the target instance module according to the financial data reference set, and determining a financial data voucher corresponding to the to-be-processed business data based on all the financial data matching results.

[0036] It can be understood that the financial data matching result is a result obtained by the target instance module performing data matching on the to-be-processed business data in the financial data reference set according to the data processing criterion. The financial data voucher is obtained by integrating the financial data matching results corresponding to the to-be-processed business data. After the financial data voucher is prepared, the enterprise financial report (reflecting the financial status and operating results of the enterprise) can be obtained.

[0037] Specifically, after the second preset number of target instance modules are selected from all service instance modules, the financial data reference set is evenly divided into the selected task thread units in the target instance modules. Thus, the selected task thread units perform financial data matching based on the data processing criterion in the financial data reference set and the to-be-processed business data, and obtain the financial data matching result. That is, each financial data reference set corresponds to a financial data matching result. The financial data matching result corresponding to the to-be-processed business data is selected from all the financial data matching results, and then the financial data voucher is generated according to the selected financial data matching result.

[0038] In the embodiment, all the financial data processing instructions are sent to the server cluster through the sending end in the manner of constructing a micro-service architecture. The response speed of the financial data processing instructions can be improved. Different data processing rules and to-be-processed business data are associated as a financial data control group, and the target instance module matches the to-be-processed business data according to different data processing rules, so as to obtain a plurality of different financial data matching results. In this way, different data processing rules can be adapted, and a corresponding financial data matching result is generated for each different data processing rule. Thus, the final financial data voucher is more accurate. The embodiment improves the comprehensiveness of financial data processing and improves the accuracy and efficiency of financial data accounting.

[0039] In an embodiment, in step S10, that is, the data screening on the initial business data to obtain the to-be-processed business data includes:

[0040] (1) Obtain a preset accounting condition; the preset accounting condition includes at least one accounting field.

[0041] It can be understood that the preset accounting condition is a condition for determining whether the initial business data uploaded by an enterprise can be subjected to financial data accounting. The preset accounting condition includes at least one accounting field. That is, when the initial business data includes the accounting field specified in the preset accounting condition, it is determined that the initial business data meets the preset accounting condition. The accounting field can include, but is not limited to, a sales type field, a cost type field, an insurance type field, or an insurance type dividend attribute field.

[0042] (2) Analyze the initial business data to obtain the data field of the initial business data.

[0043] Specifically, after receiving the financial data processing instruction, the initial business data included in the financial data processing instruction can be analyzed to obtain the data field of the initial business data. That is, one initial business data corresponds to a group of data fields. The method of analyzing the initial business data can be to perform entity recognition on the initial business data by using an entity recognition model constructed based on a neural network. Then, the initial business data is classified according to the result of entity recognition to determine the data field of the initial business data.

[0044] Further, since the initial business data is generally recorded in a table form. Each column of data in the table is the same type of data, and the data recorded in the first cell of each column represents the meaning represented by the data in the column. Therefore, analyzing the initial business data can also identify the name entity (the name entity is the entity type of the data recorded in the first cell of each column) in the initial business data. Then, the data corresponding to each name entity is extracted, so as to obtain the data field included in the initial business data.

[0045] (3) matching the data fields and the accounting fields to determine whether all the accounting fields are contained in the initial business data.

[0046] Specifically, after determining the data fields of the initial business data and the accounting fields of the preset accounting condition, the data fields and the accounting fields are matched. That is, the data fields and the accounting fields are matched one by one to determine whether all the accounting fields are contained in the initial business data. Further, all the accounting fields contained in the initial business data include two cases: one is that the number of the data fields and the number of the accounting fields in the preset accounting condition are the same, and the data fields and the accounting fields correspond to each other one by one. At this time, there are no fields other than the accounting fields in the initial business data. The other is that the number of the data fields and the number of the accounting fields in the preset accounting condition are not the same, but part of the data fields and the accounting fields correspond to each other one by one. At this time, there are other fields in the initial business data in addition to the accounting fields.

[0047] (4) recording the initial business data containing all the accounting fields as the to-be-processed business data.

[0048] Specifically, after matching the data fields and the accounting fields to determine whether all the accounting fields are contained in the initial business data, if all the accounting fields are contained in the initial business data, the initial business data containing all the accounting fields is recorded as the to-be-processed business data. If all the accounting fields are not contained in the initial business data, it indicates that the initial business data does not meet the preset accounting condition, and the initial business data is rejected.

[0049] In an embodiment, one of the service instance modules includes at least one task thread unit; in step S30, that is, selecting the second preset number of target instance modules from all the service instance modules, including:

[0050] (1) performing task detection on the task thread units in all the service instance modules to determine whether there is a to-be-executed task in the task thread units.

[0051] It can be understood that the task thread unit is a unit for executing data processing in the service instance module. When receiving a financial data processing instruction, the task thread unit in the service instance module may be responding to the instruction sent by the previous sending end. That is, there is a to-be-executed task in the task thread unit. The to-be-executed task refers to a task being executed by the task thread unit or a task waiting to be executed in the task execution list of the task thread unit.

[0052] (2) record the service instance module in which all task thread units exist as an excluded instance module, and record other service instance modules except the excluded instance module as candidate instance modules.

[0053] Specifically, after task detection is performed on the task thread units in all service instance modules, if all task thread units in a service instance module exist as tasks to be executed, it is indicated that there is no task thread unit in the service instance module that can respond to a financial data processing instruction at present, and therefore the service instance module is determined as an excluded instance module. Further, other service instance modules except the excluded instance module are determined as candidate instance modules. That is, at least one task thread unit in the candidate instance modules does not exist as a task to be executed.

[0054] (3) acquire the number of the candidate instance modules, and compare the number with the first preset number.

[0055] Specifically, after the service instance module in which all task thread units exist as tasks to be executed is recorded as an excluded instance module, and other service instance modules except the excluded instance module are recorded as candidate instance modules, the number of the candidate instance modules is detected. The number is compared with the first preset number. When the number is greater than or equal to the first preset number, the first preset number of candidate instance modules can be selected as target instance modules. When the number is less than the first preset number, selection is performed according to the task thread units, and the number of the finally selected target instance modules is less than the first preset number.

[0056] When the number of the candidate instance modules is greater than or equal to the first preset number, the first preset number of target instance modules are selected from all the candidate instance modules.

[0057] Specifically, after the number of the candidate instance modules is compared with the first preset number, if the number is greater than or equal to the first preset number, it is indicated that more than the first preset number of candidate instance modules are available for selection. Therefore, the first preset number of candidate instance modules are selected from all the candidate instance modules as target instance modules. The first preset number of candidate instance modules can be selected by using different selection strategies. The selection strategies can be a round-robin selection strategy, a random selection strategy, a weight selection strategy, or a call time selection strategy.

[0058] Further, when the selection strategy is the polling selection strategy, a first preset number of the to-be-selected instance modules can be sequentially selected as the target instance modules from the first to-be-selected instance module. Then, when another financial data processing instruction is received next time, a first preset number of the to-be-selected instance modules can be sequentially selected as the target instance modules from the to-be-selected instance module after the target instance modules selected this time, and so on. For example, assuming that all the service instance modules are to-be-selected instance modules, and a first preset number of to-be-selected entity modules are still selected next time. When the first to third to-be-selected instance modules are selected as the target instance modules this time, the fourth to sixth to-be-selected instance modules are selected as the target instance modules next time.

[0059] Further, when the selection strategy is the random selection strategy, one to-be-selected instance module can be randomly selected as the target instance module from all the to-be-selected instance modules.

[0060] Further, when the selection strategy is the weight selection strategy, first, the selection probability of each to-be-selected instance module is confirmed, which is the quotient of the weight corresponding to the to-be-selected instance module and the sum of the weights of all the service instance modules, and then a first preset number of to-be-selected instance modules with the highest selection probability are selected as the target instance modules.

[0061] Further, when the selection strategy is the calling time selection strategy, first, the module execution time of each to-be-selected instance module is obtained. Then, a first preset number of to-be-selected instance modules with the shortest module execution time are selected as the target instance modules. The module execution time can be the average value of the time for completing the data matching task in the history of the to-be-selected instance module.

[0062] It should be noted that in the embodiment, when the module number is greater than or equal to the first preset number, a first preset number of to-be-selected instance modules are selected as the target instance modules, which can evenly distribute the data matching task (i.e., data matching according to the financial data reference group) to each target instance module. That is, the embodiment can also select less than or more than the first preset number of to-be-selected instance modules as the target instance modules. It is only necessary to ensure that the number of task thread units selected from all the target instance modules is the same as the first preset number.

[0063] In an embodiment, after the comparison between the module number and the first preset number, the method further includes:

[0064] (1) When the module number is less than the first preset number, the task thread unit without the to-be-executed task is recorded as a to-be-selected unit, and the number of thread units containing the to-be-selected unit in all the to-be-selected instance modules is obtained.

[0065] Specifically, after comparing the module quantity with the first preset quantity, if the module quantity is less than the first preset quantity, it indicates that the data matching task (i.e., data matching according to the control group of financial data) cannot be evenly distributed to each target instance module. Therefore, based on the result of task detection of the task thread unit in the above steps, the task thread unit without a task to be executed is recorded as a selected unit. That is, there is no task being executed in the selected unit or there is no task waiting to be executed in the task execution list of the selected unit. The thread unit quantity is the total number of selected units contained in all selected instance modules.

[0066] (2) comparing the thread unit quantity with the first preset quantity.

[0067] (3) when the thread unit quantity is greater than or equal to the first preset quantity, selecting a first preset quantity of selected units from all the selected instance modules, and recording the selected instance module corresponding to the selected unit as a target instance module.

[0068] Specifically, after obtaining the thread unit quantity of the selected units contained in all selected instance modules, the thread unit quantity is compared with the first preset quantity. If the thread unit quantity is greater than or equal to the first preset quantity, it indicates that there are more than the first preset quantity of selected units to choose from. Then, a first preset quantity of selected units is selected from all the selected instance modules. And the selected instance module to which the selected unit belongs is recorded as a target instance module. The selection strategy of selecting a first preset quantity of selected units can also be a round-robin selection strategy, a random selection strategy, a weight selection strategy, or a call time selection strategy. The method of executing each selection strategy is the same as that of selecting a target instance module in the above steps, and the specific explanation in the above steps can be referred to, and will not be repeated here.

[0069] (4) when the thread unit quantity is less than the first preset quantity, selecting one selected unit from all the selected instance modules, and recording the selected instance module corresponding to the selected unit as a target instance module.

[0070] Specifically, after obtaining the thread unit quantity of the candidate unit contained in all candidate instance modules, the thread unit quantity is compared with the first preset quantity. If the thread unit quantity is less than the first preset quantity, it indicates that the candidate units available for selection are less than the first preset quantity. That is, the candidate units cannot be evenly distributed to the candidate units in different target instance modules. Then, one candidate unit is directly selected from all candidate instance modules, and the candidate instance module to which the selected candidate unit belongs is determined as the target instance module. That is, the quantity of the selected target instance module is one, and the second preset quantity is one.

[0071] In an embodiment, in step S40, that is, the obtaining of the financial data matching result by the target instance module according to the financial data comparison group, comprises:

[0072] (1) recording the selected task thread units in all the target instance modules as target thread units, and obtaining the instance failure queue corresponding to the target thread units.

[0073] Specifically, as indicated in the above description, whether the second preset quantity of the selected target instance module is less than or equal to the first preset quantity, the task thread units in the target instance module perform the data matching task in step S40 (that is, data matching according to the financial data comparison group). The quantity of the task thread units performing the data matching task is the same as the first preset quantity. Thus, the selected task thread units in the target instance module can be recorded as target thread units.

[0074] Further, each target thread unit in the server cluster corresponds to an IP (Internet Protocol Address) address. Then, the instance failure queue corresponding to the target thread unit can be obtained from the storage unit of the server cluster through the IP address. It can be understood that the instance failure queue is used to store the financial data comparison group corresponding to the financial data matching result indicating matching failure. That is, when the target thread unit performs data matching according to the financial data comparison group to obtain a financial data matching result indicating that the call fails, the financial data comparison group performing the data matching task this time is added to the instance failure queue.

[0075] (2) detecting whether the instance failure queue contains processing failure information, and recording the instance failure queue containing the processing failure information as a waiting execution queue.

[0076] It can be understood that when the financial data matching result corresponding to one financial data group indicates a successful match, the financial data group will not be added to the instance failure queue. Therefore, the instance failure queue can or can not contain one or more financial data groups. Therefore, after obtaining the instance failure queue corresponding to the target thread unit, it can be detected whether the instance failure queue contains processing failure information. The instance failure queue containing the processing failure information is recorded as a waiting execution queue. The processing failure information is the information corresponding to the financial data group corresponding to the financial data matching result indicating a failed match.

[0077] (3) inserting the financial data group into all processing failure information contained in the waiting execution queue.

[0078] It can be understood that after the instance failure queue containing the processing failure information is recorded as the waiting execution queue, the financial data group is inserted into all processing failure information contained in the waiting execution queue. For example, assuming that a waiting execution queue contains two processing failure information, the financial data group is inserted after the second processing failure information.

[0079] (4) when the financial data group is ranked first in the waiting execution queue, obtaining a preset financial data configuration table through the target thread unit corresponding to the waiting execution queue.

[0080] Specifically, after the financial data group is inserted into all processing failure information contained in the waiting execution queue, if it is detected that the financial data group is ranked first in the waiting execution queue, it indicates that all data matching tasks corresponding to the processing failure information in the waiting execution queue are completed, and the financial data matching results corresponding to the data matching tasks all indicate a successful match. Therefore, the preset financial data configuration table can be obtained through the target thread unit corresponding to the waiting execution queue. The preset financial data configuration table is used to extract data configured in the preset financial data configuration table from the to-be-processed business data. The preset financial data configuration table includes but is not limited to business segment configuration, currency configuration, subject configuration, sub-subject configuration, cost center configuration, batch name configuration, line description configuration, product segment configuration, or other configurations.

[0081] (5) matching the preset financial data configuration table and the to-be-processed business in the financial data group based on the data processing criteria in the financial data group through the target thread unit corresponding to the waiting execution queue to obtain a financial data matching result.

[0082] Specifically, after the target thread unit corresponding to the waiting execution queue acquires the preset financial data configuration table, the target thread unit corresponding to the waiting execution queue matches the to-be-processed business in the preset financial data configuration table and the financial data reference group based on the data processing criterion in the financial data reference group. It can be understood that each data processing criterion is different from the rule of data extraction or data matching. Therefore, the data processing criterion needs to be considered in the process of matching the to-be-processed business in the preset financial data configuration table and the financial data reference group, so as to obtain the financial data matching result.

[0083] Further, the preset financial data configuration table has a plurality of mapping relationships. For example, a plurality of mapping relationships are included in the business segment configuration, and a group of mapping relationships includes a sales type field corresponding to the data processing criterion, a risk type and bonus type field corresponding to the data processing criterion, and a business segment corresponding to the sales type field and the risk type and bonus type field. Thus, the same fields as the sales type field and the risk type and bonus type field in the mapping relationship can be queried in the to-be-processed business data, and then the business segment in the mapping relationship is supplemented to the data (the data refers to the data with the same fields as the sales type field and the risk type and bonus type field) in the to-be-processed business data, and the business segment matching process of the data is completed. The matching process of other fields is also the same, which will not be described here.

[0084] In the embodiment, by judging whether the instance failure queue contains processing failure information, and when the instance failure queue contains processing failure information, the data matching task corresponding to the processing failure information is preferentially executed. When all processing failure information sorted before the financial data reference group is matched successfully, the data matching task corresponding to the financial data reference group is executed. In this way, the consistency of all task thread units can be maintained, so that the data between each target instance module is the same. Thus, the efficiency and accuracy of the task thread unit in executing the data matching task are improved.

[0085] In an embodiment, after detecting whether the instance failure queue contains processing failure information, the method further includes:

[0086] (1) recording the instance failure queue not containing processing failure information as an immediate execution queue, and acquiring a preset financial data configuration table by the target thread unit corresponding to the immediate execution queue.

[0087] Specifically, after detecting whether the instance failure queue contains processing failure information, if the instance failure queue does not contain processing failure information, the instance failure queue not containing processing failure information is recorded as an immediate execution queue. And a preset financial data configuration table is acquired by the target thread unit corresponding to the immediate execution queue.

[0088] (2) The target thread unit corresponding to the instant execution queue matches the preset financial data configuration table and the to-be-processed business in the financial data reference group based on the data processing criteria in the financial data reference group, to obtain a financial data matching result.

[0089] Specifically, after the preset financial data configuration table is acquired by the target thread unit corresponding to the instant execution queue, the target thread unit corresponding to the instant execution queue matches the preset financial data configuration table and the to-be-processed business in the financial data reference group based on the data processing criteria in the financial data reference group. It can be understood that each data processing criterion is different from the rules of data extraction or data matching. Therefore, the data processing criteria need to be considered in the process of matching the preset financial data configuration table and the to-be-processed business in the financial data reference group, so as to obtain a financial data matching result. Further, the process of executing the data matching task by the instant execution queue is the same as the method of executing the data matching task by the waiting execution queue. Details are not repeated here.

[0090] In this embodiment, when the instance failure queue does not contain processing failure information, the data matching task corresponding to the financial data reference group is directly executed. In this way, the financial data reference group can be avoided to be in a waiting matching state all the time, and the efficiency of financial data processing is improved.

[0091] In an embodiment, in step S40, that is, the financial data voucher corresponding to the to-be-processed business data is determined based on all the financial data matching results, comprising:

[0092] (1) Acquire the data generation time corresponding to the to-be-processed business data, and the criterion effective time range corresponding to each data processing criterion.

[0093] It can be understood that the data generation time refers to the time recorded by the to-be-processed business data. The criterion effective time range refers to the time range of the validity of the data processing criterion. For example, each data processing criterion has its publication time and invalidation time. Therefore, the publication time to the invalidation time of each data processing criterion is the criterion effective time range.

[0094] (2) The financial data matching result of the data processing criterion corresponding to the criterion effective time range to which the data generation time belongs is determined as the reference data matching result.

[0095] Specifically, after obtaining the data generation time corresponding to the to-be-processed business data and the criterion effective time range corresponding to each data processing criterion, the data generation time and the criterion effective time range are matched. The data processing criterion corresponding to the criterion effective time range in which the data generation time is located is taken as the first processing criterion. The financial data matching result corresponding to the first processing criterion is determined as the reference data matching result.

[0096] (3) obtaining the current display time corresponding to the server cluster, and determining the financial data matching result of the data processing criterion corresponding to the criterion effective time range to which the current display time belongs as the target data matching result.

[0097] Specifically, after obtaining the data generation time corresponding to the to-be-processed business data and the criterion effective time range corresponding to each data processing criterion, the current display time corresponding to the server cluster is obtained, and the current display time and the criterion effective time range are matched. The data processing criterion corresponding to the criterion effective time range in which the current display time is located is taken as the second processing criterion. The financial data matching result corresponding to the second processing criterion is determined as the target data matching result.

[0098] (4) determining the financial data voucher according to the reference data matching result and the target data matching result.

[0099] Specifically, after the reference data matching result and the target data matching result are determined, if the reference data matching result and the target data matching result are the same, the reference data matching result or the target data matching result is directly filled into the to-be-processed business data. As indicated in the above description, the financial data matching result is the field value of the other field matched with the to-be-processed business data. Further, the field value included in the reference data matching result or the target data matching result can be filled into the to-be-processed business data to obtain the financial data voucher.

[0100] Further, when the reference data matching result and the target data matching result are different, the reference data matching result and the target data matching result can be sent to the sending end. The reference data matching result and the target data matching result are sent to the intelligent terminal of the enterprise through the sending end. The enterprise selects one of the reference data matching result and the target data matching result, and generates the financial data voucher according to the selected data matching result and the to-be-processed business data.

[0101] It should be understood that the size of the serial number of each step in the above embodiment does not mean the order of execution, and the execution order of each process should be determined according to its function and inherent logic, and should not constitute any limitation on the implementation process of the embodiment of the present application.

[0102] In an embodiment, a financial data processing device is provided, which corresponds to the financial data processing method in the above-mentioned embodiments. As shown in FIG. 2, the financial data processing device comprises a data screening module 10, a data correlation module 20, an instance selection module 30 and a data matching module 40. The functions of each module are described in detail as follows. Figure 3

[0103] The data screening module 10 is configured to perform data screening on the initial business data to obtain the to-be-processed business data after receiving the financial data processing instruction comprising at least one initial business data.

[0104] The data correlation module 20 is configured to obtain a first preset number of data processing criteria and generate a first preset number of financial data control groups according to the to-be-processed business data and the data processing criteria; one of the financial data control groups comprises the to-be-processed business data and one data processing criterion.

[0105] The instance selection module 30 is configured to select a second preset number of target instance modules from all the service instance modules; the second preset number is less than or equal to the first preset number.

[0106] The data matching module 40 is configured to obtain financial data matching results according to the financial data control groups by the target instance modules, and determine the financial data voucher corresponding to the to-be-processed business data based on all the financial data matching results.

[0107] Preferably, the data screening module 10 comprises:

[0108] A condition obtaining unit is configured to obtain a preset accounting condition; the preset accounting condition comprises at least one accounting field.

[0109] A data analysis unit is configured to analyze the initial business data to obtain data fields of the initial business data.

[0110] A field matching unit is configured to match the data fields and the accounting fields to determine whether all the accounting fields are contained in the initial business data.

[0111] A data screening unit is configured to record the initial business data containing all the accounting fields as the to-be-processed business data.

[0112] Preferably, the instance selection module 30 comprises:

[0113] A task detection unit is configured to perform task detection on the task thread units in all the service instance modules to determine whether there is a to-be-executed task in the task thread units.

[0114] ​The module distinguishing unit records all service instance modules in which the task thread units exist and have tasks to be executed as excluded instance modules, and records other service instance modules except the excluded instance modules as candidate instance modules.

[0115] The first quantity comparison unit obtains the module quantity of the candidate instance modules, and compares the module quantity with the first preset quantity.

[0116] The module selection unit selects a first preset quantity of target instance modules from all the candidate instance modules when the module quantity is greater than or equal to the first preset quantity.

[0117] Preferably, the instance selection module 30 further comprises:

[0118] The thread quantity obtaining unit records the task thread units in which no task to be executed exists as candidate units when the module quantity is less than the first preset quantity, and obtains the thread unit quantity of the candidate units contained in all the candidate instance modules;

[0119] The second quantity comparison unit compares the thread unit quantity with the first preset quantity.

[0120] The first thread selection unit selects a first preset quantity of candidate units from all the candidate instance modules when the thread unit quantity is greater than or equal to the first preset quantity, and records the candidate instance module corresponding to the selected candidate unit as a target instance module.

[0121] The second thread selection unit selects one candidate unit from all the candidate instance modules when the thread unit quantity is less than the first preset quantity, and records the candidate instance module corresponding to the selected candidate unit as a target instance module.

[0122] Preferably, the data matching module 40 comprises:

[0123] The queue obtaining unit records the selected task thread units in all the target instance modules as target thread units, and obtains the instance failure queue corresponding to the target thread units.

[0124] The information detection unit detects whether the instance failure queue contains processing failure information, and records the instance failure queue containing the processing failure information as a waiting execution queue.

[0125] The data insertion unit inserts the financial data control group after all the processing failure information contained in the waiting execution queue.

[0126] The first configuration table acquisition unit is configured to acquire a preset financial data configuration table through the target thread unit corresponding to the waiting execution queue when the financial data control group is ranked first in the waiting execution queue.

[0127] The first data matching unit is configured to match the preset financial data configuration table and the to-be-processed business in the financial data control group based on a data processing criterion in the financial data control group through the target thread unit corresponding to the waiting execution queue, to obtain a financial data matching result.

[0128] Preferably, the data matching module 40 further comprises:

[0129] The second configuration table acquisition unit is configured to record an instance failure queue not containing processing failure information as an instant execution queue, and acquire a preset financial data configuration table through the target thread unit corresponding to the instant execution queue.

[0130] The second data matching unit is configured to match the preset financial data configuration table and the to-be-processed business in the financial data control group based on a data processing criterion in the financial data control group through the target thread unit corresponding to the instant execution queue, to obtain a financial data matching result.

[0131] Preferably, the data matching module 40 further comprises:

[0132] The time acquisition unit is configured to acquire a data generation time corresponding to the to-be-processed business data, and a criterion effective time range corresponding to each data processing criterion.

[0133] The control data determination unit is configured to determine a financial data matching result of a data processing criterion corresponding to a criterion effective time range to which the data generation time belongs, as a control data matching result.

[0134] The target data determination unit is configured to acquire a current display time corresponding to the server cluster, and determine a financial data matching result of a data processing criterion corresponding to a criterion effective time range to which the current display time belongs, as a target data matching result.

[0135] The data certificate determination unit is configured to determine the financial data certificate according to the control data matching result and the target data matching result.

[0136] The specific limitation of the financial data processing apparatus can refer to the limitation of the financial data processing method in the above, which will not be repeated here. Each module in the above financial data processing apparatus can be realized by software, hardware and their combination in whole or in part. The above each module can be embedded in or independent of the processor in the computer device in hardware form, or can be stored in the memory in the computer device in software form, so as to call and execute the operation corresponding to each module by the processor.

[0137] In one embodiment, a computer device, which can be a server, is provided, and the internal structure diagram thereof can be as shown in Figure 4 The computer device includes a processor, a memory, a network interface and a database connected by a system bus. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store the data used by the financial data processing method in the above embodiment. The network interface of the computer device is used to communicate with the external terminal through the network connection. The computer program is executed by the processor to implement a financial data processing method.

[0138] In one embodiment, a computer device is provided, which includes a memory, a processor and a computer program stored in the memory and executable on the processor, and the processor implements the financial data processing method in the above embodiment when executing the computer program.

[0139] In one embodiment, a computer readable storage medium is provided, which stores a computer program, and the computer program is executed by the processor to implement the financial data processing method in the above embodiment.

[0140] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer readable storage medium, and when executed, can include the processes of the above-mentioned embodiment methods. Any reference to memory, storage, database or other medium used in the embodiments provided by the present application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration but not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

[0141] Those skilled in the art can clearly understand that, for the convenience and brevity of description, only the division of the above-mentioned functional units and modules is exemplified, and in actual application, the above-mentioned functions can be completed by different functional units and modules according to needs, that is, the internal structure of the device is divided into different functional units or modules to complete all or part of the functions described above.

[0142] The above-mentioned embodiments are only used to illustrate the technical solutions of the present application, but not limit it. Although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that they can modify the technical solutions recorded in the foregoing embodiments, or make equivalent replacement for part of the technical features. The modification or replacement does not make the essence of the corresponding technical solution deviate from the spirit and scope of the technical solutions of the embodiments of the present application, and should be included in the protection scope of the present application.

Claims

1. A financial data processing method, characterized in that, The financial data processing method is applied to a server cluster, which includes at least one service instance module; The financial data processing method includes: After receiving a financial data processing instruction containing at least one initial business data, the initial business data is filtered to obtain the business data to be processed. Obtain a first preset number of data processing criteria, and generate a first preset number of financial data control groups based on the business data to be processed and the data processing criteria; each financial data control group includes the business data to be processed and a data processing criterion. Select a second preset number of target instance modules from all the service instance modules; the second preset number is less than or equal to the first preset number; The target instance module obtains financial data matching results based on the financial data control group, and determines the financial data voucher corresponding to the business data to be processed based on all the financial data matching results. A service instance module includes at least one task thread unit; the step of selecting a second preset number of target instance modules from all the service instance modules includes: Perform task detection on the task thread units in all the service instance modules to determine whether there are any tasks to be executed in the task thread units; Service instance modules in which all task thread units have tasks to be executed are recorded as excluded instance modules, and other service instance modules other than the excluded instance modules are recorded as candidate instance modules. Obtain the number of modules of the selected instance modules, and compare the number of modules with the first preset number; When the number of modules is greater than or equal to the first preset number, the first preset number of target instance modules are selected from all the candidate instance modules. The step of obtaining financial data matching results through the target instance module based on the financial data control group includes: Record the selected task thread units in all the target instance modules as target thread units, and obtain the instance failure queue corresponding to the target thread unit; Detect whether the instance failure queue contains processing failure information, and record the instance failure queue containing processing failure information as a waiting execution queue; The financial data control group is inserted after all processing failure information contained in the waiting execution queue; When the financial data control group is ranked first in the waiting execution queue, a preset financial data configuration table is obtained through the target thread unit corresponding to the waiting execution queue. The target thread unit corresponding to the waiting execution queue matches the pending business in the preset financial data configuration table and the financial data control group based on the data processing criteria in the financial data control group, and obtains the financial data matching result.

2. The financial data processing method as described in claim 1, characterized in that, The process of filtering the initial business data to obtain the business data to be processed includes: Obtain preset accounting conditions; the preset accounting conditions include at least one accounting field; The initial business data is parsed to obtain the data fields of the initial business data; The data fields and the accounting fields are matched to determine whether the initial business data contains all of the accounting fields; The initial business data containing all the aforementioned accounting fields is recorded as the business data to be processed.

3. The financial data processing method as described in claim 1, characterized in that, After comparing the number of modules with the first preset number, the method further includes: When the number of modules is less than the first preset number, the task thread unit that does not have a task to be executed is recorded as the unit to be selected, and the number of thread units of the units to be selected contained in all the units to be selected in the selected instance modules is obtained. Compare the number of thread units with the first preset number; When the number of thread units is greater than or equal to the first preset number, a first preset number of candidate units are selected from all candidate instance modules, and the candidate instance module corresponding to the selected candidate unit is recorded as the target instance module. When the number of thread units is less than the first preset number, a candidate unit is selected from all the candidate instance modules, and the candidate instance module corresponding to the selected candidate unit is recorded as the target instance module.

4. The financial data processing method as described in claim 1, characterized in that, After detecting whether the instance failure queue contains processing failure information, the method further includes: Record the instance failure queue that does not contain processing failure information as an immediate execution queue, and obtain the preset financial data configuration table through the target thread unit corresponding to the immediate execution queue; The target thread unit corresponding to the instant execution queue matches the pending business data in the preset financial data configuration table and the financial data control group based on the data processing criteria in the financial data control group, and obtains the financial data matching result.

5. The financial data processing method as described in claim 1, characterized in that, The step of determining the financial data voucher corresponding to the business data to be processed based on all the financial data matching results includes: Obtain the data generation time corresponding to the business data to be processed, and the effective time range of the criteria corresponding to each of the data processing criteria; The financial data matching results of the data processing standards corresponding to the effective time range of the standards to which the data generation time belongs are determined as the comparison data matching results. Obtain the current display time corresponding to the server cluster, and determine the financial data matching result of the data processing criteria corresponding to the effective time range of the criteria to which the current display time belongs as the target data matching result; The financial data voucher is determined based on the matching results of the reference data and the matching results of the target data.

6. A financial data processing device, characterized in that, The financial data processing apparatus is used to perform the financial data processing method as described in any one of claims 1 to 5, and the financial data processing apparatus includes: The data filtering module is used to filter the initial business data after receiving a financial data processing instruction containing at least one initial business data to obtain the business data to be processed. The data association module is used to obtain a first preset number of data processing criteria, and generate a first preset number of financial data control groups based on the business data to be processed and the data processing criteria; each financial data control group includes the business data to be processed and a data processing criterion. The instance selection module is used to select a second preset number of target instance modules from all service instance modules; the second preset number is less than or equal to the first preset number; The data matching module is used to obtain financial data matching results through the target instance module based on the financial data control group, and to determine the financial data voucher corresponding to the business data to be processed based on all the financial data matching results.

7. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the financial data processing method as described in any one of claims 1 to 5.

8. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the financial data processing method as described in any one of claims 1 to 5.

Citation Information

Patent Citations

  • Enterprise risk assessment method

    CN105389732A

  • System and method for automatically generating financial statement from paper-based invoices

    CN107133571A