Business system construction method and business system construction program
The business system construction method automates key design processes, allowing developers to build systems with ease and simplicity by inputting summary and table information, reducing the need for manual data entry and specialized knowledge.
Patent Information
- Application Number
- JP2025009837
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2025-01-23
- Publication Date
- 2025-09-02
- Estimated Expiration
- 2045-01-23
AI Technical Summary
Existing business system construction methods require users to enter a large amount of data, making it difficult to build a system without specialized programming knowledge and increasing costs.
A business system construction method and program that utilize a server device to automate the outline, database, program, and menu design processes, allowing developers to input summary and table information to generate basic design information and launch buttons, enabling simple operations to build a business system.
Enables business system developers to construct systems with ease and simplicity by automating key design steps, reducing the need for manual data entry and specialized knowledge.
Smart Images

Figure 0007732696000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a business system construction method and a business system construction program. [Background technology]
[0002] Patent Document 1 discloses a business system construction device, a business system construction method, and a business system construction program. The business system construction device of Patent Document 1 has a database generation means, an SQL generation means, a screen data generation means, and a GUI generation means. The database generation means generates a database in which data related to the business system is stored based on table definition data created by a user using a spreadsheet software sheet. The SQL generation means generates SQL based on internal processing data created by a user using a spreadsheet software sheet. The screen data generation means generates screen data based on data for constructing a business system screen created by a user using a spreadsheet software sheet. The GUI generation means generates a GUI into which data related to the business can be input based on the SQL generated by the SQL generation means and the screen data generated by the screen data generation means. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2020-194251 Summary of the Invention [Problem to be solved by the invention]
[0004] The business system construction device of Patent Document 1 aims to enable users to easily build a business system without specialized knowledge of programming languages and to reduce the costs associated with building a business system. With this business system construction device, a user uses a spreadsheet software to create table definition data, internal processing data, and data for building a business system screen, thereby generating a GUI into which business-related data can be input. This makes it possible to build a business system without specialized knowledge of programming languages. However, with this business system construction device, users must create table definition data, internal processing data, and data for building a business system screen, which forces them to enter a large amount of data, making it difficult to free themselves from tedious tasks.
[0005] One object of the present invention is to provide a technology that enables a developer of a business system to build a business system with simple operations. [Means for solving the problem]
[0006] (1) A business system construction method that is one aspect of the present disclosure is A business system construction method in which a server device connected to a network constructs a predetermined business system, The design process of the predetermined business system includes an outline design process, a database design process, a program design process, a form design process, and a menu design process, Each of these steps is configured to be operable from a developer terminal device that is connected to the network and operated by the developer, The outline design process is carried out by and information on the names of the programs included in the predetermined business system and the functions of these programs. Generate basic outline design information based on The database design step includes: designing a database based on table information input from the developer terminal device regarding at least one table used in the predetermined business system; the name of the table, the names of the fields included in the table, the data types of the fields, and key settings Generate basic database design information based on the program design step generates basic program design information based on the basic outline design information and the basic database design information; The form design step generates basic form design information based on the basic outline design information and the basic database design information, The menu design step generates basic menu design information based on the basic outline design information and the basic database design information. How to build a business system.
[0007] (2) A business system construction method that is one aspect of the present disclosure is the outline design basic information, the database design basic information, the program design basic information, and the menu design basic information are accessible for each of the steps; The program design step includes: a first step of selecting a specific program module (hereinafter referred to as a "specific module" in the [Means for Solving the Problems]) from a plurality of program modules prepared in advance based on the summary information; a second step of generating the basic program design information capable of changing the functions of the specific module to functions suitable for the predetermined business system based on the basic outline design information and the basic database design information; a third step of generating program start-up information including name information of the specific module, the table information, and information necessary for the specific module to access the program design basic information; a fourth step of generating, based on the basic menu design information, screen information of the launch button that is associated with the program launch information and that can launch the specific module from a user terminal device that is connected to the network and operated by a user; The business system construction method according to (1) above,
[0008] (3) The business system construction program that is one of the disclosures A program using the business system construction method described in (2) above, which is a business system construction program executed by the server device to construct the predetermined business system, the first step is a specific module selection process for automatically selecting the specific module from the plurality of program modules based on the summary information input from the developer terminal device, the summary information being information on the names of the plurality of programs included in the predetermined business system and the functions of the plurality of programs; the second step is a design basic information generation process for automatically generating the program design basic information capable of changing the function of the specific module to a function suitable for the predetermined business system, the third step is a startup information generation process for automatically generating the program startup information, which is information necessary for starting the specific module from the user terminal device; The fourth step is a screen information generation process for automatically generating screen information including the start button.
[0009] Although the word "automatic" is not used in the steps of the business system construction method in (1) and (2) above, this does not mean that these steps are performed "manually." [Effects of the Invention]
[0010] The technology disclosed herein allows business system developers to build business systems with simple operations. [Brief explanation of the drawings]
[0011] [Figure 1] FIG. 1 is an explanatory diagram conceptually showing an example in which the business system construction method according to the first embodiment is applied to a business system construction system (hereinafter also referred to as construction system). [Figure 2] FIG. 2 is an explanatory diagram conceptually showing the configuration of the construction system of FIG. [Figure 3]Figure 3(A) is a flowchart illustrating the flow of the outline design process performed by the server device of the construction system illustrated in Figure 2, and Figure 3(B) is a flowchart illustrating the flow of the database design process performed by the server device. [Figure 4] FIG. 4 is a flowchart illustrating a series of steps in the program design process, form design process, and menu design process performed by the server device of the construction system illustrated in FIG. [Figure 5] FIG. 5 is a flowchart illustrating the flow of the table name and existence confirmation process illustrated in FIG. [Figure 6] FIG. 6 is a flowchart illustrating the flow of the program type determination process illustrated in FIG. [Figure 7] FIG. 7 is a flowchart of the additional function confirmation process exemplified in FIG. [Figure 8] FIG. 8 is a flowchart of the program generation process exemplified in FIG. [Figure 9] FIG. 9 is a flowchart of the sample data generation process exemplified in FIG. [Figure 10] FIG. 10 is a flowchart of the form program generation process exemplified in FIG. [Figure 11] FIG. 11 is a flowchart of the menu program generation process exemplified in FIG. [Figure 12] FIG. 12(A) is an explanatory diagram showing an example of a program list and processing contents (program list and processing flow) displayed in the outline design processing exemplified in FIG. 3(A), and FIG. 12(B) is an explanatory diagram showing an example of a processing flow, etc., generated and displayed in the outline design processing. [Figure 13] FIG. 13 is an explanatory diagram showing an example of information on the process flow included in the general design master generated in the general design process exemplified in FIG. 3(A). [Figure 14]Figure 14(A) is an explanatory diagram showing an example of a registration screen displayed in the database design process exemplified in Figure 3(B), and Figure 14(B) is an explanatory diagram showing an example of a database design master generated in the database design process. [Figure 15] FIG. 15 is an explanatory diagram showing an example of a program design master generated in the program design process exemplified in FIG. [Figure 16] FIG. 16 is an explanatory diagram showing an example of sample data generated in the sample data generation process illustrated in FIG. [Figure 17] Fig. 17(A) is an explanatory diagram showing an example of a form design master generated in the form program generation process. Fig. 17(B) is an explanatory diagram showing an example of a form template generated in the form program generation process exemplified in Fig. 4. [Figure 18] Figure 18(A) is an explanatory diagram showing an example of a menu design master generated in the menu program generation process, and Figure 18(B) is an explanatory diagram showing an example of a button in the startup menu of a specified business system displayed on the screen of a user terminal device. DETAILED DESCRIPTION OF THE INVENTION
[0012] Each of the following [1] to [9] is an example of a characteristic technology included in the present disclosure. Note that in the business system construction methods of [1] and [2], the word "automatically" is not described in each step, but this does not mean that these steps are performed "manually."
[0013] [1] A business system construction method in which a server device connected to a network constructs a predetermined business system, The design process of the predetermined business system includes an outline design process, a database design process, a program design process, a form design process, and a menu design process, Each of these steps is configured to be operable from a developer terminal device that is connected to the network and operated by the developer, The outline design process is carried out by and information on the names of the programs included in the predetermined business system and the functions of these programs. Generate basic outline design information based on The database design step includes: designing a database based on table information input from the developer terminal device regarding at least one table used in the predetermined business system; the name of the table, the names of the fields included in the table, the data types of the fields, and key settings Generate basic database design information based on the program design step generates basic program design information based on the basic outline design information and the basic database design information; The form design step generates basic form design information based on the basic outline design information and the basic database design information, The menu design step generates basic menu design information based on the basic outline design information and the basic database design information. How to build a business system.
[0014] In the business system construction method described above in [1], the developer of a given business system (Information about the names of multiple programs included in a specified business system and the functions of these programs) and table information (Table name, name of each field in the table, data type of the field, and information about key settings) By inputting the above information from a developer terminal device to the server device, the server device generates basic outline design information and basic database design information, and then generates basic program design information, basic form design information, and basic menu design information based on the basic outline design information and basic database design information. This allows the developer to build the business system with the simple operation of simply inputting the outline information and table information from the developer terminal device to the server device. Furthermore, the server device provides tools for the outline design process, database design process, program design process, form design process, and menu design process as part of the business system design process.
[0015] [2] The outline design basic information, the database design basic information, the program design basic information, and the menu design basic information are accessible for each of the steps; The program design step includes: a first step of selecting a specific program module (hereinafter referred to as a "specific module") from a plurality of program modules prepared in advance based on the summary information; a second step of generating the basic program design information capable of changing the functions of the specific module to functions suitable for the predetermined business system based on the basic outline design information and the basic database design information; a third step of generating program start-up information including name information of the specific module, the table information, and information necessary for the specific module to access the program design basic information; a fourth step of generating, based on the basic menu design information, screen information of the launch button that is associated with the program launch information and that can launch the specific module from a user terminal device that is connected to the network and operated by a user; The business system construction method according to [1] above, including:
[0016] In the business system construction method described in [2] above, a developer of a specific business system inputs summary information and table information from a developer terminal device to a server device, and the server device generates screen information for a launch button that can launch a specific module from a user terminal device. This allows the developer to obtain screen information that can display a launch button that can launch a specific module on the screen of a user terminal device by simply inputting this information from the developer terminal device to the server device. In other words, the business system can be constructed with simple operations.
[0017] [3] A program using the business system construction method described in [2] above, wherein the server device executes the business system construction program to construct the predetermined business system, the first step is a specific module selection process for automatically selecting the specific module from the plurality of program modules based on the summary information input from the developer terminal device, the summary information being information on the names of the plurality of programs included in the predetermined business system and the functions of the plurality of programs; the second step is a design basic information generation process for automatically generating the program design basic information capable of changing the function of the specific module into a function suitable for the predetermined business system, the third step is a startup information generation process for automatically generating the program startup information, which is information necessary for starting the specific module from the user terminal device; The fourth step is a screen information generation process for automatically generating screen information including the start button.
[0018] In the business system construction program described in [3] above, a developer of a specific business system inputs summary information and table information from a developer terminal device to a server device, and the server device generates screen information for a launch button that can launch a specific module from a user terminal device. This further automates each step that has been turned into a tool as part of the design process of the business system, allowing the developer to build the business system with simple operations.
[0019] [4] Information on the names of the plurality of programs and information on the functions of the plurality of programs are input from the developer terminal device via another first program executed by the server device; The other first program generates, based on information on the names of the plurality of programs and information on the functions of the plurality of programs, at least one or more symbols of the table, symbols of the plurality of programs and symbols representing the relationships therebetween, and, for a program among the plurality of programs having a data output function, symbols of the data output and symbols representing the relationship between the data output and the program, as image information that can be displayed on a screen of the developer terminal device using a diagram. The business system construction program described in [3] above.
[0020] In the business system construction program described in [4] above, a developer of a given business system inputs information on the names of multiple programs and information on the functions of the multiple programs from a developer terminal device to a server device, and the server device generates, using diagrams, image information that can be displayed on the screen of the developer terminal device, including at least one or more table symbols, symbols for the multiple programs and symbols representing the relationships between them, and, for programs among the multiple programs that have a data output function, symbols for the data output and symbols representing the relationship between the data output and the program.This allows the developer to build the business system with easy operations based on the image information displayed on the screen of the developer terminal device.
[0021] [5] Information about the table is input from the developer terminal device via another second program executed by the server device; The other second program enables input of information about a specific table designated by the developer terminal device among the symbols of the table included in the image information. The business system construction program described in [4] above.
[0022] In the business system construction program described in [5] above, the server device enables input of information about a specific table designated by the developer terminal device from among the table symbols included in the image information. This allows the developer to easily designate a specific table from among the table symbols displayed on the screen of the developer terminal device and input information about that table.
[0023] [6] before the specific module selection process, a table appropriateness determination process is included, which determines whether the table exists in the database and / or whether the name of the table satisfies predetermined requirements based on the table information; If the table appropriateness determination process determines that the table does not exist in the database, or that the name of the table does not satisfy a predetermined requirement, the specific module selection process is not performed. The business system construction program according to any one of [3] to [5] above.
[0024] In the business system construction program of [6] above, if the table appropriateness determination process determines that at least one of the tables does not exist in the database, or if the server device determines that the name of one of the tables does not meet predetermined requirements, the server device does not perform the specific module selection process. This makes it possible to prevent the specific module selection process from selecting a specific module based on such inappropriate table information when the table to be operated on by the specific module selected in the specific module selection process does not exist in the database or when the table name does not meet predetermined requirements.
[0025] [7] Between the specific module selection process and the startup information generation process, an incompatible function determination process is included, which determines whether or not the information input from the developer terminal device includes a function incompatible with the function possessed by the specific module; If the incompatible function determination process determines that the information input from the developer terminal device contains a function that is incompatible with the function possessed by the specific module, the startup information generation process is not performed. The business system construction program according to any one of [3] to [5] above.
[0026] In the business system construction program of [7] above, if the server determines, between the specific module selection process and the startup information generation process, through the incompatible function determination process, that the information input from the developer terminal device contains a function that is incompatible with the function possessed by the specific module, the server does not perform the startup information generation process. This prevents the startup information generation process from generating startup information for a function that cannot be realized by the specific module selected by the specific module selection process.
[0027] First Embodiment The following description relates to a first embodiment. The first embodiment is an example in which a business system construction method, which is one aspect of the present disclosure, is applied to a business system construction system (construction system). 1. Overview of the construction system [Hardware configuration] 1, a server device 11 connected to the Internet 90 constructs a predetermined business system. In this embodiment, a case where the predetermined business system is a product delivery system will be described as an example. A developer terminal device 40 and a user terminal device 50 are connected to the server device 11 via the Internet 90.
[0028] The server device 11 is, for example, a computer for a database server, and is equipped with a CPU as a control device, RAM, ROM, etc. as a main memory device, and a large-capacity HDD, SSD, etc. as an auxiliary memory device. Here, part of the auxiliary memory device stores the programs that make up the construction system 10, and the remaining part of the auxiliary memory device is configured to function as a database 12. In the database 12, each data table (hereinafter also referred to as a table) used in the product delivery system is generated and stored as described below. The database 12 may be provided separately from the server device 11.
[0029] The developer terminal device 40 is a personal computer operated by a developer who develops the product delivery system, and the user terminal device 50 is a personal computer operated by a user who uses the product delivery system. These may be, for example, laptops or tablet computers. Any computer equipped with an input device capable of inputting or selecting data or information, an output device capable of outputting data or information on a display screen, and a wireless communication device or wired communication device connectable to the Internet 90 may be used, such as a mobile information terminal device such as a smartphone, or a desktop computer.
[0030] [Software configuration] The construction system 10 is mainly composed of tools for the process of developing a product delivery system. This includes databased design information and modularized programs, and the concept of the system configuration is shown in Figure 2.
[0031] The construction system 10 shown in Figure 2 mainly comprises a business system construction program 20, which includes various information processes 21-25 that can be launched from a business system developer menu 31 displayed on a developer terminal device 40, various design masters 13-17 that are databased design information, and program modules 27a-27i, 28, 29 by type that are modularized programs.
[0032] As will be explained in detail later, the databased design information includes a general design master 13, a database design master 14, a program design master 15, a form design master 16, and a menu design master 17, all of which are stored in the same database 12. This makes it easy to associate (connect) these items. The modularized programs include program modules 27a to 27i, a form program module 28, and a menu program module 29. In this embodiment, these are prepared in advance and stored in part of the auxiliary storage device of the server device 11, but they may also be stored, for example, in the remainder of the auxiliary storage device of the server device 11, i.e., in the database 12, together with the general design master 13, etc.
[0033] In Figure 2, arrows with a single ▲ (black triangle) at their end indicate that the design masters 13-17, data tables 18a-18e, and program startup codes 19a-19f, 19m are generated by the information processing units 21-25 at the end. Arrows with two ▲ (black triangles) at their end indicate that the program modules 27a-27i, 28, 29 they point to are started by the program startup codes 19a-19f, 19m at the end. Arrows with a △ (white triangle) at their end indicate that the program design master 15, report design master 16, or menu design master 17 they point to is referenced by a specific program module 27a, etc., via the program startup codes 19a-19f, 19m at the end. A dashed line with a black circle at both ends indicates that the two entities connected are associated (linked). Furthermore, a wide white arrow pointing at one end to program launch codes 19a-19f, 19m and at the other end to each data table 18a-18e indicates that a specific program module 27a, etc., started by the program launch code 19a, etc., can access the data table 18a, etc. and edit data. Also, a thick, dashed gray arrow pointing at its tip to the program design master 15, the report design master 16, the menu design master 17, the program launch codes 19a-19f, 19m, and the business system launch menu 32 indicates that the program list / processing flow 26 at its rear end is generated, and based on this, the program design master 15, etc., and the program launch code 19a, etc. are automatically generated, as will be described later.
[0034] The construction system 10 is an example of a cloud computing web service provided by a server device 11 connected to the Internet 90. In this embodiment, the construction system 10 is configured to be accessible from a developer terminal device 40 operated by a developer who develops the product delivery system. The developed product delivery system is also provided to a user as a web service, and the user is configured to be able to use the system by accessing the server device 11 via a user terminal device 50.
[0035] When a developer operates the developer terminal device 40 to log in to the implementation system 10, a business system developer menu 31 is displayed on the developer terminal device 40. This business system developer menu 31 displays five software buttons (hereinafter also referred to as buttons) as a GUI (Graphical User Interface), for example, "application outline," "database manager," "program generator," "pdf designer," and "menu editor." Note that the business system developer menu screen and these buttons are not shown in the figure. Each of the above-mentioned information processes 21 to 25 is activated when these buttons are selected with a pointing device such as a mouse. A pointing device (input device) such as a mouse may be referred to as a mouse hereinafter.
[0036] That is, selecting the "application outline" button launches outline design process 21, selecting the "database manager" button launches database design process 22, selecting the "program generator" button launches program design process 23, selecting the "pdf designer" button launches form design process 24, and selecting the "menu editor" button launches menu design process 25. Details of each of these information processes 21 to 25 will be described later with reference to Figure 3 onwards, so here we will provide an overview of them.
[0037] The overview design process 21 generates a screen display of an overview design master 13 (basic overview design information) and a program list / process flow 26 based on overview information input by the developer via a developer terminal device 40, and can correspond to an overview design step. The database design process 22 also generates a database design master 14 (basic database design information) based on table information input by the developer via a developer terminal device 40, and can also correspond to a database design step. In the construction system 10, these two processes 21 and 22 are performed by the program design process 23, which is responsible for the input function of main information in the business system, and the input overview information and table information are stored in the database 12 by the program design process 23.
[0038] The program design process 23 selects a specific module that is suitable for the product delivery system from the nine types of modularized program modules 27a to 27i described above based on the outline information entered by the developer, and also generates a program design master 15 (basic program design information) based on the outline design master 13 generated by the outline design process 21 and the form design process 24 generated by the database design process 22. Furthermore, the program design process 23 generates a program activation code 19a that includes name information, etc. of the selected specific module, and also generates screen information for a button that can activate the selected specific module from the display screen of the user terminal device 50.
[0039] The form design process 24 generates a form design master 16 (basic form design information) based on the outline design master 13 (basic outline design information), the database design master 14 (basic database design information), and form information input by the developer via the developer terminal device 40. The menu design process 25 generates a menu design master 17 (basic menu design information) based on the outline design master 13 (basic outline design information) and the menu information of the above-mentioned buttons input by the developer via the developer terminal device 40. The generated form design master 16 and menu design master 17 are referenced by a form program module 28 and a menu program module 29. The menu program module 29 is started via a program start code 19m when a button is selected on the user terminal device 50. In the implementation system 10, these three processes 23, 24, and 25 are responsible for outputting the main information in the business system.
[0040] Once the product delivery system has been constructed by the overview design process 21, database design process 22, program design process 23, form design process 24, and menu design process 25, a user registered in the product delivery system can operate a user terminal device 50 to log in to the construction system 10. When the user logs in, a business system startup menu 32 (not shown) is displayed on the user terminal device 50. This business system startup menu 32 displays, as a GUI, screen information of buttons generated by the menu program module 29 based on the menu design master 17. Then, by selecting these buttons, the user can perform operations such as adding, deleting, and changing data in tables 18a to 18e, i.e., adding a product code, for example.
[0041] 2. Details of processing by each program [Outline design process] (Outline design process) The outline design process 21 shown in FIG. 3(A) is launched and begins information processing when the aforementioned "application outline" button is selected on the business system developer menu 31 displayed on the developer terminal device 40. First, in step S100, an application list display process is performed. An application is a business system to be built by the implementation system 10. In this process, the name of the business system to be built is entered, and already entered business systems, their business outlines, function outlines, etc. are displayed. Then, when the corresponding application name, for example, "product delivery system," is selected, the process proceeds to the next step S110.
[0042] In step S110, a list of programs for inputting information (overview information) of the programs required to build the product delivery system is displayed on the developer terminal device 40 in the form of a spreadsheet, i.e., a spreadsheet. The program information consists of, for example, a "program name" and information on the functions possessed by the program (processing functions such as input, list, tally, update, and report), with the number of corresponding function items. In the initial state, only the names of each item are displayed, and nothing is displayed in each column of the table. "Program name" is the name of the required program and is entered according to predetermined notation rules. Furthermore, "input" represents the number of data input processes, "list" represents the number of data list display processes, "tally" represents the number of data tally processes, "update" represents the number of data update processes, and "report" represents the number of report output processes.
[0043] In the example of the program list and processing content shown in Figure 12(A), the program named "Product Master Registration" has one function each for data input processing, data list display processing, and report output processing, so "1" is entered in the columns corresponding to "Input," "List," and "Report." Furthermore, since it also has other processing functions, such as an export processing that outputs input data to the outside, and an import processing that imports data from the outside, "2" is entered in the column corresponding to "Other," and "Export, Import" is entered in the column corresponding to "Other Processing Names / Remarks."
[0044] In the example of Figure 12(A), the following program names are also entered: "Delivery Destination Master Cell Input," "Delivery Note Issuance (Delivery Header Data, Delivery Detail Data)," "Monthly Aggregation by Product and Delivery Destination (Delivery Detail Data)," "Monthly Aggregation by Delivery Destination (Delivery Detail Data, Monthly Billing File)," and "Invoice Issuance (Monthly Billing File, Delivery Detail Data)." The number of functions possessed by each program is also entered. The names in parentheses after the program name indicate the names of tables used in connection with that program. Except in cases where the table names are clear from the names of the programs containing them, such as XXX Master and XXX Data, the table names must be entered for each table. This is the predetermined notation rule for the "program name" mentioned above. As will be described later, table names also require the input of predetermined keywords.
[0045] After the program list input and display process in step S110 is completed, the program list saving process is performed in the next step S120. For example, when the developer selects the "Register Settings" button displayed on the screen of the developer terminal device 40, the program list and processing details are stored in the database 12 of the server device 11. Even after input is complete, the program list and processing details can be appropriately modified and saved by starting the overview design process 21. Note that information on the processing details is included as part of the overview design master 13.
[0046] In the next step S130, a process flow generation process is performed. This process is performed by selecting any program for which a process flow is to be generated from the "Program Name" displayed in the program list on the screen, for example by dragging it with the mouse, and then selecting "Create Flow" or "Create Flow (Create Bulk Flow by Selecting Multiple)" from the menu window that appears when you right-click, and then left-clicking (selecting) it.
[0047] Then, a relationship diagram is automatically generated that shows the relationship between the database (table), program, and print (report output) included in the business system being constructed (in this case, the product delivery system) using symbols used in, for example, job flows, and is displayed in a flow palette below the list of programs and processing contents mentioned above (symbols for tables, symbols for multiple programs and symbols representing the relationships between them, and for programs among the multiple programs that have a data output function, symbols for that data output and symbols representing the relationship between the data output and the program are generated as image information that can be displayed on the screen of the developer terminal device using line diagrams).
[0048] For example, as shown in Fig. 12(B), for the "Product Master Registration" program in Fig. 12(A), a horizontally long rectangular frame (representing a program in the job flow) with the program name "Product Master Registration" written inside it is generated and displayed directly below the title display <Program: PGM> located approximately in the horizontal center of the flow palette 26a. Then, to the left of that, directly below the title display <Database: D / B> located on the input side, a vertically oriented cylindrical frame (representing a database in the job flow) with the table name related to that program, "Product Master," written inside it is generated and displayed. A double-arrow symbol is also generated and displayed between these two symbols, indicating that data can be input and output from one to the other.
[0049] In the example of FIG. 12(A), the function information for the program No. 1 "Product Master Registration" indicates that "Report" is "1," meaning that report output processing is possible. Therefore, a shape frame (representing a report in the job flow) is generated and displayed to the right of the symbol representing the program, i.e., directly below the title display <Print: PRT> located on the output side, depicting a document or printout. The program's report output name, "Product Master List," is written within the frame. A right-arrow symbol is then generated and displayed between these two symbols, indicating that the program may output a report. Similarly, for each program from No. 2 "Delivery Destination Master Cell Input" to No. 6 "Invoice Issuance (Monthly Invoice File, Delivery Detail Data)," a relationship diagram is generated using symbols used in job flows to show the relationship between databases (tables), programs, and printouts (report output), and this diagram is displayed in the flow palette 26a.
[0050] For the four programs from No. 3 "Delivery Note Issuance (Delivery Header Data, Delivery Detail Data)" to No. 6 "Invoice Issuance (Monthly Billing File, Delivery Detail Data)," the table names used in connection with each program are written in parentheses, one for each table. Therefore, the table names in parentheses for each program name are displayed within the frame of the flow symbols (hereinafter also referred to as table flow symbols) for the databases (tables) related to these programs. Furthermore, if there are two or more table names within the parentheses for the program name, the frame of the table flow symbol is divided into two or more. Examples of this are No. 3 "Delivery Note Issuance (Delivery Header Data, Delivery Detail Data)," No. 5 "Monthly Summary by Delivery Destination (Delivery Detail Data, Monthly Billing File)," and No. 6 "Invoice Issuance (Monthly Billing File, Delivery Detail Data)."
[0051] Furthermore, the program names and table names displayed in these symbol frames can also be entered as text, and developers can make appropriate modifications such as additions, deletions, and changes from the developer terminal device 40. In addition to the automatic generation described above, table flow symbols, program flow symbols (hereinafter also referred to as program flow symbols), and print (report output) flow symbols (hereinafter also referred to as report flow symbols) can also be drawn manually (manually input) by developers from the developer terminal device 40. In FIG. 12(B), icons of drawing tools that can be used when drawing manually are displayed above the screen frame. Note that on the screen of the developer terminal device 40 shown in FIG. 12(B), the title "Print: PRT" is displayed to the right of the title display <Print: PRT>. <memo>is displayed, and below that "PGM Type 1: Basic Input" and "PGM Type 9: Cell Input" are displayed, and a menu window is displayed where you can select "Automatic Programming", but these will be explained later.
[0052] When the flow generation process in step S130 is completed, for example, the developer may select a "Register Settings" button displayed on the screen of the developer terminal device 40, which causes the flow saving process in step S140 to be performed and the general design process 21 to end (END). As a result, the processing flow is also stored in the database 12 of the server device 11. The processing flow can be modified as needed or automatically generated again by starting the general design process 21.
[0053] The process flow information is included in the remainder of the conceptual design master 13. In other words, the conceptual design master 13 is composed of "processing content" information on the right side of the program list shown in Fig. 12(A) and "processing flow" information (image information) in the flow palette 26a shown in Fig. 12(B). Since the "processing flow" information is mainly graphic information (image information) including graphical symbols, it is converted into a predetermined format composed of object types, output values (program names, table names, form names), object names, etc., as shown in Fig. 13, and stored in the database 12.
[0054] [Database design process] (Database design process) Once the program list and process flow 26 has been generated by the overview design process 21 and the input overview information has been stored in the server device 11, it becomes possible to perform the database design process 22 shown in Figure 3(B). The database design process 22 enables input of information about a specific table selected by the developer terminal device 40 from among the table flow symbols included in the image information of the "process flow" in the flow palette 26a. The database design process 22 is launched and begins information processing when the above-mentioned "database manager" button is selected in the business system developer menu 31 displayed on the developer terminal device 40, or when "Launch setting screen" is selected from the menu window displayed by selecting the table flow symbol displayed in the flow palette 26a.
[0055] First, in step S210, table information input and display processing is performed. Table information includes, for example, the table name, the name of the application that uses the table (the business system built by the configuration system 10), the field name, its data type, whether or not a key is present, the primary key setting, etc. Table and field names are entered in both program description notation and Japanese reference notation.
[0056] As shown in Figure 14(A), for example, in the case of the "Product Master" database (table) used by the "Product Master Registration" program in Figure 12(B), field names such as "shohin_code" (product code), "shohin_name" (product name), "shohin_kb" (product category) (Japanese reference notation in parentheses), their registration order, data type, presence or absence of keys, primary key settings, supplementary information, etc. are entered as table information.
[0057] Once these entries are complete, for example, the developer selects the "Register Settings" button displayed on the screen of the developer terminal device 40, and then selects the "Add Table" button, which causes the table information to be saved in step S220. As a result, the entered table information is stored as table 18a in the database 12 of the server device 11, and is also converted into a predetermined format consisting of the table name, registration order, field name, Japanese field name, presence or absence of key, primary key setting, data type, upper limit value, lower limit value, etc., as shown in Figure 14(B), and is then stored in the database 12.
[0058] The table information input / display process in step S210 is performed until the table information for all tables used by the multiple programs entered in the program list / processing flow 26 has been entered (S220; No). In the example of FIG. 12(B), in addition to the "product master," table information must also be entered for the "delivery destination master," "delivery header data," "delivery detail data," and "monthly billing file." When table information for all tables has been entered, tables 18b to 18e have been created, and they have been saved (S230; Yes), the database design process 22 is completed (END).
[0059] In this way, when tables 18a to 18e are created and stored in the database 12, the outline of the table flow symbol displayed in the flow palette 26a is set to a thick blue line. That is, when the cylindrical frame displayed immediately below the title display <Database: D / B> shown in Figure 12(B) is a thin black line, it indicates that the database (table) represented by that symbol has not yet been created, and when it is a thick blue line, it indicates that the database (table) represented by that symbol has already been created.
[0060] [Program design process] (Program design process) The program design process 23 can be performed when the database (table) used by the program to be automatically programmed has already been created. In the case of the above-mentioned product delivery system, once all of the tables 18a to 18e used by the multiple programs included in the system have been created (blue bold lines), automatic programming is ready and the program design process 23 can be performed. In this case, as shown in Figure 12(B), the program design process 23 is launched and begins information processing when "automatic programming" is selected from the menu window displayed by selecting the program flow symbol displayed in the flow palette 26a on the developer terminal device 40.
[0061] 4, the automatic programming series of processes, which is made up of the program design process 23, the form design process 24, the menu design process 25, etc., begins with the table name and existence confirmation process in step S310. In FIG. 4, the processes from step S310 to step S380 make up the program design process 23.
[0062] This table name / existence confirmation process in step S310, prior to the program type determination process in step S330, determines, based on the table information described above, whether one or more tables used by the program to be automatically generated exist in the database 12 and whether the names of these tables satisfy predetermined requirements. These determinations are made based on the overview design master 13 (see FIG. 13) and the database design master 14 (see FIG. 14(B)).
[0063] Details of the table name and existence confirmation process in step S310 are shown in FIG. 5, and will be described with reference to that reference. As shown in FIG. 5, the table name and existence confirmation process begins in step S311 with a determination of whether Table 1, i.e., the name (table name) of the first table, is appropriate (whether it satisfies certain requirements). In the development system 10, a single program uses at least one table (main table or parent table), and it is also assumed that there may be a second table (sub-table, child table, or external table) that can be linked to or referenced by that table. For this reason, in this embodiment, the first table is referred to as "Table 1" and the second table is referred to as "Table 2."
[0064] That is, a table name must contain one of the following predetermined keywords: "master," "table," "data," "list," "file," "view," "temp," "ledger," "table," "information," "list," or "archive." This corresponds to the predetermined requirement for a table name. Note that "temp" is an abbreviation for "temporary." These keywords are often included in the names of tables commonly used in business systems, and were discovered by the inventors of this application through many years of experience developing business systems. The program type determination process (S330), described below, requires the selection of one specific module from nine pre-prepared program modules 27a-27i based on multiple pieces of information, including the table name. Therefore, the table name must contain a keyword for this process.
[0065] In the example of the table flow symbol for the processing flow shown in Figure 12 (B), the names displayed within the frame of the table flow symbol are "Product Master," "Delivery Destination Master," "Delivery Header Data," "Delivery Detail Data," and "Monthly Billing File." Also, in the example of the outline design master 13 shown in Figure 13, the object names whose object type is database are "Product Master" and "Delivery Header Data," so the names of the tables (table names) in all cases are appropriate and meet the specified requirements.
[0066] If the determination process in step S311 determines that the table name (table name) is inappropriate (does not satisfy predetermined requirements) (S311; No), an error message output process in step S312 outputs an error message, for example, "Please use a table name that includes any of the following: master, table, data, list, file, view, temp, ledger, table, information, list, or archive," to the screen of the developer terminal device 40. Then, the error information is set to ON (for example, the error flag is set to "1"), the process ends with an error, and the process returns to the error determination process in step S320 in Fig. 4 (return 2).
[0067] On the other hand, if it is determined in the determination process of step S311 that the name of the table (table name) is appropriate (meets predetermined requirements) (S311; Yes), the next step S313 determines whether or not the first table exists in the database 12. In other words, it determines whether or not the table used by the program to be automatically generated is stored in the database 12.
[0068] 14(B) and the table does not exist in the database 12 (is not stored in the database 12) (S313; No), automatic programming is not yet ready. In this case, an error message such as "Table 1 does not exist" is output to the screen of the developer terminal device 40 by the error message output process of step S314, and then the error information is set to ON (for example, the error flag is set to "1"), the process ends with an error, and the process returns to the error determination process of step S320 of FIG. 4 (Return 2).
[0069] On the other hand, in the judgment process of step S313, if it is determined by referring to the database design master 14 that the table exists in the database 12 (stored in the database 12) (S313; Yes), the next step S315 is to perform a process of determining whether or not Table 2, i.e., a second table, exists as a table to be used by the program to be automatically programmed.
[0070] 13, if it is determined that there are two tables with different names corresponding to the name of the program to be automatically programmed (program name), the second table is Table 2. Therefore, in this case (S315; Yes), the same determination process as for Table 1 must be performed for Table 2, and the process proceeds to the following Steps S316 and S318.
[0071] On the other hand, if it is determined in the determination process of step S315 that a table with a different table name does not exist, then there is no second table, Table 2. Therefore, in this case (S315; No), the process ends normally (for example, the error flag is off), and the process returns to the error determination process of step S320 in FIG. 4 (return 1).
[0072] The determination process in step S316 is similar to the determination process in step S311 described above, and the determination process in step S318 is similar to the determination process in step S313 described above, so their explanations will be omitted. Also, the processes for outputting error messages in steps S317 and S319 are similar to the processes in steps S312 and S314 described above, so their explanations will be omitted.
[0073] 4, in step S320, a process is performed to determine whether the table name / existence confirmation process performed in the previous step S310 ended in an error. That is, if the error flag is set to ON, it is determined that the table name / existence confirmation process ended in an error (S320; Yes), and this automatic programming series of processes is terminated (END) without performing the subsequent sample data generation process (S400), form program generation process (S420, form design process 24), or menu program generation process (S440, menu design process 25).
[0074] If it is determined in step S320 that the program has not terminated due to an error (S320; No), the program type determination process is carried out in the following step S330. This program type determination process selects a specific module that is suitable for the product delivery system from among nine types of program modules 27a-27i (multiple program modules) prepared in advance, based on the program information (summary information) input by the developer from the developer terminal device 40.
[0075] The program modules 27a to 27i are programs that may be frequently required in the construction of a business system such as a product delivery system, and are classified into nine types according to the features of the programs, focusing on the features of the functions that the programs have, such as basic input, slip input, individual input, extraction and aggregation, item update, table update, cell input, etc. Note that the titles shown in FIG. 12(B) above <memo>The PGM types displayed below, such as "PGM Type 1: Basic Input" and "PGM Type 9: Cell Input", refer to the nine program types (hereinafter referred to as types).
[0076] Of these types, types 1 to 6 are particularly frequently used and indispensable (program modules 27a to 27f), while types 7 and 8 are used less frequently than types 1 to 6 and enable optional functions (program modules 27g and 27h). Type 9, which realizes a function that allows data already entered in spreadsheet format to be directly imported by pasting it in cell input format (program module 27i), is considered to be used even less frequently.
[0077] Basic input allows users to select any item from a list of multiple items, thereby changing the item's contents or adding new items. There are two types of program modules: program type 1 and program type 2. Type 1 program module 27a corresponds to a single table and a view. A view is an operation that displays data that meets specific extraction conditions from the data constituting a table, and is sometimes called a query. This program module 27a has functions such as displaying a product master registration and setting screen, a product master list screen, a data editing screen (add, change, delete), and a purchase data input screen on the developer terminal device 40, displaying a PDF preview from PDF output, and handling extractions based on specified extraction conditions. Type 2 program module 27b corresponds to a linked table (1:1), which links two tables in a one-to-one relationship. In addition to the functions of type 1, this program module 27a also has functions such as displaying a setting screen linked with product image data, a product master list screen including images, and a setting screen and product inventory list screen linked with product inventory data.
[0078] Voucher input is program type 3. Type 3 program module 27c corresponds to a concatenated table (1:many). "1:many" means that there are multiple detail items in one voucher, such as when one delivery note is composed of multiple delivery detail items. This program module 27c has, for example, a function to create a program for registering concatenated data, a function to hide the headers of program type 1, a function to set the tables and programs to be concatenated, a function to display a purchase data list screen by voucher, an input screen for the purchase data header section, an input screen for the purchase data detail section, etc. on the developer terminal device 40, and a function that can also handle cases where the number of data items is displayed on the list screen.
[0079] Individual input allows data entry via an input screen that pops up when any item is selected, and there are two types: program types 4 and 5. Type 4 program module 27d corresponds to a single table. This program module 27d has, for example, a function to display only the individual input setting screen or the pop-up screen for individual input on the developer terminal device 40, a function to launch from the input screen of another program, or a function to launch from the list screen of another program, etc. Type 5 program module 27e corresponds to a linked table (1:1). In addition to the functions of Type 4, this program module 27e has, for example, a function to display the linked table setting screen on the developer terminal device 40, a function to check inventory when entering order data, etc.
[0080] Extraction and aggregation is program type 6. Type 6 extracts and aggregates data that meets specified extraction conditions, such as monthly aggregation, by customer, or by product, and is also used to obtain total sales or total number of deliveries. This type of program module 27f corresponds to a view in a single table. This program module 27f has the function of displaying, for example, a supplier aggregation setting screen, a supplier aggregation program screen, a supplier aggregation PDF output screen, a monthly supplier aggregation setting screen, a monthly supplier aggregation program screen, a supplier product aggregation setting screen, and a supplier product aggregation program screen on the developer terminal device 40.
[0081] Item update is program type 7. Type 7, for example, changes (updates) the data itself of an item that makes up a table to new data, and is used for batch processing such as unit price update, which automatically updates fluctuating unit prices, and monthly update, which updates inventory quantities every month. This type of program module 27g corresponds to a single table. This program module 27g has a function to display, for example, a purchase data unit price update setting screen, a purchase data unit price update program screen, an order data unit price update setting screen, an order data unit price update program screen, etc. on the developer terminal device 40.
[0082] Table updates are program type 8. Type 8 is often used in monthly batch processing to create a separate table. For example, it is used in monthly batch processing to compile daily data on sales amounts and delivery quantities for one month to generate a monthly data table. Type 8 program module 27h corresponds to a view in a linked table (1:1). This program module 27h has the function of displaying, for example, a table update setting screen for temporary aggregation, a program screen for temporary aggregation, a table update setting screen for aggregation accumulation, a program screen for aggregation accumulation, a table update setting screen for aggregation destination selection, and a program screen for aggregation destination selection on the developer terminal device 40.
[0083] Cell input is a type 9 program that allows a collection of data entered in spreadsheet format to be input by cut-and-paste operations. For example, it is possible to input multiple pieces of data created in spreadsheet software all at once. Type 9 program module 27i corresponds to a single table. This program module 27i has the function of displaying, for example, a product master cell input setting screen, a product master cell input program screen, a supplier master cell input setting screen, and a supplier master cell input program screen on the developer terminal device 40.
[0084] In the program type determination process of S330, a specific module is automatically selected from these nine types of program modules 27a to 27i based on the names of the programs No. 1 "Product Master Registration" to No. 6 "Invoice Issuance" included in the product delivery system and the program information (summary information) of the functions of these programs, which is input from the developer terminal device 40. The details of this process are shown in Figure 6, so from here on, we will also refer to that for explanation.
[0085] 6, in the program type determination process of step S330, first, in step S331, a process is performed to determine whether or not Table 2, i.e., a second table, exists. If a second table exists, a program module corresponding to the linked table is required, and the types of program modules to be selected can be roughly divided into two groups depending on whether or not that function exists.
[0086] If the judgment process in step S331 determines that table 2 exists (S331; Yes), the process proceeds to step S342, where program modules of types 2, 3, 5, and 8 corresponding to the concatenation table can be selected; if the judgment process in step S331 determines that table 2 does not exist (S331; No), the process proceeds to step S332, where program modules of types 1, 4, 6, 7, and 9 not corresponding to the concatenation table can be selected.
[0087] In the next step S332, a process is performed to determine whether the condition for Type 1 is met. This determination is made based on the general design master 13 (FIGS. 12A and 13), and the same applies to the determination processes for the other types 2 to 9. The condition for Type 1 is, for example, that the program name contains one of "registration," "input," "creation," or "maintenance," and the process content of the program contains "input" or "list." If the determination process in step S332 determines that the condition for Type 1 is met (S332; Yes), then the program is confirmed to be a "program type 1" in step S333, and then the program terminates normally (e.g., the error flag is turned off), and the process returns to the error determination process in step S350 of FIG. 4 (Return 1). On the other hand, if the determination process in step S332 determines that the condition for Type 1 is not met (S332; No), the process proceeds to the determination process in step S334. Note that "maintenance" is an abbreviation for maintenance.
[0088] In the next step S334, a process is performed to determine whether the condition for Type 4 is met. The condition for Type 4 is, for example, that the program name includes one of "Register," "Input," "Confirm," "Query," "Add," or "Change," and that the program's processing content includes "Input" but not "List." If the determination process in step S334 determines that the condition for Type 4 is met (S334; Yes), then step S335 determines that the program is a "Program Type 4," and then, as in step S333, the process terminates normally and returns to the error determination process in step S350 of FIG. 4 (Return 1). On the other hand, if the determination process in step S334 determines that the condition for Type 4 is not met (S334; No), the process proceeds to the determination process in step S336.
[0089] In the next step S336, a process is performed to determine whether the condition for Type 6 is met. The condition for Type 6 is, for example, that the program name contains either "tally" or "extract," and the program's processing content includes "tally" but does not include "update." If the determination process in step S336 determines that the condition for Type 6 is met (S336; Yes), then step S337 confirms that the program is "program type 6," and then, as in step S333, the process terminates normally and returns to the error determination process in step S350 of FIG. 4 (Return 1). On the other hand, if the determination process in step S336 determines that the condition for Type 6 is not met (S336; No), the process proceeds to the determination process in step S338.
[0090] In the next step S338, a process is performed to determine whether the condition for Type 7 is met. The condition for Type 7 is, for example, that the program name contains one of "update," "replace," or "convert," and that the program's processing content contains "update." If the determination process in step S338 determines that the condition for Type 7 is met (S338; Yes), then the program is confirmed to be "program type 7" in step S339, and then, as in step S333, the process ends normally and returns to the error determination process in step S350 of FIG. 4 (Return 1). On the other hand, if the determination process in step S338 determines that the condition for Type 7 is not met (S338; No), the process proceeds to the determination process in the next step S340.
[0091] In the next step S340, a process is performed to determine whether the condition for Type 9 is met. A condition for Type 9 is, for example, that the program name contains "cell." If the determination process in step S340 determines that the condition for Type 9 is met (S340; Yes), then in step S341, the program is confirmed to be "program type 9," and the process ends normally, as in step S333, and returns to the error determination process in step S350 of FIG. 4 (return 1).
[0092] On the other hand, if the determination process in step S340 determines that the conditions for type 9 are not met (S340; No), the error information is set to ON (for example, the error flag is set to "1"), the process ends with an error, and the process returns to the error determination process in step S350 in Fig. 4 (Return 2). Note that cases in which the conditions for type 9 are not met include, for example, cases where there is an error in the information entered in the processing content (such as "input," "list," "aggregate," "update," or "report") in the outline design master 13 (Fig. 12(A)), or cases where no information is entered in the processing content.
[0093] The processes for determining whether the conditions for types 2, 3, 5, and 8 are met (S342, S344, S346, S348) and the process for determining each program type after the affirmative determination (S343, S345, S347, S349) are almost the same as the above-described processes for determining whether the conditions for each type are met (S332, S334, S336, S338, S340) and the process for determining each program type (S333, S335, S337, S339, S341), except that the content of each matching condition is different. Therefore, a description of these processes will be omitted.
[0094] 4, in step S350, a process is performed to determine whether the program type determination process performed in the previous step S330 ended in an error. That is, if the error flag is set to ON, it is determined that the program type determination process ended in an error (S350; Yes), and this automatic programming series of processes is terminated (END) without performing the subsequent sample data generation process (S400), form program generation process (S420, form design process 24), or menu program generation process (S440, menu design process 25).
[0095] If the determination in step S350 determines that the program did not end in an error (S350; No), the program proceeds to step S360, where an additional function confirmation process is performed. This additional function confirmation process checks whether the functions of the program modules 27a-27i corresponding to program types 1-9 determined by the program type determination process in step S330 contain incompatible functions between them and some of the functions in the program information (overview information) entered by the developer from the developer terminal device 40. Examples of incompatible functions include import and export functions in program modules 27c-27i other than types 1 and 2, and a report output function in type 4 program module 27d. In other words, the program contains functions that are incompatible with the functions of the program modules of that type. Details of this process are shown in FIG. 7, which will be referenced in the following explanation.
[0096] As shown in FIG. 7 , in the additional function confirmation process in step S360, if the confirmed program type is type 4, 5, or 9, step S361 first determines whether the program information (summary information) entered from the developer terminal device 40, i.e., the general design master 13, includes a report function (report output processing). For program types 4, 5, and 9, program modules 27d, 27e, and 27i primarily perform data entry functions such as individual input and cell input, so report functions such as slips are not suitable. Therefore, if the determination process in step S361 determines that the report function is present (S361; Yes), an error message output process in step S362 outputs an error message, such as "The report function cannot be used," to the screen of the developer terminal device 40. Then, the error information is set to "ON" (e.g., the error flag is set to "1"), the process terminates due to an error, and the process returns to the error determination process in step S375 of FIG. 4 (Return 2). On the other hand, if it is determined that the form function is not available (S361; No), the process proceeds to the next step S363 for determination processing.
[0097] In the next step S363, if the confirmed program type is type 3 to 9, a process is performed to determine whether the outline design master 13 includes an import function (import processing). For program modules 27c to 27i other than basic input program types 1 and 2, the import function is not suitable because the function for externally importing data held in input tables is not required. Therefore, if the determination process in step S363 determines that the import function is available (S363; Yes), an error message such as "Import function cannot be used" is output to the screen of the developer terminal device 40 by error message output process in step S364. Then, the error information is set to "ON" (e.g., the error flag is set to "1"), and the process ends with an error, returning to the error determination process in step S375 of FIG. 4 (Return 2). On the other hand, if the determination process in step S363 determines that the import function is not available (S363; No), the process proceeds to the determination process in step S365.
[0098] In the next step S365, if the confirmed program type is type 3 to 9, a process is performed to determine whether or not the outline design master 13 includes an export function (export processing). The export function is similar to the import function, so some of the explanation will be omitted. If the determination process in step S365 determines that the export function is present (S365; Yes), an error message such as "Export function cannot be used" is output to the screen of the developer terminal device 40 by error message output process in step S366. On the other hand, if it is determined that the export function is not present (S365; No), the process proceeds to the determination process in the next step S367.
[0099] In the next step S367, if the confirmed program type is type 7 or 8, a process is performed to determine whether the general design master 13 includes an input function (input processing). For program modules 27g and 27h of program types 7 and 8 (item update and table update), the function for inputting data into an empty table is not required, so an input function is not suitable. Therefore, if the determination process in step S367 determines that the input function is available (S367; Yes), an error message such as "Input function cannot be used" is output to the screen of the developer terminal device 40 by error message output process in step S368. Then, the error information is set to "ON" (e.g., the error flag is set to "1"), and the process ends with an error, returning to the error determination process in step S375 of FIG. 4 (Return 2). On the other hand, if the determination process in step S367 determines that the input function is not available (S367; No), the process proceeds to the determination process in step S369.
[0100] In the next step S369, if the confirmed program type is type 1 to 5, or 9, a process is performed to determine whether the outline design master 13 includes a tallying function (tallying process). For program modules 27a to 27e, 27i of program types 1 to 5, or 9 (basic input, slip input, individual input, or cell input), the tallying function for input data is not suitable. Therefore, if the determination process in step S369 determines that the tallying function is available (S369; Yes), an error message such as "The tallying function cannot be used" is output to the screen of the developer terminal device 40 by an error message output process in step S370. Then, the error information is set to "ON" (e.g., the error flag is set to "1"), and the process ends with an error. The process returns to the error determination process in step S375 of FIG. 4 (Return 2). On the other hand, if the determination process in step S369 determines that the input function is not available (S369; No), the process proceeds to the determination process in step S371.
[0101] In the next step S371, if the confirmed program type is type 1 to 6, or 9, a process is performed to determine whether the outline design master 13 includes an update function (update processing). For program modules 27a to 27f, 27i other than program types 7 and 8 for item update and table update, the function of rewriting tables from old data to new data is not required, and therefore the update function is not suitable. Therefore, if the determination process in step S371 determines that the update function is present (S371; Yes), an error message such as "The update function cannot be used" is output to the screen of the developer terminal device 40 by error message output process in step S372. Then, the error information is set to ON (for example, the error flag is set to "1"), the process ends with an error, and the process returns to the error determination process in step S375 of FIG. 4 (Return 2).
[0102] On the other hand, if it is determined that there is no update function (S371; No), this determination process (S371) and all the previous determination processes (S361, S363, S365, S367, S369) have not included any incompatible functions between the functions of the program module 27x of one program type n that has been determined among program types 1 to 9 and the functions set by the developer using the overview design master 13. Therefore, the process ends normally (for example, the error flag is off), and the process returns to the error determination process of step S375 in FIG. 4 (Return 1). The "n" in program type n is one of 1 to 9, and the "x" in program module 27x is one of a to i.
[0103] 4, in step S375, a process is performed to determine whether the additional function confirmation process performed in the previous step S360 ended in an error. That is, if the error flag is set to ON, it is determined that the additional function confirmation process ended in an error (S375; Yes), and this automatic programming series of processes is terminated (END) without performing the subsequent sample data generation process (S400), form program generation process (S420, form design process 24), or menu program generation process (S440, menu design process 25).
[0104] If the determination process in step S375 determines that the program did not end in an error (S375; No), the program generation process is performed in the following step S380. In this program generation process, a program design master 15 is automatically generated based on the overview design master 13 and the database design master 14, which can change the functions of the program module 27x (specific module) of program type n determined in the program type determination process in step S330 to functions suitable for the product delivery system, and a program startup code 19a, which is information required to start the program module 27x from the user terminal device 50, is automatically generated. The details of this process are shown in FIG. 8, and will be explained below with reference to that figure.
[0105] As shown in Fig. 8, in the program generation process of step S380, first, in step S381, a process is performed to determine whether the confirmed program type is type 6 to 8. Program types 6 to 8 perform extraction and aggregation, item update, and table update, and are aggregation types. Therefore, if the confirmed program type is type 6 to 8 (S381; Yes), in step S382, a process is performed to determine whether the program name includes a keyword that can determine an aggregation item, such as "monthly" or "by XX".
[0106] Then, in the determination process of step S382, if it is determined that the program name does not contain a keyword that can be used to determine the tally items, such as "monthly" or "by XX" (S382; No), an error message such as "Unable to identify tally items" is output to the screen of the developer terminal device 40 by error message output process of step S384, and then the error information is set to ON (for example, the error flag is set to "1") and the process ends with an error (Return 2). The process returns to the error determination process of step S390 in FIG. 4. On the other hand, if it is determined that the program name contains a keyword that can be used to determine the tally items (S382; Yes), the process proceeds to the next step S383, tally item and order setting process.
[0107] In the tally item and order setting process in step S383, the order is set and the tally items are adjusted so that the basic setting process in step S385 and the item setting process in step S386 proceed smoothly without any problems.
[0108] In the processes of steps S385 to S387, a series of processes are performed to generate a program design master 15 based on the overview design master 13 and the database design master 14. The program design master 15 is information for changing the functions of the program module 27x of the program type n determined by the program type determination process (S330) into functions suitable for the product delivery system (a specified business system). The functions of the program module 27x are not changed, but rather the behavior that can realize the various functions that the program module 27x has as defaults is customized for the product delivery system based on the program design master 15 and changed into functions suitable for the product delivery system. For example, this is like controlling objects with parameters in object-oriented polymorphism. In this case, the object is the program module 27x and the parameters are the program design master 15.
[0109] In the basic setting / screen setting process of step S385, basic information, general screen information, and input screen information suitable for the product delivery system are set based on the overview design master 13 and the database design master 14. For example, settings are made for screen titles, linkage tables, processing modules, sorting order, extraction conditions, etc. Objects No. 1 to No. 5 are examples of such settings among the example of the program design master 14 shown in Figure 15.
[0110] In the item setting process of step S386, item information suitable for the product delivery system is set based on the overview design master 13 and the database design master 14. For example, settings are made for item input, item reference, item calculation, item totaling, etc. Among the examples of the program design master 14 shown in Figure 15, objects No. 21 to No. 28 are examples of such settings.
[0111] In the program design master processing of step S387, a program design master 15 is generated and stored in the database 12 based on the basic information, screen information, and item information customized for the product delivery system by the basic setting / screen setting processing of step S385 and the item setting processing of step S386. The program design master 15 is configured in an interface format that can be accessed by the program module 27x. If a program design master 15 already exists and is stored in the database 12, the program design master processing of step S387 involves writing the basic information, screen information, and item information into the program design master 15 in the database 12.
[0112] In the activation code generation process of step S388, program activation code 19a is generated. Program activation code 19a is information necessary for the user to activate program module 27x from user terminal device 50, and is set in a button on business system activation menu 32 displayed on user terminal device 50 by menu design process 25, which will be described later. This program activation code 19a generated in step S388 includes three pieces of information related to the activation of program module 27x: a table name, a program name, and a program module name.
[0113] The table name is included in the database design master 14, and is "shohin_master" in the example shown in FIG. 14(B). The program name is included in the program design master 15, and is "shohin_mastertbl1" in the example shown in FIG. 15. The program module name is program module 27x, that is, the program type n selected by the program type determination process (S330) from the nine program modules 27a to 27i. These are written in a predetermined programming language (e.g., PHP, JavaScript, Python, etc.) to form the program startup code 19a, which can be written in a minimum of three lines. "JavaScript" and "Python" are registered trademarks.
[0114] In the subsequent determination process of step S389, it is determined whether the program type of program module 27x is type 3 or 8 and whether this is the first time. In program type 3 or program type 8, two programs work together to realize functions related to slip input and table update. Therefore, if the type is 3 or 8 and this is the first time, it is necessary to perform the above-mentioned processes for the other program. Therefore, in this case (S389; Yes), the process returns to step S381 and performs the above-mentioned processes (S381 to S388) again. If the type is not 3 or 8 or the first time (S389; No), the process ends normally (for example, the error flag is off) and returns to the error determination process of step S390 in FIG. 4 (return 1).
[0115] 4, step S390 determines whether the program generation process performed in the previous step S380 ended in an error. That is, if the error flag is set to on, it is determined that the program generation process ended in an error (S390; Yes), and the automatic programming series of processes is terminated (END) without performing the subsequent sample data generation process (S400), form program generation process (S420, form design process 24), or menu program generation process (S440, menu design process 25). If the determination process in step S390 determines that the program generation process did not end in an error (S390; No), the sample data generation process in the following step S400 is performed.
[0116] [Sample data generation process] In the sample data generation process of step S400, sample data is generated for tables 18a to 18e stored in the database 12 of the product delivery system based on the general design master 13 and the database design master 14. For example, sample data is generated as shown in FIG. 16 for the "product master" database (table) shown in FIG. 14(A). This allows the developer to easily understand that, for example, the "product master" table is being automatically generated. Details of this process are shown in FIG. 9, and will be explained below with reference to that.
[0117] 9, in the sample data generation process of step S400, first, in step S401, a process is performed to determine whether the determined program type is Type 3. In Type 3 program module 27c, the linkage table is set in a one-to-many relationship, so two types of sample data corresponding to this must be generated. Therefore, the sample data configuration process is divided into cases where the program type is Type 3 (S401; Yes) and cases where it is not (S401; No), and is allocated (S402, S403).
[0118] The sample data for the tables configured and generated by these processes can be viewed by selecting the "database manager" button from the business system developer menu displayed on the screen of the developer terminal device 40 described above, and then selecting the "table list" button in the upper right corner of the screen (for example, Figure 14(A)). When the sample data generation process in step S400 is completed (return), the process proceeds to the form program generation process in step S420 in Figure 4. The form program generation process (S420) constitutes the form design process 24.
[0119] [Form design process] (Form design process) The form design process 24 generates a data file having, for example, a PDF file format (a data format that allows a form to be saved in the same layout as when printed on paper), and also automatically generates a form design master 16 that is information necessary to start a pre-prepared form program module 28, including information about tables, information about parameters that allow the functions of the form program module 28 to be customized, and information about the name of the form program module 28. The form design process 24 is made up of a form program generation process in step S420. The details of this process are shown in FIG. 10, and will be explained below with reference to that figure.
[0120] 10, in the form program generation process of step S420, first, in step S421, a process is performed to determine whether or not the program module 27x of the determined program type n has a form output processing function. This determination is performed, for example, based on the outline design master 13. If it is determined that the program module 27x does not have the form output processing function (S421; No), there is no need to output a form, so the form program generation process is terminated (return) and the process proceeds to step S440 in FIG. 4. On the other hand, if it is determined that the program module 27x has the form output processing function (S421; Yes), basic setting processing is performed in the next step S422.
[0121] In the basic setting process of step S422, basic information suitable for the product delivery system is set based on the outline design master 13 and the database design master 14. For example, settings are made for the output destination, title, date, output page, output conditions, etc. Objects No. 1 to No. 5 in the example of the form design master 16 shown in Figure 17(A) are examples of such settings.
[0122] In the next step S423, a process is performed to determine whether a template is being used. This determination process is performed based on the outline design master 13 (see FIG. 13). If the object type is a "form" and the object name includes "delivery note" or "invoice," and it is determined that a template is being used (S423; Yes), the process proceeds to the following step S424, where a form layout setting process using a template is performed. On the other hand, if the object type is not a "form" or the object name does not include "delivery note" or "invoice," and it is determined that a template is not being used (S423; No), the process proceeds to the determination process of step S425.
[0123] In the template-based form layout setting process in step S424, a template such as that shown in Fig. 17(B) is used, and layout settings are made to match it. For example, the layout of the title, date, destination, issuer, etc. is automatically set based on predetermined rules.
[0124] In the determination process of step S425, a process is performed to determine whether the program type of program module 27x is type 3. If the program type is type 3, it is necessary to determine the layout of the header section in the form setting. Therefore, if this determination process determines that the program type is type 3 (S425; Yes), the process proceeds to the header section item name setting process of the following step S426. On the other hand, if the program type is not determined to be type 3 (S425; No), the process proceeds to the detail section item name setting process of step S428.
[0125] In the header section item name setting process of step S426, the item names of the header section are set based on the general design master 13 and the database design master 14, and in the next step S427, the header section data setting process also sets data representing the contents of the header section based on the database design master 14. These steps S426 and S427 are processes performed when program module 27x is program type 3, and are therefore necessary when performing the above-mentioned "1: many" voucher input. In other words, while the header section of the voucher is "1," the detail section, which is made up of multiple detail items in the voucher, corresponds to a "many" relationship, and there are two tables, one for the header section and one for the detail section. Therefore, in steps S426 and S427, the item names, data format, etc., are set in the header section of the voucher.
[0126] Furthermore, in the process of setting item names for the detail section in step S428 and the process of setting data for the detail section in the subsequent step S429, data representing the item names for the detail section and the contents of the detail section are set based on the database design master 14. In these steps S428 and S429, the process of setting the item names, data format, etc. for the multiple detail sections that make up the slip is carried out. For example, settings are made for the number, product code, product name, product category, sales start date, sales end date, purchase price, gross profit rate, sales price, etc. Objects No. 310 to No. 318 in the example of the form design master 16 shown in Figure 17(A) are examples of such settings.
[0127] In the form design master processing of step S430, a process is performed to generate a program design master 15 based on the overview design master 13 and the database design master 14. The form design master 16 is information for changing the functions of a pre-prepared form program module 28 to functions suitable for a product delivery system (a specified business system). The function of the form program module 28 itself is not changed, but rather the behavior that can realize the form output function that the form program module 28 has as its default is customized for the form output of the product delivery system based on the form design master 16 and changed to a function suitable for the product delivery system. For example, this is like controlling an object with parameters in object-oriented polymorphism. In this case, the object is the form program module 28 and the parameter is the form design master 16.
[0128] In this form design master process, a form design master 16 is generated based on the basic information customized for the product delivery system through the processes of steps S422 to S429 (and also based on form information as needed) and stored in the database 12. The form information is input from the developer terminal device 40 regarding the form output used in the product delivery system. For example, by selecting the "pdf designer" button on the business system developer menu 31 displayed on the developer terminal device 40, the form design process 24 (form program generation process (S420)) is launched, enabling input.
[0129] The form design master 16 is configured in an interface format that can be accessed by the form program module 28. If the form design master 16 already exists and is stored in the database 12, the form design master processing in step S430 involves writing basic information into the form design master 16 in the database 12.
[0130] In addition, in this report program generation process, there is no report program start-up information generation process equivalent to the start-up code generation process (S388) that generates the program start-up code 19a that starts the program module 27x, as in the program generation process of step S380 described above.
[0131] Form output is initiated, for example, by the user selecting, via the user terminal device 50, a "Print" button, a "Publish" button, or the like displayed in a program module 27x for issuing a delivery note or an invoice, etc. Therefore, there is no need to generate a program startup code, since code equivalent to the program startup code is written in the form program module 28, which is initiated by selecting these buttons and is generated by the menu program generation process (S440) described below. Therefore, the form program generation process in step S420 does not include a form program startup information generation process for generating a program startup code for activating the form program module 28.
[0132] When the form program generation process in step S420 is completed (return), the process proceeds to the menu program generation process in step S440 in Fig. 4. The menu program generation process (S440) constitutes the menu design process 25.
[0133] [Menu design process] (Menu design process) The menu design process 25 automatically generates a menu design master 17, which is information necessary to start a pre-prepared menu program module 29 and includes information on parameters that can customize the functions of the menu program module 29 and information on the name of the menu program module 29. The menu design process 25 is made up of a menu program generation process in step S440. The details of this process are shown in Figure 11, and will be explained below with reference to that figure.
[0134] As shown in Fig. 11, the menu program generation process in step S440 first performs basic setting process in step S441. In this basic setting process, basic information suitable for the buttons of the business system launch menu 32 is set based on the overview design master 13. For example, settings for output destinations, etc. are made. An example of this is object No. 1 in the example of the menu design master 17 shown in Fig. 18(A).
[0135] In the next step S442, a launch button setting process is performed. In this process, the launch button information constituting the business system launch menu 32 is set based on the overview design master 13. For example, display names corresponding to the respective buttons are set. Objects No. 110 to No. 115 in the example of the menu design master 17 shown in FIG. 18(A) are examples of such settings.
[0136] In the next step S443, an additional component setting process is performed. This process is based on the menu information input from the terminal device 40, and also sets the start button information that constitutes the business system start menu 32. For example, this setting is used when displaying the logo of the company that uses the product delivery system, supplementary explanations of the system, etc.
[0137] In the menu design master process of step S444, a process is performed to generate a menu design master 17 based on the overview design master 13 (and also based on the menu information (start button menu information) of the business system startup menu 32 as needed). The menu information is input from the developer terminal device 40 in relation to the business system startup menu 32 displayed on the screen of the user terminal device 50. For example, by selecting the "menu editor" button of the business system developer menu 31 displayed on the developer terminal device 40, the menu design process 25 (menu program generation process (S440)) is started, enabling input.
[0138] The menu design master 17 is information for changing the functions of the pre-prepared menu program module 29 to functions suitable for the product delivery system (predetermined business system). The function of the menu program module 29 is not changed, but the behavior that can realize the function of outputting image information of the buttons of the business system startup menu 32 that the menu program module 29 has as a default to the user terminal device 50 is customized for the startup menu of the product delivery system based on the form design master 16 and changed to a function suitable for the buttons of the business system startup menu 32. For example, it is like controlling an object with a parameter in object-oriented polymorphism; in this case, the object is the menu program module 29 and the parameter is the menu design master 17.
[0139] In the menu design master process of step S444, a menu design master 17 is generated based on the basic information customized for the business system startup menu of the product delivery system by the processes of steps S441 to S443 (and also based on the menu information of the business system startup menu 32 as needed), and stored in the database 12. As described above, the menu information is input from the developer terminal device 40 regarding the buttons for starting each program used in the business system startup menu 32.
[0140] The menu design master 17 is configured in an interface format that can be accessed by the menu program module 29. If the menu design master 17 already exists and is stored in the database 12, the menu design master processing in step S444 involves writing basic information into the menu design master 17 in the database 12.
[0141] In the activation code generation process of step S445, a program activation code 19m is generated. The program activation code 19m is information necessary to activate the menu program module 29 from the user terminal device 50, and is executed, for example, immediately after the user logs in to the implementation system 10. The program activation code 19m is also executed in the menu program activation process of step S470 of this automatic programming series of processes so that the developer can check the business system activation menu 32 on the user terminal device 50.
[0142] The program launch code 19m generated in step S445 includes three pieces of information related to the launch of the menu program module 29: a key code, a launch code name, and a program module name. The key code and launch key code name are included in the menu design master 17, and in the example shown in FIG. 18(A), it is the menu name "menu8200." The program module name is the menu program module 29. These are written in a predetermined programming language (for example, PHP) to form the program launch code 19m, which can be written in a minimum of three lines.
[0143] In the activation code write process of step S446, program activation code 19a etc. is set to the buttons etc. of the business system activation menu 32. In the example of the business system activation menu 32 shown in Fig. 18(B), for example, program activation code 19a is set to the "Register product master" button, program activation code 19b is set to the "Enter delivery destination master cell" button, program activation code 19c is set to the "Issue delivery note" button, program activation code 19d is set to the "Monthly summary by product and delivery destination" button, program activation code 19e is set to the "Monthly summary by delivery destination" button, and program activation code 19f is set to the "Issue invoice" button.
[0144] When the activation code writing process in step S446 is completed (return), the process proceeds to the determination process in step S460 in Fig. 4. In this process, it is determined whether there are any other programs to be automatically generated. If it is determined that there are still programs to be automatically generated and the generation process will not end (S460; No), the process returns to step S310 and performs the above-mentioned processes again. If it is determined that there are no programs to be automatically generated and the generation process will end (S460; Yes), the process proceeds to step S470.
[0145] The menu program startup process in step S470 is performed to display the business system startup menu 32 on the screen of the developer terminal device 40. For example, this is done so that the developer can check the display mode of the business system startup menu 32 on the user terminal device 50. In the example of the product delivery system described so far, the business system startup menu 32 shown in Figure 18(B) displays six buttons: "Register product master," "Enter delivery destination master cell," "Issue delivery note," "Monthly summary by product and delivery destination," "Monthly summary by delivery destination," and "Issue invoice." When this process is completed, this series of automatic programming processes ends (END).
[0146] 3.Example of effects (1) In the above-described business system construction method, a developer of a product delivery system inputs program information (summary information) and table information required to construct the product delivery system from a developer terminal device 40 to a server device 11, which then generates an overview design master 13 and a database design master 14, and generates a program design master 15, a form design master 16, and a menu design master 17 based on the overview design master 13 and the database design master 14. This allows the developer to construct the product delivery system with a simple operation of simply inputting the program information (summary information) and table information from the developer terminal device 40 to the server device 11. Furthermore, the design process of the business system is made into tools in the server device 11, including an overview design process, a database design process, a program design process, a form design process, and a menu design process.
[0147] (2) In the above-described business system construction method, the developer of the product delivery system inputs summary information and table information from the developer terminal device 40 to the server device 11, which then generates screen information for a launch button that can launch the program module 27x or the menu program module 29 from the user terminal device 50. This allows the developer to obtain screen information that can display a launch button that can launch the program module 27x on the screen of the user terminal device 50, simply by inputting this information from the developer terminal device 40 to the server device 11. In other words, the business system can be constructed with simple operations.
[0148] (3) In the business system construction program 20 described above, the developer of the product delivery system inputs overview information and table information from the developer terminal device 40 to the server device 11, and the server device 11 generates screen information for a launch button that can launch the program module 27x or the menu program module 29 from the user terminal device 50. This further automates the overview design process, database design process, program design process, form design process, and menu design process, which are tooled as the design process of the product delivery system, and allows the developer to build the product delivery system with simple operations.
[0149] (4) In the business system construction program 20 described above, the developer of the product delivery system inputs information on the names of the multiple programs and information on the functions of the multiple programs from the developer terminal device 40 to the server device 11, and the server device 11 generates, using diagrams, image information that can be displayed on the screen of the developer terminal device 40, including at least one or more table symbols, symbols for the multiple programs and symbols representing the relationships between them, and, for programs among the multiple programs that have a data output function, symbols for the data output and symbols representing the relationship between the data output and the program. This allows the developer to build a product delivery system with simple operations based on the image information displayed on the screen of the developer terminal device 40.
[0150] (5) In the above-described business system construction program 20, the server device 11 enables input of information about a specific table, among the table symbols included in the image information, designated by the developer terminal device 40. This allows the developer to simply designate a specific table from the table symbols displayed on the screen of the developer terminal device 40 and input information about that table.
[0151] (6) In the above-described business system construction program 20, if the server device 11 determines in the table name / existence confirmation process (S310) that at least one of the tables does not exist in the database 12 (S313; No), or if it determines that the name of one of the tables does not satisfy predetermined requirements (S311; No), the server device 11 does not perform the program type determination process (S330). As a result, if the table to be operated on by the program module 27x selected in the program type determination process (S330) does not exist in the database 12 or the table name does not satisfy predetermined requirements, the program type determination process (S330) can be prevented from selecting the program module 27x based on such inappropriate table information.
[0152] (7) In the above-described business system construction program 20, if the server device 11 determines, between the program type determination process (S330) and the program generation process (S380), that the information input from the developer terminal device 40 contains a function incompatible with the functions possessed by the program module 27x through the additional function confirmation process (S360) (S375; Yes), the server device 11 does not perform the program generation process (S380). This prevents the program generation process (S380) from generating the program activation code 19a or the like for a function that cannot be realized by the program module 27x selected through the program type determination process (S330).
[0153] <Other embodiments> The present invention is not limited to the embodiments described above and illustrated in the drawings. For example, any combination of features of the above-described or following embodiments is possible within a range that does not contradict. Furthermore, any feature of the above-described or following embodiments may be omitted unless explicitly stated as essential. Furthermore, the above-described embodiments may be modified as follows.
[0154] In the above embodiment, the configuration of the development system 10 on the Internet 90 was exemplified, but the present invention is not limited to this example. For example, the development system may be configured by providing a server device on a closed network within an organization that is not open to the public, a so-called intranet, and connecting developer terminal devices and user terminal devices to the intranet. Even in a development system with such a configuration, the same technical functions and effects as those of the development system 10 described above can be obtained.
[0155] In the above embodiment, a product delivery system has been described as an example of a predetermined business system to be built by the building system 10, but the present invention is not limited to this example. For example, the above-described automatic programming and various information processing related to the above-described automatic programming are also possible in a cost / quote / billing system, a molding process management system, an ordering / delivery / inspection system, a direct delivery slip system, etc.
[0156] It should be noted that the embodiments disclosed herein should be considered to be illustrative in all respects and not restrictive. The scope of the present invention is not limited to the embodiments disclosed herein, but is intended to include all modifications within the scope indicated by the claims or the scope equivalent to the claims. [Explanation of symbols]
[0157] 10: Construction system (business system construction system) 11: Server device 12: Database 13: Overview design master (basic information for overview design) 14: Database design master (basic database design information) 15: Program design master (basic program design information) 16: Report design master (basic information on report design) 17: Menu design master (basic menu design information) 18a~18e: Table 19a~19f: Program start code (program start information) 19m: Program start code (menu program start information) 20: Business system construction program 21: Overview design process (outline design process, other first program) 22: Database design process (database design process, other second programs) 23: Program design process (program design process) 24: Report design process (Report design process) 25: Menu design process (menu design process) 26: Program List and Processing Flow 27a to 27i: Program modules (multiple program modules) 27x: Program module (specific module) 28: Report program module 29: Menu program module 31: Business System Developer Menu 32: Business system startup menu 40: Developer terminal device 50: User terminal device 90: Internet S310: Table name and existence confirmation process (program appropriateness determination process) S330: Program type determination process (first step, specific module selection process) S360: Additional function confirmation process (non-conforming function determination process) S380: Program generation process (startup information generation process) S381: Program type determination process S385: Basic setting process (2nd process, basic design information generation process) S386: Screen setting process (2nd process, basic design information generation process) S387: Item setting process (2nd process, basic design information generation process) S388: Activation code generation process (third step, activation information generation process) S400: Sample data generation process S420: Report program generation process S440: Menu program generation process (fourth step, screen information generation process) S460: Generation process end determination process S470: Menu program startup process< / memo> < / memo>
Claims
1. A business system construction method in which a server device connected to a network constructs a predetermined business system, The design process of the predetermined business system includes an outline design process, a database design process, a program design process, a form design process, and a menu design process, Each of these steps is configured to be operable from a developer terminal device that is connected to the network and operated by the developer, the outline design step generates basic outline design information based on outline information input from the developer terminal device, the basic outline design information being information on the names of a plurality of programs included in the predetermined business system and the functions of these programs; The database design step generates basic database design information based on table information input from the developer terminal device regarding at least one table used in the predetermined business system, the table information including the name of the table, the names of the fields included in the table, the data type of the field, and key settings; the program design step generates basic program design information based on the basic outline design information and the basic database design information; The form design step generates basic form design information based on the basic outline design information and the basic database design information, The menu design step generates basic menu design information based on the basic outline design information and the basic database design information. How to build a business system.
2. the outline design basic information, the database design basic information, the program design basic information, and the menu design basic information are accessible for each of the steps; The program design step includes: a first step of selecting a specific program module (hereinafter referred to as a "specific module") from a plurality of program modules prepared in advance based on the summary information; a second step of generating the basic program design information, which can change the functions of the specific module to functions suitable for the predetermined business system, based on the basic outline design information and the basic database design information; a third step of generating program start-up information including name information of the specific module, the table information, and information necessary for the specific module to access the program design basic information; a fourth step of generating, based on the basic menu design information, screen information of the launch button that is associated with the program launch information and that can launch the specific module from a user terminal device that is connected to the network and operated by a user; The business system construction method according to claim 1, further comprising:
3. 3. A program using the business system construction method according to claim 2, wherein the program is executed by the server device to construct the predetermined business system, the first step is a specific module selection process for automatically selecting the specific module from the plurality of program modules based on the summary information input from the developer terminal device, the summary information being information on the names of the plurality of programs included in the predetermined business system and the functions of the plurality of programs; the second step is a design basic information generation process for automatically generating the program design basic information capable of changing the function of the specific module into a function suitable for the predetermined business system, the third step is a startup information generation process for automatically generating the program startup information, which is information necessary for starting the specific module from the user terminal device; The fourth step is a screen information generation process for automatically generating screen information including the start button.
4. information on the names of the plurality of programs and information on the functions of the plurality of programs is input from the developer terminal device via another first program executed by the server device; The other first program generates, based on information on the names of the plurality of programs and information on the functions of the plurality of programs, at least one or more symbols of the table, symbols of the plurality of programs and symbols representing the relationships therebetween, and, for a program among the plurality of programs having a data output function, symbols of the data output and symbols representing the relationship between the data output and the program, as image information that can be displayed on a screen of the developer terminal device using a diagram. The business system construction program according to claim 3.
5. information about the table is input from the developer terminal device via another second program executed by the server device; The other second program enables input of information about a specific table designated by the developer terminal device among the symbols of the table included in the image information.
5. The business system construction program according to claim 4.
6. a table appropriateness determination process for determining, before the specific module selection process, whether the table exists in the database and / or whether the name of the table satisfies predetermined requirements based on the table information; If the table appropriateness determination process determines that the table does not exist in the database, or that the name of the table does not satisfy a predetermined requirement, the specific module selection process is not performed. The business system construction program according to any one of claims 3 to 5.
7. between the specific module selection process and the startup information generation process, an incompatible function determination process is included which determines whether or not the information input from the developer terminal device includes a function incompatible with the function possessed by the specific module; If the incompatible function determination process determines that the information input from the developer terminal device contains a function incompatible with the function possessed by the specific module, the startup information generation process is not performed. The business system construction program according to any one of claims 3 to 5.
Citation Information
Patent Citations
Program designing system
JP1996016377A
Program development support system
JP1997212352A
Business system construction device, business system construction method, and business system construction program
JP2020194251A