Bill of materials sub-assembly nesting transaction method and system
Patent Information
- Application Number
- CN202611093999.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-22
- Publication Date
- 2026-10-09
AI Technical Summary
[0004]本发明的目的是提供一种物料清单子装配嵌套交易方法和系统,解决了现有技术中物料清单(BOM)的子装配无法作为具有工程语义的独立商品进行多层嵌套、版本管理及电商化交易的问题
[0026]本发明的有益效果为:通过将子装配BOM节点映射为独立的套件SKU,使其既能作为独立商品进行发布、定价和直接采购,又能保留在父级BOM中的嵌套引用关系,从而打通了工程BOM管理与电商交易的壁垒。
Smart Images

Figure CN122887569A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the fields of supply chain and e-commerce technology, and in particular to a method and system for nested transactions in bill of materials assembly. Background Technology
[0002] In the current context of deep integration between modern manufacturing and e-commerce, the Bill of Materials (BOM), as the core data model of product structure, faces new challenges in its management. While traditional ERP / PLM systems (such as SAP and Oracle) can construct multi-layered BOM tree structures and organize assembly relationships through "virtual components," their core design serves internal enterprise production planning. Sub-assemblies exist only as management nodes and cannot be published, priced, or traded as independent commodities, making it difficult for makers or suppliers to directly sell mature modules such as "motherboard sub-assemblies." Meanwhile, the "package" or "combination" functions offered by mainstream e-commerce platforms (such as Taobao, JD.com, and Amazon) are essentially static sales packaging, lacking engineering semantic support. They do not participate in core calculations such as BOM expansion and cost accounting, nor do they support multi-layered nested structures of "packages containing sub-packages," and are usually uneditable and non-reusable. Furthermore, while existing configurable product solutions (such as Dell server customization) allow users to select options, these options are predefined by the platform, preventing deep user-defined nesting, and the configuration results cannot be copied or integrated by others. More importantly, existing technologies generally lack effective version management for sub-assemblies. When the underlying modules are updated, the upper-level BOM cannot detect it, which can easily lead to version inconsistencies.
[0003] Therefore, there is an urgent need for a technical solution that can break down the barriers between engineering BOM and e-commerce transactions, so that subassemblies can maintain the integrity of their engineering semantics and can be published, shared, procured and version controlled as independent "engineering units". Summary of the Invention
[0004] The purpose of this invention is to provide a method and system for nested transactions of bill of materials (BOM) sub-assemblies, which solves the problem in the prior art that sub-assemblies of the BOM cannot be nested in multiple layers, managed in versions, and traded in e-commerce as independent products with engineering semantics.
[0005] To achieve the above-mentioned objectives, the technical solution adopted by this invention is as follows: a method for nested transactions of sub-assemblies in a bill of materials, comprising: constructing a bill of materials data architecture that supports multi-level nesting, wherein the data architecture sets up two types of data carriers: BOM main unit and material item unit; the BOM main unit is used to store a unique BOM identifier and an optional parent BOM association identifier, and the material item unit is used to store a unique material item identifier, a belonging BOM identifier, and an optional sub-assembly association identifier;
[0006] Identify the sub-assembly association identifier in the material item unit, determine the BOM main unit corresponding to the identifier as the sub-assembly BOM node, and establish the nested reference relationship between the current parent BOM and the sub-assembly BOM node;
[0007] During the creation or update of nested reference relationships, circular reference checks, nesting depth checks, and category matching checks are performed simultaneously. If any check fails, the creation or update operation of the reference relationship is rejected.
[0008] Configure an independent attribute set for the verified sub-assembly BOM node. The independent attribute set shall include at least three types of attributes: version identifier, release status, and access permissions.
[0009] In response to the release request, the target sub-assembly BOM node is mapped to an independent kit SKU and listed as a tradable product, while the nested reference relationship of the parent BOM to the sub-assembly BOM node is preserved;
[0010] In response to a procurement request, differentiated transaction processing is performed based on the procurement objective: if the procurement objective is an independent kit SKU, the corresponding procurement item is generated directly; if the procurement objective is a parent BOM, all levels of sub-assembly BOM nodes are recursively expanded to the bottom material item, and a complete procurement list is generated based on the bottom material item.
[0011] Based on the established nested reference relationships, the cost accounting, inventory statistics, and abnormal status aggregation calculations of the entire BOM are recursively completed.
[0012] As an improvement, the execution logic of the circular reference check is as follows: starting from the sub-assembly BOM node to be connected, traverse all its subordinate sub-assembly nodes downwards along the nested reference chain. If the unique identifier of the current parent BOM appears in the traversal path, it is determined that there is a risk of circular reference and the operation is rejected. The nesting depth check adopts a configurable maximum level threshold, with a default maximum level of 5. When the overall nesting depth exceeds the threshold after adding a new reference, the effect of the current reference relationship is terminated.
[0013] As an improvement, the execution logic of the category matching verification is as follows: extract the category attribute parameters recorded in the current material item unit, and compare them with the kit category parameters corresponding to the subassembly BOM node to be referenced. If the parameters do not match, the establishment of nested reference relationship is prohibited.
[0014] As an improvement, the cost accounting and inventory statistics support a bottom-up aggregation mode: firstly calculate the unit cost and available inventory of all bottom-level material items, and then aggregate upwards layer by layer according to the number of references of each level of sub-assembly BOM node, finally obtaining the total cost and total inventory data of the root node BOM.
[0015] As an improvement, the recursive operation also supports a top-down constraint decomposition mode: the total budget, total demand quantity, or inventory allocation constraints of the root node BOM are decomposed layer by layer along the nested reference link and passed to each sub-assembly BOM node as the basis for resource allocation of the lower-level nodes.
[0016] As an improvement, the execution rule for the aggregation of abnormal states is as follows: when the underlying material item has mismatched product information, missing price data, insufficient inventory, or version conflict issues in the sub-assembly node, an abnormal label is marked for the corresponding node, and the abnormal information is passed up level by level along the nested reference relationship, and finally the abnormal state of the entire chain is aggregated and displayed in the parent BOM node.
[0017] As an improvement, the nested reference relationship supports two modes: fixed version reference and dynamic version reference. The fixed version reference points to a specified historical version of the sub-assembly BOM node. When the sub-assembly version is updated, the reference relationship is not automatically changed, but only an update notification is pushed. The dynamic version reference points to the latest available version of the sub-assembly BOM node. After the sub-assembly version is updated, the corresponding reference relationship is automatically updated synchronously.
[0018] As an improvement, an independent authorization sharing step for sub-assemblies is also included: in response to a sharing request, a unique access authorization credential is generated for the target sub-assembly BOM node. The recipient can obtain the complete structural data of the corresponding sub-assembly BOM with this credential, and this sharing operation does not change the original access permission settings of its parent BOM.
[0019] As an improvement, it also includes a step for visualizing the nested structure: presenting the complete nested hierarchy of the BOM in a tree topology, with each node synchronously displaying its version number, release status, nesting depth, and exception flag, and supporting clicking on a node to jump to the corresponding BOM's detailed editing interface.
[0020] A nested transaction system for sub-assemblies of bill of materials, characterized in that it includes: a data architecture construction module, used to construct a nested bill of materials data architecture containing BOM main units and material item units, and to store the identification information and associated attributes of each unit;
[0021] The nested reference management module is used to identify the sub-assembly association identifier and establish the reference relationship between the parent BOM and the sub-assembly BOM node, while configuring independent version, status and permission attributes for the sub-assembly BOM node;
[0022] The reference validation module is used to perform circular reference validation, nesting depth validation, and category matching validation during the creation or update phase of reference relationships.
[0023] The product publishing module is used to respond to publishing requests, map sub-assembly BOM nodes to independent kit SKUs and list them as tradable products, while preserving the original nested reference relationships;
[0024] The transaction processing module is used to respond to procurement requests and perform differentiated processing based on procurement objectives, such as directly generating procurement items or recursively expanding to generate procurement lists.
[0025] The recursive operation module is used to perform cost accounting, inventory statistics, and abnormal status aggregation operations for the entire BOM based on nested reference relationships.
[0026] The beneficial effects of this invention are as follows: by mapping sub-assembly BOM nodes to independent kit SKUs, they can be published, priced, and directly purchased as independent products, while retaining the nested reference relationship in the parent BOM, thereby breaking down the barriers between engineering BOM management and e-commerce transactions.
[0027] When creating or updating nested reference relationships, circular reference checks, nesting depth checks, and category matching checks are performed simultaneously, effectively preventing data chaos, system infinite loops, or business logic errors caused by incorrect references, and ensuring the robustness of the BOM structure.
[0028] Based on the established nested reference relationships, the system can automatically and recursively complete the cost accounting, inventory statistics, and abnormal status aggregation of the entire BOM. This not only improves management efficiency but also allows for bottom-up data aggregation or top-down constraint decomposition, providing precise support for decision-making. Attached Figure Description
[0029] Figure 1 This is a flowchart of a nested transaction method for sub-assembly of a bill of materials according to the present invention.
[0030] Figure 2 This is an architectural block diagram of a bill of materials sub-assembly nested transaction system according to the present invention. Detailed Implementation
[0031] To make the content of this invention easier to understand, the technical solutions of the embodiments of this invention will be clearly and completely described below with reference to the accompanying drawings. Identical components are represented by the same reference numerals. It should be noted that the terms "front," "rear," "left," "right," "up," and "down" used in the following description refer to directions in the accompanying drawings, while the terms "inner" and "outer" refer to directions toward or away from the geometric center of a specific component, respectively.
[0032] like Figure 1 As shown, a method for nested transactions of sub-assemblies in a bill of materials (BOM) includes: constructing a BOM data architecture that supports multi-level nesting, wherein the data architecture sets up two types of data carriers: BOM main units and material item units; the BOM main units are used to store the unique BOM identifier and optional parent BOM association identifiers, and the material item units are used to store the unique material item identifier, the BOM identifier to which it belongs, and optional sub-assembly association identifiers; identifying the sub-assembly association identifier in the material item unit, determining the BOM main unit corresponding to the identifier as the sub-assembly BOM node, and establishing a nested reference relationship between the current parent BOM and the sub-assembly BOM node; during the creation or update of the nested reference relationship, synchronously performing circular reference verification, nesting depth verification, and category matching verification, and rejecting the creation or update operation of the reference relationship if any verification item fails; configuring an independent attribute set for the sub-assembly BOM node that passes the verification, wherein the independent attribute set includes at least three types of attributes: version identifier, release status, and access permissions; responding to the release request, mapping the target sub-assembly BOM node to an independent kit SKU and listing it as a tradable product, while retaining the parent BOM's view of the sub-assembly BOM. Nested reference relationships among nodes; responding to procurement requests, performing differentiated transaction processing based on procurement objectives: if the procurement objective is an independent kit SKU, the corresponding procurement item is directly generated; if the procurement objective is a parent BOM, all levels of sub-assembly BOM nodes are recursively expanded to the bottom-level material items, and a complete procurement list is generated based on the bottom-level material items; based on the established nested reference relationships, cost accounting, inventory statistics, and abnormal status aggregation calculations for the entire BOM are recursively completed.
[0033] The Bill of Materials (BOM) is a technical data model describing the product structure, recording the quantitative relationships and hierarchical affiliations between products, components, sub-assemblies, and basic materials. A sub-assembly is an intermediate assembly unit composed of multiple material items; it can be a component of a higher-level BOM or exist independently. Nested references refer to the hierarchical reference relationship formed by linking material items in a parent BOM to another BOM unit through an association identifier, unlike traditional copy-and-paste inclusion. Standalone Kit SKUs encode sub-assembly BOM nodes as independent products using stock keeping units and assign them independent pricing, inventory, and sales attributes in the transaction system. Fixed version references and dynamic version references refer to sub-assembly references pointing to specific historical versions or always pointing to the latest released version, respectively, to control the impact of version changes on the upper-level BOM.
[0034] In addition, the BOM main unit record fields include: bom_id (primary key), bom_version, parent_bom_id (can be null), creator, create_time, and status; the material item unit record fields include: item_id (primary key), bom_id (foreign key), material_code, quantity, unit, and sub_bom_id (can be null, pointing to another BOM main unit). When sub_bom_id is not null, it indicates that the material item is a sub-assembly reference. These two types of units form a directed acyclic graph (DAG) structure through bom_id and sub_bom_id, providing a data foundation for subsequent recursive operations.
[0035] like Figure 1 As shown, when generating a complete purchase order, if the underlying material items are already associated with supplier quotations or historical purchase prices, the unit price is automatically filled in according to the priority order of "most recent valid quotation > average purchase price > default reference price," and the total purchase budget is calculated cumulatively. If a material item's price is missing, the material item is marked as "pending inquiry" and listed separately in the list, without affecting the normal procurement process of other items.
[0036] like Figure 1 As shown, the execution logic of the circular reference check is as follows: starting from the sub-assembly BOM node to be connected, traverse all its subordinate sub-assembly nodes downwards along the nested reference chain. If the unique identifier of the current parent BOM appears in the traversal path, it is determined that there is a risk of circular reference and the operation is rejected. The nesting depth check uses a configurable maximum level threshold, with a default maximum level of 5. When the overall nesting depth exceeds the threshold after adding a reference, the current reference relationship is terminated. The execution logic of the category matching check is as follows: extract the category attribute parameters recorded in the current material item unit and compare them with the kit category parameters corresponding to the sub-assembly BOM node to be referenced. If the parameters do not match, the establishment of a nested reference relationship is prohibited. The cost accounting and inventory statistics support a bottom-up aggregation mode: first calculate the unit cost and available inventory of all bottom-level material items, and then aggregate upwards layer by layer according to the number of references of each level of sub-assembly BOM node, finally obtaining the total cost and total inventory data of the root node BOM.
[0037] Secondly, circular reference checks should be performed within a database transaction, and row-level locks should be applied to the relevant BOM nodes before the check is completed to prevent concurrent operations from causing temporary circular references. If the check fails, the transaction should be rolled back to ensure data consistency. Furthermore, the check algorithm can employ depth-first search (DFS) or topological sorting, with a time complexity of O(N+E), where N is the number of nodes and E is the number of reference edges, to ensure system responsiveness under high concurrency.
[0038] like Figure 1 As shown, the recursive operation also supports a top-down constraint decomposition mode: the total budget, total demand quantity, or inventory allocation constraints of the root node BOM are decomposed layer by layer along the nested reference chain and passed to each sub-assembly BOM node as the basis for resource allocation of lower-level nodes. The execution rule for the aggregation of abnormal states is as follows: when a bottom-level material item has mismatched product information, missing price data, insufficient inventory, or a version conflict problem in a sub-assembly node, an abnormal label is marked for the corresponding node, and the abnormal information is passed up the nested reference relationship level by level, finally aggregating and displaying the entire abnormal state at the parent BOM node. The nested reference relationship supports two modes: fixed version reference and dynamic version reference; the fixed version reference points to a specified historical version of the sub-assembly BOM node, and the reference relationship is not automatically changed when the sub-assembly version is updated, only an updateable prompt is pushed; the dynamic version reference points to the latest available version of the sub-assembly BOM node, and the corresponding reference relationship is automatically updated after the sub-assembly version is updated.
[0039] like Figure 1 As shown, it also includes a sub-assembly independent authorization sharing step: In response to a sharing request, a unique access authorization credential is generated for the target sub-assembly BOM node. The recipient can use this credential to obtain the complete structural data of the corresponding sub-assembly BOM, and this sharing operation does not change the original access permission settings of its parent BOM. It also includes a nested structure visualization step: The complete nesting hierarchy of the BOM is presented in a tree topology structure. Each node synchronously displays its version number, release status, nesting depth, and exception indicator, and supports clicking on a node to jump to the detailed editing interface of the corresponding BOM.
[0040] like Figure 2As shown, a nested transaction system for sub-assemblies in a bill of materials (BOM) is characterized by comprising: a data architecture construction module for constructing a nested BOM data architecture containing BOM main units and material item units, storing the identification information and associated attributes of each unit; a nested reference management module for identifying sub-assembly association identifiers and establishing reference relationships between parent BOM and sub-assembly BOM nodes, while configuring independent version, status, and permission attributes for sub-assembly BOM nodes; a reference verification module for performing circular reference verification, nesting depth verification, and category matching verification during the creation or update phase of reference relationships; a product publishing module for responding to publishing requests, mapping sub-assembly BOM nodes to independent kit SKUs and listing them as tradable products, while retaining the original nested reference relationships; a transaction processing module for responding to procurement requests, performing differentiated processing based on procurement objectives, such as directly generating procurement items or recursively expanding to generate procurement lists; and a recursive calculation module for performing cost accounting, inventory statistics, and abnormal status aggregation calculations for the entire BOM based on nested reference relationships.
[0041] In addition, the system provides standard RESTful APIs or GraphQL interfaces for external ERP, MES, and PLM systems to call, supporting the import, export, validation, and transaction status synchronization of BOM data. Interface permissions are managed through API Keys or OAuth 2.0 to ensure secure data transmission. Simultaneously, the system supports batch import of bills of materials (e.g., via Excel or CSV templates), automatically identifies sub-assembly associations and triggers validation processes, reducing manual data entry costs for users.
[0042] During use, a multi-level nested Bill of Materials (BOM) data architecture is constructed, containing two types of data carriers: BOM main units and material item units. By identifying the sub-assembly association identifiers in the material items, a nested reference relationship is established between the parent BOM and the sub-assembly BOM nodes. When creating or updating this relationship, circular references, nesting depth, and category matching checks are performed simultaneously. After the checks pass, an independent set of attributes containing version identifiers, release status, and access permissions is configured for the sub-assembly BOM node. Subsequently, in response to release requests, the sub-assembly BOM node can be mapped to an independent kit SKU and listed as a tradable product, while retaining its nested reference relationship. In the procurement process, the system performs differentiated processing based on whether the procurement target is an independent kit SKU or the parent BOM, either directly generating procurement items or recursively expanding to the underlying material items to generate a complete procurement list. Finally, based on the established nested reference relationship, the system can recursively complete the cost accounting, inventory statistics, and abnormal status aggregation calculations for the entire BOM hierarchy.
[0043] The above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.
Claims
1. A method for nested transactions in a bill of materials sub-assemblies, characterized in that, include: Construct a bill of materials (BOM) data architecture that supports multi-level nesting, wherein the data architecture sets up two types of data carriers: BOM main unit and material item unit; The BOM main unit is used to store the unique BOM identifier and the optional parent BOM association identifier, and the material item unit is used to store the unique material item identifier, the BOM identifier to which it belongs, and the optional sub-assembly association identifier. Identify the sub-assembly association identifier in the material item unit, determine the BOM main unit corresponding to the identifier as the sub-assembly BOM node, and establish the nested reference relationship between the current parent BOM and the sub-assembly BOM node; During the creation or update of nested reference relationships, circular reference checks, nesting depth checks, and category matching checks are performed simultaneously. If any check fails, the creation or update operation of the reference relationship is rejected. Configure an independent attribute set for the verified sub-assembly BOM node. The independent attribute set shall include at least three types of attributes: version identifier, release status, and access permissions. In response to the release request, the target sub-assembly BOM node is mapped to an independent kit SKU and listed as a tradable product, while the nested reference relationship of the parent BOM to the sub-assembly BOM node is preserved; In response to a procurement request, differentiated transaction processing is performed based on the procurement objective: if the procurement objective is an independent suite SKU, the corresponding procurement item is generated directly; If the procurement target is the parent BOM, then recursively expand all levels of sub-assembly BOM nodes down to the bottom material items, and generate a complete procurement list based on the bottom material items. Based on the established nested reference relationships, the cost accounting, inventory statistics, and abnormal status aggregation calculations of the entire BOM are recursively completed.
2. The method for nested transactions in a bill of materials sub-assembly according to claim 1, characterized in that, The execution logic for the circular reference check is as follows: starting from the sub-assembly BOM node to be connected, traverse all its subordinate sub-assembly nodes downwards along the nested reference chain. If the unique identifier of the current parent BOM appears in the traversal path, it is determined that there is a risk of circular reference and the operation is rejected. The nesting depth check uses a configurable maximum level threshold, with a default maximum level of 5. When the overall nesting depth exceeds the threshold after adding a new reference, the current reference relationship is terminated.
3. The method for nested transactions in a bill of materials sub-assembly according to claim 1, characterized in that, The execution logic of the category matching verification is as follows: extract the category attribute parameters recorded in the current material item unit, and compare them with the kit category parameters corresponding to the subassembly BOM node to be referenced. If the parameters do not match, the establishment of nested reference relationship is prohibited.
4. The method for nested transactions in a bill of materials sub-assembly according to claim 1, characterized in that, The cost accounting and inventory statistics support a bottom-up aggregation mode: first, calculate the unit cost and available inventory of all bottom-level material items, and then aggregate upwards layer by layer according to the number of references of each level of sub-assembly BOM node, finally obtaining the total cost and total inventory data of the root node BOM.
5. The method for nested transactions in a bill of materials sub-assembly according to claim 1, characterized in that, The recursive operation also supports a top-down constraint decomposition mode: the total budget, total demand quantity, or inventory allocation constraints of the root node BOM are decomposed layer by layer along the nested reference link and passed to each sub-assembly BOM node as the basis for resource allocation of the lower-level nodes.
6. The method for nested transactions in a bill of materials sub-assembly according to claim 1, characterized in that, The execution rule for the aggregation of abnormal states is as follows: when the underlying material item has mismatched product information, missing price data, insufficient inventory, or version conflict issues in the sub-assembly node, an abnormal label is marked for the corresponding node, and the abnormal information is passed up level by level along the nested reference relationship, and finally the abnormal state of the entire chain is aggregated and displayed in the parent BOM node.
7. The method for nested transactions in a bill of materials sub-assembly according to claim 1, characterized in that, The nested reference relationship supports two modes: fixed version reference and dynamic version reference. The fixed version reference points to a specified historical version of the sub-assembly BOM node. When the sub-assembly version is updated, the reference relationship is not automatically changed, but only an update notification is pushed. The dynamic version reference points to the latest available version of the sub-assembly BOM node. After the sub-assembly version is updated, the corresponding reference relationship is automatically updated synchronously.
8. The method for nested transactions in a bill of materials sub-assembly according to claim 1, characterized in that, It also includes a subassembly independent authorization sharing step: in response to a sharing request, a unique access authorization credential is generated for the target subassembly BOM node. The recipient can obtain the complete structure data of the corresponding subassembly BOM with this credential, and this sharing operation does not change the original access permission settings of its parent BOM.
9. The method for nested transactions in a bill of materials sub-assembly according to claim 1, characterized in that, It also includes a step for visualizing the nested structure: presenting the complete nested hierarchy of the BOM in a tree topology, with each node synchronously displaying its version number, release status, nesting depth, and exception flag, and supporting clicking on a node to jump to the corresponding BOM's detailed editing interface.
10. A bill of materials sub-assembly nested transaction system, characterized in that, include: The data architecture construction module is used to build a nested bill of materials data architecture that includes BOM main units and material item units, and stores the identification information and associated attributes of each unit; The nested reference management module is used to identify the sub-assembly association identifier and establish the reference relationship between the parent BOM and the sub-assembly BOM node, while configuring independent version, status and permission attributes for the sub-assembly BOM node; The reference validation module is used to perform circular reference validation, nesting depth validation, and category matching validation during the creation or update phase of reference relationships. The product publishing module is used to respond to publishing requests, map sub-assembly BOM nodes to independent kit SKUs and list them as tradable products, while preserving the original nested reference relationships; The transaction processing module is used to respond to procurement requests and perform differentiated processing based on procurement objectives, such as directly generating procurement items or recursively expanding to generate procurement lists. The recursive operation module is used to perform cost accounting, inventory statistics, and abnormal status aggregation operations for the entire BOM based on nested reference relationships.