Automatic compilation system and method thereof

The automated compilation system solves the problems of manpower and time costs when updating business systems, achieves efficient and stable compilation processing, and ensures the normal operation of the system.

CN115309403BActive Publication Date: 2025-11-21DIGIWIN SOFTWARE CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210951487.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-09
Publication Date
2025-11-21
Estimated Expiration
2042-08-09

AI Technical Summary

Technical Problem

The existing business system requires users to manually compile the data during updates, which increases the manpower and time costs for clients and affects system performance.

Method used

Design an automatic compilation system, including a compilation module, a search module, an auxiliary file processing module, and a monitoring module. The system automatically executes the compilation process, generates compilation result data, and controls the number of parallel compilations to ensure the normal operation of the system.

Benefits of technology

It achieves automated compilation, reduces manual intervention, improves compilation efficiency and system stability, and enhances user satisfaction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115309403B_ABST
    Figure CN115309403B_ABST
Patent Text Reader

Abstract

The present application provides an automatic compiling system and method. The automatic compiling system includes a storage device and a processor. The storage device stores a plurality of modules. The processor executes the plurality of modules and receives source data for performing a compiling process. A compiling module performs a compiling process on the source data to generate a record file and a search module performs a search comparison according to a corresponding table to obtain a no-compile data table while the compiling process is being performed. A monitoring module controls the number of parallel compilations of the compiling module to be within a set value while the compiling module performs the compiling process. An auxiliary file processing module performs an auxiliary file reconstruction according to the source data to generate a corresponding auxiliary file, and then the monitoring module outputs a compiling result data according to the record file and the auxiliary file.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present invention relates to a compiling method of an application program, in particular, an automatic compiling system and method thereof. BACKGROUND

[0002] Business systems are used to provide business processes required for enterprises, such as Enterprise Resource Planning (ERP) systems, Customer Relationship Management (CRM) systems, Line-Of-Business (LOB) systems, and the like. However, these types of business systems are customized according to the needs of the enterprise / user, or are adjusted according to the systems to be interfaced. Therefore, when the system development end releases a new system version (such as a routine package) or a function package with new functions, the business system loaded on the client side must compile these update packages (i.e. routine package or function package) to allow the client-side business system to execute the contents of the update package. However, each update of the business system requires the user to select and confirm, resulting in an increase in the manpower and time cost of the client side, and the required performance of the compiling process affects the running status of the business system. SUMMARY

[0003] The present invention is directed to an automatic compiling system and method thereof, which can automatically perform a compiling process according to source data and the system of the local end to generate corresponding compiling result data.

[0004] According to an embodiment of the present invention, an automatic compiling system of the present invention includes a storage device and a processor. The storage device stores a plurality of modules. The processor is coupled to the storage device. The processor executes the plurality of modules and receives source data for performing a compiling process. The plurality of modules include a compiling module, a searching module, an attachment file processing module, and a monitoring module. The compiling module performs a compiling process on the source data to generate a record file. When the compiling module performs the compiling process, the searching module performs a searching comparison according to a corresponding table to obtain a compiling-exempt data table, and the monitoring module controls the number of compiling parallel of the compiling module to be within a set value. The attachment file processing module performs attachment file reconstruction according to the source data to generate a corresponding attachment file, and then the monitoring module outputs compiling result data according to the record file and the attachment file.

[0005] According to the embodiment of the present application, the automatic compiling method comprises the following steps: receiving source data for performing a compiling process; performing the compiling process on the source data by a compiling module to generate a record file, and performing a search comparison by a searching module according to a corresponding table to obtain a non-compiled data table during the compiling process; controlling the number of parallel compilations within a set value by a monitoring module during the compiling process performed by the compiling module; performing a library reconstruction according to the source data by a library processing module to generate a corresponding library; and outputting a compiling result data according to the record file and the library by the monitoring module.

[0006] Based on the above, the automatic compiling system and method of the present application can automatically perform a compiling process according to source data and a system of a local end to generate a corresponding compiling result data, and automatically monitor the number of parallel compilations to ensure that the system can simultaneously perform a compiling process and an original business item.

[0007] In order to make the above features and advantages of the present application more apparent, specific embodiments are described below in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF DRAWINGS

[0008] Figure 1 is a schematic diagram of an automatic compiling system of an embodiment of the present application;

[0009] Figure 2 is a flowchart of an automatic compiling method of an embodiment of the present application;

[0010] Figure 3 is a schematic diagram of the execution of a plurality of modules of an embodiment of the present application.

[0011] REFERENCE NUMERALS

[0012] 100: automatic compiling system;

[0013] 110: processor;

[0014] 120: storage device;

[0015] 121: compiling module;

[0016] 1211: program compiling unit;

[0017] 1212: screen compiling unit;

[0018] 1213: program linking unit;

[0019] 122: searching module;

[0020] 123: library processing module;

[0021] 124: monitoring module;

[0022] 200: data to be compiled;

[0023] 300: compiled result data;

[0024] S210, S220, S230, S240, S250, S260: steps. DETAILED DESCRIPTION

[0025] Reference will now be made in detail to the exemplary embodiments of the present application, examples of which are illustrated in the accompanying drawings. Wherever possible, the same reference numbers are used in the drawings and the description to refer to the same or like parts.

[0026] Figure 1 is a schematic diagram of an automatic compiling system according to an embodiment of the present application. Referring to Figure 1 , the automatic compiling system 100 includes a processor 110 and a storage device 120. The processor 110 is coupled to the storage device 120. The storage device 120 stores a plurality of modules, and the plurality of modules include a compiling module 121, a searching module 122, an attachment file processing module 123, and a monitoring module 124. In this embodiment, the automatic compiling system 100 can be, for example, set in a cloud server for users to connect and execute a business system (such as an enterprise resource planning (ERP) system, a customer relationship management (CRM) system, a line of business (LOB) system, and the like) also set in the cloud server, or in an embodiment, the automatic compiling system 100 can be set in a business system running on a local server in an enterprise to provide an automatic and fast compiling function through the compiling module 121 and the monitoring module 124 in the automatic compiling system 100.

[0027] In the present embodiment, the processor 110 can for example comprise a Central Processing Unit (CPU), or other programmable general purpose or special purpose microprocessors (Microprocessor), Digital Signal Processors (DSP), Application Specific Integrated Circuits (ASIC), Programmable Logic Devices (PLD), other similar processing circuitry, or a combination of these devices. The storage device 120 can comprise a memory and / or a database, wherein the memory can for example be a Non-Volatile Memory (NVM). The storage device 120 can store related programs, modules, systems or algorithms for implementing the embodiments of the present application, for being accessed and executed by the processor 110 to implement the related functions and operations described in the embodiments of the present application. In the present embodiment, the compiling module 121, the searching module 122, the attachment file processing module 123 and the monitoring module 124 can for example be implemented in a program language such as JSON (JavaScript Object Notation), Extensible Markup Language (XML) or YAML, but the present application is not limited thereto.

[0028] In the present embodiment, the user can execute the automatic compiling system 100, for example, through a personal computer device or an enterprise system, and input source data to be compiled into the automatic compiling system 100 for compiling processing. The source data is, for example, the system update data, the system routine update data, or the system new function data issued by the system development end, and the like. After the automatic compiling system 100 performs the compiling processing, the business system can execute the content of the source data.

[0029] Figure 2 is a flowchart of an automatic compiling method of an embodiment of the present application. Figure 3 is an execution schematic diagram of a plurality of modules of an embodiment of the present application. Referring to Figure 1 , Figure 2 and Figure 3 , the automatic compiling system 100 can execute the following steps S210-S260 to automatically perform the compiling processing and generate corresponding compiling result data 300. In step S210, the processor 110 receives source data (i.e. data to be compiled 200) for performing the compiling processing through the transceiver. In the present embodiment, the source data is, for example, system update data, system routine update data, or system new function data issued by the system development end, and the like. After the automatic compiling system 100 performs the compiling processing, the business system can execute the content of the aforementioned source data.

[0030] At step S220, the processor 110 performs a compiling process on the source data by executing the compiling module 121 to generate a record file. In this embodiment, the compiling module 121 compiles the source data (i.e. the data to be compiled 200) to convert a high-level programming language into an assembly language (or machine code). In one embodiment, the compiling module 121 performs a series of processes, including scanning, parsing, semantic analysis, intermediate code generation, optimization, and program code generation, on the data to be compiled 200 to obtain a program code suitable for the client system (e.g. the business system). Moreover, the compiling module 121 records the process of the compiling process to generate the record file.

[0031] At step S230, the processor 110 performs a search comparison on the corresponding table by the searching module 122 to obtain the non-compiled data table while the processor 110 performs the compiling process by the compiling module 121. In one embodiment, the corresponding table includes a data list and a hash value, and the searching module 122 performs a search comparison on the corresponding table based on a hash search method to obtain the non-compiled data table while the processor 110 performs the compiling process by the compiling module 121. For example, the corresponding table is a list including each program in the client business system and a hash value corresponding to each program. That is, the searching module 122 searches and compares each program in the system and its hash value while the compiling module 121 performs the compiling process. Then, the searching module 122 searches the program under compilation through the corresponding table to search for a program already existing in the client business system and not needing to be compiled again. In this way, the searching module 122 can generate the non-compiled data table (i.e. including the non-compiled program and the hash value or storage address corresponding to the program). The processor 110 can directly read the program stored in the storage device 120 according to the non-compiled data table, thereby improving the situation of repeated compilation of the program by the compiling module 121 to improve the efficiency of the compiling process.

[0032] At step S240, the processor 110 controls the number of parallel compilations to be within a set value by the monitoring module 124 while the processor 110 performs the compiling process by the compiling module 121. In this embodiment, the monitoring module 124 controls the number of parallel compilations (i.e. the number of parallel processes) to ensure that the compiling process does not affect the daily operation of the client business system while the compiling module 121 performs the compiling process. The monitoring module 124 controls the process of the compiling process and the required resources (i.e. the performance resources occupied) according to a queue mechanism.

[0033] In one embodiment, the compilation parallel number is related to the performance used by the compilation module 121 when performing the compilation process, and the monitoring module 124 controls the process parallel number of the compilation module 121 to be consistent with the compilation parallel number according to the compilation parallel number. For example, the system defaults or the user sets the parameters in the monitoring module 124, which is set to ensure that the compilation process performed by the compilation module 121 can only occupy one-third of the overall performance in the system (such as the business system of the client), or can only process 15 (i.e. parallel number) program compilation processes at the same time. In this way, through the control of the monitoring module 124, the automatic compilation system 100 can ensure that the compilation process performed by the compilation module 121 will not affect the daily operation of the client business system, thereby improving the user's use satisfaction. That is, the compilation parallel number is related to the bandwidth used by the automatic compilation system 100 and the total performance rate of the target system (i.e. the business system of the client), and the present application is not limited thereto.

[0034] In step S250, the processor 110 performs the subsidiary file reconstruction according to the source data through the subsidiary file processing module 123 to generate the corresponding subsidiary file. For example, when the system involves multiple languages or the reproduced picture belongs to multiple language system data, the processor 110 loads the corresponding text / picture script through the subsidiary file processing module 123 to the to-be-compiled data 200 and the already-compiled data to generate static subsidiary files (such as pictures with pre-arranged layouts). In this way, through the subsidiary file processing module 123, the time-consuming layout processing when opening the program can be avoided, thereby increasing the starting time of the program. That is, through the subsidiary file processing module 123, the opening reaction time can be greatly improved.

[0035] In one embodiment, when the subsidiary file processing module 123 performs the subsidiary file reconstruction, the searching module 122 performs the searching comparison to obtain the subsidiary data, wherein the subsidiary data is the subsidiary file stored in the storage device 120 without reconstruction. In another embodiment, the subsidiary file processing module 123 generates the static subsidiary file according to the source data and the target system.

[0036] In step S260, the processor 110 outputs the compilation result data 300 according to the record file and the subsidiary file through the monitoring module 124. In the present embodiment, the monitoring module 124 stores the already-compiled program in the storage device 120, and combines the record file and the subsidiary file of the compilation process into the compilation result data 300. In this way, the user can know the completion degree of the compilation process according to the record file in the compilation result data 300, and the record file can be, for example, an error program list (Error filelist), a compilation completion list, and a compilation completion degree, and the file format of the record file can be, for example, a log file (Logfile)

[0037] In the present embodiment, the compiling module 121 comprises a program compiling unit 1211, a screen compiling unit 1212 and a program linking unit 1213. The program compiling unit 1211 is configured to analyze the source data to compile the source data into program purpose data that is compatible with the target system (e.g. the business system of the client or a designated system). The screen compiling unit 1212 is configured to analyze the source data to compile the screen data in the source data into screen purpose data that is compatible with the target system. Furthermore, the program linking unit 1213 is configured to obtain the compiled archive data and the record file based on the program purpose data, the screen purpose data and the target system.

[0038] In one embodiment, the processor 110 receives system data of the target system. For example, the user transmits the data of the target system that the user desires to execute the source data to the automatic compiling system 100 through the transceiver, so that the compiling module 121 can compile based on the data of the target system, thereby compiling the execution file that is compatible and executable by the target system. Furthermore, the processor 110 also receives the selection / execution instruction for executing the compiling process. In another embodiment, the automatic compiling system 100 obtains the target system by detecting the system data in the storage device 120. That is, when the automatic compiling system 100 is loaded in the business system of the client, the automatic compiling system 100 can obtain the settings and data of the target system (i.e. the business system) by detecting the data in the storage device 120 that is related to the business system.

[0039] In one embodiment, the auxiliary archive processing module 123 converts the screens and texts of the compiled archive data into the language of the target system according to the language settings of the target system, and when the auxiliary archive processing module 123 performs the auxiliary archive reconstruction, the searching module 122 performs the searching comparison based on the archive data to obtain the archive that is free of language conversion. For example, when the auxiliary archive processing module 123 performs the language conversion or the auxiliary archive reconstruction, the searching module 122 can search and compare the auxiliary archive that is free of reconstruction to improve the efficiency of reconstructing the auxiliary archive.

[0040] In this way, the automatic compiling system 100 and the method thereof can automatically perform the compiling process based on the source data to generate the record file in the compiling process. In this way, by automatically performing the compiling process by the automatic compiling system 100, the user can be free of the steps of checking the compiling program, checking the compiling screen, checking the program linking, checking the multi-language, etc. The user of the automatic compiling system 100 only needs to click the shortcut option to trigger the processor 110 to perform the compiling process by the compiling module 121, thereby simplifying the compiling steps and improving the efficiency of the compiling process.

[0041] In summary, the automatic compiling system 100 and the method thereof can search and compare the existing data in the storage device 120 through the searching module 122, so that the compiling module 121 reads / uses the data in the storage device 120 to improve the overall compiling efficiency. Moreover, the monitoring module 124 ensures that the compiling process performed by the automatic compiling system 100 does not affect the daily operation of the system (e.g., business system), thereby improving the user's satisfaction and convenience.

[0042] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, and not to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or make equivalent substitutions for part or all of the technical features; and these modifications or substitutions do not make the essence of the corresponding technical solutions deviate from the scope of the technical solutions of the embodiments of the present application.

Claims

1. An automatic compilation system, characterized by, comprising: a storage device storing a plurality of modules; and a processor coupled to the storage device, executing the plurality of modules, and receiving source data for performing a compilation process, wherein the plurality of modules comprises a compilation module, a searching module, an auxiliary file processing module, and a monitoring module, wherein the compilation module performs a compilation process on the source data to generate a record file, and the searching module performs a searching comparison according to a corresponding table to obtain a non-compiled data table when the compilation process is performed, wherein the monitoring module controls a compilation parallel number within a set value when the compilation module performs the compilation process, wherein the auxiliary file processing module performs an auxiliary file reconstruction according to the source data to generate a corresponding auxiliary file, wherein the monitoring module outputs a compilation result data according to the record file and the auxiliary file.

2. The automatic compilation system of claim 1, wherein, The corresponding table comprises a data list and a hash value, and the searching module performs a searching comparison according to the corresponding table based on a hash searching method to obtain the non-compiled data table when the compilation process is performed.

3. The automatic compilation system of claim 1, wherein, The searching module performs a searching comparison to obtain auxiliary data when the auxiliary file processing module performs the auxiliary file reconstruction, wherein the auxiliary data is an auxiliary file stored in the storage device without reconstruction.

4. The automatic compilation system of claim 1, wherein, The auxiliary file processing module generates a static auxiliary file according to the source data and a target system.

5. The automatic compilation system of claim 1, wherein, The compilation module comprises: a program compilation unit analyzing the source data to compile the source data into program purpose data conforming to a target system; a picture compilation unit analyzing the source data to compile picture data in the source data into picture purpose data conforming to the target system; and a program linking unit obtaining compiled file data and the record file according to the program purpose data, the picture purpose data, and the target system.

6. The automatic compilation system of claim 5, wherein, The processor receives system data about the target system, and the processor further receives a selection instruction about performing a compilation process.

7. The automatic compilation system of claim 5, wherein, The automatic compilation system obtains the target system by detecting system data in a storage device.

8. The automatic compilation system of claim 5, wherein, The auxiliary file processing module converts pictures and texts of the compiled file data into a language corresponding to the target system according to a language setting of the target system, and the searching module performs a searching comparison according to the file data to obtain a file without converted language when the auxiliary file processing module performs the auxiliary file reconstruction.

9. The automatic compilation system of claim 5, wherein, The compilation parallel number is about a performance used when the compilation module performs a compilation process, and the monitoring module controls a processing parallel number of the compilation module to maintain consistent with the compilation parallel number according to the compilation parallel number.

10. An automatic compilation method, characterized by, comprising: receiving source data for performing a compilation process; performing a compilation process on the source data by a compilation module to generate a record file, and performing a searching comparison according to a corresponding table by a searching module to obtain a non-compiled data table when the compilation process is performed; controlling a compilation parallel number within a set value by a monitoring module when the compilation module performs the compilation process; performing an auxiliary file reconstruction according to the source data by an auxiliary file processing module to generate a corresponding auxiliary file; and ​ The compiling result data is outputted by the monitoring module according to the record file and the auxiliary file.

11. The automatic compiling method according to claim 10, wherein, The corresponding table includes a data list and a hash value, and when performing the compiling process, the searching module performs searching comparison according to the corresponding table to obtain the non-compiled data table. When performing the compiling process, the searching module performs searching comparison according to the corresponding table based on a hash searching method to obtain the non-compiled data table.

12. The automatic compiling method of claim 10, wherein, When the auxiliary file processing module performs auxiliary file reconstruction, the searching module performs searching comparison to obtain auxiliary data, wherein the auxiliary data is the auxiliary file stored in the storage device and is exempted from reconstruction.

13. The automatic compiling method of claim 10, wherein, When the auxiliary file processing module performs auxiliary file reconstruction according to the source data, the corresponding auxiliary file is generated.

14. The automatic compiling method of claim 10, wherein, The compiling module performs the compiling process on the source data, and the steps include: A program compiling unit analyzes the source data to compile the source data into program purpose data conforming to the target system; A picture compiling unit analyzes the source data to compile picture data in the source data into picture purpose data conforming to the target system; and A program linking unit obtains compiled file data and the record file according to the program purpose data, the picture purpose data, and the target system.

15. The automatic compiling method of claim 14, wherein, The target system is a processor receiving data of the target system, and the processor also receives a selection instruction for performing the compiling process.

16. The automatic compiling method of claim 14, wherein, Further comprising: An automatic compiling system detects system data in a storage device to obtain the target system.

17. The automatic compiling method of claim 14, wherein, The auxiliary file processing module performs auxiliary file reconstruction according to the source data to generate the corresponding auxiliary file, and the steps include: When the auxiliary file processing module performs auxiliary file reconstruction, the searching module performs searching comparison according to the file data to obtain files exempted from language conversion.

18. The automatic compiling method of claim 14, wherein, The compiling parallel number is related to the performance used when the compiling module performs the compiling process, and the monitoring module controls the processing parallel number of the compiling module to be consistent with the compiling parallel number according to the compiling parallel number.

Citation Information

Patent Citations

  • Automatic compilation system and automatic compilation method

    TWI805488B