An ERP product software installation package generation method, device and medium

CN117111968BActive Publication Date: 2026-09-25INSPUR GENERSOFT CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311069546.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-08-23
Publication Date
2026-09-25
Estimated Expiration
2043-08-23

AI Technical Summary

Technical Problem

[0004]本说明书一个或多个实施例提供了一种ERP产品的软件安装包生成方法、设备及介质,用于解决如下技术问题:ERP产品在更新换代的过程中存在较多补丁文件,容易造成补丁文件积累的情况,传统的安装包制作方式无法满足ERP产品的更新需求,增加了额外的人工测试成本,测试效率和测试覆盖程度较低

Benefits of technology

[0021]本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:通过上述技术方案,在安装包生成请求下,触发生成安装包操作,针对安装包生成请求,确定发布的安装包文件数据和补丁,通过指定历史版本安装包文件数据和多个历史补丁的历史补丁信息,生成当前版本安装包文件,生成安装包过程中,不存在收集各模板原始交付物的过程,而是仅基于已发布的安装盘和补丁进行内容加工;对安装包内容的测试不是全量测试,而是依赖于已被完备测试的基础包和补丁,以兼顾测试覆盖率和测试效率;可以将安装包的制作过程集中处理,减少各模块开发人员的参与,从而提高了制作效率。此外,由于安装包的内容已在日常发布过程中经过测试,因此可以大大减少人工全量测试的时间和成本,提高测试效率和覆盖率,因此,可以在不降低产品质量的前提下,进一步提升安装包的生成和测试效率,满足企业对产品升级和迭代的需求。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117111968B_ABST
    Figure CN117111968B_ABST
Patent Text Reader

Abstract

The embodiment of the specification discloses an ERP product software installation package generation method, equipment and medium, relates to the ERP technical field, and the method comprises the following steps: receiving an installation package generation request of an ERP product, obtaining a plurality of historical version installation package information corresponding to a plurality of product historical versions of the ERP product based on a product identifier in the installation package generation request, determining a specified product historical version meeting the requirements according to an installation package generation time identifier in each historical version installation package information and the installation package generation request, so as to determine a specified historical version installation package file data of the specified product historical version; generating a patch search time interval based on a specified installation package generation time identifier of the specified product historical version, searching for a plurality of historical patches in the patch search time interval, obtaining historical patch information of each historical patch, and generating a current version installation package file through the specified historical version installation package file data and the historical patch information of the plurality of historical patches.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This manual relates to the field of ERP technology, and in particular to a method, device and medium for generating software installation packages for ERP products. Background Technology

[0002] Enterprise Resource Planning (ERP) products are generally characterized by numerous modules with significant differences between them. Traditional continuous integration (CI) methods and tools typically require a long integration time to generate a software installation package. After integration, complex full-module integration testing is required before release. In addition, another characteristic of ERP products is the large number of daily patches, which users often need to install themselves before they can use the software.

[0003] Because different patches often modify the same file multiple times, patches of a size comparable to the installation package itself often need to be downloaded. Therefore, ERP products frequently require the regular release of new installation packages so users can access the latest features and patches promptly. In the traditional installation package creation and testing process, developers of each module need to sequentially CI their original development deliverables, a cumbersome and time-consuming process that is prone to introducing new problems. Consequently, ERP products accumulate numerous patch files during updates, making traditional installation package creation methods unsuitable for meeting the update needs of ERP products. This increases additional manual testing costs, resulting in lower testing efficiency and coverage. Summary of the Invention

[0004] This specification provides one or more embodiments of a method, device, and medium for generating software installation packages for ERP products, which is used to solve the following technical problems: During the process of updating and replacing ERP products, there are many patch files, which can easily lead to the accumulation of patch files. Traditional installation package production methods cannot meet the update needs of ERP products, increase additional manual testing costs, and result in low testing efficiency and test coverage.

[0005] One or more embodiments of this specification employ the following technical solutions:

[0006] This specification provides one or more embodiments of a method for generating a software installation package for an ERP product. The method includes: receiving an installation package generation request for the ERP product; obtaining multiple historical version installation package information corresponding to multiple historical versions of the ERP product based on a product identifier in the installation package generation request; wherein the installation package generation request includes the product identifier of the ERP product, a request time identifier, and installation package requirement information; and the historical version installation package information includes an installation package generation time identifier and historical version installation package file data; determining a specified historical version of the product that meets the requirements based on the installation package generation time identifier in each of the historical version installation package information and the installation package generation request, and determining the specified historical version installation package file data of the specified historical version of the product; wherein the specified historical version installation package file data includes a list of historical installation files and historical installation database information; generating a patch search time interval based on the specified installation package generation time identifier of the specified historical version of the product, to search for multiple historical patches within the patch search time interval, and obtaining historical patch information for each historical patch; wherein the historical patch information includes patch modification file data and patch distribution time identifier; and generating a current version installation package file using the specified historical version installation package file data and the historical patch information of the multiple historical patches.

[0007] Further, generating the current version installation package file using the specified historical version installation package file data and the historical patch information of the multiple historical patches specifically includes: arranging the multiple historical patches in a specified time order according to the patch release time identifier in the historical patch information to generate a patch sequence of the multiple historical patches; generating patch update combination file data corresponding to the multiple historical patches using the patch sequence and the patch modification file data in the historical patch information; and performing file data processing on the specified historical version installation package file data of the specified product historical version based on the patch update combination file data corresponding to the multiple historical patches to generate the current version installation package file.

[0008] Further, by using the patch sequence and the patch modification file data in the historical patch information, patch update combination file data corresponding to the multiple historical patches is generated. Specifically, this includes: performing file data comparison and analysis on the patch modification file data of each historical patch in sequence according to the patch sequence, so as to divide the multiple historical patch file data in the multiple historical patches into change-type patch file data and fixed update-type patch file data, wherein the change-type patch file data includes added patch file data and deleted patch file data; setting change order identifiers for the change-type patch file data and setting update order identifiers for the fixed update-type patch file data according to the order of the multiple historical patches in the patch sequence; combining the change-type patch file data in the multiple historical patches based on the change order identifiers to generate patch change file data; filtering the update-type patch file data in the multiple historical patches according to the update order identifiers to determine patch update file data; and combining the patch change file data and the patch update file data to generate the patch update combination file data.

[0009] Further, based on the patch update combination file data corresponding to the multiple historical patches, file data processing is performed on the installation package file data of the specified historical version of the specified product to generate the current version installation package file. Specifically, this includes: using the patch update combination file data corresponding to the multiple historical patches as a benchmark, comparing the patch update combination file data corresponding to the multiple historical patches with the installation package file data of the specified historical version of the specified product to determine the change-type file data and update-type file data between the multiple historical patches and the specified product historical version, and determining the change type of the change-type file data, wherein the change-type file data includes added file data and deleted file data, and the change type includes added and deleted; based on the change-type file data and the change type of the change-type file data, determining the changed installation package file data; based on the update-type file data and the patch update combination file data, determining the updated installation package update file data; and merging the changed installation package file data and the updated installation package update file data to generate the current version installation package file.

[0010] Furthermore, based on the generation time identifier of the specified installation package of the specified historical version of the specified product, a patch search time interval is generated, specifically including: taking the generation time corresponding to the generation time identifier of the specified installation package of the specified historical version of the specified product as the time start point, and taking the request time identifier corresponding to the request time identifier in the installation package generation request as the time end point, to generate the patch search time interval.

[0011] Further, based on the installation package generation time identifier in each of the historical version installation package information and the installation package generation request, a qualified specified product historical version is determined. Specifically, this includes: determining the installation package requirement information in the installation package generation request, wherein the installation package requirement information includes new product delivery requirements and delivered product update requirements; when the installation package requirement information is a new product delivery requirement, a qualified specified product historical version is determined based on the installation package generation time identifier in each of the historical version installation package information, wherein the specified product historical version is the latest version among the multiple product historical versions; when the installation package requirement information is a delivered product update requirement, the historical installation package generation time of the product to be updated corresponding to the delivered product update requirement is obtained; and a specified product historical version corresponding to the product to be updated is determined based on the installation package generation time identifier in each of the historical version installation package information and the historical installation package generation time.

[0012] Further, according to the patch sequence, file data comparison and analysis are performed on the patch modification file data of each historical patch in turn to divide the historical patch file data into variable patch file data and fixed update patch file data. Specifically, this includes: searching for duplicate file data in the patch modification file data of the multiple historical patches according to the patch sequence, identifying at least one common file data in the patch modification file data of the multiple historical patches, and using the at least one common file data as update patch file data; setting a sequence identifier for each historical patch according to the arrangement order of the multiple historical patches in the patch sequence. The larger the sequence identifier, the later the corresponding arrangement order. Based on the sequence identifier of each historical patch, the patch modification file data of two specified historical patches that meet the requirements are compared and analyzed sequentially to obtain the specified change class patch file data of the two specified historical patches. The two specified historical patches are two adjacent historical patches, and the sequence identifier of any one of the specified historical patches is the minimum value among multiple sequence identifiers. Based on the specified change class patch file data and the patch modification file data corresponding to other historical patches, file data comparison and analysis are performed to determine the change class patch file data among the multiple historical patch file data.

[0013] Furthermore, before receiving the ERP product installation package generation request, the method further includes: setting up an ERP product patch timed monitoring task to obtain the number of patch distributions of the ERP product within a preset monitoring period, and summarizing the number of patch distributions within the period to obtain the total number of patch distributions of the ERP product; when the total number of patch distributions exceeds a preset threshold, triggering the installation package generation request operation.

[0014] This specification provides one or more embodiments of an ERP product software installation package generation device, comprising:

[0015] At least one processor; and,

[0016] A memory communicatively connected to the at least one processor; wherein,

[0017] The memory stores instructions executable by the at least one processor, which, when executed by the at least one processor, enable the at least one processor to:

[0018] The system receives an installation package generation request for an ERP product. Based on the product identifier in the installation package generation request, it obtains installation package information for multiple historical versions of the ERP product. The installation package generation request includes the product identifier, request time identifier, and installation package requirement information for the ERP product. The historical version installation package information includes an installation package generation time identifier and historical version installation package file data. Based on the installation package generation time identifier and the installation package generation request in each historical version installation package information, it determines a specified historical version of the product that meets the requirements, and then determines the specified historical version installation package file data for that specified historical version. The specified historical version installation package file data includes a list of historical installation files and historical installation database information. Based on the specified installation package generation time identifier of the specified historical version of the product, it generates a patch search time interval to search for multiple historical patches within the patch search time interval, and obtains historical patch information for each historical patch. The historical patch information includes patch modification file data and patch distribution time identifier. Finally, it generates the current version installation package file using the specified historical version installation package file data and the historical patch information of the multiple historical patches.

[0019] This specification provides one or more embodiments of a non-volatile computer storage medium storing computer-executable instructions, wherein the computer-executable instructions are configured as follows:

[0020] The system receives an installation package generation request for an ERP product. Based on the product identifier in the installation package generation request, it obtains installation package information for multiple historical versions of the ERP product. The installation package generation request includes the product identifier, request time identifier, and installation package requirement information for the ERP product. The historical version installation package information includes an installation package generation time identifier and historical version installation package file data. Based on the installation package generation time identifier and the installation package generation request in each historical version installation package information, it determines a specified historical version of the product that meets the requirements, and then determines the specified historical version installation package file data for that specified historical version. The specified historical version installation package file data includes a list of historical installation files and historical installation database information. Based on the specified installation package generation time identifier of the specified historical version of the product, it generates a patch search time interval to search for multiple historical patches within the patch search time interval, and obtains historical patch information for each historical patch. The historical patch information includes patch modification file data and patch distribution time identifier. Finally, it generates the current version installation package file using the specified historical version installation package file data and the historical patch information of the multiple historical patches.

[0021] The above-mentioned technical solutions adopted in the embodiments of this specification can achieve the following beneficial effects: Through the above technical solutions, upon receiving an installation package generation request, an installation package generation operation is triggered. For the installation package generation request, the released installation package file data and patches are determined. By specifying historical version installation package file data and historical patch information of multiple historical patches, the current version installation package file is generated. During the installation package generation process, there is no process of collecting the original deliverables of each template; instead, content processing is performed only based on the released installation disk and patches. The testing of the installation package content is not a full-scale test, but relies on the already fully tested base package and patches to balance test coverage and testing efficiency. The installation package creation process can be centrally processed, reducing the involvement of developers of each module, thereby improving production efficiency. Furthermore, since the content of the installation package has already been tested during daily releases, the time and cost of manual full-scale testing can be greatly reduced, improving testing efficiency and coverage. Therefore, without compromising product quality, the generation and testing efficiency of the installation package can be further improved, meeting the enterprise's needs for product upgrades and iterations. Attached Figure Description

[0022] To more clearly illustrate the technical solutions in the embodiments or prior art of this specification, the drawings used in the description of the embodiments or prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in this specification. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort. In the drawings:

[0023] Figure 1 A flowchart illustrating a method for generating a software installation package for an ERP product, as provided in an embodiment of this specification.

[0024] Figure 2 This is a schematic diagram of a software installation package generation device for an ERP product provided in an embodiment of this specification. Detailed Implementation

[0025] To enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this specification, and not all embodiments. Based on the embodiments of this specification, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of this specification.

[0026] Enterprise Resource Planning (ERP) products are generally characterized by numerous modules with significant differences between them. Traditional continuous integration (CI) methods and tools typically require a long integration time to generate a software installation package. After integration, complex full-module integration testing is required before release. In addition, another characteristic of ERP products is the large number of daily patches, which users often need to install themselves before they can use the software.

[0027] Because different patches often modify the same file multiple times, patches of a size comparable to the installation package itself often need to be downloaded. Therefore, ERP products frequently require the regular release of new installation packages so users can access the latest features and patches promptly. In the traditional installation package creation and testing process, developers of each module need to sequentially CI their original development deliverables, a cumbersome and time-consuming process that is prone to introducing new problems. Consequently, ERP products accumulate numerous patch files during updates, making traditional installation package creation methods unsuitable for meeting the update needs of ERP products. This increases additional manual testing costs, resulting in lower testing efficiency and coverage.

[0028] This specification provides a method for generating a software installation package for an ERP product. It should be noted that the execution entity in this specification can be a server or any device with data processing capabilities. Figure 1 This is a flowchart illustrating a method for generating a software installation package for an ERP product, as provided in an embodiment of this specification. Figure 1As shown, the main steps include the following:

[0029] Step S101: Receive the installation package generation request of the ERP product, and obtain the installation package information of multiple historical versions corresponding to multiple historical versions of the ERP product based on the product identifier in the installation package generation request.

[0030] The installation package generation request includes the product identifier of the ERP product, the request time identifier, and the installation package requirement information. The historical version installation package information includes the installation package generation time identifier and the historical version installation package file data.

[0031] Before receiving the ERP product installation package generation request, the method further includes: setting up an ERP product patch timed monitoring task to obtain the number of patch distributions for the ERP product within a preset monitoring period, and summarizing the number of patch distributions within the period to obtain the total number of patch distributions for the ERP product; when the total number of patch distributions exceeds a preset threshold, triggering the installation package generation request operation.

[0032] In the actual development of ERP products, there are scenarios involving upgrades to different versions of already delivered products, as well as scenarios involving the delivery of new products. In both scenarios, if there are a large number of patches for the ERP product, an installation package generation request can be triggered. In one embodiment of this specification, an ERP product patch timed monitoring task is set up to obtain the number of patch releases within a preset monitoring period, and the patch release counts within the period are summarized to obtain the total number of patch releases for the ERP product. When the total number of patch releases exceeds a preset threshold, an installation package generation request is triggered, which can avoid the problem of large patch files consuming a lot of memory due to a large number of patches. A periodic task can also be set up to periodically generate installation packages for newly generated patches.

[0033] In one embodiment of this specification, an installation package generation request for an ERP product is received. The installation package generation request includes the ERP product's product identifier, a request time identifier, and installation package requirement information. Based on the product identifier in the installation package generation request, multiple historical version installation package information corresponding to multiple historical versions of the ERP product corresponding to the installation package generation request is obtained. The historical version installation package information includes an installation package generation time identifier and historical version installation package file data. The file data here includes a file list, data structure description, and preset data description; complete information about the ERP product can be obtained through the file data.

[0034] Step S102: Based on the installation package generation time identifier and installation package generation request in the installation package information of each historical version, determine the specified historical version of the product that meets the requirements, so as to determine the specified historical version installation package file data of the specified historical version of the product.

[0035] Based on the installation package generation time identifier and the installation package generation request in the installation package information of each historical version, the specified historical version of the product that meets the requirements is determined. Specifically, this includes: determining the installation package requirement information in the installation package generation request, wherein the installation package requirement information includes new product delivery requirements and delivered product update requirements; when the installation package requirement information is a new product delivery requirement, determining the specified historical version of the product that meets the requirements based on the installation package generation time identifier in the installation package information of each historical version, wherein the specified historical version of the product is the latest version among the multiple product historical versions; when the installation package requirement information is a delivered product update requirement, obtaining the historical installation package generation time of the product to be updated corresponding to the delivered product update requirement; and determining the specified historical version of the product to be updated corresponding to the product to be updated based on the installation package generation time identifier and the historical installation package generation time in the installation package information of each historical version.

[0036] In one embodiment of this specification, the installation package requirement information includes new product delivery requirements and product update requirements. Under different installation package requirement information, the corresponding qualified product versions differ. When the installation package requirement information is a new product delivery requirement, the latest version of the product needs to be provided to the customer. Therefore, based on the installation package generation time identifier in each historical version installation package information, the latest version among multiple historical product versions is determined as the designated historical product version. It should be noted that the installation package generation time identifier represents the generation time of the installation package, i.e., the generation time of the product version. When the installation package requirement information is a product update requirement, under this requirement, it is necessary to determine the product version delivered by the customer at the time of initial delivery and obtain the historical installation package generation time of the product to be updated corresponding to the product update requirement. Based on the historical installation package generation time of the product to be updated, the installation package generation time identifier in each historical version installation package information is searched to determine the designated historical product version corresponding to the product to be updated. After determining the designated historical product version, the designated historical version installation package file data of the designated historical version is obtained. This designated historical version installation package file data includes a list of historical installation files and historical installation database information. The historical installation database data includes a data structure description and preset data.

[0037] Step S103: Generate a time identifier based on the specified installation package of the specified historical version of the specified product, generate a patch search time interval, and search for multiple historical patches within the patch search time interval to obtain the historical patch information of each historical patch.

[0038] Based on the generation time identifier of the specified installation package of the specified product historical version, a patch search time interval is generated. Specifically, the generation time is taken as the starting time and the request time corresponding to the request time identifier in the installation package generation request is taken as the ending time.

[0039] In one embodiment of this specification, ERP products typically require numerous daily patches, often necessitating manual installation of multiple patches before they can be used. The generation time identifier corresponding to the specified installation package generation time of a historical version of the product represents the generation time of the installation disk for that historical version. The request time identifier in the installation package generation request represents the current moment. Historical patch information within this time interval is retrieved. Based on the specified installation package generation time identifier of a historical version of the product, a patch search time interval is generated. Multiple historical patches within this time interval are searched, and historical patch information for each historical patch is obtained. This historical patch information includes patch modification file data and patch distribution time identifiers. The patch modification file data here includes the modified files, the modified table structures, and modified preset data, etc.

[0040] Step S104: Generate the current version installation package file by specifying the historical version installation package file data and the historical patch information of multiple historical patches.

[0041] The current version installation package file is generated using the specified historical version installation package file data and the historical patch information of the multiple historical patches. Specifically, this includes: arranging the multiple historical patches in a specified chronological order according to the patch release time identifier in the historical patch information to generate a patch sequence of the multiple historical patches; generating patch update combination file data corresponding to the multiple historical patches using the patch sequence and the patch modification file data in the historical patch information; and performing file data processing on the specified historical version installation package file data of the specified product historical version based on the patch update combination file data corresponding to the multiple historical patches to generate the current version installation package file.

[0042] In one embodiment of this specification, multiple historical patches are arranged in order of their release time from earliest to latest according to the patch release time identifier in the historical patch information, thereby generating a patch sequence of multiple historical patches.

[0043] By using the patch modification file data in the patch sequence and the historical patch information, patch update combination file data corresponding to the multiple historical patches is generated. Specifically, this includes: according to the patch sequence, performing file data comparison and analysis on the patch modification file data of each historical patch in turn to classify the multiple historical patch file data into change-type patch file data and fixed update-type patch file data, wherein the change-type patch file data includes added patch file data and deleted patch file data; according to the order of the multiple historical patches in the patch sequence, setting change order identifiers for the change-type patch file data and update order identifiers for the fixed update-type patch file data; based on the change order identifiers, combining the change-type patch file data in the multiple historical patches to generate patch change file data; according to the update order identifiers, filtering the update-type patch file data in the multiple historical patches to determine patch update file data; and combining the patch change file data and the patch update file data to generate patch update combination file data.

[0044] In one embodiment of this specification, the patch modification file data of each historical patch is compared and analyzed sequentially according to the patch sequence, so as to divide the multiple historical patch file data into variable patch file data and fixed update patch file data. Variable patch file data includes newly added patch file data and deleted patch file data. Here, newly added patch file data refers to the second patch file generated later compared with the first patch file generated earlier, where the second patch file has added file data. Deleted patch file data refers to the second patch file generated later compared with the first patch file generated earlier, where the second patch file has deleted file data.

[0045] The process involves several steps. First, following the patch sequence, a file data comparison analysis is performed on the patch modification files of each historical patch to categorize them into change-type patch files and fixed-update patch files. Specifically, this includes: searching for duplicate file data in the patch modification files of multiple historical patches according to the patch sequence to identify at least one common file, which is then designated as the update-type patch file. Second, a sequence identifier is set for each historical patch according to its order in the patch sequence, with a larger sequence identifier indicating a later position in the sequence. Third, based on the sequence identifier of each historical patch, a file data comparison analysis is performed on the patch modification files of two specified historical patches that meet the requirements, resulting in two specified change-type patch files. These two specified historical patches are adjacent, and the sequence identifier of any one of these specified historical patches is the minimum value among multiple sequence identifiers. Finally, a file data comparison analysis is performed on the specified change-type patch files and the patch modification files corresponding to other historical patches to determine the change-type patch files within the total number of historical patch files.

[0046] Next, following the order of multiple historical patches in the patch sequence, change order identifiers are set for change-type patch file data, and update order identifiers are set for fixed-update patch file data. Based on the change order identifiers, the change-type patch file data from these multiple historical patches is combined to generate patch change file data. According to the update order identifiers, the update-type patch file data from these multiple historical patches is filtered to determine the patch update file data. The patch change file data and the patch update file data are combined to generate the patch update combined file data. In other words, the file lists from multiple patch file data are merged, duplicate files retain only the last modified content, and files deleted during the intermediate process are removed to obtain the patch update combined file data. Similarly, modifications to table structures and preset data are also based on the content of the last patch change file data to ensure the accuracy and completeness of the merged result.

[0047] Based on the patch update combination file data corresponding to the multiple historical patches, file data processing is performed on the patch update combination file data to generate the current version installation package file. Specifically, this includes: using the patch update combination file data corresponding to the multiple historical patches as a benchmark, comparing the patch update combination file data corresponding to the multiple historical patches with the installation package file data of the specified historical version of the specified product, determining the change-type file data and update-type file data between the multiple historical patches and the specified product historical version, and determining the change type of the change-type file data, wherein the change-type file data includes added file data and deleted file data, and the change type includes added and deleted; based on the change-type file data and the change type of the change-type file data, determining the changed installation package file data; based on the update-type file data and the patch update combination file data, determining the updated installation package update file data; merging the changed installation package file data and the updated installation package update file data to generate the current version installation package file.

[0048] In one embodiment of this specification, patch update combination file data is generated by combining multiple patch file data and then merged with the installation package file data of a specified historical version of a specified product. Based on the patch update combination file data corresponding to multiple historical patches, the patch update combination file data is compared with the installation package file data of the specified historical version to determine the change-type file data and update-type file data between the multiple historical patches and the specified historical version of the product, and to determine the change type of the change-type file data. Similarly, change-type file data includes added file data and deleted file data, and the change type includes addition and deletion. Based on the change-type file data and the change type of the change-type file data, the changed installation package file data is determined; that is, if the change type is deletion, the file data is deleted; if the change type is addition, the file data is used as the updated file data. Based on the update-type file data and the patch update combination file data, the updated installation package update file data is determined, and the changed installation package file data and the updated installation package update file data are merged to generate the current version installation package file.

[0049] After generating the current version installation package file using the specified historical version installation package file data and the historical patch information of multiple historical patches, the method further includes: integrating the upgraded ERP product based on the current version installation package file, and performing general execution function tests on the upgraded ERP product. The testing of the installation package content is not a full-scale test, but rather relies on the already fully tested base package and patches, thus simultaneously ensuring test coverage and testing efficiency.

[0050] The above technical solution triggers the installation package generation operation upon receiving an installation package generation request. For each request, the released installation package file data and patches are determined. By specifying historical version installation package file data and historical patch information from multiple historical patches, the current version installation package file is generated. During installation package generation, there is no collection of original deliverables from various templates; instead, content processing is performed solely based on the released installation disk and patches. Testing of the installation package content is not a full-scale test but relies on fully tested base packages and patches to balance test coverage and efficiency. The installation package creation process can be centrally handled, reducing the involvement of individual module developers and thus improving efficiency. Furthermore, since the installation package content has already been tested during routine releases, the time and cost of manual full-scale testing can be significantly reduced, improving testing efficiency and coverage. Therefore, without compromising product quality, the generation and testing efficiency of installation packages can be further improved, meeting the enterprise's needs for product upgrades and iterations.

[0051] This specification also provides an embodiment of an ERP product software installation package generation device, such as... Figure 2 As shown, the device includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to:

[0052] The system receives an installation package generation request for an ERP product. Based on the product identifier in the request, it retrieves installation package information for multiple historical versions of the ERP product. The installation package generation request includes the ERP product identifier, request time identifier, and installation package requirement information. The historical version installation package information includes an installation package generation time identifier and historical version installation package file data. Based on the installation package generation time identifier and the request for each historical version installation package, it determines a specified historical version of the product that meets the requirements. It then determines the specified historical version installation package file data for that specified historical version. This specified historical version installation package file data includes a list of historical installation files and historical installation database information. Based on the specified installation package generation time identifier for that specified historical version of the product, it generates a patch search time interval to find multiple historical patches within that interval. It retrieves historical patch information for each historical patch, including patch modification file data and patch distribution time identifier. Finally, it generates the current version installation package file using the specified historical version installation package file data and the historical patch information for the multiple historical patches.

[0053] This specification also provides a non-volatile computer storage medium storing computer-executable instructions, wherein the computer-executable instructions are configured as follows:

[0054] The system receives an installation package generation request for an ERP product. Based on the product identifier in the request, it retrieves installation package information for multiple historical versions of the ERP product. The installation package generation request includes the ERP product identifier, request time identifier, and installation package requirement information. The historical version installation package information includes an installation package generation time identifier and historical version installation package file data. Based on the installation package generation time identifier and the request for each historical version installation package, it determines a specified historical version of the product that meets the requirements. It then determines the specified historical version installation package file data for that specified historical version. This specified historical version installation package file data includes a list of historical installation files and historical installation database information. Based on the specified installation package generation time identifier for that specified historical version of the product, it generates a patch search time interval to find multiple historical patches within that interval. It retrieves historical patch information for each historical patch, including patch modification file data and patch distribution time identifier. Finally, it generates the current version installation package file using the specified historical version installation package file data and the historical patch information for the multiple historical patches.

[0055] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the embodiments of apparatus, devices, and non-volatile computer storage media are basically similar to the method embodiments, so the descriptions are relatively simple; relevant parts can be referred to the descriptions of the method embodiments.

[0056] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.

[0057] The devices, media, and methods provided in the embodiments of this specification are one-to-one correspondences. Therefore, the devices and media also have similar beneficial technical effects as their corresponding methods. Since the beneficial technical effects of the methods have been described in detail above, the beneficial technical effects of the devices and media will not be repeated here.

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

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

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

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

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

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

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

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

[0066] The above description is merely one or more embodiments of this specification and is not intended to limit this specification. Various modifications and variations can be made to the one or more embodiments of this specification by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principle of one or more embodiments of this specification should be included within the scope of the claims of this specification.

Claims

1. A method for generating a software installation package for an ERP product, characterized in that, The method includes: Receive an installation package generation request for an ERP product, and based on the product identifier in the installation package generation request, obtain multiple historical version installation package information corresponding to multiple historical versions of the ERP product. The installation package generation request includes the product identifier of the ERP product, the request time identifier, and the installation package requirement information. The historical version installation package information includes the installation package generation time identifier and historical version installation package file data. Based on the installation package generation time identifier and the installation package generation request in each historical version installation package information, a specified product historical version that meets the requirements is determined, so as to determine the specified historical version installation package file data of the specified product historical version, wherein the specified historical version installation package file data includes a list of historical installation files and historical installation database information; Based on the specified installation package generation time identifier of the specified product historical version, a patch search time interval is generated to search for multiple historical patches within the patch search time interval and obtain the historical patch information of each historical patch, wherein the historical patch information includes patch modification file data and patch distribution time identifier; The current version installation package file is generated using the specified historical version installation package file data and the historical patch information of the multiple historical patches; Based on the installation package generation time identifier and the installation package generation request in the installation package information of each historical version, a specified historical version of the product that meets the requirements is determined, specifically including: Determine the installation package requirement information in the installation package generation request, wherein the installation package requirement information includes new product delivery requirements and product update requirements; When the installation package requirement information is a new product delivery requirement, the specified product historical version that meets the requirements is determined according to the installation package generation time identifier in each of the historical version installation package information, wherein the specified product historical version is the latest version among the multiple product historical versions; When the installation package requirement information is a product update requirement, obtain the historical installation package generation time of the product to be updated corresponding to the product update requirement. Based on the installation package generation time identifier and the historical installation package generation time in the installation package information of each historical version, determine the specified product historical version corresponding to the product to be updated.

2. The method for generating a software installation package for an ERP product according to claim 1, characterized in that, The current version installation package file is generated using the specified historical version installation package file data and the historical patch information of the multiple historical patches, specifically including: Based on the patch release time identifier in the historical patch information, the multiple historical patches are arranged in a specified time order to generate a patch sequence of the multiple historical patches; By using the patch sequence and the patch modification file data in the historical patch information, patch update combination file data corresponding to the multiple historical patches is generated; Based on the patch update combination file data corresponding to the multiple historical patches, file data processing is performed on the installation package file data of the specified historical version of the specified product to generate the current version installation package file.

3. The method for generating a software installation package for an ERP product according to claim 2, characterized in that, By using the patch sequence and the patch modification file data in the historical patch information, patch update combination file data corresponding to the multiple historical patches is generated, specifically including: According to the patch sequence, the patch modification file data of each historical patch is compared and analyzed in turn to divide the historical patch file data of the multiple historical patches into change patch file data and fixed update patch file data. The change patch file data includes newly added patch file data and deleted patch file data. According to the order of the multiple historical patches in the patch sequence, set a change order identifier for the change-type patch file data and set an update order identifier for the fixed update-type patch file data; Based on the change order identifier, the change-type patch file data in the multiple historical patches are combined to generate patch change file data; Based on the update order identifier, the update-type patch file data in the plurality of historical patches is filtered to determine the patch update file data; The patch change file data and the patch update file data are combined to generate the patch update combined file data.

4. The method for generating a software installation package for an ERP product according to claim 3, characterized in that, Based on the patch update combination file data corresponding to the multiple historical patches, file data processing is performed on the installation package file data of the specified historical version of the specified product to generate the current version installation package file, specifically including: Based on the patch update combination file data corresponding to the multiple historical patches, the patch update combination file data corresponding to the multiple historical patches is compared with the installation package file data of the specified historical version of the specified product to determine the change-type file data and update-type file data between the multiple historical patches and the specified product historical version, and to determine the change type of the change-type file data, wherein the change-type file data includes added file data and deleted file data, and the change type includes addition and deletion; Based on the modified file data and the type of change of the modified file data, determine the modified file data of the installation package; Based on the update class file data and the patch update combination file data, determine the updated installation package update file data; The modified installation package file data and the updated installation package file data are merged to generate the current version installation package file.

5. The method for generating a software installation package for an ERP product according to claim 1, characterized in that, Based on the generation time identifier of the specified installation package of the specified product historical version, a patch search time interval is generated, specifically including: The patch search time interval is generated by taking the generation time corresponding to the generation time identifier of the specified installation package of the specified product historical version as the time start and the request time corresponding to the request time identifier in the installation package generation request as the time end.

6. The method for generating a software installation package for an ERP product according to claim 3, characterized in that, According to the patch sequence, the patch modification file data of each historical patch is compared and analyzed sequentially to classify the historical patch file data into variable patch file data and fixed update patch file data, specifically including: According to the patch sequence, duplicate file data is searched for in the patch modification file data of the multiple historical patches to determine at least one common file data in the patch modification file data of the multiple historical patches, and the at least one common file data is used as update patch file data; According to the arrangement order of multiple historical patches in the patch sequence, set the sequence identifier of each historical patch, wherein the larger the sequence identifier, the later the corresponding arrangement order; Based on the sequence identifier of each historical patch, the patch modification file data of two specified historical patches that meet the requirements are compared and analyzed in turn to obtain the specified change class patch file data of the two specified historical patches. The two specified historical patches are two adjacent historical patches, and the sequence identifier of any one of the specified historical patches is the minimum value among multiple sequence identifiers. Based on the specified change-type patch file data and the patch modification file data corresponding to other historical patches, a file data comparison analysis is performed to determine the change-type patch file data among the multiple historical patch file data.

7. The method for generating a software installation package for an ERP product according to claim 6, characterized in that, Before receiving the ERP product installation package generation request, the method further includes: Set up a timed monitoring task for ERP product patches to obtain the number of patch releases for the ERP product within a preset monitoring period, and summarize the number of patch releases within the period to obtain the total number of patch releases for the ERP product. When the total number of patch distributions exceeds a preset threshold, an installation package generation request is triggered.

8. A software installation package generation device for an ERP product, characterized in that, The device includes: At least one processor; and, A memory communicatively connected to the at least one processor; wherein, The memory stores instructions executable by the at least one processor, which, when executed by the at least one processor, enable the at least one processor to: Receive an installation package generation request for an ERP product, and based on the product identifier in the installation package generation request, obtain multiple historical version installation package information corresponding to multiple historical versions of the ERP product. The installation package generation request includes the product identifier of the ERP product, the request time identifier, and the installation package requirement information. The historical version installation package information includes the installation package generation time identifier and historical version installation package file data. Based on the installation package generation time identifier and the installation package generation request in each historical version installation package information, a specified product historical version that meets the requirements is determined, so as to determine the specified historical version installation package file data of the specified product historical version, wherein the specified historical version installation package file data includes a list of historical installation files and historical installation database information; Based on the specified installation package generation time identifier of the specified product historical version, a patch search time interval is generated to search for multiple historical patches within the patch search time interval and obtain the historical patch information of each historical patch, wherein the historical patch information includes patch modification file data and patch distribution time identifier; The current version installation package file is generated using the specified historical version installation package file data and the historical patch information of the multiple historical patches; Based on the installation package generation time identifier and the installation package generation request in the installation package information of each historical version, a specified historical version of the product that meets the requirements is determined, specifically including: Determine the installation package requirement information in the installation package generation request, wherein the installation package requirement information includes new product delivery requirements and product update requirements; When the installation package requirement information is a new product delivery requirement, the specified product historical version that meets the requirements is determined according to the installation package generation time identifier in each of the historical version installation package information, wherein the specified product historical version is the latest version among the multiple product historical versions; When the installation package requirement information is a product update requirement, obtain the historical installation package generation time of the product to be updated corresponding to the product update requirement. Based on the installation package generation time identifier and the historical installation package generation time in the installation package information of each historical version, determine the specified product historical version corresponding to the product to be updated.

9. A non-volatile computer storage medium storing computer-executable instructions, characterized in that, The computer-executable instructions are set as follows: Receive an installation package generation request for an ERP product, and based on the product identifier in the installation package generation request, obtain multiple historical version installation package information corresponding to multiple historical versions of the ERP product. The installation package generation request includes the product identifier of the ERP product, the request time identifier, and the installation package requirement information. The historical version installation package information includes the installation package generation time identifier and historical version installation package file data. Based on the installation package generation time identifier and the installation package generation request in each historical version installation package information, a specified product historical version that meets the requirements is determined, so as to determine the specified historical version installation package file data of the specified product historical version, wherein the specified historical version installation package file data includes a list of historical installation files and historical installation database information; Based on the specified installation package generation time identifier of the specified product historical version, a patch search time interval is generated to search for multiple historical patches within the patch search time interval and obtain the historical patch information of each historical patch, wherein the historical patch information includes patch modification file data and patch distribution time identifier; The current version installation package file is generated using the specified historical version installation package file data and the historical patch information of the multiple historical patches; Based on the installation package generation time identifier and the installation package generation request in the installation package information of each historical version, a specified historical version of the product that meets the requirements is determined, specifically including: Determine the installation package requirement information in the installation package generation request, wherein the installation package requirement information includes new product delivery requirements and product update requirements; When the installation package requirement information is a new product delivery requirement, the specified product historical version that meets the requirements is determined according to the installation package generation time identifier in each of the historical version installation package information, wherein the specified product historical version is the latest version among the multiple product historical versions; When the installation package requirement information is a product update requirement, obtain the historical installation package generation time of the product to be updated corresponding to the product update requirement. Based on the installation package generation time identifier and the historical installation package generation time in the installation package information of each historical version, determine the specified product historical version corresponding to the product to be updated.

Citation Information

Patent Citations

  • Increment updating method, equipment and system

    CN104252364A

  • Service pack generation method and device, application updating method and device and electronic device

    CN110442377A