Multi-dimensional data management method and system based on spreadsheet
Through the multi-dimensional data management method based on spreadsheets, drag, drop, hidden filtering and sorting operation instructions, the problem of insufficient multi-dimensional modeling capabilities of table tools is solved, and the flexibility and security of data management is improved, meeting the refined needs of enterprise inventory management and tracking operation history.
Patent Information
- Application Number
- CN202510762870.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-09
- Publication Date
- 2025-07-08
- Estimated Expiration
- 2045-06-09
AI Technical Summary
Existing table tools lack the ability to multi-dimensional modeling, which is difficult to meet the enterprises' demand for refined and personalized inventory management, and lack operational auditing and version traceability mechanisms, resulting in hidden data security and reliability risks.
Provide a multi-dimensional data management method based on spreadsheets. It quickly updates the table structure and data by dragging, hiding filtering and sorting operation instructions, and captures operation timestamps to record historical modifications, realizing flexible data management and secure traceability.
It improves the flexibility and efficiency of data management, meets the enterprises' refined needs for inventory management, and at the same time, through query and traceability of historical operation records, the security and reliability of data are improved.
Smart Images

Figure CN120278134A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and particularly to a multi-dimensional data management method and system based on spreadsheets. Background Art
[0002] In modern enterprise operations, inventory management is a key link to ensure the smooth operation of production, sales, and the supply chain. Taking small and medium-sized discrete manufacturing enterprises as an example, such enterprises usually face the production requirements of multiple varieties and small batches, and need to carry out refined management of raw materials, semi-finished products, and finished products.
[0003] In related technologies, enterprises usually use table tools (such as Excel, WPS) for data management. This table tool is insufficient in multi-dimensional modeling and difficult to meet the refined and personalized requirements of enterprises for inventory management. In addition, the table tool does not have an operation audit and version traceability mechanism. Once the data is modified, it is difficult to track the specific operator and modification history, posing a hidden danger to the security and reliability of the data. Summary of the Invention
[0004] Embodiments of this application provide a multi-dimensional data management method and system based on spreadsheets. To provide a basic understanding of some aspects of the disclosed embodiments, a simple summary is given below. This summary part is not a general review, nor is it intended to identify key / important constituent elements or delineate the protection scope of these embodiments. Its sole purpose is to present some concepts in a simple form as a prelude to the subsequent detailed description.
[0005] In a first aspect, embodiments of this application provide a multi-dimensional data management method based on spreadsheets. The method includes: In response to an edit operation instruction for a spreadsheet displayed on the client, update the table structure and table data of the spreadsheet. The edit operation instruction includes at least one of a drag instruction for freely combining rows and columns of the spreadsheet by dragging, a hide and filter instruction for hiding filtered rows and columns, and a sorting instruction for sorting the data of rows and columns. Capture the timestamp corresponding to the edit operation instruction, and use the timestamp as an index and the updated table structure and table data as historical data modification records to store the mapping relationship between the index and the historical data modification records. When receiving a historical operation record query instruction input by the client, query multiple historical data modification records corresponding to the time range carried by the historical operation record query instruction from the mapping relationship. Display multiple historical data modification records in sequence according to the chronological order of the time axis.
[0006] Optionally, the method further includes: Receive the cell data input by the client. When the cell data does not affect other cell data, the cell data is sent in real time to the business database of the business system through the API interface for storage; or, When the cell data affects other cell data, according to the cell data, calculate the linkage data required for the affected cells; send the cell data and the linkage data required for the affected cells to the business database of the business system through the API interface in real time for storage.
[0007] Optionally, the spreadsheet is initialized based on a front-end framework that includes React components, Ant Design components, and formily components. The front-end framework includes Tabs multi-page tabs and Transfer shuttle boxes; the edit operation instruction carries a field identifier sequence for operating the spreadsheet and an action function for defining the operation type; Update the table structure and table data of the spreadsheet, including: Obtain the status of the Tabs multi-page tabs and Transfer shuttle boxes; According to the field identifier sequence and the action function, update the status of the Tabs multi-page tabs and Transfer shuttle boxes to adjust the layout of the spreadsheet and obtain an updated table structure; From the business database of the business system, obtain the field values corresponding to each table field in the updated table structure; Render the field values corresponding to each table field into the updated table structure to obtain updated table data.
[0008] Optionally, according to the field identifier sequence and the action function, updating the status of the Tabs multi-page tabs and Transfer shuttle boxes includes: Parse the action function to obtain the action type and the operation target object identifier; Traverse the tab nodes in the status tree of the Tabs multi-page tabs, and compare the traversed tab nodes with the operation target object identifier to obtain the target tab node that matches the operation target object identifier; According to the field identifier sequence and the action function, modify the historical status of the target tab node to update the status of the Tabs multi-page tabs; Obtain the selected field list of the Transfer shuttle box; Merge and filter the field identifier sequence and the selected fields in the selected field list; Update the status of the Transfer shuttle box according to the filtered result.
[0009] Optionally, according to the field identifier sequence and the action function, modifying the historical status of the target tab node includes: In the case where the action function indicates adding fields, for each field identifier in the field identifier sequence, determine whether each field identifier exists in the current field list of the target tab node; If not, add each field identifier to the current field list of the target tab node to obtain a target field list; set the status of each target field in the target field list to enabled; If so, set the status of each current field in the current field list to enabled.
[0010] Optionally, modify the historical status of the target tab node according to the field identifier sequence and the action function, including: In the case where the action function indicates deleting fields, determine whether each current field in the current field list of the target tab node exists in the field identifier sequence; If so, delete the current fields in the current field list that exist in the field identifier sequence, and set the status of the remaining current fields to enabled; If not, set the status of each current field in the current field list to enabled.
[0011] Optionally, modify the historical status of the target tab node according to the field identifier sequence and the action function, including: In the case where the action function indicates adjusting the field order, determine whether the order of each current field in the current field list of the target tab node is consistent with the order of the field identifiers in the field identifier sequence; If so, set the status of each current field in the current field list to enabled; If not, adjust the order of each current field in the current field list of the target tab node to the order of the field identifiers in the field identifier sequence, and set the status of each current field in the adjusted order current field list to enabled.
[0012] Optionally, generate the status tree of the Tabs multi-tab according to the following steps, including: Obtain the code file information of the Tabs multi-tab, and the code file information predefines multiple Tab labels and their nesting relationships; From the multiple Tab labels and their nesting relationships, obtain the id of each tab and the list of sub-tabs; Identify the hierarchical size and association information between the id of each tab and the list of sub-tabs; According to the hierarchical size, divide each tab into a root tab node and a sub-tab node; According to the association information, determine the corresponding sub-tab nodes to be inserted on each root tab node to obtain the status tree of the Tabs multi-tab.
[0013] Optionally, compare the traversed tab node with the operation target object identifier, including: Input the traversed tab node into a preset tab feature encoder to output a tab feature encoding; Input the operation target object identifier into a preset identifier encoder to output an identifier feature encoding; Perform non-linear transformation on the tab feature encoding and the identifier feature encoding respectively to obtain a tab feature vector and an identifier feature vector; Calculate the cosine similarity between the tab feature vector and the identifier feature vector; Based on the cosine similarity, determine the target tab node that matches the operation target object identifier.
[0014] In a second aspect, an embodiment of the present application provides a multi-dimensional data management system based on a spreadsheet. The system includes: A response module, configured to update the table structure and table data of the spreadsheet in response to an edit operation instruction for the spreadsheet displayed on the client; the edit operation instruction includes at least one of a drag instruction for freely combining rows and columns of the spreadsheet by dragging, a hide and filter instruction for hiding and filtering rows and columns, and a sorting instruction for sorting rows and columns of data; An update module, configured to capture the timestamp corresponding to the edit operation instruction, use the timestamp as an index, and the updated table structure and table data as historical data modification records, and store the mapping relationship between the index and the historical data modification records; A query module, configured to, when receiving a historical operation record query instruction input by the client, query multiple historical data modification records corresponding to the time range carried by the historical operation record query instruction from the mapping relationship; A display module, configured to sequentially display multiple historical data modification records in the order of the time axis.
[0015] The technical solution provided by the embodiment of the present application may include the following beneficial effects: In the embodiment of the present application, based on the multi-dimensional data management method of the spreadsheet, users can quickly update the table structure and data through simple drag, hide and filter, and sorting operation instructions, greatly improving the flexibility and efficiency of data management. The multi-dimensional operations can meet the refined and personalized requirements of enterprises for inventory management. At the same time, the system automatically captures the timestamp of the operation and stores each modification record as historical data, which can be queried and traced back at any time, and can track the operator and the modification history, improving the security and reliability of the data.
[0016] It should be understood that the above general description and the following detailed description are only exemplary and explanatory, and cannot limit the present application. Description of the Drawings
[0017] The accompanying drawings here are incorporated into the specification and form a part of this specification, showing embodiments consistent with this application, and are used together with the specification to explain the principles of this application.
[0018] Figure 1 It is a schematic flow diagram of a multi-dimensional data management method based on a spreadsheet provided by an embodiment of this application; Figure 2 It is a schematic diagram of a spreadsheet provided by an embodiment of this application; Figure 3 It is another schematic diagram of a spreadsheet provided by an embodiment of this application; Figure 4 It is a schematic diagram of field screening provided by an embodiment of this application; Figure 5 It is a schematic structural diagram of a status tree provided by an embodiment of this application; Figure 6 It is a schematic structural diagram of a multi-dimensional data management system based on a spreadsheet provided by an embodiment of this application; Figure 7 It is a schematic structural diagram of an electronic device provided by an embodiment of this application. Detailed implementation manners
[0019] The following description and the accompanying drawings fully illustrate the specific implementation manners of this application, enabling those skilled in the art to practice them.
[0020] It should be clear that the described embodiments are only a part of the embodiments of this application, rather than all of them. All other embodiments obtained by those of ordinary skill in the art based on the embodiments in this application without creative efforts belong to the scope of protection of this application.
[0021] When the following description refers to the accompanying drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The implementation manners described in the following exemplary embodiments do not represent all implementation manners consistent with this application. On the contrary, they are merely examples of systems and methods consistent with some aspects of this application as detailed in the appended claims.
[0022] In the description of the present application, it should be understood that terms such as "first" and "second" are only for descriptive purposes and cannot be construed as indicating or implying relative importance. For those of ordinary skill in the art, the specific meanings of the above terms in the present application can be understood according to specific circumstances. In addition, in the description of the present application, unless otherwise specified, "a plurality" means two or more. "And / or" describes the association relationship of associated objects and indicates that three relationships may exist. For example, A and / or B may represent three situations: A exists alone, A and B exist simultaneously, and B exists alone. The character " / " generally represents an "or" relationship between the associated objects before and after.
[0023] Currently, enterprises usually use spreadsheet tools (such as Excel, WPS) for data management.
[0024] The inventor realizes that the spreadsheet tool is insufficient in multi-dimensional modeling and difficult to meet the refined and personalized needs of enterprises for inventory management. In addition, the spreadsheet tool has no operation audit and version traceability mechanism. Once the data is modified, it is difficult to track the specific operator and modification history, posing a potential threat to the security and reliability of the data.
[0025] To solve the above problems, the present application provides a multi-dimensional data management method and system based on spreadsheets to solve the problems existing in the above related technologies. In the embodiments of the present application, for the multi-dimensional data management method based on spreadsheets, users can quickly update the table structure and data through simple drag-and-drop, hiding, filtering, and sorting operation instructions, greatly improving the flexibility and efficiency of data management. The multi-dimensional operations can meet the refined and personalized needs of enterprises for inventory management. At the same time, the system automatically captures the timestamp of the operation and stores each modification record as historical data, which can be queried and traced back at any time, and the operator and modification history can be tracked, improving the security and reliability of the data. The following uses exemplary embodiments for detailed description.
[0026] The following will be combined with the attached Figure 1 - attached Figure 5 to introduce in detail the multi-dimensional data management method based on spreadsheets provided by the embodiments of the present application. This method can be implemented depending on a computer program and can run on a multi-dimensional data management system based on spreadsheets and the von Neumann architecture. This computer program can be integrated into an application or run as an independent tool-type application.
[0027] Please refer to Figure 1 , which is a schematic flowchart of a multi-dimensional data management method based on spreadsheets provided by the embodiments of the present application. As Figure 1 shown, the method of the embodiments of the present application may include the following steps: S101. In response to an editing operation instruction for a spreadsheet displayed on the client, update the table structure and table data of the spreadsheet; the editing operation instruction includes at least one of a drag instruction for freely combining rows and columns of the spreadsheet by dragging, a hide filter instruction for hiding filtered rows and columns, and a sorting instruction for sorting the data of rows and columns. Among them, the spreadsheet displayed on the client refers to the spreadsheet interface displayed on the user's device, which is a component based on a Web browser or a desktop application and is used to display and operate data. The spreadsheet is shown as follows Figure 2 . The editing operation instruction refers to an operation command for modifying or adjusting the spreadsheet initiated by the user through the client interface. The table structure refers to the layout and organization method of the spreadsheet, including the arrangement of rows, columns, and cells and the relationships between them. The table data refers to the specific information stored in the spreadsheet. The drag instruction refers to an operation instruction for the user to adjust the positions of rows, columns, or cells of the table through a drag operation using a mouse or other input device. The drag instruction is used to change the table structure, such as adjusting the order of columns or moving the position of rows. The hide filter instruction refers to an operation instruction for the user to hide rows or columns that do not meet specific conditions in the table through the filtering function. The hide filter instruction is used to filter data according to the conditions set by the user, so that only the data that meets the requirements is displayed in the table. The sorting instruction refers to an operation instruction for the user to sort the row or column data in the table through the sorting function. The sorting instruction is used to rearrange the data in the table according to the sorting rules specified by the user (such as ascending or descending order).
[0028] For example Figure 3 As shown, the user can drag any row or column in the spreadsheet through the drag component within the red frame in the spreadsheet.
[0029] For example Figure 4 As shown, the user can hide the filtered rows and columns through the hide component.
[0030] In a possible implementation manner, on the spreadsheet interface displayed on the client, set an event listener to capture various editing operations of the user, including mouse dragging, button clicking, inputting filter conditions, etc. When the user initiates an operation, the system needs to identify the type of the operation, such as one of a drag operation, a hide filter operation, or a sorting operation, which can be achieved by listening to different event types. For example, listen to the drag event to identify the drag operation and listen to the click event to identify the button click operation. For each operation, the system needs to obtain relevant parameters. For example, for the drag operation, it is necessary to obtain the starting position and the ending position of the drag; for the filter operation, it is necessary to obtain the filter conditions input by the user.
[0031] For example, when the operation edit operation instruction indicates dragging a column, the system needs to update the order of the columns. For example, when moving the third column to the position of the first column, the column order array needs to be updated.
[0032] For example, when the operation edit operation instruction indicates dragging a row, the system needs to update the order of the rows.
[0033] For example, when the operation edit operation instruction indicates hiding a filter, the system needs to hide or display specific rows or columns according to the filter conditions.
[0034] For example, when the operation edit operation instruction indicates sorting, the system needs to re-sort the data in the table according to the sorting instruction.
[0035] For example, when the operation edit operation instruction indicates hiding a filter, the system needs to filter the data according to the filter conditions.
[0036] For example, when the operation edit operation instruction indicates editing the cell content, the system needs to update the data of the corresponding cell.
[0037] Among them, the spreadsheet is initialized based on a front-end framework that includes React components, Ant Design components, and formily components. The front-end framework includes Tabs multi-tab and Transfer shuttle box; the edit operation instruction carries a field identifier sequence for operating the spreadsheet and an action function for defining the operation type.
[0038] Among them, React is a JavaScript library for building user interfaces. React components are the smallest reusable units in a React application, used to encapsulate and reuse UI logic. Ant Design is a UI design language and component library based on React. formily is a form solution based on React. Tabs multi-tab is a UI component that allows users to view different contents by switching different tabs on the same page. Transfer shuttle box is a UI component that allows users to shuttle and select items between two lists.
[0039] In some embodiments of the present application, the specific process of updating the table structure and table data of the spreadsheet includes: obtaining the states of the Tabs multi-tab and Transfer shuttle box; updating the states of the Tabs multi-tab and Transfer shuttle box according to the field identifier sequence and action function to adjust the layout of the spreadsheet and obtain an updated table structure; obtaining the field values corresponding to each table field in the updated table structure from the business database of the business system; rendering the field values corresponding to each table field into the updated table structure to obtain updated table data.
[0040] Among them, the business system refers to the information system used in an enterprise or organization to manage and process daily business processes. The business database is the database used in the business system to store and manage business data. The field value is the core content of the spreadsheet data, and the user manages these field values by operating on the spreadsheet (such as sorting, filtering, editing, etc.).
[0041] For example, the user drags the "Inventory Quantity" column in front of the "Product Name" column. The system updates the column order of the table and generates a new table structure. The system re-renders the table, and the order of the columns becomes "Inventory Quantity", "Product Name".
[0042] In the embodiments of the present application, for the multi-dimensional data management method based on a spreadsheet, the user can quickly update the table structure and data through simple drag-and-drop, hiding, filtering, and sorting operation instructions, greatly improving the flexibility and efficiency of data management. The multi-dimensional operations can meet the refined and personalized requirements of the enterprise for inventory management.
[0043] In some embodiments of the present application, according to the field identifier sequence and the action function, the specific process of updating the status of the Tabs multi-tab and the Transfer shuttle box includes: parsing the action function to obtain the action type and the operation target object identifier; traversing the tab nodes in the status tree of the Tabs multi-tab, and comparing the traversed tab nodes with the operation target object identifier to obtain the target tab node that matches the operation target object identifier; modifying the historical status of the target tab node according to the field identifier sequence and the action function to update the status of the Tabs multi-tab; obtaining the selected field list of the Transfer shuttle box; merging and filtering the field identifier sequence and the selected fields in the selected field list; and updating the status of the Transfer shuttle box according to the filtered result.
[0044] Among them, the action type refers to the specific operation type executed by the action function, such as sorting, filtering, dragging, etc. The operation target object identifier is an identifier used to uniquely identify the operation target object (such as a tab, a field, etc.). The tab node is a node in the status tree of the Tabs multi-tab, representing a specific tab. The selected field list is the list of fields that the user has selected in the Transfer shuttle box. The status tree of the Tabs multi-tab is a hierarchical data structure used to store the status information of the Tabs multi-tab.
[0045] In a possible implementation, the specific process of modifying the historical state of the target tab node according to the field identifier sequence and the action function includes: when the action function indicates adding a field, for each field identifier in the field identifier sequence, determine whether each field identifier exists in the current field list of the target tab node; if not, add each field identifier to the current field list of the target tab node to obtain the target field list; set the status of each target field in the target field list to enabled; if so, set the status of each current field in the current field list to enabled.
[0046] For example, in an inventory management system, the user adds a new field in the "Inventory Management" tab. The initial field list of the target tab node is [Product Name, Inventory Quantity], and the field identifier sequence is [Product Name, Unit Price]. The "Product Name" field already exists in the field list of the target tab node, so it is skipped. The "Unit Price" field does not exist in the field list of the target tab node, so it is added to the field list. The updated field list is: [Product Name, Inventory Quantity, Unit Price], and the status of each field in the updated field list is set to enabled.
[0047] In another possible implementation, the specific process of modifying the historical state of the target tab node according to the field identifier sequence and the action function includes: when the action function indicates deleting a field, determine whether each current field in the current field list of the target tab node exists in the field identifier sequence; if so, delete the current fields that exist in the field identifier sequence from the current field list, and set the status of the remaining current fields to enabled; if not, set the status of each current field in the current field list to enabled.
[0048] For example, in an inventory management system, the user deletes a field in the "Inventory Management" tab. The initial field list of the target tab node is [Product Name, Inventory Quantity, Unit Price, Supplier], and the field identifier sequence is [Unit Price, Supplier]. The "Unit Price" field exists in the field list of the target tab node, so it is deleted. The "Supplier" field also exists in the field list of the target tab node, so it is deleted. The status of the remaining fields is set to enabled.
[0049] In another possible implementation, the specific process of modifying the historical state of the target tab node according to the field identification sequence and the action function includes: when the action function indicates adjusting the field order, determining whether the order of each current field in the current field list of the target tab node is consistent with the order of the field identifications in the field identification sequence; if so, setting the status of each current field in the current field list to enabled; if not, adjusting the order of each current field in the current field list of the target tab node to the order of the field identifications in the field identification sequence, and setting the status of each current field in the adjusted field list to enabled.
[0050] For example, in an inventory management system, the user adjusts the field order in the "Inventory Management" tab. The initial field list of the target tab node is [Product Name, Inventory Quantity, Unit Price, Supplier], and the field identification sequence is [Unit Price, Product Name, Inventory Quantity, Supplier]. By comparing the field orders, it is found that the orders are inconsistent. The order of the current field list is adjusted to the order of the field identification sequence, and the status of each field in the adjusted field list is set to enabled.
[0051] In some embodiments of the present application, the specific process of generating the state tree of the Tabs multi-tab includes: obtaining the code file information of the Tabs multi-tab, where the code file information pre-defines multiple Tab labels and their nesting relationships; obtaining the id of each tab and the list of sub-tabs from the multiple Tab labels and their nesting relationships; identifying the hierarchical size and association information between the id of each tab and the list of sub-tabs; dividing each tab into a root tab node and sub-tab nodes according to the hierarchical size; and determining and inserting the corresponding sub-tab nodes on each root tab node according to the association information to obtain the state tree of the Tabs multi-tab.
[0052] Among them, the code file information of the Tabs multi-tab refers to the code file that defines the structure and behavior of the Tabs multi-tab. The nesting relationship is used to describe the hierarchical structure between the tabs, assisting the system in identifying the root tab and sub-tabs. The hierarchical size refers to the hierarchical depth of the tab in the nested structure. The hierarchical level of the root tab is 1, and the hierarchical level of its sub-tabs is 2, and so on. The association information refers to the parent-child relationship between the tabs. The root tab node refers to the tab node without a parent, which is the top-level tab of the Tabs component. The state tree of the Tabs multi-tab is a hierarchical data structure for storing the state information of the Tabs multi-tab.
[0053] In a possible implementation manner of the present application, the id, label, and children information of each TabPane are extracted through a static code analysis tool. A mapping table map is created to quickly find each tab node. The tabDefinitions are traversed, and the hierarchical relationship is constructed according to the children attribute. If a tab has no child nodes, it is directly added to the children of the root node. If a tab has child nodes, its parent node is found, and the child nodes are added to the children of the parent node. The constructed state tree can display the hierarchical structure of the tabs, including the root tab and the child tabs. The state tree in some embodiments is, for example Figure 5 as shown.
[0054] In some embodiments of the present application, the specific process of comparing the traversed tab node with the operation target object identifier includes: inputting the traversed tab node into a preset tab feature encoder to output a tab feature encoding; inputting the operation target object identifier into a preset identifier encoder to output an identifier feature encoding; respectively performing non-linear transformation on the tab feature encoding and the identifier feature encoding to obtain a tab feature vector and an identifier feature vector; calculating the cosine similarity between the tab feature vector and the identifier feature vector; and determining the target tab node matching the operation target object identifier based on the cosine similarity.
[0055] Among them, the tab feature encoder is a model or function for converting the features of a tab node (such as the id, label, children, etc. of the tab) into a feature encoding. The identifier encoder is a model or function for converting the operation target object identifier (such as id) into a feature encoding. The cosine similarity is the cosine value of the angle between two vectors in a multi-dimensional space, used to measure the similarity between two vectors. The value range of the cosine similarity is [-1, 1], and the closer the value is to 1, the more similar the two vectors are. The cosine similarity is used to calculate the similarity between the tab feature vector and the identifier feature vector, so as to determine the most matching tab node.
[0056] S102, capture the time stamp corresponding to the edit operation instruction, use the time stamp as an index, and the updated table structure and table data as historical data modification records, and store the mapping relationship between the index and the historical data modification records; Among them, the time stamp is used to record the specific time when the operation occurs. The mapping relationship refers to the corresponding relationship between the time stamp and the historical data modification record. Through the mapping relationship, the modification record at a specific time point can be quickly queried.
[0057] In some embodiments of the present application, for example, a user performs an operation, which is to add a new field supplier, record the timestamp of the operation, update the table structure and data according to the operation instruction, use the timestamp, the updated table structure and data as the historical data modification record, and store the timestamp and the historical data modification record in a mapping table. The mapping table in some embodiments is shown in Table 1.
[0058] Table 1
[0059] S103, when receiving a historical operation record query instruction input by the client, query multiple historical data modification records corresponding to the time range carried by the historical operation record query instruction from the mapping relationship; In some embodiments of the present application, for example, a user inputs a query instruction through the system interface, specifying the query time range as all historical operation records between timestamps 1633072800 and 1633072900. The system receives the query instruction input by the user and extracts the query time range: from 1633072800 to 1633072900. The system checks the mapping relationship table storing historical data modification records and finds all records with timestamps within this range. The system checks the timestamp of each record one by one to determine whether it is within the time range specified by the user. If the timestamp is within the range, the system adds the record to the result list.
[0060] S104, displaying a plurality of historical data modification records in sequence according to the order of the time axis.
[0061] In some embodiments of the present application, after obtaining the result list, multiple historical data modification records in the result list can be displayed in sequence according to the chronological order of the time axis.
[0062] Furthermore, after updating the table structure and table data of the spreadsheet, the updated data needs to be synchronized to the business database of the business system. The process includes: receiving cell data input by the client; when the cell data does not affect other cell data, sending the cell data to the business database of the business system in real time through the API interface for storage; or, when the cell data affects other cell data, calculating the linkage data required for the affected cells based on the cell data; sending the cell data and the linkage data required for the affected cells to the business database of the business system in real time through the API interface for storage.
[0063] In the embodiment of the present application, the electronic spreadsheet tool has a real-time data synchronization function. When multiple users operate the same inventory data on different terminals, there will be no data inconsistency, thereby ensuring the uniformity and integrity of the data.
[0064] In the embodiment of the present application, for the multi-dimensional data management method based on a spreadsheet, users can quickly update the table structure and data through simple drag, hide, filter, and sort operation instructions, greatly improving the flexibility and efficiency of data management. The multi-dimensional operations can meet the refined and personalized requirements of enterprises for inventory management. At the same time, the system automatically captures the timestamp of the operation and stores each modification record as historical data, which can be queried and traced back at any time. The operator and the modification history can be traced, enhancing the security and reliability of the data.
[0065] The following is the system embodiment of the present application, which can be used to execute the method embodiment of the present application. For the details not disclosed in the system embodiment of the present application, please refer to the method embodiment of the present application.
[0066] Please refer to Figure 6 , which shows a schematic structural diagram of a multi-dimensional data management system based on a spreadsheet provided by an exemplary embodiment of the present application. The multi-dimensional data management system based on a spreadsheet can be implemented as all or part of an electronic device through software, hardware, or a combination of both. The system 1 includes a response module 10, an update module 20, a query module 30, and a display module 40.
[0067] The response module 10 is configured to update the table structure and table data of the spreadsheet in response to an edit operation instruction for the spreadsheet displayed on the client; the edit operation instruction includes at least one of a drag instruction for freely combining rows and columns of the spreadsheet, a hide and filter instruction for hiding and filtering rows and columns, and a sort instruction for sorting data in rows and columns. The update module 20 is configured to capture the timestamp corresponding to the edit operation instruction, use the timestamp as an index, and update the table structure and table data as historical data modification records, and store the mapping relationship between the index and the historical data modification records. The query module 30 is configured to query, when receiving a historical operation record query instruction input by the client, multiple historical data modification records corresponding to the time range carried by the historical operation record query instruction from the mapping relationship. The display module 40 is configured to sequentially display multiple historical data modification records in chronological order.
[0068] It should be noted that when the multi-dimensional data management system based on a spreadsheet provided in the above embodiments executes the multi-dimensional data management method based on a spreadsheet, only the division of the above functional modules is used as an example for illustration. In practical applications, the above functions can be allocated to different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the multi-dimensional data management system based on a spreadsheet provided in the above embodiments and the embodiments of the multi-dimensional data management method based on a spreadsheet belong to the same concept. The implementation process is shown in the method embodiments and will not be elaborated here.
[0069] The serial numbers of the embodiments of the present application above are only for description and do not represent the advantages or disadvantages of the embodiments.
[0070] In the embodiments of the present application, for the multi-dimensional data management method based on a spreadsheet, users can quickly update the table structure and data through simple drag-and-drop, hide, filter, and sort operation instructions, greatly improving the flexibility and efficiency of data management. The multi-dimensional operations can meet the refined and personalized needs of enterprises for inventory management. At the same time, the system automatically captures the timestamps of operations and stores each modification record as historical data, which can be queried and traced back at any time. It can track the operators and modification history, improving the security and reliability of the data.
[0071] The present application also provides a computer-readable medium, on which program instructions are stored. When the program instructions are executed by a processor, the multi-dimensional data management method based on a spreadsheet provided in each of the above method embodiments is implemented.
[0072] The present application also provides a computer program product containing instructions. When it runs on a computer, it causes the computer to execute the multi-dimensional data management method based on a spreadsheet in each of the above method embodiments.
[0073] Please refer to Figure 7 , which is a schematic structural diagram of an electronic device provided by an embodiment of the present application. As Figure 7 shown, the electronic device 1000 may include: at least one processor 1001, at least one network interface 1004, a user interface 1003, a memory 1005, and at least one communication bus 1002.
[0074] Among them, the communication bus 1002 is used to realize the connection and communication between these components.
[0075] Among them, the user interface 1003 may include a display screen (Display) and a camera (Camera). Optionally, the user interface 1003 may further include a standard wired interface and a wireless interface.
[0076] Among them, the network interface 1004 may optionally include a standard wired interface, a wireless interface (such as a WI-FI interface).
[0077] Among them, the processor 1001 may include one or more processing cores. The processor 1001 connects various parts within the entire electronic device 1000 through various interfaces and lines. By running or executing instructions, programs, code sets, or instruction sets stored in the memory 1005, and by calling the data stored in the memory 1005, it executes various functions of the electronic device 1000 and processes data. Optionally, the processor 1001 may be implemented in at least one of the hardware forms of digital signal processing (DSP), field-programmable gate array (FPGA), and programmable logic array (PLA). The processor 1001 may integrate a combination of one or several of a central processing unit (CPU), a graphics processing unit (GPU), and a modem, etc. Among them, the CPU mainly processes the operating system, user interface, application programs, etc.; the GPU is responsible for rendering and drawing the content to be displayed on the display screen; the modem is used to process wireless communication. It can be understood that the above-mentioned modem may not be integrated into the processor 1001 and may be implemented separately by a single chip.
[0078] Among them, the memory 1005 may include random access memory (RAM), and may also include read-only memory. Optionally, the memory 1005 includes a non-transitory computer-readable storage medium. The memory 1005 can be used to store instructions, programs, code, code sets, or instruction sets. The memory 1005 may include a program storage area and a data storage area. Among them, the program storage area may store instructions for implementing the operating system, instructions for at least one function (such as touch function, sound playback function, image playback function, etc.), instructions for implementing the above-mentioned various method embodiments, etc.; the data storage area may store the data involved in the above-mentioned various method embodiments. Optionally, the memory 1005 may also be at least one storage system located far from the aforementioned processor 1001. As Figure 7 shown, the memory 1005, as a computer storage medium, may include an operating system, a network communication module, a user interface module, and a multi-dimensional data management application based on a spreadsheet.
[0079] exist Figure 7 In the electronic device 1000 shown, the user interface 1003 is mainly used to provide an input interface for the user and obtain data input by the user; and the processor 1001 can be used to call the multi-dimensional data management application based on the electronic form stored in the memory 1005, and specifically perform the following operations: In response to an edit operation instruction for the electronic table displayed on the client, the table structure and table data of the electronic table are updated; the edit operation instruction includes at least one of a drag instruction for dragging rows and columns of the electronic table for free combination, a hide filter instruction for hiding and filtering rows and columns, and a sort instruction for sorting data of rows and columns; Capture the timestamp corresponding to the editing operation instruction, use the timestamp as the index, the updated table structure and table data as the historical data modification record, and store the mapping relationship between the index and the historical data modification record; When receiving a historical operation record query instruction input by the client, query multiple historical data modification records corresponding to the time range carried by the historical operation record query instruction from the mapping relationship; Multiple historical data modification records are displayed in sequence according to the timeline.
[0080] In one embodiment, the processor 1001 further performs the following operations: Receive cell data input from the client; When the cell data does not affect other cell data, the cell data is sent to the business database of the business system through the API interface in real time for storage; or When cell data affects other cell data, the linkage data required by the affected cells is calculated based on the cell data; the cell data and the linkage data required by the affected cells are sent to the business database of the business system in real time through the API interface for storage.
[0081] In one embodiment, when updating the table structure and table data of the electronic table, the processor 1001 specifically performs the following operations: Get the status of Tabs multi-page tabs and Transfer shuttle box; According to the field identification sequence and action function, the status of the Tabs multi-page tab and the Transfer shuttle box are updated to adjust the layout of the electronic form and obtain an updated form structure; Obtain the field values corresponding to each table field in the updated table structure from the business database of the business system; The field values corresponding to each table field are rendered into the updated table structure to obtain updated table data.
[0082] In one embodiment, when the processor 1001 executes to update the status of the Tabs multi-tab and the Transfer shuttle box according to the field identification sequence and the action function, the following operations are specifically performed: Parse the action function to obtain the action type and the operation target object identifier; Traverse the tab nodes in the status tree of the Tabs multi-tab, and compare the traversed tab nodes with the operation target object identifier to obtain the target tab node that matches the operation target object identifier; Modify the historical status of the target tab node according to the field identification sequence and the action function to update the status of the Tabs multi-tab; Obtain the selected field list of the Transfer shuttle box; Merge and filter the field identification sequence and the selected fields in the selected field list; Update the status of the Transfer shuttle box according to the filtered result.
[0083] In one embodiment, when the processor 1001 executes to modify the historical status of the target tab node according to the field identification sequence and the action function, the following operations are specifically performed: In the case where the action function indicates adding a field, for each field identification in the field identification sequence, determine whether each field identification exists in the current field list of the target tab node; If not, add each field identification to the current field list of the target tab node to obtain the target field list; set the status of each target field in the target field list to enabled; If so, set the status of each current field in the current field list to enabled.
[0084] In one embodiment, when the processor 1001 executes to modify the historical status of the target tab node according to the field identification sequence and the action function, the following operations are specifically performed: In the case where the action function indicates deleting a field, determine whether each current field in the current field list of the target tab node exists in the field identification sequence; If so, delete the current fields in the current field list that exist in the field identification sequence, and set the status of the remaining current fields to enabled; If not, set the status of each current field in the current field list to enabled.
[0085] In one embodiment, when the processor 1001 executes to modify the historical status of the target tab node according to the field identification sequence and the action function, the following operations are specifically performed: When the action function indicates adjusting the field order, determine whether the order of each current field in the current field list of the target tab node is consistent with the order of the field identifiers in the field identifier sequence; If so, set the status of each current field in the current field list to enabled; If not, adjust the order of each current field in the current field list of the target tab node to the order of the field identifiers in the field identifier sequence, and set the status of each current field in the adjusted order current field list to enabled.
[0086] In one embodiment, the processor 1001 also performs the following operations: Obtain the code file information of the Tabs multi-tab, and the code file information pre-defines multiple Tab labels and their nesting relationships; From the multiple Tab labels and their nesting relationships, obtain the id of each tab and the list of sub-tabs; Identify the hierarchical size and association information between the id of each tab and the list of sub-tabs; According to the hierarchical size, divide each tab into a root tab node and a sub-tab node; According to the association information, determine the corresponding sub-tab nodes to be inserted on each root tab node to obtain the status tree of the Tabs multi-tab.
[0087] In one embodiment, when the processor 1001 performs the comparison between the traversed tab node and the operation target object identifier, it specifically performs the following operations: Input the traversed tab node into a preset tab feature encoder to output a tab feature encoding; Input the operation target object identifier into a preset identifier encoder to output an identifier feature encoding; Perform non-linear transformation on the tab feature encoding and the identifier feature encoding respectively to obtain a tab feature vector and an identifier feature vector; Calculate the cosine similarity between the tab feature vector and the identifier feature vector; Based on the cosine similarity, determine the target tab node that matches the operation target object identifier.
[0088] In the embodiment of the present application, based on the multi-dimensional data management method of the spreadsheet, users can quickly update the table structure and data through simple drag-and-drop, hide filtering, and sorting operation instructions, greatly improving the flexibility and efficiency of data management. The multi-dimensional operations can meet the refined and personalized needs of enterprises for inventory management. At the same time, the system automatically captures the timestamp of the operation and stores each modification record as historical data, which can be queried and traced back at any time, and can track the operator and the modification history, improving the security and reliability of the data.
[0089] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. A program for multi-dimensional data management based on a spreadsheet can be stored in a computer-readable storage medium. When the program is executed, it can include the processes of the embodiments of the above various methods. Among them, the storage medium of the program for multi-dimensional data management based on a spreadsheet can be a magnetic disk, an optical disk, a read-only memory, or a random access memory, etc.
[0090] The above-disclosed are only the preferred embodiments of the present application. Of course, the scope of the rights of the present application cannot be limited thereby. Therefore, equivalent changes made according to the claims of the present application still fall within the scope covered by the present application.
Claims
1. A multi-dimensional data management method based on a spreadsheet, characterized in that, The method comprises: In response to an edit operation instruction for an electronic table displayed on a client, updating the table structure and table data of the electronic table; the edit operation instruction includes at least one of a drag instruction for dragging rows and columns of the electronic table for free combination, a hide filter instruction for hiding and filtering the rows and columns, and a sort instruction for sorting the data of the rows and columns; Capturing the timestamp corresponding to the editing operation instruction, taking the timestamp as an index, the updated table structure and the table data as a historical data modification record, and storing a mapping relationship between the index and the historical data modification record; When receiving a historical operation record query instruction input by the client, querying multiple historical data modification records corresponding to the time range carried by the historical operation record query instruction from the mapping relationship; The multiple historical data modification records are displayed in sequence according to the chronological order of the timeline.
2. The method according to claim 1, wherein The method further comprises: Receiving cell data inputted by the client; In the case where the cell data does not affect other cell data, the cell data is sent to the business database of the business system in real time through the API interface for storage; or, In the case where the cell data affects other cell data, the linkage data required by the affected cells is calculated based on the cell data; the cell data and the linkage data required by the affected cells are sent to the business database of the business system in real time through the API interface for storage.
3. The method according to claim 1, wherein The electronic form is initialized based on a front-end framework including React components, Ant Design components and Formily components, and the front-end framework includes Tabs multi-page tabs and Transfer shuttle box; the editing operation instruction carries a field identification sequence for operating the electronic form and an action function for defining an operation type; The updating of the table structure and table data of the electronic table includes: Get the status of the Tabs multi-page tab and Transfer shuttle box; According to the field identification sequence and the action function, the states of the Tabs multi-page tab and the Transfer shuttle box are updated to adjust the layout of the electronic form and obtain an updated form structure; Obtain the field values corresponding to each table field in the updated table structure from the business database of the business system; The field values corresponding to the various table fields are rendered into the updated table structure to obtain updated table data.
4. The method according to claim 3, wherein The updating of the status of the Tabs multi-page tab and the Transfer shuttle box according to the field identification sequence and the action function includes: Parsing the action function to obtain the action type and the operation target object identifier; Traversing the tab nodes in the state tree of the Tabs multi-tabs, comparing the traversed tab nodes with the operation target object identifier to obtain a target tab node that matches the operation target object identifier; Modify the historical state of the target tab node according to the field identification sequence and the action function to update the state of the Tabs multi-tab; Obtain the selected field list of the Transfer shuttle box; Merge and filter the field identification sequence and the selected fields in the selected field list; Update the state of the Transfer shuttle box according to the filtered result.
5. The method according to claim 4, wherein The modifying the historical state of the target tab node according to the field identification sequence and the action function includes: When the action function indicates adding a field, for each field identification in the field identification sequence, determine whether each field identification exists in the current field list of the target tab node; If not, add each field identification to the current field list of the target tab node to obtain a target field list; set the status of each target field in the target field list to enabled; If so, set the status of each current field in the current field list to enabled.
6. The method according to claim 4, characterized in that, The modifying the historical state of the target tab node according to the field identification sequence and the action function includes: When the action function indicates deleting a field, determine whether each current field in the current field list of the target tab node exists in the field identification sequence; If so, delete the current fields in the current field list that exist in the field identification sequence, and set the status of the remaining current fields to enabled; If not, set the status of each current field in the current field list to enabled.
7. The method according to claim 4, characterized in that The modifying the historical state of the target tab node according to the field identification sequence and the action function includes: When the action function indicates adjusting the field order, determine whether the order of each current field in the current field list of the target tab node is consistent with the order of the field identifications in the field identification sequence; If so, set the status of each current field in the current field list to enabled; If not, adjust the order of each current field in the current field list of the target tab node to the order of the field identifications in the field identification sequence, and set the status of each current field in the current field list with adjusted order to enabled.
8. The method according to claim 4, wherein Generate the state tree of the Tabs multi-tab according to the following steps, including: Obtain the code file information of the Tabs multi-tab, and the code file information pre-defines multiple Tab labels and their nesting relationships; From the multiple Tab labels and their nesting relationships, obtain the id of each tab and the list of sub-tabs; Identify the hierarchical size and association information between the id of each tab and the list of sub-tabs; According to the hierarchical size, divide each tab into a root tab node and sub-tab nodes; According to the association information, determine the corresponding sub-tab nodes to be inserted on each root tab node to obtain the state tree of the Tabs multi-tab.
9. The method according to claim 4, wherein The comparing the traversed tab node with the operation target object identifier includes: Input the traversed tab node into a preset tab feature encoder to output a tab feature encoding; Input the operation target object identifier into a preset identifier encoder to output an identifier feature encoding; Perform non-linear transformations on the tab feature encoding and the identifier feature encoding respectively to obtain a tab feature vector and an identifier feature vector; Calculate the cosine similarity between the tab feature vector and the identifier feature vector; Based on the cosine similarity, determine the target tab node that matches the operation target object identifier.
10. A multi-dimensional data management system based on a spreadsheet, characterized in that, The system includes: A response module, configured to update the table structure and table data of the spreadsheet in response to an edit operation instruction for the spreadsheet displayed on the client; the edit operation instruction includes at least one of a drag instruction for freely combining rows and columns of the spreadsheet, a hide and filter instruction for hiding and filtering rows and columns, and a sorting instruction for sorting data of rows and columns; An update module, configured to capture the timestamp corresponding to the edit operation instruction, use the timestamp as an index, and the updated table structure and table data as historical data modification records, and store the mapping relationship between the index and the historical data modification records; A query module, configured to query, from the mapping relationship, multiple historical data modification records corresponding to the time range carried by the historical operation record query instruction when receiving a historical operation record query instruction input by the client; A display module, configured to sequentially display the multiple historical data modification records in chronological order of the time axis.
Citation Information
Patent Citations
Page updating method, device, storage medium and electronic equipment
CN114036417A
Table processing method and device, electronic equipment and storage medium
CN118939643A
Change-oriented electronic list application
CN1904879A
Efficient use of TRIE data structure in databases
IN202047044892A
All-Electronic Ecosystems for Design and Collaboration
US20150271218A1
Cited By
Cell operation history tracing method and system for spreadsheet
CN120929497A
Spreadsheet multi-tab data processing method and system
CN122065790A
Spreadsheet multi-tab data processing method and system
CN122065790B
