Processing method and device for configuration table of application program and storage medium

By introducing global identifiers (GUIDs) into the configuration table for unique identification of rows and columns, and performing differential comparisons and merging based on this, the difficulty of comparison caused by changes in row and column names during configuration table merging is solved, and efficient and automated configuration table merging is achieved.

CN120295683APending Publication Date: 2025-07-11TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410045632.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-01-10
Publication Date
2025-07-11

AI Technical Summary

Technical Problem

The prior art has difficulty in comparing due to changes in row or column names during the configuration table merging process, resulting in low merging efficiency, and manual modification is often required, which affects efficiency.

Method used

Introduce a global identifier (GUID) to uniquely identify rows and columns of the configuration table, and compare rows and columns based on the global identifiers, obtain differential configuration data, merge them based on the comparison results, and provide conflict handling controls to resolve conflicts automatically or manually.

Benefits of technology

It improves the automation and efficiency of configuration table merging, reduces the need for manual intervention, and improves the quality of configuration table merging in multi-person collaborative development.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120295683A_ABST
    Figure CN120295683A_ABST
Patent Text Reader

Abstract

The invention provides a processing method and device for a configuration table of an application program and a storage medium. The method comprises the steps that a reference configuration table of a preset format of an application program is obtained, a first configuration table and a second configuration table are obtained, the preset format is used for distributing different global identifiers for different rows and columns, and the first configuration table and the second configuration table are obtained through editing on the basis of the reference configuration table; comparing the reference configuration table with configuration data in the first configuration table and configuration data in the second configuration table based on rows and columns through the global identifier to obtain first difference configuration data between the first configuration table and the reference configuration table and second difference configuration data between the second configuration table and the reference configuration table; comparing the first difference configuration data with the second difference configuration data to obtain a comparison result; and combining the first configuration table and the second configuration table according to a comparison result to obtain an integrated configuration table. Through the method, the efficiency of combining the configuration tables can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular, to a method, device, and storage medium for processing a configuration table of an application program. Background Art

[0002] In related technologies, tables are used to store configuration data required during the development and design of application programs. Such tables are called configuration tables. Inevitably, multiple versions of configuration tables are generated during the development and design process, and these different versions of configuration tables need to be merged. The configuration table merging solution in related technologies is to parse the configuration table file, extract the valid data information therein, and perform the merging. Its main idea is to read the values of each cell in each worksheet of the configuration table, then calculate the differences between the new version configuration table and the old version configuration table respectively through row and column matching, and then merge them according to certain strategies and rules.

[0003] Generally, such merging solutions use the first row and the first column in the worksheet as identifiers, use the text in each cell in the first row as column names, and use the text in each cell in the first column as row names, so as to perform row and column matching. However, in the case where the row (column) names change between the two versions in the configuration table merging solution based on row (column) text matching, due to difficult comparison, unexpected results often occur during the merging. For example, it cannot be merged due to conflicts, and manual intervention is often required, which affects the merging efficiency. Summary of the Invention

[0004] Embodiments of this application provide a method, device, equipment, and computer-readable storage medium for processing a configuration table of an application program, which can improve the efficiency of merging configuration tables.

[0005] The technical solution of the embodiments of this application is implemented as follows:

[0006] Embodiments of this application provide a method for processing a configuration table of an application program, and the method includes:

[0007] Obtain a reference configuration table in a preset format of the application program, and obtain a first configuration table and a second configuration table, where the preset format is used to assign different global identifiers to different rows and columns, and both the first configuration table and the second configuration table are edited based on the reference configuration table;

[0008] Based on the global identifiers, compare the configuration data in the reference configuration table with the configuration data in the first configuration table and the second configuration table respectively based on rows and columns, to obtain first difference configuration data between the first configuration table and the reference configuration table and second difference configuration data between the second configuration table and the reference configuration table;

[0009] Comparing the first difference configuration data with the second difference configuration data to obtain a comparison result;

[0010] The first configuration table and the second configuration table are merged according to the comparison result to obtain an integrated configuration table.

[0011] In the above solution, the manual conflict resolution processing condition includes any one of the following:

[0012] Receiving a trigger operation for merging the version configuration table as much as possible in the preset format;

[0013] receiving a trigger operation for a preset batch conflict handling procedure;

[0014] A trigger operation is received for merging as many versions of the configuration table as possible for the native format.

[0015] In the above solution, the step of obtaining the first configuration table and the second configuration table includes:

[0016] In response to an editing operation on the reference configuration table through the first terminal device, editing and forming the first configuration table based on the reference configuration table;

[0017] In response to an update operation of synchronizing the first configuration table to the server, the first configuration table is synchronized to the server, and the second configuration table edited by the second terminal device based on the reference configuration table is acquired from the server.

[0018] In the above scheme, the first configuration table and the second configuration table are different versions edited based on the reference configuration table. When obtaining the reference configuration table of the preset format of the application and obtaining the first configuration table and the second configuration table, the method further includes:

[0019] Display the name of the configuration table to be merged and the comparison control in the merge tool;

[0020] In response to a trigger operation on the comparison control, the process proceeds to a step of comparing the reference configuration table with the configuration data in the first configuration table and the second configuration table on a row and column basis.

[0021] In the above scheme, the method further comprises:

[0022] In response to the comparison of the rows and columns being no difference, displaying a realignment control;

[0023] In response to a comparison result of the row and the column being different, displaying a line-joining conflict prediction control and a drawing difference control;

[0024] In response to the triggering operation on the conflict prediction control, entering into the step of performing the comparison between the first difference configuration data and the second difference configuration data to obtain a comparison result;

[0025] In response to a trigger operation on the drawing difference control, a difference preview result is displayed.

[0026] In the above solution, after the step of executing the comparison between the first difference configuration data and the second difference configuration data to obtain a comparison result, the method further includes:

[0027] In response to the comparison result indicating no conflict, displaying the merge status as merged without conflict, and displaying a control for confirming the execution of the merge;

[0028] In response to the triggering operation of executing the merge control for the confirmation, the first configuration table and the second configuration table are merged according to the comparison result indicating that there is no conflict, to obtain an integrated configuration table;

[0029] In response to executing the triggering operation of the closing control for the confirmation, the method further includes:

[0030] Display draw merge diff controls;

[0031] In response to a trigger operation for drawing a merged difference control, a merged difference is displayed, wherein the merged difference includes the first difference configuration data between the first configuration table and the baseline configuration table and the second difference configuration data between the second configuration table and the baseline configuration table.

[0032] In the above solution, after the step of performing the comparison between the first difference configuration data and the second difference configuration data to obtain a comparison result, the method further includes:

[0033] In response to the comparison result indicating a conflict, displaying a merge status indicating a predicted conflict and displaying a control for starting to resolve the conflict;

[0034] In response to a trigger operation for the start conflict resolution control, determining that the first difference configuration data is in a first region corresponding to the reference configuration table, and determining that the second difference configuration data is in a second region corresponding to the reference configuration table;

[0035] Synchronize the difference configuration data corresponding to the non-overlapping area between the first area and the second area to the reference configuration table to obtain the merged version configuration table in the preset format as much as possible;

[0036] Displaying a conflict resolution interface, wherein the conflict resolution interface includes rows and columns of the conflict area, conflict details, and a conflict handling control, wherein the conflict handling control includes a new operation sub-control, an overwrite operation sub-control, and an ignore operation sub-control for performing conflict handling operations on cells corresponding to the conflict area;

[0037] In response to a trigger operation on the new addition operation subcontrol, adding a cell in the conflict area of ​​the merge-as-possible version configuration table in the preset format;

[0038] In response to a trigger operation on the overwrite operation subcontrol, synchronizing the first difference configuration data to a cell in the conflicting area of ​​the merge-as-possible-as-possible version configuration table corresponding to the preset format;

[0039] In response to a trigger operation on the ignore operation subcontrol, cells of the conflicting region in the merge-as-possible-as-possible version configuration table in the preset format corresponding to the first difference configuration data are ignored.

[0040] The present application embodiment provides a device for processing a configuration table of an application program, the device comprising:

[0041] an acquisition module, used to acquire a reference configuration table of a preset format of the application, and to acquire a first configuration table and a second configuration table, wherein the preset format is used to assign different global identifiers to different rows and columns, and the first configuration table and the second configuration table are both edited based on the reference configuration table;

[0042] A processing module, configured to compare the reference configuration table with the configuration data in the first configuration table and the second configuration table based on rows and columns through the global identifier, to obtain first difference configuration data between the first configuration table and the reference configuration table and second difference configuration data between the second configuration table and the reference configuration table;

[0043] The processing module is further used to compare the first difference configuration data with the second difference configuration data to obtain a comparison result;

[0044] A merging module is used to merge the first configuration table and the second configuration table according to the comparison result to obtain an integrated configuration table.

[0045] An embodiment of the present application provides an electronic device, the electronic device comprising:

[0046] A memory for storing computer executable instructions;

[0047] The processor is used to implement the method for processing the configuration table of the application provided in the embodiment of the present application when executing the computer executable instructions stored in the memory.

[0048] An embodiment of the present application provides a computer-readable storage medium storing a computer program or computer-executable instructions, which are used to implement the processing method of the configuration table of the application program provided by the embodiment of the present application when executed by a processor.

[0049] An embodiment of the present application provides a computer program product, including a computer program or computer-executable instructions, which implement the processing method of the configuration table of the application program provided by the embodiment of the present application when the computer program or computer-executable instructions are executed by a processor.

[0050] The embodiment of the present application has the following beneficial effects:

[0051] Based on the existing native format configuration table, a reference configuration table in a preset format is added to carry configuration data, and a global identifier is introduced to obtain the ability to continuously trace the rows and columns of all configuration tables, so as to obtain the differential configuration data between different versions of the configuration table. The comparison result indicating whether there is a conflict when the configuration tables are merged is obtained through the differential configuration data, and then the configuration tables are merged according to the comparison result, improving the efficiency of merging the configuration tables. BRIEF DESCRIPTION OF THE DRAWINGS

[0052] Figure 1 is a schematic structural diagram of the configuration table processing system architecture of the application program provided by the embodiment of the present application;

[0053] Figure 2 is a schematic structural diagram of the terminal device provided by the embodiment of the present application;

[0054] Figure 3A is a first flowchart of the configuration table processing method of the application program provided by the embodiment of the present application;

[0055] Figure 3B is a second flowchart of the configuration table processing method of the application program provided by the embodiment of the present application;

[0056] Figure 3C is a third flowchart of the configuration table processing method of the application program provided by the embodiment of the present application;

[0057] Figure 3D is a fourth flowchart of the configuration table processing method of the application program provided by the embodiment of the present application;

[0058] Figure 3E is a fifth flowchart of the configuration table processing method of the application program provided by the embodiment of the present application;

[0059] Figure 3F is a sixth flowchart of the configuration table processing method of the application program provided by the embodiment of the present application;

[0060] Figure 3G It is the seventh process schematic diagram of the configuration table processing method of the application program provided by the embodiment of the present application;

[0061] Figure 3H It is the eighth process schematic diagram of the configuration table processing method of the application program provided by the embodiment of the present application;

[0062] Figure 3I It is the ninth process schematic diagram of the configuration table processing method of the application program provided by the embodiment of the present application;

[0063] Figure 3J It is the tenth process schematic diagram of the configuration table processing method of the application program provided by the embodiment of the present application;

[0064] Figure 3K It is the eleventh process schematic diagram of the configuration table processing method of the application program provided by the embodiment of the present application;

[0065] Figure 3L It is the twelfth process schematic diagram of the configuration table processing method of the application program provided by the embodiment of the present application;

[0066] Figure 3M It is the thirteenth process schematic diagram of the configuration table processing method of the application program provided by the embodiment of the present application;

[0067] Figure 3N It is the fourteenth process schematic diagram of the configuration table processing method of the application program provided by the embodiment of the present application;

[0068] Figure 3O It is the fifteenth process schematic diagram of the configuration table processing method of the application program provided by the embodiment of the present application;

[0069] Figure 3P It is the sixteenth process schematic diagram of the configuration table processing method of the application program provided by the embodiment of the present application;

[0070] Figure 3Q It is the seventeenth process schematic diagram of the configuration table processing method of the application program provided by the embodiment of the present application;

[0071] Figure 3R It is the eighteenth process schematic diagram of the configuration table processing method of the application program provided by the embodiment of the present application;

[0072] Figure 3S It is the nineteenth process schematic diagram of the configuration table processing method of the application program provided by the embodiment of the present application;

[0073] Figure 3T It is the twentieth process schematic diagram of the configuration table processing method of the application program provided by the embodiment of the present application;

[0074] Figure 3U It is the 21st process schematic diagram of the configuration table processing method of the application program provided by the embodiment of the present application;

[0075] Figure 3V It is the 22nd process schematic diagram of the configuration table processing method of the application program provided by the embodiment of the present application;

[0076] Figure 4 It is the process schematic diagram of the configuration table processing method of the game application program provided by the embodiment of the present application;

[0077] Figure 5A It is the process schematic diagram of opening the configuration table provided by the embodiment of the present application;

[0078] Figure 5B It is the process schematic diagram of saving the configuration table provided by the embodiment of the present application;

[0079] Figure 6 It is the schematic diagram of the conflict merging principle provided by the embodiment of the present application;

[0080] Figure 7 It is the schematic diagram of the principle of visually resolving conflicts provided by the embodiment of the present application;

[0081] Figure 8A It is the first process schematic diagram of the working principle of the automatic merging program provided by the embodiment of the present application;

[0082] Figure 8B It is the second process schematic diagram of the working principle of the automatic merging program provided by the embodiment of the present application;

[0083] Figure 9A It is the schematic diagram of the operation interface of the wire merging tool provided by the embodiment of the present application;

[0084] Figure 9B It is the schematic diagram of the conflict resolution interface of the wire merging tool provided by the embodiment of the present application;

[0085] Figure 9C It is the schematic diagram of the working process of the wire merging tool provided by the embodiment of the present application;

[0086] Figure 9D It is the schematic diagram of the beneficial effects of the wire merging tool provided by the embodiment of the present application. Detailed implementation manners

[0087] In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings. The described embodiments should not be regarded as limitations of the present application. All other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the scope of protection of the present application.

[0088] In the following description, reference is made to "some embodiments", which describe a subset of all possible embodiments. However, it is understood that "some embodiments" may be the same subset or different subsets of all possible embodiments, and may be combined with each other without conflict.

[0089] In the following description, the terms "first", "second", and "third" are only used to distinguish similar objects and do not represent a specific order for the objects. It is understood that "first", "second", and "third" can be interchanged in a specific order or sequence when allowed, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein.

[0090] In the embodiments of the present application, the term "module" or "unit" refers to a computer program with a predetermined function or a part of a computer program, which works together with other related parts to achieve a predetermined goal, and can be implemented in whole or in part by using software, hardware (such as a processing circuit or a memory), or a combination thereof. Similarly, one processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be a part of an overall module or unit that includes the function of that module or unit.

[0091] Unless otherwise defined, all technical and scientific terms used in the embodiments of the present application have the same meaning as commonly understood by those skilled in the art to which the present application belongs. The terms used in the embodiments of the present application are only for the purpose of describing the embodiments of the present application and are not intended to limit the present application.

[0092] Before further elaborating on the embodiments of the present application, the nouns and terms involved in the embodiments of the present application are described, and the nouns and terms involved in the embodiments of the present application are subject to the following explanations.

[0093] 1) Configuration table: Refers to a record of the configuration data relied on during the application design process in a certain file format, usually in tabular form.

[0094] 2) Version control system: A system that records changes in the content of one or several files for future reference to specific version revisions and backtracking. Among them, any type of file can be version-controlled.

[0095] 3) Conflict: Refers to an abnormal file state thrown by the version control system after multiple developers modify the same configuration table during the development of a collaborative application. The developer who submits the modification later needs to manually handle the conflict before submitting the new version file.

[0096] 4) Merge: Refers to an operation performed by the developer manually or with the assistance of an external program after a conflict occurs.

[0097] 5) Three Way Merge refers to a concept of merging, which is a method of respectively calculating the difference configuration data between two new versions and a common baseline version, and then trying to merge the two difference configuration data.

[0098] 6) Difference configuration data (Diff), the difference between two different versions of the configuration table.

[0099] 7) The baseline configuration table, also known as the Base version, refers to the old version during difference comparison, or the configuration table of the common baseline version during three-way merge.

[0100] 8) The second configuration table, also known as the Theirs version, refers to the new version configuration table that does not belong to the operator, that is, the second development object, in the two new versions during the three-way merge.

[0101] 9) The first configuration table, also known as the Mine version: refers to the new version configuration table corresponding to the first development object in the two new versions belonging to the operator during the three-way merge.

[0102] 10) The integrated configuration table, also known as the Merge version, refers to the final merged version configuration table during a three-way merge.

[0103] 11) Visual difference comparison refers to displaying the difference configuration data in a developer interface for developers to browse.

[0104] 12) Visual conflict resolution refers to displaying conflicts in a developer interface so that developers can browse conflicting items, query conflict causes and manually resolve conflicts.

[0105] 13) Automatic merge refers to the operation in which, after a conflict occurs, some external program automatically detects the conflict and executes a merge program to resolve the abnormal state of the file.

[0106] 14) Merging refers to the operation of submitting and merging certain configuration tables of a branch in a version control system into another branch.

[0107] 15) Source branch refers to the source branch to which the content that needs to be merged belongs during the merging process.

[0108] 16) Target branch: refers to the target branch into which the merged content needs to be merged during the merge process

[0109] 17) Native format refers to the format of Excel files generated by editing with Microsoft Office Excel spreadsheet software.

[0110] 18) Workbook refers to an Excel file.

[0111] 19) Worksheet refers to a tab in an Excel file.

[0112] 20) (Visual Studio Tools for Office, VSTO) is an extension development tool provided by Microsoft Office for developers.

[0113] 21) Mergeable Excel refers to the abbreviation of the method for processing the configuration table of the application provided in the embodiments of the present application.

[0114] 22) Preset format, also known as the dtxml format, refers to the special storage file format designed in the embodiments of the present application.

[0115] 23) The first sub - table, also known as the formal worksheet, refers to the worksheet in the configuration table that stores the data required by the application.

[0116] 24) The second sub - table, also known as the secondary worksheet, refers to the worksheet in the configuration table that is only used to store some memo data, pictures or information and does not store the data required by the application.

[0117] 25) Formal column refers to the column in the worksheet of the configuration table that stores the data required by the application.

[0118] 26) Memo column refers to the column in the worksheet of the configuration table that is only used to store some memo data or information and does not store the data required by the application.

[0119] 27) Mergeable Excel Add - in is an Excel add - in program that matches the method for processing the configuration table of the application provided in the embodiments of the present application.

[0120] 28) Memo file (Memo Excel) refers to the Excel file in which all the second sub - tables are packaged and stored, and this file is called Memo Excel.

[0121] 29) MSTableBook refers to a class name in the MergeableExcel add - in program. When the dtxml file is loaded into memory, an instance of the MSTableBook class is created, which records the content of all formal worksheets in a workbook.

[0122] 30) MSTableSheet refers to a class name in the MergeableExcel add-in program. Multiple MSTableSheets are stored under MSTableBook, which records all the content of an official worksheet.

[0123] 31) A globally unique identifier, also known as a Globally Unique Identifier (GUID), is a 128-bit binary digital identifier. Each GUID is unique and can maintain uniqueness across different computer systems and applications.

[0124] 32) R1C1 refers to a formula format in Excel that uses relative row and column offsets to identify the location of a referenced cell.

[0125] 33) Extensible Markup Language (XML) is a markup language used to mark electronic documents to make them structured. XML can be used to mark data, define data types, and allows developers to define their own markup languages. It is a data carrier method.

[0126] 34) Hiding a worksheet is a function in Excel spreadsheets that allows developers to hide a certain worksheet from the visible part of the workbook, making it invisible to developers under normal circumstances, thus facilitating data protection or organization and marking special purposes.

[0127] Excel is a common configuration editing tool in application design, but it has the disadvantages of being non-comparable, non-mergable, difficult to align, and having a high probability of conflicts in multi-person collaboration. For example, during the development of an application with multi-person collaboration, after multiple developers modify the same Excel configuration table file, a merge conflict of the configuration table will occur. The configuration table merge solution of related technologies is to parse the configuration table file, extract the valid data information therein, and perform the merge. Its main idea is to read the values of each cell in each worksheet of the configuration table, then calculate the differences between the new version and the old version of the configuration table through row and column matching, and then merge them according to certain strategies and rules. Usually, such a merge solution will use the first row and the first column in the worksheet as identifiers, use the text in each cell of the first row as column names, and use the text in each cell of the first column as row names to perform row and column matching. However, when the row (column) names change between the two versions in the configuration table merge solution based on row and column text matching, unexpected results often occur during the merge, so there is a problem of low configuration table merge efficiency.

[0128] The main technical problems of related technologies include:

[0129] 1. When the row or column names change between two versions of the configuration table, the row or column matching fails. The renamed row or column is regarded as deleted and a new row or column is added, which often causes unexpected results in the merging.

[0130] 2. When there are two identical row or column names, the uniqueness is lost and the row or column matching fails. The merging program cannot recognize the correspondence between rows or columns in the old and new versions, resulting in a merging that does not meet expectations.

[0131] 3. In the case of adding or deleting rows and columns, the accuracy of the formula links cannot be guaranteed in the merging result, which may cause formula breakage or incorrect pointing.

[0132] 4. There is a lot of interference information in the Excel file, such as merged cells, cell styles, pictures, embedded attachments, etc., which often has an unexpected impact on the merging program.

[0133] 5. If there are formulas using random numbers in the Excel file, their calculation results may be different in each version file, which greatly increases the probability of conflicts.

[0134] To solve the above problems, the embodiments of the present application provide a method, device, equipment, computer program product and computer-readable storage medium for processing the configuration table of an application program. Through the present application, the efficiency of merging the configuration table can be improved.

[0135] The electronic device provided by the embodiments of the present application can be implemented as various types of user terminals such as laptops, tablets, desktop computers, set-top boxes, mobile devices (e.g., mobile phones, portable music players, personal digital assistants, dedicated messaging devices, portable game devices), smartphones, smart speakers, smart watches, smart TVs, vehicle terminals, etc., or can also be implemented as a server. Below, an exemplary application when the electronic device is implemented as a terminal will be described.

[0136] See Figure 1 , Figure 1 is a schematic structural diagram of the configuration table processing system architecture provided by the embodiments of the present application. Exemplarily, Figure 1 involves a server 100, a terminal device 200 and a network 300. The terminal device 200 is connected to the server 100 through the network 300, where the network 300 can be a wide area network or a local area network, or a combination of the two.

[0137] In some embodiments, the configuration table processing system of the application provided by the embodiments of the present application can be implemented by the cooperation of a server and a terminal device. For example, in response to an update request from the terminal device 200 to synchronize the first configuration table to the server 100 (the server of the version control system), the second configuration table is obtained from the server 100. The first configuration table and the second configuration table are both edited based on the benchmark configuration table. Then, the terminal device 200 merges the first configuration table and the second configuration table through the configuration table processing method of the application provided by the embodiments of the present application to obtain the merged integrated configuration table.

[0138] In some embodiments, the terminal device or the server can implement the configuration table processing method of the application provided by the embodiments of the present application by running various computer-executable instructions or computer programs. For example, the computer-executable instructions can be commands at the microprogram level, machine instructions, or software instructions. The computer program can be a native program or software module in the operating system; it can be a local (Native) application (APP, Application), that is, a program that needs to be installed in the operating system to run, such as a game application; it can also be a game applet embedded in any APP, that is, a program that only needs to be downloaded to the browser environment to run; it can also be an extensible and customizable software component (such as a Mergeable Excel add-in). In short, the above computer-executable instructions can be instructions in any form, and the above computer programs can be application programs, modules, or add-ins in any form.

[0139] In some embodiments, the server 100 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers. It can also be a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery network (Content Delivery Network, CDN), and big data and artificial intelligence platforms. Among them, the cloud service can be an interactive processing service for the terminal device to call.

[0140] In some embodiments, multiple servers can form a blockchain network, and the server 100 is a node on the blockchain network. There can be an information connection between each node in the blockchain network, and information can be transmitted between nodes through the above information connection. Among them, the data related to the configuration table processing method of the application provided by the embodiments of the present application can be saved on the blockchain.

[0141] The embodiments of this application can be implemented with the help of Artificial Intelligence (AI) technology. Artificial Intelligence is the theory, method, technology, and application system that uses digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use knowledge to obtain the best results. In other words, Artificial Intelligence is a comprehensive technology in computer science that attempts to understand the essence of intelligence and produce a new intelligent machine that can react in a way similar to human intelligence. Artificial Intelligence also studies the design principles and implementation methods of various intelligent machines to enable machines to have the functions of perception, reasoning, and decision-making.

[0142] Artificial Intelligence technology is an interdisciplinary subject with a wide range of fields, including both hardware-level and software-level technologies. The basic technologies of Artificial Intelligence generally include sensors, dedicated Artificial Intelligence chips, cloud computing, distributed storage, big data processing technology, pre-trained model technology, operation / interaction systems, mechatronics, etc. Among them, the pre-trained model, also known as the large model or the basic model, can be widely applied to downstream tasks in various directions of Artificial Intelligence after fine-tuning. The software technologies of Artificial Intelligence mainly include several major directions such as computer vision technology, speech processing technology, natural language processing technology, and machine learning / deep learning.

[0143] In some embodiments, the configuration table processing system of the application program provided by the embodiments of this application can be applied to the design of in-vehicle application programs. Through an intelligent wiring tool that integrates the processing method of the configuration table of the application program provided by the embodiments of this application, it can identify the voice commands of developers to merge the cooperation tables, such as opening, closing, and conflict prediction operations on relevant configuration tables according to the voice commands, and at the same time display information such as the name of the configuration table, the current merging status, and the corresponding operation controls on the operation interface of the wiring tool, so as to intelligently process the configuration table in the design process of in-vehicle application programs.

[0144] Taking the above-mentioned terminal device 200 for processing the configuration table of the application program as an example, see Figure 2 , Figure 2 is the structural schematic diagram of the terminal device provided by the embodiments of this application. Figure 2 The terminal device 200 shown includes: at least one processor 210, a memory 250, at least one network interface 220, and a developer interface 230. Each component in the terminal device 200 is coupled together through a bus system 240. It can be understood that the bus system 240 is used to realize the connection and communication between these components. In addition to the data bus, the bus system 240 also includes a power bus, a control bus, and a status signal bus. However, for the sake of clear illustration, in Figure 2 all kinds of buses are labeled as the bus system 240.

[0145] The processor 210 may be an integrated circuit chip with signal processing capabilities, such as a general-purpose processor, a digital signal processor (DSP), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. Among them, the general-purpose processor may be a microprocessor or any conventional processor, etc.

[0146] The developer interface 230 includes one or more output devices 231 that enable the presentation of media content, including one or more speakers and / or one or more visual display screens. The developer interface 230 also includes one or more input devices 232, including developer interface components that assist developers in input, such as keyboards, mice, microphones, touchscreen displays, cameras, other input buttons, and controls.

[0147] The memory 250 may be removable, non-removable, or a combination thereof. Exemplary hardware devices include solid-state memory, hard disk drives, optical disc drives, etc. The memory 250 optionally includes one or more storage devices that are physically remote from the processor 210.

[0148] The memory 250 includes volatile memory or non-volatile memory, and may also include both volatile and non-volatile memory. The non-volatile memory may be read-only memory (ROM), and the volatile memory may be random access memory (RAM). The memory 250 described in the embodiments of the present application is intended to include any suitable type of memory.

[0149] In some embodiments, the memory 250 is capable of storing data to support various operations. Examples of such data include programs, modules, and data structures, or subsets or supersets thereof, which are described below by way of example.

[0150] The operating system 251 includes system programs for processing various basic system services and performing hardware-related tasks, such as the framework layer, the core library layer, the driver layer, etc., for implementing various basic services and processing hardware-based tasks;

[0151] The network communication module 252 is used to reach other electronic devices via one or more (wired or wireless) network interfaces 220. Exemplary network interfaces 220 include: Bluetooth, Wi-Fi (Wireless Fidelity), and Universal Serial Bus (USB), etc.;

[0152] A presentation module 253 for enabling presentation of information (e.g., a developer interface for operating a peripheral device and displaying content and information) via one or more output devices 231 associated with the developer interface 230 (e.g., a display screen, a speaker, etc.);

[0153] An input processing module 254 for detecting and translating one or more developer inputs or interactions from one of one or more input devices 232.

[0154] In some embodiments, the device provided by the embodiments of the present application may be implemented in software. Figure 2 A processing device 255 showing a configuration table of an application program stored in the memory 250, which may be software in the form of a program and a plug-in, etc., including the following software modules: an acquisition module 2551, a processing module 2552, and a merging module 2553. These modules are logical, so they can be arbitrarily combined or further split according to the functions to be implemented. The functions of each module will be described below.

[0155] Next, in combination with the exemplary applications and implementations of the terminal device provided by the embodiments of the present application, taking the terminal device as the execution subject, the processing method of the configuration table of the application program provided by the embodiments of the present application will be described. Refer to Figure 3A , Figure 3A which is the first flowchart of the processing method of the configuration table of the application program provided by the embodiments of the present application, and will be described in combination with Figure 3A the steps shown.

[0156] In step 101, a reference configuration table in a preset format of the application program is acquired, and a first configuration table and a second configuration table are acquired, where the preset format is used to assign different global identifiers to different rows and columns, and both the first configuration table and the second configuration table are edited based on the reference configuration table.

[0157] In some embodiments, a reference configuration table in a preset format (dtxml format) of the application program (e.g., a game application program) is acquired, and a first configuration table and a second configuration table are acquired from the server of the version control system. The first configuration table is formed by the first development object editing based on the reference configuration table, and the second configuration table is formed by the second development object editing based on the reference configuration table. The reference configuration table in the preset format is obtained by converting the reference configuration table in the native format. Refer to Figure 3B , Figure 3A shown in step 101 of acquiring the reference configuration table in the preset format of the application program, which can be implemented through the following steps 1011 to 1012, and will be specifically described below.

[0158] In step 1011, obtain the reference configuration table in the native format of the application.

[0159] In some embodiments, the reference configuration table in the native format refers to an Excel configuration table file of the common reference version generated by developers through a table editing software (such as Microsoft Office Excel spreadsheet software) during the development process of the application.

[0160] In step 1012, obtain the information of each row and column of the reference configuration table in the native format, write the information of each row and column into an Extensible Markup Language file according to a preset organization form, and assign different global identifiers to each row and column in the Extensible Markup Language file to form a reference configuration table in a preset format.

[0161] In some embodiments, obtain the information of each row and column of the reference configuration table in the native format, write the information of each row and column into an Extensible Markup Language (XML) file according to a preset organization form (such as the organization form of "table → tab → column definition, row data → cell") to convert it into an MS TableBook class instance, and assign different global identifiers (Globally Unique Identifier, GUID) to each row and column in the Extensible Markup Language file to form a reference configuration table in a preset format, where GUID is a digital identifier with a binary length of 128 bits, and each GUID is unique, and it can maintain uniqueness between different computer systems and applications. For example, GUID can be generated by using built-in functions of programming languages (such as C++) or using command-line tools (such as the guidgen command on Windows systems), etc.

[0162] Through step 1012, GUID is introduced, solving the technical problems in Technical Problem 1 and Technical Problem 2 in the above text that when the row or column name changes between two versions of the configuration table, or when there are two identical row or column names, the uniqueness is lost and the row or column matching fails, achieving the beneficial effect of improving the continuous traceability ability of rows or columns, so as to perform row or column matching between different versions.

[0163] In some embodiments, the reference configuration table in the native format includes a first sub-table, where the first sub-table is used to store the data required in the application. Refer to Figure 3C , Figure 3B shown in step 1012, it can be implemented through the following steps 10121 to 10122, and the following is a specific description.

[0164] In step 10121, obtain the information of each row and column of the first sub-table, write the information of each row and column of the first sub-table into an Extensible Markup Language file in a preset organization form, and assign different global identifiers to each row and column of the first sub-table in the Extensible Markup Language file to form the first sub-table in a preset format.

[0165] In some embodiments, obtain the information of each row and column of the first sub-table in native format, write the data information of each row and column into an Extensible Markup Language (XML) file in a preset organization form (such as the organization form of "table → tab → column definition, row data → cell"), and assign different Global Unique Identifiers (GUIDs) to each row and column in the Extensible Markup Language file to form the first sub-table in a preset format.

[0166] In some embodiments, when assigning different global identifiers to each row and column of the first sub-table in the Extensible Markup Language file to form the first sub-table in a preset format, in response to the existence of a formula in the first sub-table in the preset format, convert the formula into a preset reference style R1C1. In the R1C1 format, both rows and columns are represented by numbers, R represents rows, C represents columns, and the reference of a cell is determined by the numbers following R and C to determine its position. By virtue of the feature that the R1C1 formula is insensitive to the absolute positions of rows and columns, during the automatic merging process, the accuracy of the position of the cell pointed to by the formula can be guaranteed, and the problem that the accuracy of the formula link cannot be guaranteed in the case of row and column addition and deletion in technical problem 3 above is solved.

[0167] In some embodiments, after assigning different global identifiers to each row and column of the first sub-table in the Extensible Markup Language file to form the first sub-table in a preset format, a specific mark (such as a hidden worksheet) can also be added to the native format reference configuration table, where the specific mark is used to indicate that the native format reference configuration table has been converted into the reference configuration table in the preset format.

[0168] In step 10122, save the first sub-table in the preset format to a preset format folder in the directory where the reference configuration table is located.

[0169] In some embodiments, save the first sub-table in the preset format (dtxml format) to a preset format folder (dtxml folder) in the directory where the reference configuration table is located. See Figure 3D , Figure 3C shown in step 10122, which can be implemented through the following steps 101221 to 101222. The following is a specific description.

[0170] In step 101221, in response to the save operation for the benchmark configuration table in the native format, query the specific tags of the benchmark configuration table in the native format.

[0171] In some embodiments, it can be integrated with VSTO through the programming interface of Excel (such as the COM interface) to check the specific tags (such as hidden worksheets) of each worksheet in the benchmark configuration table in the native format.

[0172] In step 101222, in response to querying the specific tags, perform a first data preprocessing operation on the first sub-table in the preset format, and save the first sub-table in the preset format after the first data preprocessing operation to the preset format folder in the directory where the benchmark configuration table in the native format is located.

[0173] In some embodiments, the first data preprocessing operation can be, for example, configuration check, editor information storage, editing time storage, removing useless rows and columns, etc. Among them, these preprocessing operations can be custom-developed according to requirements, and the embodiments of the present application do not limit them.

[0174] Through steps 101221 to 101222, it is realized to store the data of the configuration table through dtxml, and remove the redundant information and interference information in the configuration table, improving the reading and writing efficiency of the development language for the configuration table, thereby solving the problem that there are many interference information such as merged cells, cell styles, pictures, embedded attachments, etc. in the Excel file in technical problem 4 above, which often causes unexpected impacts on the merging program.

[0175] In some embodiments, the benchmark configuration table in the native format further includes a second sub-table, and the second sub-table is used to store at least one of the memo data, pictures, and note information in the application. After assigning different global identifiers to each row and column of the first sub-table in the extensible markup language file to form the first sub-table in the preset format, see Figure 3E , it is also possible to implement obtaining the information of each row and column of the second sub-table and saving the information of each row and column of the second sub-table to the memo folder in the directory where the benchmark configuration table is located in the native format through the following steps 101223 to 101224. The following is a specific description.

[0176] In step 101223, in response to the save operation for the benchmark configuration table in the native format, query the specific tags of the benchmark configuration table in the native format.

[0177] Here, refer to the description in step 101221 above.

[0178] In step 101224, perform a second data preprocessing operation on the second sub-table, obtain the information of each row and column of the second sub-table, and save the information of each row and column of the second sub-table in the original format to the memo folder in the directory where the reference configuration table is located.

[0179] In some embodiments, the second data preprocessing operation may be, for example, configuration check, editor information storage, editing time storage, removing useless rows and columns, etc. Export and save the information of each row and column of the second sub-table in the original format (MemoExcel) to the memo folder in the directory where the reference configuration table is located.

[0180] Through step 1012, the configuration table (Excel) in the original format is stored with data in a preset format, the data is saved in a dtxml file independent of Excel, and a global identifier is introduced, achieving the beneficial effect of improving the continuous traceability ability of rows (columns). Through the second data processing operation, redundant information in the original Excel configuration table file is removed, and the file content of the configuration table can be customized, for example, storing some additional information in the dtxml file (essentially an xml text file), such as row and column colors, row heights, column widths, data authors, modification times, etc. The specific file content can be determined according to actual needs.

[0181] In some embodiments, refer to Figure 3F , Figure 3A The obtaining of the reference configuration table in the preset format shown in step 101 can be implemented through the following steps 1013 to 1014, which will be specifically described below.

[0182] In step 1013, query for a specific marker from the reference configuration table in the original format.

[0183] Here, refer to the description of step 101221 above.

[0184] In step 1014, in response to querying for a specific marker, obtain the first sub-table in the preset format from the preset format folder in the directory where the reference configuration table in the original format is located, and obtain the second sub-table from the memo folder in the directory where the reference configuration table in the original format is located.

[0185] In some embodiments, in response to querying for a specific marker (such as a hidden worksheet), obtain the first sub-table in the preset format with the same name from the preset format folder (dtxml folder) in the directory where the reference configuration table in the original format is located and load it into memory as the main worksheet, and obtain the Excel file with the same name, that is, the second sub-table, from the memo folder (Memo folder) in the directory where the reference configuration table in the original format is located and load it into memory as the secondary worksheet.

[0186] In some other embodiments, querying for a specific tag from the benchmark configuration table in the native format in step 1013 can be implemented in the following manner: in response to an open operation on the benchmark configuration table in the native format, query for a specific tag (such as a hidden worksheet) from the benchmark configuration table in the native format. Refer to Figure 3G , after performing Figure 3F the steps 1014 shown, the following steps 1015 to 1016 can also be performed as a response to the open operation on the benchmark configuration table in the native format. The following is a specific description.

[0187] In step 1015, a third data preprocessing operation is performed on the first sub-table and the second sub-table in the preset format.

[0188] In some embodiments, the third data preprocessing can be, for example, operations such as performing configuration data checks, sorting, removing useless rows and columns, etc. Among them, these preprocessing operations can be custom-developed according to requirements, and the embodiments of the present application do not limit them.

[0189] In step 1016, each cell in the first sub-table and the second sub-table after the data preprocessing operation is rewritten into the benchmark configuration table in the native format, and a style adjustment operation is performed. The benchmark configuration table in the native format after the style adjustment operation is displayed.

[0190] In some embodiments, each cell in the first sub-table and the second sub-table after the data preprocessing is rewritten into the benchmark configuration table in the native format, and a style adjustment operation is performed (such as uniformly coloring the cells, uniformly adjusting the display format, etc.). The benchmark configuration table in the native format after the style adjustment is displayed.

[0191] Through step 1016, it is realized that after reading the configuration table in the dtxml format, data can be preprocessed (such as cleaning, deduplication, etc.) and then the benchmark configuration table in the native format can be displayed in Excel, achieving the beneficial effect of customizing the file reading logic.

[0192] In some embodiments, refer to Figure 5A , Figure 5A: is a flow chart of opening a configuration table provided by an embodiment of the present application, and the steps described above are: in response to an opening operation for a benchmark configuration table in a native format, querying a specific tag from the benchmark configuration table in a native format; in response to querying the specific tag, obtaining a first subtable in a preset format from a preset format folder in a directory where the benchmark configuration table in the native format is located, and obtaining a second subtable from a memo folder in a directory where the benchmark configuration table in the native format is located; performing a third data preprocessing operation on the first subtable and the second subtable in the preset format; rewriting each cell in the first subtable and the second subtable after data preprocessing into the benchmark configuration table in the native format, and performing a style adjustment operation to display the benchmark configuration table in the native format after the style adjustment, which can be referred to Figure 5A For explanation, the following is an explanation.

[0193] First, before opening the configuration table in the native format (other versions of the configuration table in the native format can also be opened here, and the opening operation is common to all configuration tables in the native format), the terminal device responds to the developer's installation operation and installs the MergeableExcel plug-in that is compatible with the configuration table processing method of the application provided in the embodiment of the present application. Next, in response to the opening operation of the configuration table in the native format, the MergeableExcel plug-in queries a specific tag (for example, a hidden worksheet). Next, in response to the MergeableExcel plug-in querying the specific tag, the first sub-table in the preset format is obtained from the preset format folder (dtxml folder) in the directory where the benchmark configuration table in the native format is located and loaded into the memory (for example, the first sub-table in the preset format is loaded as the MSTableBook class), and the second sub-table (Memo folder) is obtained from the memo folder (Memo folder) in the directory where the benchmark configuration table in the native format is located. Excel) and load it into memory, then perform data preprocessing on the first sub-table and the second sub-table in the preset format (see step 1015 above), and finally, rewrite each cell in the first sub-table and the second sub-table after the data preprocessing into the benchmark configuration table in the native format, perform style adjustment, and display the benchmark configuration table in the native format after the style adjustment (see step 1016 above).

[0194] In some embodiments, see Figure 3H , Figure 3A The acquisition of the first configuration table and the second configuration table in step 101 shown can be implemented through the following steps 1018 to 1019, which are described in detail below.

[0195] In step 1018, in response to an editing operation on the reference configuration table through the first terminal device, a first configuration table is edited based on the reference configuration table.

[0196] In some embodiments, in response to an editing operation of a first development object on a reference configuration table through a first terminal device, a first configuration table is edited and formed based on the reference configuration table. The first development object obtains the reference configuration table in a preset format through steps 1015 and 1017 above, and performs an editing operation on the reference configuration table in the native format after style adjustment.

[0197] In step 1019, in response to an update operation of synchronizing the first configuration table to the server, the first configuration table is synchronized to the server, and a second configuration table edited and formed based on the reference configuration table by a second terminal device is obtained from the server.

[0198] In some embodiments, in response to an update operation of synchronizing the first configuration table to the server, the first terminal device synchronizes the first configuration table to the server (the server of the version control system), and obtains a second configuration table edited and formed based on the reference configuration table by a second development object through the second terminal device from the server.

[0199] In some embodiments, obtaining the second configuration table edited and formed based on the reference configuration table by a second development object through the second terminal device from the server includes: obtaining a configuration table directory through a preset script program (such as a hook program), and obtaining the second configuration table corresponding to the reference configuration table through the configuration table directory.

[0200] Continue to refer to Figure 3A , in step 102, through a global identifier, the configuration data in the reference configuration table is compared with that in the first configuration table and the second configuration table respectively based on rows and columns, and first differential configuration data between the first configuration table and the reference configuration table and second differential configuration data between the second configuration table and the reference configuration table are obtained.

[0201] In some embodiments, the reference configuration table is the most original historical version of the first configuration table and the second configuration table. Refer to Figure 3I , Figure 3A shown in step 102, which can be implemented through the following steps 1021 to 1026. Among them, steps 1021 to 1023 are executed for the first configuration table, and steps 1024 to 1026 are executed for the second configuration table. The following is a specific description.

[0202] In step 1021, at least one version of the first configuration table in a preset format is obtained.

[0203] In some embodiments, the first configuration table edited by the first development object based on the reference configuration table is obtained. Among them, when there are multiple versions of the first configuration table, one latest version of the first configuration table corresponding to the first development object can be selected, or multiple modified versions of the first configuration table saved locally by the first development object can be selected.

[0204] In step 1022, use the previous historical version of the first configuration table as the first comparison reference table, and compare the first configuration table and the first comparison reference table based on rows and columns through a global identifier to obtain at least one first difference increment.

[0205] In some embodiments, the first configuration table and the comparison reference table can be traversed in a nested loop manner. For example, traverse each row and each column of the first configuration table according to the global identifier, obtain the value of the current cell during each iteration and compare it with the value of the corresponding cell in the comparison reference table. If the values of the two cells are different, record the global identifier and the values of the two cells (for example, use a dictionary or a list to store these differences), and finally output all the differences to obtain the first difference increment. Here, only the comparison of whether the values of two cells are the same is demonstrated as an example, and corresponding comparison logics can also be added to perform comparisons of formats or other attributes.

[0206] In step 1023, use at least one first difference increment as the first difference configuration data between the first configuration table and the reference configuration table. Wherein, when the number of at least one first difference increment is multiple, stack the multiple first difference increments to form the first difference configuration data.

[0207] In some embodiments, when there are multiple versions of the first configuration table and the number of first difference increments is multiple, respectively obtain the differences between each version and the previous version, and then stack the multiple first difference increments to form the first difference configuration data.

[0208] In step 1024, obtain at least one historical version of the second configuration table in a preset format.

[0209] In some embodiments, obtain the second configuration table obtained by editing the second development object based on the reference configuration table. Wherein, when there are multiple versions of the second configuration table, select multiple modified versions of the second configuration table corresponding to the second development object.

[0210] In step 1025, use the previous historical version of the second configuration table as the second comparison reference table, and perform row- and column-based comparison through the global identifier to obtain at least one second difference increment between the second configuration table and the second comparison reference table.

[0211] In some embodiments, assume that there are 4 versions of the second configuration table, namely A, B, C, and D, in the order from old to new, where D is the latest version and A is the reference version. Here, at least one difference increment refers to the difference increment between A and B, the difference increment between B and C, and the difference between C and D, that is, respectively obtain the differences between each version and the previous version.

[0212] In step 1026, at least one second difference increment is superimposed as the second difference configuration data between the second configuration table and the reference configuration table.

[0213] Continuing with the above example, the superimposing of at least one second difference increment here is to superimpose the difference increment between A and B, the difference increment between B and C, and the difference between C and D to obtain the second difference configuration data between the second configuration table and the reference configuration table.

[0214] Continue to refer to Figure 3A , in step 103, the first difference configuration data is compared with the second difference configuration data to obtain a comparison result.

[0215] In some embodiments, refer to Figure 3J , Figure 3A The step 103 shown can be implemented through the following steps 1031 to 1032, which will be specifically described below.

[0216] In step 1031, in response to the regions corresponding to the first difference configuration data and the second difference configuration data in the reference configuration table being completely non-overlapping, a conflict-free comparison result is generated.

[0217] In some embodiments, refer to Figure 6 , Figure 6 is a schematic diagram of the conflict merging principle provided by the embodiments of the present application, corresponding to Figure 6 Case 1 (the two difference configuration data are completely non-overlapping). When the regions corresponding to the first difference configuration data and the second difference configuration data in the reference configuration table are completely non-overlapping, the comparison result is conflict-free at this time.

[0218] In some embodiments, when the modifications represented by the first difference configuration data and the second difference configuration data in the reference configuration table are modifications of irrelevant tabs, additions or deletions of irrelevant rows (columns), or additions or deletions of irrelevant cells, it indicates that the first development object (corresponding to Figure 6 UserA in Figure 6 ) and the second development object (corresponding to Figure 6 UserB in

[0219] In some embodiments, when the first difference configuration data represents that the first development object has modified the row name of a certain row, and the second difference configuration data represents that the second development object has modified other contents of this row, due to the introduction of GUID, the row name degenerates into a cell, so the regions corresponding to the first difference configuration data and the second difference configuration data in the reference configuration table are completely non-overlapping, and a conflict-free comparison result is generated.

[0220] In some embodiments, when the first differential configuration data indicates that the order of several rows (columns) of the first development object is changed, and the second differential configuration data indicates that the content of these rows (columns) is modified by the second development object, although both are modifying these rows (columns), the modification operation methods represented by the differential data of the two are independent of each other. Therefore, the regions corresponding to the first differential configuration data and the second differential configuration data in the reference configuration table do not overlap at all, generating a conflict-free comparison result. In the subsequent configuration table merging operation, the order of the rows (columns) will be automatically changed first, and then the content of these rows (columns) will be modified.

[0221] In some embodiments, when the first differential configuration data and the second differential configuration data represent the modification of a certain cell in the reference configuration table, but the modified values are exactly the same, a conflict-free comparison result is generated. In the subsequent configuration table merging operation, the data of any one of the development objects will be automatically retained.

[0222] In step 1032, in response to the regions corresponding to the first differential configuration data and the second differential configuration data in the reference configuration table overlapping, a conflicting comparison result is generated.

[0223] In some embodiments, referring to Figure 6 , Figure 6 is a schematic diagram of the conflict merging principle provided by the embodiments of the present application, corresponding to Figure 6 case 2 (the two differential configuration data completely overlap) and case 3 (the two differential configuration data partially overlap). When the regions corresponding to the first differential configuration data and the second differential configuration data in the reference configuration table overlap, the comparison result is conflicting at this time.

[0224] In some embodiments, the embodiments of the present application adopt a comparison strategy of focusing on the major and neglecting the minor. For example, when a random number formula is used in the reference configuration table, the data generated by each version edited and modified on the reference version is different. Therefore, when comparing the randomly generated data such as the random number formula between configuration tables, a conflict-free comparison result is generated.

[0225] In some embodiments, when the first differential configuration data indicates that the first development object deletes a certain column, and the second differential configuration data indicates that the second development object modifies the content of this column, the regions corresponding to the first differential configuration data and the second differential configuration data in the reference configuration table overlap, generating a conflicting comparison result. Since deleting a column is regarded as a relatively major operation, and modifying the content of a column is a relatively minor operation, in the subsequent configuration table merging operation, this column will ultimately be automatically deleted.

[0226] In some embodiments, when the first differential configuration data and the second differential configuration data represent modifications to the same cell in the remarks column or the addition of a remarks column with the same name, the first differential configuration data and the second differential configuration data indicate that the corresponding regions in the baseline configuration table overlap, generating a conflicting comparison result. Since the data in the remarks column does not affect the logic of the application program, the remarks column is regarded as secondary data. Therefore, in subsequent configuration table merging operations, the modifications made by the later submitter will be automatically ignored, and the modifications made by the earlier submitter will be retained.

[0227] In some embodiments, when the first differential configuration data and the second differential configuration data represent that the first development object and the second development object simultaneously modify a certain cell in the baseline configuration table, but the modified values are different, the first differential configuration data and the second differential configuration data indicate that the corresponding regions in the baseline configuration table overlap, generating a conflicting comparison result. This conflict cannot be automatically merged in subsequent configuration table merging operations and requires manual modification to resolve the conflict.

[0228] In some embodiments, when the first differential configuration data and the second differential configuration data represent that the first development object and the second development object simultaneously add a formal column with the same name, the first differential configuration data and the second differential configuration data indicate that the corresponding regions in the baseline configuration table overlap, generating a conflicting comparison result. This conflict cannot be automatically merged in subsequent configuration table merging operations and requires manual modification to resolve the conflict.

[0229] In some embodiments, when the first differential configuration data represents that the first development object modifies the data in a certain row of the baseline configuration table, and the second differential configuration data represents that the second development object deletes this row, the first differential configuration data and the second differential configuration data indicate that the corresponding regions in the baseline configuration table overlap, generating a conflicting comparison result. This conflict cannot be automatically merged in subsequent configuration table merging operations and requires manual modification to resolve the conflict.

[0230] Through the comparison strategies in steps 1031 and 1032 above, the probability of conflict generation is reduced, and the problem in Technical Problem 5 in the above text is solved, that is, when a random number formula is used in an Excel file, its calculation results may be different in each version file, which will greatly increase the probability of conflict.

[0231] Continue to refer to Figure 3A , in step 104, the first configuration table and the second configuration table are merged according to the comparison result to obtain an integrated configuration table.

[0232] In some embodiments, refer to Figure 3K , Figure 3A The steps 104 shown can be implemented through the following steps 1041 to 1042, which will be specifically described below.

[0233] In step 1041, in response to the comparison result indicating that there is no conflict between the first differential configuration data and the second differential configuration data, the first differential configuration data and the second differential configuration data are written into each cell corresponding to the reference configuration table, and an integrated configuration table in a preset format is obtained.

[0234] See Figure 6 , when the comparison result indicates that there is no conflict between the first differential configuration data and the second differential configuration data (corresponding to Figure 6 Case 1 in), the first differential configuration data and the second differential configuration data are written into each cell corresponding to the reference configuration table, and an integrated configuration table in a preset format is obtained.

[0235] In step 1042, the data of the integrated configuration table in the preset format is obtained cell by cell and drawn in the native format, and an integrated configuration table in the native format is obtained.

[0236] As an example, the data of the integrated configuration table in the preset format is obtained cell by cell (for example, by parsing the data of the MSTableBook class instance through VSTO), a new Excel table is created, and the parsed data is written into Excel to obtain an integrated configuration table in the native format.

[0237] In some embodiments, see Figure 3L , Figure 3A Step 104 shown in can be implemented through the following steps 1043 to 1045, which are specifically described below.

[0238] In step 1043, in response to the comparison result indicating that there is a conflict between the first differential configuration data and the second differential configuration data, an integrated configuration table in the preset format as merged as possible and a conflict reference file in the native format are obtained, where the conflict reference file is used to prompt the conflict area between the first differential configuration data and the second differential configuration data.

[0239] See Figure 6 , when the comparison result indicates that there is a conflict between the first differential configuration data and the second differential configuration data (corresponding to Figure 6 Case 2 and Case 3 in), an integrated configuration table in the preset format as merged as possible and a conflict reference file in the native format are obtained.

[0240] See Figure 7 , Figure 7 is a schematic diagram of the principle of visually resolving conflicts provided by the embodiments of the present application. When the comparison result indicates that there is a conflict between the first differential configuration data and the second differential configuration data (corresponding to Figure 7The overlapping regions), an as - merged - as - possible version configuration table in a preset format and a conflict reference file in the native format with conflict coloring marks (representing the overlapping regions) are generated by automatic merging. The conflict reference file is used as a reference basis for manual conflict resolution processing, and conflict resolution processing is performed on the as - merged - as - possible version configuration table in the native format to obtain an integrated configuration table.

[0241] In some embodiments, referring to Figure 3M , Figure 3L Step 1043 shown, can be implemented by the following steps 10431 to 10434, which are specifically described below.

[0242] In step 10431, determine the first region in the reference configuration table corresponding to the first differential configuration data.

[0243] In some embodiments, referring to the description of step 1022 above, obtain the global identifiers corresponding to each cell in the first differential configuration data, so as to determine the first region in the reference configuration table corresponding to the first differential configuration data through the global identifiers.

[0244] In step 10432, determine the second region in the reference configuration table corresponding to the second differential configuration data.

[0245] The implementation of step 10432 is similar to that of step 10431, the difference being the differential configuration data being processed.

[0246] In step 10433, synchronize the differential configuration data corresponding to the non - overlapping regions between the first region and the second region to the reference configuration table to obtain an as - merged - as - possible version configuration table in a preset format.

[0247] In some embodiments, referring to Figure 6 (corresponding to Figure 6 case 3 in), synchronize the differential configuration data corresponding to the non - overlapping regions between the first region and the second region to the reference configuration table to obtain an as - merged - as - possible version configuration table in a preset format.

[0248] In step 10434, generate a conflict reference file in the native format through the differential configuration data corresponding to the overlapping regions between the first region and the second region.

[0249] In some embodiments, extract the differential configuration data corresponding to the overlapping regions between the first region and the second region, write the corresponding global identifiers and differential data into an Excel file to generate a conflict reference file in the native format, referring to Figure 7The conflict reference file can be expressed as "[Merge][.merge-right.r405345-.merge-left.r403186]SessionConfig@SessionTable.xlsm", for example. The conflict reference file contains information such as the location of the conflict area and the corresponding configuration table name.

[0250] Continue to see Figure 3L In step 1044, a merged version configuration table in a preset format is obtained cell by cell according to the native format to obtain a merged version configuration table in the native format.

[0251] In some embodiments, data of a merged version configuration table in a preset format is obtained cell by cell (for example, data in the MSTableB ook class is parsed by VSTO), a new Excel table is created, and the parsed data is written into Excel to obtain a merged version configuration table in a native format.

[0252] In step 1045, conflict resolution is performed based on the states of the native format merged version configuration tables and the conflict reference files to obtain an integrated configuration table.

[0253] In some embodiments, in response to the native format merge-as-possible version configuration table being opened and in response to an editing operation on the native format merge-as-possible version configuration table, data of cells in the conflicting region are updated to form a native format integrated configuration table.

[0254] In some embodiments, when the native format merged version configuration table is in an open state, the first development object edits the native format merged version configuration table according to the conflict reference file, updates the data of the cells in the conflict area, thereby making a decision on the conflict, and forming an integrated configuration table in the native format after resolving the conflict.

[0255] In some embodiments, see Figure 3N , in response to the native format, the merged version configuration table is closed, Figure 3L The step 1045 shown can be implemented by following the steps 10454 to 10455, which are described in detail below.

[0256] In step 10454, in response to the merge-as-possible-as-native-format version configuration table being in a closed state and satisfying the manual conflict resolution processing conditions, a prompt to start manual conflict resolution is displayed.

[0257] In some embodiments, see Figure 3O , Figure 3NThe shown step 10454 can be implemented by any one of the following steps 104541 to 104543, which will be specifically described below.

[0258] In step 104541, a trigger operation for the best-effort merge version configuration table in a preset format is received.

[0259] In some embodiments, a trigger operation for the best-effort merge version configuration table in a preset format (such as double-clicking the best-effort merge version configuration table in a preset format) is received.

[0260] In step 104542, a trigger operation for a preset batch conflict handler is received.

[0261] In some embodiments, in response to the operation of the conflict resolution batch handler, a conflict scan is performed on the entire dtxml folder. When a file (the best-effort merge version configuration table in a preset format) that requires manual conflict resolution is encountered, a process is triggered to display a prompt to start manual conflict resolution for subsequent modification to resolve the conflict.

[0262] In step 104543, a trigger operation for the best-effort merge version configuration table in the native format is received.

[0263] In some embodiments, a trigger operation for the best-effort merge version configuration table in the native format (such as double-clicking the best-effort merge version configuration table in the native format) is received.

[0264] Continue to refer to Figure 3N , in step 10455, in response to an edit operation on the best-effort merge version configuration table in the native format, the data in the cells of the conflict area is updated to form an integrated configuration table in the native format.

[0265] In some embodiments, refer to Figure 3P , in Figure 3L shown in step 1045, after the data in the cells of the conflict area is updated to form an integrated configuration table in the native format in response to the best-effort merge version configuration table in the native format being in an open state and in response to an edit operation on the best-effort merge version configuration table in the native format, the following steps 10451 to 10453 can also be performed, which will be specifically described below.

[0266] In step 10451, in response to the integrated configuration table in the native format having unsaved modifications, the integrated configuration table in the native format is saved as a backup integrated configuration table.

[0267] In some embodiments, when there are unsaved modifications to the integration configuration table in the native format, the integration configuration table in the native format is saved as a backup integration configuration table (Backup Excel). For example, when the Mergeable Excel plug-in recognizes that the integration configuration table in the native format has changed and there are unsaved modifications when it is open, the current integration configuration table in the native format is saved as a backup integration configuration table (Backup Excel).

[0268] In step 10452, the backup integration configuration table is kept in an open state, and the integration configuration table in the native format in the open state is displayed.

[0269] In some embodiments, after saving a copy of the current native format integration configuration table as a backup integration configuration table, the backup integration configuration table is automatically kept open and the open native format integration configuration table is displayed (or the native format integration configuration table is reopened).

[0270] In step 10453, in response to the editing operation on the native format merge-as-possible version configuration table, the unsaved changes in the backup integration configuration table are synchronized to the native format integration configuration table.

[0271] In some embodiments, in response to the first development object editing the native format merge-as-possible version configuration table according to the conflicting reference file, the unsaved changes in the backup integration configuration table are synchronized to the native format integration configuration table to avoid data loss.

[0272] In other embodiments, see Figure 3Q , Figure 3E The shown method of saving the first sub-table in a preset format to a preset format folder in the directory where the benchmark configuration table in the native format is located, and saving the information of each row and column of the second sub-table in the native format to a memo folder in the directory where the benchmark configuration table is located, can also be achieved by following the steps 101225 to 101227, which are described in detail below.

[0273] In step 101225, in response to a save operation on the benchmark configuration table in the native format, a first sub-table in a preset format is obtained.

[0274] In some embodiments, in response to a save operation for a baseline configuration table in a native format, information of each row and column of a first sub-table is obtained, information of each row and column of the first sub-table is written into an extensible markup language file according to a preset organizational form, and a different global identifier is assigned to each row and column of the first sub-table in the extensible markup language file to form a first sub-table in a preset format.

[0275] Through step 101225, the information of each row and column of the first sub-table is written into an Extensible Markup Language file in a preset organizational form to form a first sub-table in a preset format, achieving the beneficial effect of customizing the file writing logic.

[0276] As an example, refer to Figure 5B , Figure 5B which is a schematic flowchart of the process for saving a configuration table provided by an embodiment of the present application. When a first development object opens a configuration table in native format, it can save the configuration table through the Mergeable Excel plug-in. Before performing the save operation of the configuration table, the MergeableExcel plug-in compatible with the method for processing the configuration table of the application provided by the embodiment of the present application can be installed. When the first object edits and modifies the baseline configuration table in native format and saves the modified baseline configuration table, the Mergeable Excel plug-in recognizes the save operation of the configuration table, obtains the information of each row and column of the first sub-table, writes the information of each row and column of the first sub-table into an Extensible Markup Language file in a preset organizational form, and assigns different global identifiers to each row and column of the first sub-table in the Extensible Markup Language file to form a first sub-table in a preset format. Here, the first sub-table is the modified version of the first development object. Among them, when the first development object adds a row (column) based on the baseline configuration table, the MergeableExcel plug-in can automatically write a new GUID number into a special mark (hidden cells or comments in a hidden worksheet) of the baseline configuration table in native format. When exporting from the native format to a preset format file (corresponding to writing the information of each row and column of the first sub-table into an Extensible Markup Language file in a preset organizational form), the GUID will also be written into the dtxml file, so as to achieve the purpose of persistently saving the GUID.

[0277] In step 101226, a data post-processing operation is performed on the first sub-table in the preset format.

[0278] In some embodiments, the data post-processing operation can be, for example, configuration check, comparison and verification with the baseline version, storage of editor information, storage of editing time, elimination of useless rows and columns, etc.

[0279] In step 101227, the first sub-table in the preset format after the data post-processing operation is saved to a preset format folder in the directory where the baseline configuration table in native format is located, and the information of each row and column of the second sub-table is obtained. The information of each row and column of the second sub-table is saved in the memo folder in the directory where the baseline configuration table is located in native format.

[0280] Continuing with the above example, in response to performing a data post - processing operation on the first sub - table in the preset format modified for the first development object, save the first sub - table in the preset format to the preset format folder (dtxml folder) in the directory where the baseline configuration table in the native format is located, and obtain the information of each row and column of the second sub - table, and save the information of each row and column of the second sub - table to the memo folder (Memo folder) in the directory where the baseline configuration table is located in the native format.

[0281] In some embodiments, referring to Figure 3R , when performing Figure 3A the step 101 shown, the following steps 105 to 106 can also be performed, which will be specifically described below.

[0282] In step 105, display the name of the configuration table to be merged and the comparison control in the line - combining tool.

[0283] In some embodiments, since during the development of an application, when performing a line - combining operation, configuration tables corresponding to the design contents of multiple different applications need to be merged. To improve the line - combining efficiency, a supporting line - combining tool is provided based on the method for processing the configuration target of the application provided in the embodiments of the present application. Referring to Figure 9A , Figure 9A is a schematic diagram of the operation interface of the line - combining tool provided in the embodiments of the present application. Developers can select several version numbers in the source branch version control repository (for example, multiple versions submitted by different developers), or unsubmitted modifications in the local source branch (for example, the modified versions of the developer in the local area) as the line - combining content. After the developer makes a choice between the two, the line - combining tool will display a list of all modified configuration tables for him. Here, the choice between the two means: 1) Select several historical versions on the version control system, and the line - combining tool will list all the modified tables included in these versions. 2) Select the unsubmitted modifications in the local area, and the line - combining tool will list the tables of the unsubmitted modifications in the local area. As Figure 9A shown, during the line - combining process, there are multiple merge - processing operations for multiple different configuration tables. For the convenience of description, taking the merge process of one configuration table (corresponding to the merge of the first configuration table and the second configuration table in the above) as an example in combination with the examples of steps 101 to 104 above, the process of the line - combining tool will not be repeated below.

[0284] In some embodiments, referring to Figure 9A , when obtaining the baseline configuration table in the preset format of the application and obtaining the first configuration table and the second configuration table, display the name of the configuration table and the comparison control (corresponding to the Figure 9A comparison difference control in

[0285] In step 106, in response to a trigger operation on the comparison control, it proceeds to the step of comparing the configuration data in the reference configuration table with the configuration data in the first configuration table and the second configuration table respectively based on rows and columns.

[0286] Here, refer to the description of step 102 above.

[0287] In some embodiments, refer to Figure 3S , in Figure 3R After the steps shown in step 106, the following steps 107 to 110 can also be executed, which are specifically described below.

[0288] In step 107, in response to the comparison result of rows and columns being identical, a re-comparison control is displayed.

[0289] In some embodiments, refer to Figure 9A , when the comparison result of rows and columns between the configuration tables is identical (corresponding to the identical state in Figure 9A ), a re-comparison control is displayed.

[0290] In step 108, in response to the comparison result of rows and columns being different, a line conflict prediction control and a drawing difference control are displayed.

[0291] In some embodiments, refer to Figure 9A , when the comparison result of rows and columns between the configuration tables is different (corresponding to the different state in Figure 9A ), a line conflict prediction control and a drawing difference control (corresponding to the Drawing Diff control in Figure 9A ) are displayed.

[0292] In step 109, in response to a trigger operation on the conflict prediction control, it proceeds to the step of comparing the first difference configuration data with the second difference configuration data to obtain a comparison result.

[0293] In some embodiments, when the conflict prediction control is clicked, it proceeds to the step of comparing the first difference configuration data with the second difference configuration data to obtain a comparison result (corresponding to step 103 above).

[0294] In step 110, in response to a trigger operation on the drawing difference control, a difference preview result is displayed.

[0295] In some embodiments, the difference preview result displays the cell information of the areas in the reference configuration table corresponding to the first difference data and the second difference data respectively, or colors and marks the cells in the areas corresponding to the difference configuration data, making the areas corresponding to the difference configuration data more prominent.

[0296] In some embodiments, refer to Figure 3T, after entering the step of comparing the first difference configuration data with the second difference configuration data to obtain a comparison result, the following steps 111 to 112 can also be executed. The following is a specific description.

[0297] In step 111, in response to the comparison result indicating no conflict, display the merge status as merged without conflict, and display a confirmation execution line merging control.

[0298] In some embodiments, refer to Figure 9A , when the comparison result indicates no conflict, display the merge status as merged without conflict, and display a confirmation execution line merging control.

[0299] In step 112, in response to a trigger operation on the confirmation execution line merging control, according to the comparison result indicating no conflict, merge the first configuration table and the second configuration table to obtain an integrated configuration table.

[0300] In some embodiments, refer to Figure 9A , when clicking the confirmation execution line merging control, merge the first configuration table and the second configuration table to obtain an integrated configuration table (corresponding to steps 1041 to 1042 above).

[0301] In some embodiments, refer to Figure 3U , in Figure 3T , when responding to a trigger operation on the confirmation execution line merging control in step 112 shown, the following steps 113 to 114 can also be executed. The following is a specific description.

[0302] In step 113, display a drawn-in difference control.

[0303] In some embodiments, refer to Figure 9A , when the line merging status is merged without conflict, display a drawn-in difference control (corresponding to Figure 9A the drawn-in Diff in).

[0304] In step 114, in response to a trigger operation on the drawn-in difference control, display the drawn-in difference, where the drawn-in difference includes the first difference configuration data between the first configuration table and the reference configuration table and the second difference configuration data between the second configuration table and the reference configuration table.

[0305] In some embodiments, when clicking the drawn-in difference control, draw and display the drawn-in difference, where the drawn-in difference includes the first difference configuration data between the first configuration table and the reference configuration table and the second difference configuration data between the second configuration table and the reference configuration table. The drawn-in difference can be displayed by forming a table with the cells of the difference data or by describing the difference in text. The embodiments of the present application do not limit the display method of the drawn-in difference.

[0306] In some embodiments, referring to Figure 3V , after transferring to the step of comparing the first differential configuration data with the second differential configuration data to obtain a comparison result, the following steps 115 to 121 may further be executed, which are specifically described below.

[0307] In step 115, in response to the comparison result indicating a conflict, display a merge state indicating a predicted conflict, and display a start conflict resolution control.

[0308] In some embodiments, referring to Figure 9A , when the comparison result indicates a conflict, display a merge state indicating a predicted conflict (corresponding to the predicted conflict state in Figure 9A ), and display a start conflict resolution control.

[0309] In step 116, in response to a trigger operation on the start conflict resolution control, determine a first area corresponding to the first differential configuration data in the reference configuration table, and determine a second area corresponding to the second differential configuration data in the reference configuration table.

[0310] In some embodiments, when clicking the start conflict resolution control, determine a first area corresponding to the first differential configuration data in the reference configuration table, and determine a second area corresponding to the second differential configuration data in the reference configuration table (corresponding to steps 10461 to 10462 above).

[0311] In step 117, synchronize the differential configuration data corresponding to the non-overlapping areas between the first area and the second area to the reference configuration table to obtain a merged version configuration table in a preset format as much as possible.

[0312] Here, referring to the description of step 10463 above, synchronize the differential configuration data corresponding to the non-overlapping areas between the first area and the second area to the reference configuration table to obtain a merged version configuration table in a preset format as much as possible.

[0313] In step 118, display a conflict resolution interface, where the conflict resolution interface includes rows and columns of the conflict area, conflict details, and conflict handling controls, and the conflict handling controls include an add operation sub-control, an overwrite operation sub-control, and an ignore operation sub-control for performing conflict handling operations on the cells corresponding to the conflict area.

[0314] In some embodiments, referring to Figure 9B , Figure 9B is a schematic diagram of a conflict resolution interface of a wire combining tool provided by an embodiment of the present application. The conflict resolution interface includes rows and columns of the conflict area (corresponding to the Figure 9B in the tab, area, rows, and columns), conflict details, and conflict handling controls (corresponding to the Figure 9BThe decision operation in [it] includes all controls. The conflict handling control includes a new operation sub-control for performing conflict handling operations on the cells corresponding to the conflict area (corresponding to Figure 9B the new row control added to the target branch in [it]), an overwrite operation sub-control (corresponding to Figure 9B the control that forces this row to be overwritten onto the target branch and the modification control that forces it to be merged into this cell in [it]) and an ignore operation sub-control (corresponding to Figure 9B the modification control that does not merge this row, the control that ignores this new row, and the modification control that does not merge into this cell in [it]).

[0315] In step 119, in response to a trigger operation for the new operation sub-control, a new cell is added to the conflict area of the as-merging version configuration table in a preset format.

[0316] In some embodiments, when the new operation sub-control is clicked, a new cell is added at the corresponding position in the conflict area of the as-merging version configuration table in a preset format according to the first difference configuration data.

[0317] In step 120, in response to a trigger operation for the overwrite operation sub-control, the first difference configuration data is synchronized to the cell in the conflict area of the as-merging version configuration table in a corresponding preset format.

[0318] In some embodiments, when the overwrite operation sub-control is clicked, the data in the original cell is overwritten at the corresponding position in the conflict area of the as-merging version configuration table in a preset format according to the first difference configuration data.

[0319] In step 121, in response to a trigger operation for the ignore operation sub-control, the cell in the conflict area of the as-merging version configuration table corresponding to the first difference configuration data is ignored.

[0320] In some embodiments, when the ignore operation sub-control is clicked, the cell in the conflict area of the as-merging version configuration table corresponding to the first difference configuration data is ignored, and the corresponding difference data is ignored, that is, the previous data in the corresponding cell remains unchanged without modification.

[0321] In some embodiments, referring to Figure 9B , a clean background difference drawing process control (corresponding to Figure 9B the kill all background DiffExcel control in [it]) can also be displayed on the conflict resolution interface, which is used to clean the background difference drawing process when some difference drawings are relatively slow, and if the developer does not want to continue waiting for the drawing result; a difference reference control (corresponding to Figure 9BThe opened source branch Diff in it is used as a reference control to draw the modifications (or modification sets) of the configuration table to be incorporated based on the baseline configuration table into a differential preview result as a reference for line merging; the preview decision Diff control corresponding to Figure 9B in it is used to apply the decisions corresponding to the conflict handling controls above to the conflicts generated by the differential data and draw the corresponding integrated configuration table for previewing the result after the decision is made and before incorporation; the conflict handling end control corresponding to Figure 9B the confirmation decision completion control in it is used to save the current decision selection (corresponding to the decision selection represented by the conflict handling control), close the small window (conflict resolution interface), and return to the main window (the operation interface of the line merging tool).

[0322] Next, an exemplary application of the embodiment of the present application in the processing scenario of the configuration table of a game application program will be described.

[0323] Excel is a common configuration editing tool in game design, which has the disadvantages of being incomparable, unmergeable, difficult to merge lines, and having a high probability of conflicts in multi-person collaboration. When the row (column) names change between two versions in the configuration table merging scheme based on row-column text matching in related technologies, unexpected results often occur during merging, so there is a problem of low efficiency in merging configuration tables during the game design process.

[0324] The method for processing the configuration table of the application program provided by the embodiment of the present application is applicable to all game projects developed in multi-person collaboration that use Excel tables as data storage files, including but not limited to game projects such as first-person shooter games (FPS), shooting games (STG), action role-playing games (ARPG), massive multiplayer online role-playing games (MMORPG), and action games.

[0325] See Figure 4 , Figure 4 which is a schematic flowchart of the method for processing the configuration table of the game application program provided by the embodiment of the present application, and will be specifically described below.

[0326] In step 201, in response to a version update operation for the first configuration table, a pre-update process is performed on the version repository of the version control system through an automatic merge program.

[0327] In some embodiments, the first development object edits on the basis of the reference configuration table to obtain the first configuration table. When the first development object updates the version repository in the version control system, it will trigger the update of a pre-set hook program. The hook program will perform a pre-update process on the version repository of the version control system, that is, perform a pre-update on the directory where the dtxml file of the configuration table is located. During the pre-update, conflicts are processed through an automatic merge program (such as the Mergeable Excel add-in). During the pre-update process, some conflicts can be automatically merged, and some other conflicts need to be processed manually.

[0328] In some embodiments, referring to Figure 8A and Figure 8B , Figure 8A is the first process schematic diagram of the working principle of the automatic merge program provided by the embodiments of the present application, Figure 8B is the second process schematic diagram of the working principle of the automatic merge program provided by the embodiments of the present application, Figure 4 The step 201 shown can be implemented through the following steps 301 to 313. The following is a specific description.

[0329] In step 301, the configuration table is updated.

[0330] In some embodiments, in response to the editing operation of the first development object on the reference configuration table through the first terminal device, a first configuration table is edited and formed on the basis of the reference configuration table. The first development object obtains the reference configuration table in the preset format through the above steps 1015 and 1017, and performs an editing and modification operation on the reference configuration table in the native format after style adjustment to form the first configuration table. Here, the first configuration table is the configuration table to be updated.

[0331] In step 302, the configuration table directory and the configuration table are obtained.

[0332] In some embodiments, the configuration table directory is obtained through a preset hook program (such as the OnPreUpdateHook program), and the second configuration table corresponding to the reference configuration table is obtained through the configuration table directory. The second configuration table is edited and formed on the basis of the reference configuration table by a second development object (here referring to other development objects except the first development object, which can be multiple different development objects, not specifically referring to one development object, so there is at least one version of the second configuration table). Here, the configuration table directory traversed by the hook program is the dtxml directory where the reference configuration table is located (the preset format dtxml folder), and the dtxml folder contains the reference configuration table and at least one version of the second configuration table.

[0333] In step 303, the automatic merge program is used to update the configuration table directory.

[0334] In some embodiments, through an automatic merging program, using a global identifier, the configuration data in the reference configuration table is compared with the configuration data in the first configuration table and the second configuration table respectively based on rows and columns, to obtain the first differential configuration data between the first configuration table and the reference configuration table and the second differential configuration data between the second configuration table and the reference configuration table. Here, refer to the description of step 102 above.

[0335] In some embodiments, the first differential configuration data is compared with the second differential configuration data to obtain a comparison result. Here, refer to the description of step 103 above. Then, it is determined whether the first configuration table and the second configuration table can be automatically merged according to the comparison result.

[0336] In some embodiments, when the modifications represented by the first differential configuration data and the second differential configuration data in the reference configuration table are modifications of irrelevant tabs, addition or deletion of irrelevant rows (columns), or addition or deletion of irrelevant cells, it indicates that there is no intersection in the modifications of the reference configuration table by the first development object and the second development object, that is, the regions corresponding to the first differential configuration data and the second differential configuration data in the reference configuration table do not overlap at all, and a conflict-free comparison result is generated, and they can be automatically merged.

[0337] In some embodiments, when the first differential configuration data represents that the first development object modifies the row name of a certain row, and the second differential configuration data represents that the second development object modifies other contents of this row, due to the introduction of the GUID, the row name degenerates into a cell, so the regions corresponding to the first differential configuration data and the second differential configuration data in the reference configuration table do not overlap at all, and a conflict-free comparison result is generated, and they can be automatically merged.

[0338] In some embodiments, when the first differential configuration data represents that the first development object changes the order of several rows (columns), and the second differential configuration data represents that the second development object modifies the contents of these rows (columns), although both are modifying these rows (columns), the modification operation methods represented by their differential data are independent of each other, so the regions corresponding to the first differential configuration data and the second differential configuration data in the reference configuration table do not overlap at all, and a conflict-free comparison result is generated. In the automatic merging operation of the configuration table, the order of the rows (columns) will be automatically changed first, and then the contents of these rows (columns) will be modified.

[0339] In some embodiments, when the first differential configuration data and the second differential configuration data represent the modification of a certain cell in the reference configuration table, but the modified values are exactly the same, a conflict-free comparison result is generated, and in the automatic merging operation of the configuration table, the data of any one of the development objects will be automatically retained.

[0340] In some embodiments, when the first differential configuration data indicates that a certain column has been deleted from the first development object, and the second differential configuration data indicates that the content of this column has been modified in the second development object, and the regions corresponding to the first differential configuration data and the second differential configuration data in the reference configuration table overlap, a conflicting comparison result is generated. Since deleting a column is regarded as a relatively significant operation, while modifying the column content is a relatively minor operation, in the automatic configuration table merging operation, this column will ultimately be automatically deleted.

[0341] In some embodiments, when the first differential configuration data and the second differential configuration data indicate modifications to the same cell in the remarks column or the addition of a remarks column with the same name, and the regions corresponding to the first differential configuration data and the second differential configuration data in the reference configuration table overlap, a conflicting comparison result is generated. Since the data in the remarks column does not affect the logic of the application program, the remarks column is regarded as secondary data. Therefore, in the automatic configuration table merging operation, the modifications made by the later submitter will be automatically ignored, and the modifications made by the earlier submitter will be retained.

[0342] In some embodiments, when the first differential configuration data and the second differential configuration data indicate that the first development object and the second development object have simultaneously modified a certain cell in the reference configuration table, but the modified values are different, and the regions corresponding to the first differential configuration data and the second differential configuration data in the reference configuration table overlap, a conflicting comparison result is generated. This conflict cannot be automatically merged in the subsequent configuration table merging operation and requires manual modification to resolve the conflict.

[0343] In some embodiments, when the first differential configuration data and the second differential configuration data indicate that the first development object and the second development object have simultaneously added a formal column with the same name, and the regions corresponding to the first differential configuration data and the second differential configuration data in the reference configuration table overlap, a conflicting comparison result is generated. This conflict cannot be automatically merged in the subsequent configuration table merging operation and requires manual modification to resolve the conflict.

[0344] In some embodiments, when the first differential configuration data indicates that the first development object has modified the data in a certain row of the reference configuration table, and the second differential configuration data indicates that the second development object has deleted this row, and the regions corresponding to the first differential configuration data and the second differential configuration data in the reference configuration table overlap, a conflicting comparison result is generated. This conflict cannot be automatically merged in the subsequent configuration table merging operation and requires manual modification to resolve the conflict.

[0345] In step 304, it is determined whether the configuration table can be fully automatically merged.

[0346] In some embodiments, when the configuration table can be fully automatically merged, the process proceeds to step 305; when the configuration table cannot be fully automatically merged, the process proceeds to step 314.

[0347] In step 305, in response to the configuration tables being able to be fully automatically merged, the automatic merge is completed.

[0348] Here, referring to the automatic merge processing example in step 303, the automatic merge of the first configuration table and the second configuration table is completed, obtaining an integrated configuration table with the merge completed.

[0349] In step 306, it is judged whether the integrated configuration table is in an open state.

[0350] In some embodiments, when the integrated configuration table is not in an open state, step 307 is executed; when the integrated configuration table is in an open state, step 308 is executed.

[0351] In step 307, in response to the integrated configuration table not being in an open state, the conflict state is eliminated.

[0352] In some embodiments, when the integrated configuration table is not in an open state, the conflict state is eliminated and the configuration table merge is completed.

[0353] In step 308, the integrated configuration table file is changed.

[0354] In some embodiments, the integrated configuration table is in an open state and the integrated configuration table file has changed (for example, operations such as data update, deletion, and format adjustment are performed on the basis of the integrated configuration table).

[0355] In step 309, it is judged whether there are unsaved modifications.

[0356] In some embodiments, when there are no unsaved modifications in the integrated configuration table, step 310 is executed; when there are unsaved modifications in the integrated configuration table, step 311 is executed.

[0357] In step 310, in response to there being no unsaved modifications in the integrated configuration table, the conflict state is eliminated.

[0358] In some embodiments, when there are no unsaved modifications in the integrated configuration table, the conflict state is eliminated and the configuration table merge is completed.

[0359] In step 311, in response to there being unsaved modifications in the integrated configuration table, the integrated configuration table is saved as a backup integrated configuration table and remains in an open state.

[0360] In some embodiments, when there are unsaved modifications in the integrated configuration table, the integrated configuration table is saved as a backup integrated configuration table and remains in an open state. Here, refer to the description in step 10481 above.

[0361] In step 312, the integrated configuration table is opened.

[0362] In some embodiments, display the integrated configuration table in the native format in the open state or reopen the integrated configuration table in the native format.

[0363] In step 313, synchronize the unsaved modifications in the backup configuration table to the integrated configuration table.

[0364] In some embodiments, synchronize the unsaved modifications in the backup integrated configuration table to the integrated configuration table in the native format to avoid data loss.

[0365] In step 202, perform conflict resolution processing on the conflicts that cannot be automatically merged during the pre-update process to obtain the integrated configuration table.

[0366] In some embodiments, refer to Figure 8B , FIG. 8 is a second flowchart showing the working principle of the automatic merging program provided by an embodiment of the present application. Figure 4 For the steps shown in step 202, they can be implemented through the following steps 314 to step 327, which will be specifically described below.

[0367] In step 314, generate an as-merged version configuration table and a conflict reference file as much as possible.

[0368] In some embodiments, determine the first area corresponding to the first differential configuration data in the reference configuration table, determine the second area corresponding to the second differential configuration data in the reference configuration table, synchronize the differential configuration data corresponding to the non-overlapping areas between the first area and the second area to the reference configuration table to obtain an as-merged version configuration table in a preset format, and generate a conflict reference file in the native format through the differential configuration data corresponding to the overlapping areas between the first area and the second area. Here, refer to the description in steps 10461 to 10464 above.

[0369] In step 315, determine whether the as-merged version configuration table is in the open state.

[0370] In some embodiments, when the as-merged version configuration table is in the open state, proceed to execute step 315. When the as-merged version configuration table is not in the open state, proceed to execute any one of steps 318-1 to 318-3.

[0371] In step 316, in response to the as-merged version configuration table being in the open state, obtain the conflict reference file in the native format.

[0372] In some embodiments, data in a configuration table of an as-merged version in a preset format is obtained cell by cell (for example, by parsing the data in the MSTableBook class through VSTO), a new Excel table is created, and the parsed data is written into Excel to obtain a configuration table of an as-merged version in a native format.

[0373] In step 317, conflict resolution processing is performed according to the conflict reference file to obtain an integrated configuration table.

[0374] In some embodiments, in response to an editing operation on the configuration table of the as-merged version in the native format, the data in the cells of the conflict area is updated to form an integrated configuration table in the native format. Here, refer to the description in step 1048 above.

[0375] In some embodiments, in response to the as-merged version configuration table not being in an open state, the processing of steps 312 to 313 above is transferred to be executed through any one of steps 318-1 to 318-3 below.

[0376] In step 318-1, in response to receiving a trigger operation for the configuration table of the as-merged version in the preset format, a prompt for starting to manually resolve conflicts is displayed in a pop-up window.

[0377] Here, refer to the description in step 104841 above.

[0378] In step 318-2, in response to receiving a trigger operation for the preset batch conflict handling program, a prompt for starting to manually resolve conflicts is displayed in a pop-up window.

[0379] Here, refer to the description in step 104842 above.

[0380] In step 318-3, in response to receiving a trigger operation for the configuration table of the as-merged version in the native format, a prompt for starting to manually resolve conflicts is displayed in a pop-up window.

[0381] Here, refer to the description in step 104843 above.

[0382] In step 319, it is determined whether the integrated configuration table is in an open state.

[0383] In some embodiments, when the integrated configuration table is not in an open state, step 320 is transferred to be executed; when the integrated configuration table is in an open state, step 321 is transferred to be executed.

[0384] In step 320, in response to the integrated configuration table not being in an open state, the conflict state is eliminated.

[0385] Here, refer to the description in step 307 above.

[0386] In step 321, integrate the changes to the configuration table file.

[0387] Here, refer to the description of step 308 above.

[0388] In step 322, determine whether there are unsaved modifications.

[0389] In some embodiments, when there are no unsaved modifications in the integrated configuration table, proceed to execute step 323; when there are unsaved modifications in the integrated configuration table, proceed to execute step 324.

[0390] In step 323, in response to there being no unsaved modifications in the integrated configuration table, eliminate the conflict status.

[0391] Here, refer to the description of step 310 above.

[0392] In step 324, in response to there being unsaved modifications in the integrated configuration table, save the integrated configuration table as a backup configuration table and keep it open.

[0393] Here, refer to the description of step 311 above.

[0394] In step 325, open the integrated configuration table.

[0395] Here, refer to the description of step 312 above.

[0396] In step 326, based on the conflict reference file, confirm the conflict decision for the backup configuration table.

[0397] In some embodiments, the developer confirms the conflict decision for the backup configuration table according to the conflict reference file and confirms the corresponding decisions for the unsaved modifications one by one.

[0398] In step 327, synchronize the unsaved modifications in the backup configuration table to the integrated configuration table.

[0399] Here, refer to the description of step 313 above.

[0400] In some embodiments, since during the game development process, when performing the line merging operation, multiple configuration tables corresponding to different game design contents will be merged. To improve the line merging efficiency, based on the processing method of the configuration table of the application provided in the embodiments of the present application, a supporting line merging tool is provided. Among them, the line merging tool can run on the developer's terminal device to implement the processing method of the application provided in the embodiments of the present application. Refer to Figure 9A , Figure 9A is a schematic diagram of the operation interface of the line merging tool provided in the embodiments of the present application. Refer to Figure 9C , Figure 9CIt is a schematic diagram of the workflow of the wire merging tool provided by the embodiments of the present application. The following will be described in combination with Figure 9C the steps shown in

[0401] In step 401, a list of configuration tables is obtained.

[0402] In some embodiments, a developer can select several version numbers in the source branch version control repository or uncommitted modifications in the local source branch as the content to be merged. After the developer makes a choice between the two, the wire merging tool will display a list of all modified configuration tables. Here, as Figure 9A shown, there are multiple merge processing operations for multiple different configuration tables during the wire merging process. For the convenience of description, taking the merge process of one configuration table (corresponding to the merge of the first configuration table and the second configuration table above) as an example in combination with the examples in steps 201 to 202 above, the workflow of the wire merging tool will be described, and it will not be repeated below. Here, refer to the description in step 105 above.

[0403] In step 402, an automatic comparison is performed.

[0404] In some embodiments, after obtaining the list of configuration tables, the name of the configuration table to be merged and the comparison control shown in Figure 9A can be displayed in the wire merging tool. In response to the triggering operation on the comparison control, it will transfer to the step of comparing the configuration data in the reference configuration table with the configuration data in the first configuration table and the second configuration table row by row and column by column in the embodiment of step 303 to obtain the first difference configuration data between the first configuration table and the reference configuration table and the second difference configuration data between the second configuration table and the reference configuration table. Here, refer to the description in step 102 above.

[0405] In step 403, the difference result is obtained.

[0406] In some embodiments, in response to the comparison result being no difference, a re-comparison control is displayed. Here, refer to the description in step 107 above.

[0407] In some embodiments, in response to the comparison result of rows and columns being different, a wire merging conflict prediction control and a difference drawing control are displayed. Here, refer to the description in step 108 above.

[0408] In step 404, a self-check before wire merging is performed according to the difference preview result.

[0409] In some embodiments, in response to the triggering operation on the difference drawing control, the difference preview result is displayed, and a self-check before wire merging is performed to confirm whether the difference meets the expectations. Here, refer to the description in step 110 above.

[0410] In step 405, it is judged whether there are modifications in the target branch.

[0411] In some embodiments, when there are modifications to the target file of the target branch, step 406 is executed. When there are no modifications to the target file of the target branch, step 407 is executed.

[0412] In step 406, it is determined whether a merge conflict is predicted.

[0413] In some embodiments, in response to the operation of predicting a merge conflict, a pop-up window is used to inform the user and a secondary confirmation is made on whether to execute the operation of predicting a merge conflict. After confirming the execution of the operation of predicting a merge conflict, step 407 is executed. In response to not performing the operation of predicting a merge conflict, step 403 is executed.

[0414] In step 407, a merge conflict is predicted.

[0415] In some embodiments, in response to the trigger operation on the conflict prediction control, the step of comparing the first difference configuration data with the second difference configuration data to obtain a comparison result (merge conflict prediction result) is executed. Here, refer to the description of step 109 above.

[0416] In step 408, in response to the merge conflict prediction result indicating no conflict.

[0417] In some embodiments, in response to the comparison result indicating no conflict, the merge status is displayed as merged without conflict, and a confirmation execution merge control is displayed. Here, refer to the description of step 111 above.

[0418] In step 409, in response to the merge conflict prediction result indicating a conflict, conflict resolution processing is performed.

[0419] In some embodiments, in response to the merge conflict prediction result indicating a conflict, the merge status indicating a predicted conflict is displayed, and a start conflict resolution control is displayed. Here, refer to the description of step 115 above.

[0420] In some embodiments, in response to the trigger operation on the start conflict resolution control, the first region corresponding to the first difference configuration data in the reference configuration table is determined, and the second region corresponding to the second difference configuration data in the reference configuration table is determined; the difference configuration data corresponding to the non-overlapping regions between the first region and the second region is synchronized to the reference configuration table to obtain a preset format of the as - merged version configuration table as much as possible. Here, refer to the description of steps 116 to 117 above.

[0421] In some embodiments, a conflict resolution interface is displayed. Refer to Figure 9B , Figure 9BIt is a schematic diagram of the conflict resolution interface of the wire combination tool provided by an embodiment of the present application. The conflict resolution interface includes the rows and columns of the conflict area, conflict details, and conflict handling controls. The conflict handling controls include an add operation sub-control, an overwrite operation sub-control, and an ignore operation sub-control for performing conflict handling operations on the cells corresponding to the conflict area. Here, refer to the description in step 118 above.

[0422] In some embodiments, in response to a trigger operation on the add operation sub-control, a new cell is added to the conflict area of the as-merged version configuration table in a preset format; in response to a trigger operation on the overwrite operation sub-control, the first difference configuration data is synchronized to the cell in the conflict area of the as-merged version configuration table corresponding to the preset format; in response to a trigger operation on the ignore operation sub-control, the cell in the conflict area of the as-merged version configuration table corresponding to the first difference configuration data is ignored. Here, refer to the description in steps 119 to 121 above.

[0423] In some embodiments, after the conflict resolution processing operation is completed, step 408 is executed.

[0424] In some embodiments, after step 408 is executed, step 410 can also be executed. In step 410, self-checking of wire combination is performed according to the incorporated differences.

[0425] In some embodiments, in response to a trigger operation on the confirm wire combination control, the draw incorporated difference control is displayed. In response to a trigger operation on the draw incorporated difference control, the incorporated difference is displayed to confirm that the incorporated difference meets the expectations. The incorporated difference includes the first difference configuration data between the first configuration table and the reference configuration table and the second difference configuration data between the second configuration table and the reference configuration table. Here, refer to the description in steps 113 to 114 above.

[0426] In step 411, the incorporated branch is merged.

[0427] In some embodiments, in response to a trigger operation on the confirm wire combination control, based on the comparison result indicating no conflict, the first configuration table and the second configuration table are merged to obtain an integrated configuration table. Here, refer to the description in step 112 above.

[0428] In some embodiments, the wire combining tool described above can be customized and developed based on an API, providing a cross-platform API interface to modify the dtxml file, with high scalability and customizability. For example: 1) The data content can be customized (such as information like row and column colors, row height, column width, data author, modification time, etc.); 2) The file reading logic can be customized. For instance, after reading the dtxml, the data can be preprocessed (such as cleaning, deduplication, etc.) and then displayed in Excel; 3) The file writing logic can be customized. For example, when saving to Excel, the data is verified first and then written to the dtxml. 4) In an actual project, if it is necessary to read some data content in a specific form, it can be customized and developed based on the API.

[0429] Through steps 201 to 202 and steps 401 to 411, a custom dtxml file is added under the traditional Excel to carry the core data. Excel and other tools are regarded as editors for reading and writing the dtxml file, solving the problem that Excel is not comparable, enabling historical record tracing for Excel configuration tables, and well supporting most features of the Excel tool (such as formulas), thus achieving the beneficial effect of improving the efficiency of configuration table merging. At the same time, through the automatic merging program (Mergeable Excel plugin) and wire combining tool provided in the embodiments of the present application, which can perform functions such as differential comparison, visual differential comparison, automatic merging, visual conflict resolution, and fast wire combining, see Figure 9D , Figure 9D is a schematic diagram of the beneficial effects of the wire combining tool provided in the embodiments of the present application. It can be seen from Figure 9D that through the automatic merging program and wire combining tool that match the method for processing the configuration table of the application program provided in the embodiments of the present application, the beneficial effects of reducing the conflict probability, saving the time for resolving conflicts, and improving the wire combining efficiency are achieved.

[0430] Next, the exemplary structure of the software module for implementing the configuration table processing device 255 of the application program provided in the embodiments of the present application will be continued. In some embodiments, as Figure 2 shown, the software module stored in the configuration table processing device 255 of the application program in the memory 250 may include:

[0431] An acquisition module 2551, configured to acquire a reference configuration table in a preset format of the application program, and acquire a first configuration table and a second configuration table, where the preset format is used to assign different global identifiers to different rows and columns, and both the first configuration table and the second configuration table are edited based on the reference configuration table.

[0432] A processing module 2552 is configured to compare the configuration data in the reference configuration table with the configuration data in the first configuration table and the second configuration table respectively based on rows and columns through the global identifier, so as to obtain first differential configuration data between the first configuration table and the reference configuration table and second differential configuration data between the second configuration table and the reference configuration table.

[0433] A merging module 2553 is configured to merge the first configuration table and the second configuration table according to the comparison result to obtain an integrated configuration table.

[0434] In some embodiments, the processing module 2552 is further configured to compare the first differential configuration data with the second differential configuration data to obtain a comparison result.

[0435] In some embodiments, the obtaining module 2551 is further configured to obtain a reference configuration table in the native format of the application program; obtain information of each row and column of the reference configuration table in the native format, write the information of each row and column into an extensible markup language file according to a preset organization form, and assign different global identifiers to each row and column in the extensible markup language file to form the reference configuration table in the preset format.

[0436] In some embodiments, the obtaining module 2551 is further configured to obtain information of each row and column of the first sub-table, write the information of each row and column of the first sub-table into an extensible markup language file according to a preset organization form, and assign different global identifiers to each row and column of the first sub-table in the extensible markup language file to form a first sub-table in a preset format; save the first sub-table in the preset format to a preset format folder in the directory where the reference configuration table is located; add a specific mark to the reference configuration table in the native format, where the specific mark is used to indicate that the reference configuration table in the native format has been converted into the reference configuration table in the preset format.

[0437] In some embodiments, the obtaining module 2551 is further configured to obtain information of each row and column of the second sub-table, and save the information of each row and column of the second sub-table to a memo folder in the directory where the reference configuration table is located in the native format.

[0438] In some embodiments, the obtaining module 2551 is further configured to convert the formula into a preset reference style in response to the existence of a formula in the first sub-table in the preset format.

[0439] In some embodiments, the obtaining module 2551 is further configured to, in response to a save operation on the reference configuration table in the native format, query the specific tag of the reference configuration table in the native format; in response to querying the specific tag, perform a first data preprocessing operation on the first sub-table in the preset format, and save the first sub-table in the preset format after the first data preprocessing operation to a preset format folder in the directory where the reference configuration table in the native format is located; in response to a save operation on the reference configuration table in the native format, query the specific tag of the reference configuration table in the native format; perform a second data preprocessing operation on the second sub-table, obtain information on each row and column of the second sub-table, and save the information on each row and column of the second sub-table to a memo folder in the directory where the reference configuration table is located in the native format.

[0440] In some embodiments, the obtaining module 2551 is further configured to query the specific tag from the reference configuration table in the native format; in response to querying the specific tag, obtain the first sub-table in the preset format from the preset format folder in the directory where the reference configuration table in the native format is located, and obtain the second sub-table from the memo folder in the directory where the reference configuration table in the native format is located.

[0441] In some embodiments, the obtaining module 2551 is further configured to, in response to an open operation on the reference configuration table in the native format, query the specific tag from the reference configuration table in the native format.

[0442] In some embodiments, the obtaining module 2551 is further configured to perform a third data preprocessing operation on the first sub-table and the second sub-table in the preset format; rewrite each cell in the first sub-table and the second sub-table after the data preprocessing operation into the reference configuration table in the native format, and perform a style adjustment operation, and display the reference configuration table in the native format after the style adjustment operation.

[0443] In some embodiments, the processing module 2552 is further configured to obtain at least one version of the first configuration table in a preset format, where the reference configuration table is the most original historical version of the first configuration table; use the previous historical version of the first configuration table as the first comparison reference table, and perform row- and column-based comparison on the first configuration table and the first comparison reference table through the global identifier to obtain at least one first difference increment; use the at least one first difference increment as the first difference configuration data between the first configuration table and the reference configuration table, where when the number of the at least one first difference increment is multiple, stack the multiple first difference increments to form the first difference configuration data; obtain at least one historical version of the second configuration table in a preset format, where the reference configuration table is the most original historical version of the second configuration table; use the previous historical version of the second configuration table as the second comparison reference table, perform row- and column-based comparison through the global identifier, and obtain at least one second difference increment between the second configuration table and the second comparison reference table; stack the at least one second difference increment as the second difference configuration data between the second configuration table and the reference configuration table.

[0444] In some embodiments, the processing module 2552 is further configured to generate a conflict-free comparison result in response to the first difference configuration data and the second difference configuration data indicating that the corresponding regions in the reference configuration table do not overlap at all; and generate a conflicting comparison result in response to the first difference configuration data and the second difference configuration data indicating that the corresponding regions in the reference configuration table overlap.

[0445] In some embodiments, the merging module 2553 is further configured to write the first difference configuration data and the second difference configuration data into each corresponding cell of the reference configuration table to obtain an integrated configuration table in a preset format in response to the comparison result indicating that the first difference configuration data and the second difference configuration data are conflict-free; obtain the data of the integrated configuration table in the preset format cell by cell and draw it in the native format to obtain the integrated configuration table in the native format.

[0446] In some embodiments, the merging module 2553 is further configured to save the integrated configuration table in the native format with unsaved modifications as a backup integrated configuration table in response to the integrated configuration table in the native format being in an open state and having unsaved modifications; keep the backup integrated configuration table in an open state, and display the integrated configuration table in the native format in the open state in response to an open operation on the integrated configuration table in the native format; and synchronize the unsaved modifications in the backup integrated configuration table to the integrated configuration table in the native format in response to an edit operation.

[0447] In some embodiments, the merging module 2553 is further configured to, in response to the comparison result indicating a conflict between the first differential configuration data and the second differential configuration data, obtain a best-effort merged version configuration table in a preset format and a conflict reference file in a native format, where the conflict reference file is used to indicate the conflict areas between the first differential configuration data and the second differential configuration data; obtain the best-effort merged version configuration table in the native format cell by cell in the native format to obtain the best-effort merged version configuration table in the native format; and perform conflict resolution processing based on the status of the best-effort merged version configuration table in the native format and the conflict reference file to obtain the integrated configuration table.

[0448] In some embodiments, the merging module 2553 is further configured to determine a first area corresponding to the first differential configuration data in the reference configuration table; determine a second area corresponding to the second differential configuration data in the reference configuration table; synchronize the differential configuration data corresponding to the non-overlapping areas between the first area and the second area to the reference configuration table to obtain the best-effort merged version configuration table in the preset format; and generate the conflict reference file in the native format through the differential configuration data corresponding to the overlapping areas between the first area and the second area.

[0449] In some embodiments, the merging module 2553 is further configured to, in response to the best-effort merged version configuration table in the native format being in an open state and in response to an editing operation on the best-effort merged version configuration table in the native format, update the data of the cells in the conflict areas to form the integrated configuration table in the native format.

[0450] In some embodiments, the merging module 2553 is further configured to, in response to the integrated configuration table in the native format having unsaved modifications, save the integrated configuration table in the native format as a backup integrated configuration table; keep the backup integrated configuration table in an open state, and in response to an open operation on the integrated configuration table in the native format, display the integrated configuration table in the native format that is in an open state; and in response to an editing operation on the best-effort merged version configuration table in the native format, synchronize the unsaved modifications in the backup integrated configuration table to the integrated configuration table in the native format.

[0451] In some embodiments, the merging module 2553 is further configured to, in response to the best-effort merged version configuration table in the native format being in a closed state and satisfying the manual conflict resolution processing condition, display a prompt to start manual conflict resolution; and in response to an editing operation on the best-effort merged version configuration table in the native format, update the data of the cells in the conflict areas to form the integrated configuration table in the native format.

[0452] In some embodiments, the merging module 2553 is further configured to receive a trigger operation for the as - merged version configuration table in the preset format; receive a trigger operation for a preset batch conflict handler; and receive a trigger operation for the as - merged version configuration table in the native format.

[0453] In some embodiments, the obtaining module 2551 is further configured to, in response to an editing operation on the reference configuration table through a first terminal device, edit and form the first configuration table based on the reference configuration table; and in response to an update operation of synchronizing the first configuration table to the server, synchronize the first configuration table to the server and obtain the second configuration table edited and formed by a second terminal device based on the reference configuration table from the server.

[0454] In some embodiments, the processing module 2552 is further configured to display the name of the configuration table to be merged and a comparison control in the line - combining tool; and in response to a trigger operation for the comparison control, enter a step of comparing the configuration data in the reference configuration table with that in the first configuration table and the second configuration table respectively based on rows and columns.

[0455] In some embodiments, the processing module 2552 is further configured to, in response to the comparison result of rows and columns being without difference, display a re - comparison control; in response to the comparison result of rows and columns being with difference, display a conflict prediction control for line - combining and a difference drawing control; in response to a trigger operation for the conflict prediction control, enter a step of comparing the first different configuration data with the second different configuration data to obtain a comparison result; and in response to a trigger operation for the difference drawing control, display a difference preview result.

[0456] In some embodiments, the processing module 2552 is further configured to, in response to the comparison result indicating a conflict, display a merge state indicating a predicted conflict and display a conflict resolution start control; in response to a trigger operation on the conflict resolution start control, determine a first area corresponding to the first differential configuration data in the reference configuration table and determine a second area corresponding to the second differential configuration data in the reference configuration table; synchronize the differential configuration data corresponding to the non-overlapping areas between the first area and the second area to the reference configuration table to obtain the preset format of the as-merged version configuration table as much as possible; display a conflict resolution interface, where the conflict resolution interface includes rows and columns of the conflict area, conflict details, and conflict handling controls, and the conflict handling controls include an add operation sub-control, an overwrite operation sub-control, and an ignore operation sub-control for performing conflict handling operations on the cells corresponding to the conflict area; in response to a trigger operation on the add operation sub-control, add cells in the conflict area of the preset format of the as-merged version configuration table as much as possible; in response to a trigger operation on the overwrite operation sub-control, synchronize the first differential configuration data to the cells in the conflict area corresponding to the preset format of the as-merged version configuration table as much as possible; and in response to a trigger operation on the ignore operation sub-control, ignore the cells in the conflict area of the preset format of the as-merged version configuration table as much as possible corresponding to the first differential configuration data.

[0457] In some embodiments, the merging module 2553 is further configured to, in response to the comparison result indicating no conflict, display a merge state of merged without conflict and display a confirmation execution of line merging control; in response to a trigger operation on the confirmation execution of line merging control, merge the first configuration table and the second configuration table according to the comparison result indicating no conflict to obtain an integrated configuration table; display a draw merged difference control; and in response to a trigger operation on the draw merged difference control, display the merged difference, where the merged difference includes the first differential configuration data between the first configuration table and the reference configuration table and the second differential configuration data between the second configuration table and the reference configuration table.

[0458] An embodiment of the present application provides a computer program product, which includes a computer program or computer-executable instructions, and the computer program or computer-executable instructions are stored in a computer-readable storage medium. The processor of the electronic device reads the computer-executable instructions from the computer-readable storage medium, and the processor executes the computer-executable instructions, so that the electronic device executes the method for processing the configuration table of the application program in the above embodiments of the present application.

[0459] An embodiment of the present application provides a computer-readable storage medium storing computer-executable instructions, where computer-executable instructions or computer programs are stored. When the computer-executable instructions or computer programs are executed by a processor, the processor will be caused to execute the processing method of the configuration table of the application program provided by the embodiment of the present application. For example, as Figure 3A shown in the processing method of the configuration table of the application program.

[0460] In some embodiments, the computer-readable storage medium may be a memory such as RAM, ROM, flash memory, magnetic surface memory, optical disc, or CD-ROM; it may also be various devices including one or any combination of the above memories.

[0461] In some embodiments, the computer-executable instructions may be in the form of a program, software, software module, script, or code, and may be written in any form of programming language (including compiled or interpreted languages, or declarative or procedural languages), and may be deployed in any form, including being deployed as an independent program or being deployed as a module, component, subroutine, or other unit suitable for use in a computing environment.

[0462] As an example, the computer-executable instructions may or may not correspond to a file in the file system, and may be stored as a part of a file that stores other programs or data. For example, they may be stored in one or more scripts in a Hyper Text Markup Language (HTML) document, stored in a single file dedicated to the program under discussion, or stored in multiple collaborative files (for example, files that store one or more modules, subroutines, or code portions).

[0463] As an example, the computer-executable instructions may be deployed to be executed on one electronic device, or on multiple electronic devices located at one location, or on multiple electronic devices distributed at multiple locations and interconnected by a communication network.

[0464] In summary, through the embodiment of the present application, on the basis of the existing native format configuration table, a reference configuration table in a preset format is added to carry configuration data, and a global identifier is introduced to obtain the ability to continuously trace all rows and columns of the configuration table, so as to obtain the differential configuration data between different versions of the configuration table, and obtain a comparison result indicating whether there is a conflict when the configuration tables are merged through the differential configuration data, and then merge the configuration tables according to the comparison result, improving the efficiency of merging the configuration tables.

[0465] The above is only the embodiment of the present application and is not intended to limit the protection scope of the present application. Any modifications, equivalent replacements, and improvements made within the spirit and scope of the present application are all included in the protection scope of the present application.

Claims

1. A method for processing a configuration table of an application program, characterized in that, The method includes: Obtaining a reference configuration table in a preset format of the application program, and obtaining a first configuration table and a second configuration table, where the preset format is used to assign different global identifiers to different rows and columns, and both the first configuration table and the second configuration table are edited based on the reference configuration table; Based on the global identifiers, comparing the configuration data in the reference configuration table with that in the first configuration table and the second configuration table respectively row by row and column by column to obtain first difference configuration data between the first configuration table and the reference configuration table and second difference configuration data between the second configuration table and the reference configuration table; Comparing the first difference configuration data with the second difference configuration data to obtain a comparison result; Merging the first configuration table and the second configuration table according to the comparison result to obtain an integrated configuration table.

2. The method according to claim 1, wherein The obtaining the reference configuration table in a preset format of the application program includes: Obtaining a reference configuration table in the native format of the application program; Obtaining the information of each row and column of the reference configuration table in the native format, writing the information of each row and column into an extensible markup language file according to a preset organizational form, and assigning different global identifiers to each row and column in the extensible markup language file to form the reference configuration table in the preset format.

3. The method according to claim 1, wherein The reference configuration table in the native format includes a first sub-table, where the first sub-table is used to store the data required in the application program; The obtaining the reference configuration table in a preset format of the application program includes: Obtaining the information of each row and column of the first sub-table, writing the information of each row and column of the first sub-table into an extensible markup language file according to a preset organizational form, and assigning different global identifiers to each row and column of the first sub-table in the extensible markup language file to form a first sub-table in the preset format; Saving the first sub-table in the preset format to a preset format folder in the directory where the reference configuration table is located; After assigning different global identifiers to each row and column of the first sub-table in the extensible markup language file to form a first sub-table in the preset format, the method further includes: Adding a specific mark to the reference configuration table in the native format, where the specific mark is used to indicate that the reference configuration table in the native format has been converted into the reference configuration table in the preset format.

4. The method according to claim 3, wherein The reference configuration table in the native format further includes a second sub-table, and the second sub-table is used to store at least one of memo data, pictures, and note information in the application program; After assigning different global identifiers to each row and column of the first sub-table in the extensible markup language file to form a first sub-table in the preset format, the method further includes: Obtaining the information of each row and column of the second sub-table, and saving the information of each row and column of the second sub-table to a memo folder in the directory where the reference configuration table is located in the native format.

5. The method according to claim 3, characterized in that, When different global identifiers are assigned to each row and column of the first sub-table in the extensible markup language file to form a first sub-table in a preset format, the method further includes: In response to the presence of a formula in the first sub-table in the preset format, converting the formula into a preset reference style.

6. The method according to claim 4, wherein: Saving the first sub-table in the preset format to a preset format folder in the directory where the reference configuration table is located includes: In response to a save operation on the reference configuration table in the native format, querying the specific tag of the reference configuration table in the native format; In response to querying the specific tag, performing a first data preprocessing operation on the first sub-table in the preset format, and saving the first sub-table in the preset format after the first data preprocessing operation to the preset format folder in the directory where the reference configuration table in the native format is located; Obtaining information of each row and column of the second sub-table and saving the information of each row and column of the second sub-table to a memo folder in the directory where the reference configuration table is located in the native format includes: In response to a save operation on the reference configuration table in the native format, querying the specific tag of the reference configuration table in the native format; Performing a second data preprocessing operation on the second sub-table, obtaining information of each row and column of the second sub-table, and saving the information of each row and column of the second sub-table to the memo folder in the directory where the reference configuration table is located in the native format.

7. The method according to claim 4, wherein Obtaining the reference configuration table of the application includes: Querying the specific tag from the reference configuration table in the native format; In response to querying the specific tag, obtaining the first sub-table in the preset format from the preset format folder in the directory where the reference configuration table in the native format is located, and obtaining the second sub-table from the memo folder in the directory where the reference configuration table in the native format is located.

8. The method according to claim 7, characterized in that Querying the specific tag from the reference configuration table in the native format includes: In response to an open operation on the reference configuration table in the native format, querying the specific tag from the reference configuration table in the native format; After obtaining the first sub-table in the preset format from the preset format folder in the directory where the reference configuration table in the native format is located and obtaining the second sub-table from the memo folder in the directory where the reference configuration table in the native format is located, the method further includes: Performing a third data preprocessing operation on the first sub-table in the preset format and the second sub-table; Rewriting each cell in the first sub-table and the second sub-table after the data preprocessing operation into the reference configuration table in the native format, performing a style adjustment operation, and displaying the reference configuration table in the native format after the style adjustment operation.

9. The method according to claim 1, wherein: The reference configuration table is the most original historical version of the first configuration table and the second configuration table; Comparing the configuration data in the reference configuration table with that in the first configuration table and the second configuration table respectively based on rows and columns through the global identifier to obtain first differential configuration data between the first configuration table and the reference configuration table and second differential configuration data between the second configuration table and the reference configuration table includes: Obtaining at least one version of the first configuration table in a preset format; Using the previous historical version of the first configuration table as a first comparison reference table, and comparing the first configuration table and the first comparison reference table based on rows and columns through the global identifier to obtain at least one first differential increment; Taking the at least one first differential increment as the first differential configuration data between the first configuration table and the reference configuration table. When the number of the at least one first differential increment is multiple, stacking the multiple first differential increments to form the first differential configuration data; Obtaining at least one historical version of the second configuration table in a preset format; Using the previous historical version of the second configuration table as a second comparison reference table, and performing a row- and column-based comparison through the global identifier to obtain at least one second differential increment between the second configuration table and the second comparison reference table; Stacking the at least one second differential increment as the second differential configuration data between the second configuration table and the reference configuration table.

10. The method according to any one of claims 1 to 9, characterized in that, Comparing the first differential configuration data with the second differential configuration data to obtain a comparison result includes: Generating a conflict-free comparison result in response to the regions corresponding to the first differential configuration data and the second differential configuration data in the reference configuration table being completely non-overlapping; Generating a conflict comparison result in response to the regions corresponding to the first differential configuration data and the second differential configuration data in the reference configuration table having an overlap.

11. The method according to claim 10, wherein Merging the first configuration table and the second configuration table according to the comparison result to obtain an integrated configuration table includes: In response to the comparison result indicating that the first differential configuration data and the second differential configuration data have no conflict, writing the first differential configuration data and the second differential configuration data into each corresponding cell of the reference configuration table to obtain an integrated configuration table in a preset format; Obtaining the data of the integrated configuration table in the preset format cell by cell and drawing it in the native format to obtain an integrated configuration table in the native format.

12. The method according to claim 10, characterized in that, Merging the first configuration table and the second configuration table according to the comparison result to obtain an integrated configuration table includes: In response to the comparison result indicating that the first differential configuration data and the second differential configuration data have a conflict, obtaining an as-merged-as-possible version configuration table in a preset format and a conflict reference file in the native format, where the conflict reference file is used to prompt the conflict region between the first differential configuration data and the second differential configuration data; Obtaining the as-merged-as-possible version configuration table in the native format by taking the as-merged-as-possible version configuration table in the preset format cell by cell in the native format; Perform conflict resolution processing based on the state of the as - merged version configuration table in the native format and the conflict reference file to obtain the integrated configuration table.

13. The method according to claim 12, wherein The obtaining the as - merged version configuration table and the conflict reference file includes: Determine a first area in the reference configuration table corresponding to the first differential configuration data. Determine a second area in the reference configuration table corresponding to the second differential configuration data. Synchronize the differential configuration data corresponding to the non - overlapping areas between the first area and the second area to the reference configuration table to obtain the as - merged version configuration table in the preset format. Generate the conflict reference file in the native format through the differential configuration data corresponding to the overlapping area between the first area and the second area.

14. The method according to claim 12 or 13, characterized in that The performing conflict resolution processing based on the state of the as - merged version configuration table in the native format and the conflict reference file to obtain the integrated configuration table includes: In response to the as - merged version configuration table in the native format being in an open state and in response to an edit operation on the as - merged version configuration table in the native format, update the data of the cells in the conflict area to form an integrated configuration table in the native format.

15. The method according to claim 14, characterized in that, After the updating the data of the cells in the conflict area to form an integrated configuration table in the native format, the method further includes: In response to the integrated configuration table in the native format having unsaved modifications, save the integrated configuration table in the native format as a backup integrated configuration table. Keep the backup integrated configuration table in an open state and display the as - merged version configuration table in the native format in the open state. In response to an edit operation on the as - merged version configuration table in the native format, synchronize the unsaved modifications in the backup integrated configuration table to the as - merged version configuration table in the native format.

16. The method according to claim 12 or 13, characterized in that, The performing conflict resolution processing based on the state of the as - merged version configuration table in the native format and the conflict reference file to obtain the integrated configuration table includes: In response to the as - merged version configuration table in the native format being in a closed state and meeting the condition for manual conflict resolution processing, display a prompt to start manual conflict resolution. In response to an edit operation on the as - merged version configuration table in the native format, update the data of the cells in the conflict area to form an integrated configuration table in the native format.

17. A processing device for a configuration table of an application program, characterized in that, The device includes: An obtaining module, configured to obtain a reference configuration table in the preset format of the application program, and obtain a first configuration table and a second configuration table, where the preset format is used to assign different global identifiers to different rows and columns, and both the first configuration table and the second configuration table are edited based on the reference configuration table. A processing module, configured to compare the configuration data in the reference configuration table with the configuration data in the first configuration table and the second configuration table respectively based on rows and columns through the global identifiers, to obtain first differential configuration data between the first configuration table and the reference configuration table and second differential configuration data between the second configuration table and the reference configuration table. The processing module is further configured to compare the first differential configuration data with the second differential configuration data to obtain a comparison result; The merging module is configured to merge the first configuration table and the second configuration table according to the comparison result to obtain an integrated configuration table.

18. An electronic device, characterized in that, The electronic device includes: A memory for storing computer-executable instructions; A processor, when executing the computer-executable instructions stored in the memory, implements the method for processing the configuration table of the application program according to any one of claims 1 to 16.

19. A computer-readable storage medium storing computer-executable instructions or a computer program, characterized in that, When the computer-executable instructions or the computer program are executed by the processor, the method for processing the configuration table of the application program according to any one of claims 1 to 16 is implemented.

20. A computer program product, comprising computer-executable instructions or a computer program, characterized in that, When the computer-executable instructions or the computer program are executed by the processor, the method for processing the configuration table of the application program according to any one of claims 1 to 16 is implemented.