Methods, processors, and storage media for comparing form data.

By sorting the two-dimensional array of form data according to preset attributes and using multi-threading, the problem of low efficiency in form data comparison is solved, achieving a faster comparison rate and higher comparison efficiency.

CN116861266BActive Publication Date: 2025-10-28ZHONGKE YUNGU TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310797579.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-06-30
Publication Date
2025-10-28
Estimated Expiration
2043-06-30

AI Technical Summary

Technical Problem

Existing technologies have low efficiency in comparing form data, requiring comparison of identical attributes and their corresponding data one by one. This results in random comparison positions and numerous nested loops, leading to long processing times.

Method used

By obtaining a two-dimensional array of the forms to be compared, sorting multiple one-dimensional arrays according to preset attributes, and comparing the sorted two-dimensional arrays, including direct sorting of numeric types and hash value sorting of character types, and using multi-threading to process multiple form data, the comparison results are finally merged.

Benefits of technology

This significantly reduces the randomness of the comparison position, reduces the number of nested loop comparisons, shortens the comparison time, speeds up the comparison rate, and improves the efficiency of form data comparison.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116861266B_ABST
    Figure CN116861266B_ABST
Patent Text Reader

Abstract

This invention provides a method, processor, and storage medium for form data comparison, belonging to the field of data processing technology. The method for form data comparison includes: obtaining two-dimensional arrays corresponding to the forms to be compared, wherein the two-dimensional arrays include multiple one-dimensional arrays, and each one-dimensional array includes data for multiple attributes; sorting the multiple one-dimensional arrays according to the data corresponding to preset attributes in the two-dimensional arrays to obtain sorted two-dimensional arrays; and comparing the sorted two-dimensional arrays to achieve data comparison of the forms to be compared. This invention can improve the efficiency of form data comparison.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data processing technology, and more specifically to a method, processor, and storage medium for comparing form data. Background Technology

[0002] In existing technologies, form data comparison typically involves comparing one or more attributes from a two-dimensional array corresponding to one form with the same attribute from a two-dimensional array corresponding to another form. If the attributes match, the data corresponding to the same attribute in both arrays is retrieved, or it is confirmed whether data with the same attribute exists in both sets of data. This process is repeated until all data with the same attribute in the forms to be compared has been traversed. Because this method requires comparing the same attribute and its corresponding data one by one, the comparison positions are random, and multi-attribute comparisons require nested loops, resulting in a long processing time and low comparison efficiency. Summary of the Invention

[0003] The purpose of this invention is to provide a method, processor, and storage medium for comparing form data, so as to solve the problem of low comparison efficiency in the prior art.

[0004] To achieve the above objectives, a first aspect of the present invention provides a method for comparing form data, the method comprising:

[0005] Obtain the two-dimensional arrays corresponding to the forms to be compared, wherein the two-dimensional arrays include multiple one-dimensional arrays, and each one-dimensional array includes data of multiple attributes;

[0006] Based on the data corresponding to the preset attributes in the two-dimensional array, sort multiple one-dimensional arrays to obtain a sorted two-dimensional array;

[0007] The sorted two-dimensional arrays are compared to achieve data comparison of the form to be compared.

[0008] In this embodiment of the invention, sorting multiple one-dimensional arrays according to the data corresponding to preset attributes in a two-dimensional array to obtain a sorted two-dimensional array includes: determining the data type of the data corresponding to the preset attributes, wherein the data type includes numeric type and character type; selecting a sorting method corresponding to the data type; and sorting multiple one-dimensional arrays according to the sorting method and the data corresponding to the preset attributes in the two-dimensional array to obtain a sorted two-dimensional array.

[0009] In this embodiment of the invention, selecting the sorting method corresponding to the data type according to the data type includes: when the data type is a number, determining the sorting method as direct sorting; when the data type is a character, determining the sorting method as first converting the data of the preset attribute into a hash value, and then sorting the hash value.

[0010] In this embodiment of the invention, sorting multiple one-dimensional arrays according to the data corresponding to preset attributes in a two-dimensional array to obtain a sorted two-dimensional array includes: when there are multiple preset attributes, merging and connecting the data corresponding to the multiple preset attributes to obtain merged and connected data corresponding to the multiple preset attributes; and sorting multiple one-dimensional arrays according to the merged and connected data corresponding to the multiple preset attributes in the two-dimensional array to obtain a sorted two-dimensional array.

[0011] In this embodiment of the invention, the method for comparing form data further includes: when there are multiple forms to be compared, sorting the two-dimensional arrays corresponding to the multiple forms to be compared by multiple threads respectively.

[0012] In this embodiment of the invention, the method for comparing form data further includes: when there are multiple forms to be compared, merging multiple sorted two-dimensional arrays to obtain a merged two-dimensional array; and comparing the merged two-dimensional array to achieve data comparison of multiple forms to be compared.

[0013] In this embodiment of the invention, merging multiple sorted two-dimensional arrays to obtain a merged two-dimensional array includes: sorting the first one-dimensional array in the multiple sorted two-dimensional arrays to obtain a target one-dimensional array, wherein the target one-dimensional array is the first one-dimensional array in the merged two-dimensional array; removing the target one-dimensional array from the corresponding sorted two-dimensional array to obtain multiple reordered two-dimensional arrays; and sorting the first one-dimensional array in the multiple reordered two-dimensional arrays until all one-dimensional arrays in the multiple sorted two-dimensional arrays are sorted to obtain the merged two-dimensional array.

[0014] In this embodiment of the invention, obtaining the two-dimensional arrays corresponding to the forms to be compared includes: obtaining data from multiple non-interoperable systems through robotic process automation technology to obtain the two-dimensional arrays corresponding to the forms to be compared.

[0015] A second aspect of the present invention provides a processor configured to execute the method for comparing form data as described above.

[0016] A third aspect of the present invention provides a machine-readable storage medium on which a program or instruction is stored, which, when executed by a processor, implements the method for comparing form data as described above.

[0017] The above technical solution obtains two-dimensional arrays corresponding to the forms to be compared, where each two-dimensional array contains multiple one-dimensional arrays, and each one-dimensional array contains data for multiple attributes. Then, based on the data corresponding to preset attributes in the two-dimensional arrays, the multiple one-dimensional arrays are sorted to obtain sorted two-dimensional arrays. These sorted two-dimensional arrays are then compared to achieve data comparison of the forms to be compared. This technical solution adopts a sort-before-data-comparison approach; that is, it first sorts the one-dimensional arrays within the two-dimensional arrays corresponding to the forms to be compared based on the data corresponding to preset attributes, and then uses the sorted two-dimensional arrays for comparison. This significantly reduces the randomness of the comparison position, reduces the number of nested loop comparisons, shortens the comparison time, accelerates the comparison speed, and improves the efficiency of form data comparison.

[0018] Other features and advantages of the embodiments of the present invention will be described in detail in the following detailed description section. Attached Figure Description

[0019] The accompanying drawings are provided to further illustrate embodiments of the present invention and form part of the specification. They are used together with the following detailed description to explain the embodiments of the present invention, but do not constitute a limitation thereof. In the drawings:

[0020] Figure 1 The schematic diagram illustrates a flowchart of a method for comparing form data in one embodiment of the present invention;

[0021] Figure 2 The schematic diagram illustrates a flowchart of a method for comparing form data in another embodiment of the present invention;

[0022] Figure 3 The diagram illustrates a structural block diagram of a device for comparing form data according to an embodiment of the present invention. Detailed Implementation

[0023] The specific embodiments of the present invention will be described in detail below with reference to the accompanying drawings. It should be understood that the specific embodiments described herein are for illustration and explanation only and are not intended to limit the scope of the present invention.

[0024] It should be noted that if the embodiments of the present invention involve directional indicators (such as up, down, left, right, front, back, etc.), the directional indicators are only used to explain the relative positional relationship and movement of the components in a certain specific posture (as shown in the figure). If the specific posture changes, the directional indicators will also change accordingly.

[0025] In addition, if there are descriptions involving "first", "second", etc. in the embodiments of the present invention, the descriptions of "first", "second", etc. are only for descriptive purposes and cannot be understood as indicating or implying their relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features specified as "first" and "second" may explicitly or implicitly include at least one of such features. In addition, the technical solutions between the various embodiments can be combined with each other, but this must be based on the fact that ordinary technicians in this field can implement them. When the combination of technical solutions is contradictory or cannot be implemented, it should be deemed that such a combination of technical solutions does not exist and is not within the scope of protection required by the present invention.

[0026] Figure 1 The illustration schematically shows a flowchart of a method for comparing form data according to an embodiment of the present invention. Figure 1 As shown, in this embodiment of the invention, a method for comparing form data is provided. Taking the application of this method to a processor as an example, the method may include the following steps:

[0027] Step S102: Obtain the two-dimensional arrays corresponding to the forms to be compared, wherein the two-dimensional arrays include multiple one-dimensional arrays, and each one-dimensional array includes data of multiple attributes.

[0028] Step S104: Sort multiple one-dimensional arrays according to the data corresponding to the preset attributes in the two-dimensional array to obtain a sorted two-dimensional array.

[0029] Step S106: Compare the sorted two-dimensional array to achieve data comparison of the form to be compared.

[0030] It's understandable that the form to be compared is a form that requires data comparison, such as bank forms and company forms. A two-dimensional array, also known as a matrix, is formed by rows and columns in the form. Each row or column constitutes a one-dimensional array, and each one-dimensional array contains data with multiple attributes, such as serial number, name, and year. Multiple one-dimensional arrays can form a two-dimensional array. Preset attributes are pre-determined or pre-selected attributes that need to be compared; the number of preset attributes can be one or more.

[0031] Specifically, the processor can obtain two-dimensional arrays corresponding to each form to be compared. After obtaining each form, it can read data from each form to generate a two-dimensional array. Then, based on the data corresponding to preset attributes in the two-dimensional array, it can sort multiple one-dimensional arrays to obtain sorted two-dimensional arrays. That is, it sorts the data corresponding to preset attributes in the two-dimensional arrays to sort the one-dimensional arrays containing the data corresponding to the preset attributes, thereby obtaining sorted two-dimensional arrays corresponding to each form to be compared. For example, when the preset attribute is numeric data, the numbers corresponding to the preset attribute can be sorted in descending or ascending order, etc. This allows the sorted two-dimensional arrays corresponding to each form to be compared to achieve data comparison of the forms to be compared.

[0032] The aforementioned method for comparing form data obtains two-dimensional arrays corresponding to the forms to be compared. Each two-dimensional array contains multiple one-dimensional arrays, and each one-dimensional array contains data for multiple attributes. Then, based on the data corresponding to preset attributes in the two-dimensional arrays, the multiple one-dimensional arrays are sorted to obtain sorted two-dimensional arrays. These sorted two-dimensional arrays are then compared to achieve data comparison of the forms to be compared. This technical solution employs a sorting-before-data-comparison approach; that is, it first sorts the one-dimensional arrays within the two-dimensional arrays corresponding to the forms to be compared based on the data corresponding to preset attributes, and then uses the sorted two-dimensional arrays for comparison. This significantly reduces the randomness of the comparison position, reduces the number of nested loop comparisons, shortens the comparison time, accelerates the comparison speed, and improves the efficiency of form data comparison.

[0033] In one embodiment, sorting multiple one-dimensional arrays according to the data corresponding to preset attributes in a two-dimensional array to obtain a sorted two-dimensional array includes: when there are multiple preset attributes, merging and connecting the data corresponding to the multiple preset attributes to obtain merged and connected data corresponding to the multiple preset attributes; and sorting the multiple one-dimensional arrays according to the merged and connected data corresponding to the multiple preset attributes in the two-dimensional array to obtain a sorted two-dimensional array.

[0034] Understandably, when there are multiple preset attributes, the data corresponding to the preset attributes in the two-dimensional array can be merged and connected data obtained by merging and connecting the data corresponding to the preset attributes in the two-dimensional array. Then, the merged and connected data can be compared to sort the one-dimensional array containing the merged and connected data, thereby obtaining the sorted two-dimensional array.

[0035] In one embodiment, sorting multiple one-dimensional arrays according to data corresponding to preset attributes in a two-dimensional array to obtain a sorted two-dimensional array includes: determining the data type of the data corresponding to the preset attributes, wherein the data type includes numeric type and character type; selecting a sorting method corresponding to the data type; and sorting the multiple one-dimensional arrays according to the sorting method and the data corresponding to the preset attributes in the two-dimensional array to obtain a sorted two-dimensional array.

[0036] It is understandable that the data type corresponding to the preset attribute can include numeric and character types. The numeric type is a type consisting entirely of numeric values, while the character type is a type containing characters. That is, the character type can be a type consisting entirely of characters or a combination of numeric and character values. The sorting method refers to the way the data is processed and sorted during the sorting process. Understandably, different data types can have different sorting methods. There is a one-to-one correspondence between data types and sorting methods, and this relationship can be predetermined and stored.

[0037] Specifically, the processor can first determine the data type of the data corresponding to the preset attribute, and select the sorting method corresponding to the data type. For example, it can select the corresponding sorting method according to the data type corresponding to the preset attribute based on the pre-stored correspondence between data types and sorting methods. Thus, multiple one-dimensional arrays can be sorted according to the determined sorting method and the data corresponding to the preset attribute in the two-dimensional array to obtain the sorted two-dimensional array.

[0038] In one embodiment, selecting the sorting method corresponding to the data type includes: when the data type is a number, determining the sorting method as direct sorting; when the data type is a character, determining the sorting method as first converting the data of the preset attribute into a hash value, and then sorting the hash value.

[0039] It is understandable that the sorting method for numeric data is direct sorting, that is, sorting directly without any other data processing, while the sorting method for character data is to first convert the data with preset attributes into hash values, and then sort the hash values, that is, to perform data conversion processing before sorting.

[0040] Specifically, when the data type of the preset attribute corresponding to the data in the two-dimensional array is numeric, the processor can determine that the sorting method for the data corresponding to the preset attribute is direct sorting, that is, sorting directly without performing other data processing. The sorting method can include descending sorting or ascending sorting, etc. Further, if there are multiple preset attributes to be compared, the numeric data of multiple preset attributes can be merged and concatenated, and the merged and concatenated numeric data can be sorted to achieve sorting of the one-dimensional array containing the merged and concatenated numeric data, thereby obtaining a sorted two-dimensional array. When the data type of the preset attribute corresponding to the data in the two-dimensional array is character, the processor can determine that the sorting method for the data corresponding to the preset attribute is to first convert the data of the preset attribute into hash values, and then sort the hash values. Further, if there are multiple preset attributes to be compared, the character data of multiple preset attributes can be merged and concatenated, and the merged and concatenated character data can be converted into hash values, and then the hash values ​​can be sorted to achieve sorting of the one-dimensional array containing the hash values, thereby obtaining a sorted two-dimensional array.

[0041] In one embodiment, the method for comparing form data further includes: when there are multiple forms to be compared, sorting the two-dimensional arrays corresponding to the multiple forms to be compared by multiple threads respectively.

[0042] It is understandable that if there are multiple forms to be compared, multiple threads can be used to sort the two-dimensional arrays corresponding to the multiple forms to be compared. That is, if there are N forms to be compared and N two-dimensional arrays are generated, N threads can be used to quickly sort the N two-dimensional arrays. The steps performed by each thread are: sorting multiple one-dimensional arrays in the two-dimensional array according to the data corresponding to the preset attributes in the two-dimensional array to obtain the sorted two-dimensional array.

[0043] In this embodiment of the application, multiple threads are used to sort the two-dimensional arrays corresponding to multiple forms to be compared, which can further improve the efficiency of comparing multiple form data.

[0044] In one embodiment, the method for comparing form data further includes: when there are multiple forms to be compared, merging multiple sorted two-dimensional arrays to obtain a merged two-dimensional array; and comparing the merged two-dimensional array to achieve data comparison of multiple forms to be compared.

[0045] Specifically, when there are multiple forms to be compared, the processor can merge multiple sorted two-dimensional arrays to obtain a merged two-dimensional array, and then compare the merged two-dimensional array to achieve data comparison of multiple forms. For example, if it is necessary to compare bank forms and company forms, and there are multiple bank forms and multiple company forms, the sorted two-dimensional arrays corresponding to each bank form can be merged to obtain a merged two-dimensional array corresponding to the bank forms, and the sorted two-dimensional arrays corresponding to each company form can be merged to obtain a merged two-dimensional array corresponding to the company forms. Thus, the merged two-dimensional arrays corresponding to the bank forms and the merged two-dimensional arrays corresponding to the company forms can be compared to achieve data comparison of bank forms and company forms.

[0046] In one embodiment, merging multiple sorted two-dimensional arrays to obtain a merged two-dimensional array includes: sorting the first-order one-dimensional array in the multiple sorted two-dimensional arrays to obtain a target one-dimensional array, wherein the target one-dimensional array is the first-order one-dimensional array in the merged two-dimensional array; removing the target one-dimensional array from the corresponding sorted two-dimensional array to obtain multiple reordered two-dimensional arrays; and sorting the first-order one-dimensional array in the multiple reordered two-dimensional arrays until all one-dimensional arrays in the multiple sorted two-dimensional arrays are sorted to obtain the merged two-dimensional array.

[0047] It can be understood that the target one-dimensional array is the first one-dimensional array in the merged two-dimensional array, that is, the first one-dimensional array among all the first one-dimensional arrays in the sorted two-dimensional arrays.

[0048] Specifically, the processor can sort the first one-dimensional array in multiple sorted two-dimensional arrays to obtain the target one-dimensional array, which is the first one-dimensional array in the merged two-dimensional array. Then, the processor removes the target one-dimensional array from the corresponding sorted two-dimensional array to obtain multiple reordered two-dimensional arrays. In other words, the one-dimensional array in the two-dimensional array containing the target one-dimensional array is the first one-dimensional array that is re-determined in the two-dimensional array. The processor then sorts the first one-dimensional array in the multiple reordered two-dimensional arrays until all the one-dimensional arrays in the multiple sorted two-dimensional arrays are sorted, thereby obtaining the merged two-dimensional array.

[0049] In one embodiment, obtaining the two-dimensional arrays corresponding to the forms to be compared includes: obtaining data from multiple non-interoperable systems through robotic process automation technology to obtain the two-dimensional arrays corresponding to the forms to be compared.

[0050] Robotic Process Automation (RPA) is a business process automation technology based on software robots and artificial intelligence. RPA can automatically acquire data from different platforms even when data is not interoperable. Its intelligent algorithm model can automatically identify data sources, classify, merge, clean, and cross-validate data, greatly improving the efficiency and accuracy of data processing. Multiple non-interoperable systems refer to multiple systems that do not share data.

[0051] Specifically, when data from multiple systems is not interconnected, the processor can use robotic process automation (RPA) technology to acquire data from multiple non-interconnected systems in order to obtain two-dimensional arrays corresponding to the forms to be compared.

[0052] In this embodiment of the application, robotic process automation technology is used to acquire data from non-interoperable systems, which can solve the problem of data incompatibility between different systems, enhance data acquisition efficiency, and realize data interoperability between different systems.

[0053] In a specific embodiment of the present invention, a method for comparing form data is provided, which specifically includes the following:

[0054] I. Automated Data Acquisition

[0055] RPA technology enables automated and rapid acquisition of data sources, even when API interfaces are not open or data is not interoperable. This can be achieved through the following methods:

[0056] 1. Database connection: For existing databases, a connection can be established to automatically obtain information on additions, modifications, and deletions since the last update, ensuring the real-time nature and accuracy of the comparison results.

[0057] 2. Web Extraction: For situations where there is no table structure or direct data access is inconvenient, such as websites, CRMs, SAP, etc., we can construct an API, pass parameters, and crawl and collect the required data through the interface to quickly obtain the data results needed for comparison.

[0058] 3. OCR Text Extraction: RPA's MAGE platform supports image processing capabilities, namely, based on OCR (Optical Character Recognition) natural language recognition technology, it converts text in images and scanned documents into queryable and comparable text data results.

[0059] 4. Excel Data Acquisition: Automatically parses Excel tables, using built-in Excel functions or RPA to perform data processing and deduplication. For example, Excel provides functions such as VLOOKUP, HLOOKUP, IF, MATCH, SUMIF, and COUNTIF, which can be selected according to actual needs, along with functions for wildcard checks, conditional statements, and string manipulation. Furthermore, efficient methods such as custom-written Regex expressions can be used for data standardization, effectively applying and implementing data extraction.

[0060] II. Data Cleaning Processing

[0061] 1. Data Conversion: Data from different industries and with different standards can be converted using preset methods. Through AI deep learning, different model scenarios can be trained, and RPA will automatically determine the conversion and clean the uploaded data.

[0062] 2. Character Repair, Deduplication, and Concatenation: During data processing, the system uses a training control mechanism to mark and perform minor repairs on fields that do not conform to specifications, based on the characteristics of each field's content. Furthermore, a multi-sampling contradiction detection method is used to enhance the accuracy and stability of comparisons. When processing data from multiple Excel spreadsheets, data from the same or different tables can be formatted consistently before being concatenated from different columns, improving processing efficiency.

[0063] 3. Feature Extraction Methods: Each data point is vectorized and parsed to generate corresponding feature descriptors. Feature values ​​can be calculated using hashing, or data clustering techniques such as the K-means algorithm can be employed. Feature quantization removes the negative impact of sample noise on the matching results. We draw on various methods in image recognition, such as SURF, SIFT, and PCA-LDA, and combine them with Principal Component Analysis (PCA) and Linear Discriminant Analysis (LDA) to vectorize different types of data. The method is automatically selected during training to further improve the accuracy and sensitivity of data comparison.

[0064] 4. To improve data processing efficiency, new algorithms not found in RPA were added for processing bank and company data. A multi-threaded sorting algorithm was used for sorting, followed by data comparison, which greatly improved matching efficiency. The flowchart is shown below. Figure 2 As shown.

[0065] Example: A bank has multiple report data sets that need to be matched and populated into its financial system. Multi-threaded sorting and comparison can be used for rapid processing. Matching bank data to the financial system typically uses unique transaction numbers or voucher numbers. However, there are also situations where multiple data sets must match to confirm that the bank and financial data represent the same account. Multi-threaded sorting can quickly handle these situations, and it can significantly improve comparison speed when processing Excel reports using RPA.

[0066] a) Perform quick sort on the array of numbers.

[0067] (1) Read the data from N Excel spreadsheets of the bank and generate N two-dimensional arrays (e.g., ArrayList arrays).

[0068] (2) Use N threads to perform quick sort on N two-dimensional arrays.

[0069] (3) The main thread compares the first element of each sorted two-dimensional array, selects the smallest element, and places it at index 0 of the merged new array. The content of the next comparison is shifted to the next element, that is, the next comparison will compare the second most recent element. The comparison is repeated in a loop, and finally the main thread merges each group of data to obtain the merged data.

[0070] b. Perform quicksort on the array of strings.

[0071] (1) Generate hash data for the columns that need to be sorted, converting them to numbers. If there are multiple columns to be compared, merge and concatenate the strings from those columns. Generate hash data.

[0072] (2) Use N threads to perform quick sorting on the ArrayList array converted to HSAH values.

[0073] (3) The main thread compares the first element of each sorted ArrayList, selects the smallest element, and places it at index 0 of the merged new array. The next comparison in the thread shifts the content to the next element, meaning that the next comparison will compare the second most recent element. This process is repeated until the main thread merges each group of data to obtain the merged data.

[0074] When comparing banking and financial data, using sorted data for comparison will greatly improve the comparison speed.

[0075] Three: Data Comparison

[0076] 1. Establish Comparison Standards: Determine standards based on business needs. When establishing comparison standards, the first step is to set corresponding data matching rules and parameters according to business requirements and scenarios. For example, if it is for data comparison in the financial industry, the comparison of sensitive data such as bank card numbers and ID card numbers can be considered. If it is for financial data comparison, the comparison of factors such as time, amount, and bank account can be considered. When setting standards, it is also necessary to pay attention to the characteristics of different types of data fields and metadata, and further subdivide and process them according to these characteristics.

[0077] 2. Introducing RPA AI algorithms for comparison: The RPA platform provides algorithm models covering deep learning, neural networks, Bayesian algorithms, etc., and features statistical induction and automatic evaluation. This allows it to better adapt to the data processing needs of different scenarios, selecting appropriate algorithm models for matching different types of data, further improving the accuracy and efficiency of matching. Simultaneously, machine learning and natural language processing technologies can automatically discover hidden information in the data and perform precise data matching based on its characteristics.

[0078] 3. Data comparison for Excel reports: RPA has developed a corresponding module for Excel comparison, allowing users to easily read, write, and concatenate data for comparison. Algorithms are used to select data and match specific information such as numerical values ​​within data item sequences.

[0079] 4. Dynamic Improvement: The comparison standards need to be dynamically optimized and adjusted based on actual scenarios and needs to meet the requirements of refinement and efficiency. During the comparison process, if any data is found to be inconsistent with the standards or contains errors that affect business processes, it should be recorded in a timely manner and a report generated. The customer can then retrain the standards using this erroneous data, allowing them to gradually become more refined.

[0080] IV. Generating Visual Results

[0081] After the comparison is complete, the results will be output to the RPA platform, where users can select different views and formats to view the processing results as needed. Simultaneously, anomaly analysis, statistical analysis, and visualization of the results can be performed during the comparison process. When outputting the results, the system will generate a detailed data report, including data comparison results, anomaly analysis, explanations of relevant agreement terms, etc., and provide users with corresponding data export functions, thereby helping users better understand and analyze the data and quickly adjust business strategies.

[0082] V. Data Security Assurance

[0083] 1. Data Security Protection: First, strengthen the protection of raw data to prevent accidental leakage or damage. Simultaneously, employ multiple encryption algorithms during processing, such as hash algorithms and AES algorithms, to ensure that sensitive data is not easily attacked or illegally stolen.

[0084] 2. Audit and track data: Logs of key operations need to be recorded, including crucial information such as data changes and their history at each stage from the data source to the comparison system. Log recording allows for timely tracking of anomalies and the implementation of corresponding measures to mitigate risks.

[0085] 3. Data transmission security: Employing technologies such as SSL encryption ensures the confidentiality and integrity of data transmission while implementing authentication and flow control to effectively address network security issues.

[0086] 4. Access control strategy: Establish a data permission system and ensure that different types of users have appropriate data access permissions to prevent malicious personnel from illegally stealing, tampering with or leaking sensitive data.

[0087] In summary, the technical solution provided by this invention utilizes RPA technology and Natural Language Processing (NLP) algorithms to achieve automatic data identification, extraction, and sorting. It highly automates the traditional data comparison process, significantly reducing the need for manual intervention and offering better scalability. Based on specific machine learning algorithms, after data acquisition, intelligent matching algorithms can identify potential data discrepancies, enhancing comparison accuracy while effectively reducing data analysis time. Besides supporting Excel spreadsheets, this technology can also perform map operations on other common data sources such as text files, PDFs, and images. This is a comprehensive comparison solution capable of handling complex and diverse application scenarios. In situations where data interfaces across multiple systems are not interoperable, using RPA to acquire data can solve the data interoperability problem, enhance acquisition efficiency, and achieve data interoperability between different systems.

[0088] Therefore, the technical solution provided by the embodiments of the present invention has the following advantages:

[0089] 1. Improved Work Efficiency: When data is not interconnected, RPA data acquisition requires no manual intervention. Compared to manual downloading, it significantly improves processing efficiency and reduces errors. In automated projects, RPA can be more than twice as fast as manual operation. For example, in an invoice mailing slip printing project, SAP and SF Express's official website data cannot be interfaced. Manual processing requires downloading SAP data, organizing the data to be mailed, and then importing it into SF Express's official website for printing, which takes about an hour. However, using RPA data comparison to filter the mailing slips to be printed only takes 6 minutes.

[0090] 2. Reduced Costs: Utilizing automated comparison methods fully leverages computer resources for data comparison, eliminating the need for servers and reducing manpower and costs. Furthermore, development costs are low, as it does not require integration with other systems, saving significant R&D expenses.

[0091] 3. High Accuracy: By using RPA's AI algorithms for comparison, human error and inaccurate data acquisition can be avoided. The impact of human factors on the results is eliminated, resulting in faster comparison speeds and more accurate results compared to manual methods. For example, in an invoice renaming project, the customer needs to identify the invoice number and rename it to the invoice file name. RPA's OCR recognition and data output processing is more than 5 times faster than manual methods.

[0092] 4. Data security protection: Automated comparison methods can effectively strengthen data security management and protection, and increase the traceability and auditability of comparison data, thereby better responding to data leakage, damage or other information risks.

[0093] This invention also provides a processor configured to execute the method for comparing form data according to the above embodiments.

[0094] This invention also provides an apparatus 300 for comparing form data, comprising:

[0095] The data acquisition module 310 is used to acquire two-dimensional arrays corresponding to the forms to be compared, wherein the two-dimensional arrays include multiple one-dimensional arrays, and each one-dimensional array includes data of multiple attributes;

[0096] The sorting module 320 is used to sort multiple one-dimensional arrays according to the data corresponding to preset attributes in the two-dimensional array, so as to obtain a sorted two-dimensional array.

[0097] The comparison module 330 is used to compare the sorted two-dimensional array to achieve data comparison of the form to be compared.

[0098] The aforementioned device 300 for form data comparison acquires two-dimensional arrays corresponding to the forms to be compared. Each two-dimensional array includes multiple one-dimensional arrays, and each one-dimensional array contains data for multiple attributes. Then, based on the data corresponding to preset attributes in the two-dimensional arrays, the multiple one-dimensional arrays are sorted to obtain sorted two-dimensional arrays. These sorted two-dimensional arrays are then compared to achieve data comparison of the forms to be compared. This technical solution employs a sorting-before-data-comparison approach. Specifically, it first sorts the one-dimensional arrays within the two-dimensional arrays corresponding to the forms to be compared based on the data corresponding to preset attributes, and then uses the sorted two-dimensional arrays for comparison. This significantly reduces the randomness of the comparison position, reduces the number of nested loop comparisons, shortens the comparison time, accelerates the comparison speed, and improves the efficiency of form data comparison.

[0099] In one embodiment, the sorting module 320 is further configured to: determine the data type of the data corresponding to the preset attribute, wherein the data type includes numeric type and character type; select the sorting processing method corresponding to the data type according to the data type; and sort multiple one-dimensional arrays according to the sorting processing method and the data corresponding to the preset attribute in the two-dimensional array to obtain a sorted two-dimensional array.

[0100] In one embodiment, the sorting module 320 is further configured to: determine that the sorting method is direct sorting when the data type is numeric; and determine that the sorting method is to first convert the data of the preset attribute into a hash value and then sort the hash value when the data type is character.

[0101] In one embodiment, the sorting module 320 is further configured to: merge and connect the data corresponding to the multiple preset attributes when there are multiple preset attributes, so as to obtain merged and connected data corresponding to the multiple preset attributes; and sort the multiple one-dimensional arrays according to the merged and connected data corresponding to the multiple preset attributes in the two-dimensional array, so as to obtain the sorted two-dimensional array.

[0102] In one embodiment, the sorting module 320 is further configured to: sort the two-dimensional arrays corresponding to the multiple forms to be compared by multiple threads when there are multiple forms to be compared.

[0103] In one embodiment, the above-mentioned apparatus 300 for comparing form data further includes an array merging module, which is used to merge multiple sorted two-dimensional arrays when there are multiple forms to be compared, to obtain a merged two-dimensional array; and to compare the merged two-dimensional array to realize data comparison of multiple forms to be compared.

[0104] In one embodiment, the array merging module is further configured to: sort the first one-dimensional array in a plurality of sorted two-dimensional arrays to obtain a target one-dimensional array, wherein the target one-dimensional array is the first one-dimensional array in the merged two-dimensional array; remove the target one-dimensional array from the corresponding sorted two-dimensional array to obtain a plurality of reordered two-dimensional arrays; and sort the first one-dimensional array in the plurality of reordered two-dimensional arrays until all one-dimensional arrays in the plurality of sorted two-dimensional arrays have been sorted to obtain a merged two-dimensional array.

[0105] In one embodiment, the data acquisition module 310 is further configured to: acquire data from multiple non-interoperable systems using robotic process automation technology to obtain two-dimensional arrays corresponding to the forms to be compared.

[0106] This invention also provides a machine-readable storage medium storing a program or instructions that, when executed by a processor, implement the method for comparing form data according to the above embodiments.

[0107] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0108] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0109] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.

[0110] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0111] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0112] Memory may include non-persistent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.

[0113] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.

[0114] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0115] The above are merely embodiments of this application and are not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.

Claims

1. A method for comparing form data, characterized in that, The method includes: Obtain the two-dimensional arrays corresponding to the forms to be compared, wherein the two-dimensional arrays include multiple one-dimensional arrays, and each one-dimensional array includes data of multiple attributes; Based on the data corresponding to the preset attributes in the two-dimensional array, the multiple one-dimensional arrays are sorted to obtain the sorted two-dimensional array; The sorted two-dimensional array is compared to achieve data comparison of the form to be compared.

2. The method according to claim 1, characterized in that, The step of sorting multiple one-dimensional arrays according to data corresponding to preset attributes in the two-dimensional array to obtain a sorted two-dimensional array includes: Determine the data type corresponding to the preset attribute, wherein the data type includes numeric type and character type; Select the sorting method corresponding to the data type; Based on the sorting method and the data corresponding to the preset attributes in the two-dimensional array, the multiple one-dimensional arrays are sorted to obtain the sorted two-dimensional array.

3. The method according to claim 2, characterized in that, The step of selecting the sorting method corresponding to the data type includes: If the data type is the numeric type, the sorting method is determined to be direct sorting; When the data type is the character type, the sorting process is determined to be to first convert the data of the preset attribute into a hash value, and then sort the hash value.

4. The method according to claim 1, characterized in that, The step of sorting multiple one-dimensional arrays according to data corresponding to preset attributes in the two-dimensional array to obtain a sorted two-dimensional array includes: When there are multiple preset attributes, the data corresponding to the multiple preset attributes are merged and connected to obtain merged and connected data corresponding to the multiple preset attributes. Based on the merged connection data corresponding to multiple preset attributes in the two-dimensional array, the multiple one-dimensional arrays are sorted to obtain a sorted two-dimensional array.

5. The method according to claim 1, characterized in that, The method further includes: When there are multiple forms to be compared, multiple threads are used to sort the two-dimensional arrays corresponding to the multiple forms to be compared.

6. The method according to claim 1, characterized in that, The method further includes: When there are multiple forms to be compared, the multiple sorted two-dimensional arrays are merged to obtain a merged two-dimensional array; The merged two-dimensional array is compared to achieve data comparison of multiple forms to be compared.

7. The method according to claim 6, characterized in that, The step of merging multiple sorted two-dimensional arrays to obtain a merged two-dimensional array includes: The first one-dimensional array in the multiple sorted two-dimensional arrays is sorted to obtain a target one-dimensional array, wherein the target one-dimensional array is the first one-dimensional array in the merged two-dimensional array; Remove the target one-dimensional array from the corresponding sorted two-dimensional array to obtain multiple reordered two-dimensional arrays; The first one-dimensional array in each of the multiple reordered two-dimensional arrays is sorted until all the one-dimensional arrays in the multiple reordered two-dimensional arrays are sorted, so as to obtain the merged two-dimensional array.

8. The method according to claim 1, characterized in that The step of obtaining the two-dimensional arrays corresponding to the forms to be compared includes: Robotic process automation (RPA) technology is used to acquire data from multiple non-interoperable systems to obtain two-dimensional arrays corresponding to the forms to be compared.

9. A processor, characterized in that, It is configured to perform the method for comparing form data as described in any one of claims 1 to 8.

10. A machine-readable storage medium on which a program or instructions are stored, characterized in that, When the program or the instructions are executed by the processor, they implement the method for comparing form data according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • Service contrast method and service contrast system

    CN103020117A

  • Rapid identification method for image information

    CN107392212A