Application delivery system, application delivery method, and application delivery program

The application provisioning system addresses the challenge of variable column items in low-code development by dynamically extending UI control and event settings, improving flexibility and user experience.

JP2026115062APending Publication Date: 2026-07-09OBIC CO LTD

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
OBIC CO LTD
Filing Date
2024-12-27
Publication Date
2026-07-09

AI Technical Summary

Technical Problem

Low-code development systems struggle with applying UI controls to data with a variable number of column items, leading to inflexible layouts and degraded user experiences.

Method used

An application provisioning system that dynamically extends pre-configured UI control by accessing a database storing layout definitions, control IDs, event assignment definitions, and logic flow definitions, allowing UI control to be reflected even for data with a variable number of columns beyond the pre-configured layout.

Benefits of technology

Enables dynamic extension of UI control and event settings for variable column items, enhancing system flexibility and user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026115062000001_ABST
    Figure 2026115062000001_ABST
Patent Text Reader

Abstract

This invention provides an application delivery system, an application delivery method, and an application delivery program that can extend and reflect UI control even for a number of column items that exceeds a pre-configured layout. [Solution] The application provision system according to this embodiment is an application provision system configured to communicate data with a developer and a client, which is a user, wherein the control unit includes an execution unit that starts a business application, and the execution unit, in response to a request from the user, reads the logic flow definition of the logic flow ID, executes the logic flow, and when binding the obtained table type data to the detail control, it obtains the definition information of the last column and displays the columns from the last column onward by reflecting the UI control of the definition information.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an application providing system, an application providing method, and an application providing program.

Background Art

[0002] In recent years, low-code development has been known, in which an application program can be quickly developed by visually operating a GUI (Graphical User Interface) to combine screen components or logic components without describing source code as much as possible. Application programs developed by low-code development are used for data analysis in a business environment, but it is necessary to expand data across other items for analysis and perform flexible layout and UI control accordingly.

[0003] Patent Document 1 describes an application screen display program implementation method in which an information processing device executes application software to display a screen, and holds a master table for controlling the display of display elements constituting the screen. Each record of the master table for controlling the display of the display elements holds information related to variables in the source code of an execution program associated with the control of the display of the display elements, and each record of the transaction data input / output from the display elements holds information related to variables in the source code of an execution program associated with the display elements (see, for example, Patent Document 1).

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0005] In basic low-code development, there was a problem where UI controls (such as column control and events) could not be applied to data with a variable number of column items, exceeding the number of items in a pre-configured layout. This resulted in a lack of system flexibility and a degraded user experience.

[0006] The present invention has been made in view of the above, and aims to provide an application provisioning system, an application provisioning method, and an application provisioning program that can dynamically extend pre-configured UI control even for data with a variable number of column items, and can reflect UI control even for a number of column items that exceeds the pre-configured layout. [Means for solving the problem]

[0007] To solve the above-mentioned problems and achieve the objective, the present invention provides an application provision system comprising a control unit and configured to communicate data with a developer and a client, the user, wherein the control unit is configured to access a database storing a layout definition defining the layout of a screen created by the developer, a control ID for identifying element controls constituting the screen, an event assignment definition linking the event type of a region that can be specified within the screen with a logic flow ID, and a logic flow definition including control information, action information, and logic flow information, the control unit comprises an execution unit that starts a business application when it receives a startup instruction from the user, the execution unit, in response to a request from the user, obtains a logic flow ID corresponding to the requested event control ID from the event assignment definition, reads the logic flow definition of the obtained logic flow ID, executes the logic flow, and when binding the obtained table type data to a detail control, obtains definition information of the last column of the table type data of the detail control set by the developer from the layout definition, and displays the columns from the last column onward of the obtained table type data with the UI control of the definition information of the last column reflected.

[0008] Furthermore, the application provision method of the present invention is an application provision method to be executed by an application provision system equipped with a control unit and configured to communicate data with a developer and a client, the developer and the client, the control unit is configured to access a database storing a layout definition that defines the layout of a screen created by the developer, a control ID for identifying element controls constituting the screen, an event assignment definition that associates the event type of a region that can be specified in the screen with a logic flow ID, and a logic flow definition that includes control information, action information, and logic flow information, the method to be executed by the control unit, the execution step which, upon receiving a startup instruction from the user, starts a business application, the execution step which, in response to a request from the user, obtains a logic flow ID corresponding to the requested event control ID from the event assignment definition, reads the logic flow definition of the obtained logic flow ID, executes the logic flow, and when binding the obtained table type data to a detail control, obtains definition information of the last column of the table type data of the detail control set by the developer from the layout definition, and displays the columns from the last column onward of the obtained table type data with the UI control of the definition information of the last column reflected.

[0009] Furthermore, the application provision program of the present invention is an application provision program to be executed on an application provision system equipped with a control unit and configured to communicate data with a developer and a user (client), wherein the control unit is configured to access a database storing a layout definition that defines the layout of a screen created by the developer, a control ID for identifying element controls constituting the screen, an event assignment definition that associates the type of event of a region that can be specified in the screen with a logic flow ID, and a logic flow definition that includes control information, action information, and logic flow information, and when the control unit receives a startup instruction from the user, it executes an execution step to start the business application, the execution step is characterized in that, in response to a request from the user, it obtains a logic flow ID corresponding to the requested event control ID from the event assignment definition, reads the logic flow definition of the obtained logic flow ID, executes the logic flow, and when binding the obtained table type data to a detail control, it obtains definition information of the last column of the table type data of the detail control set by the developer from the layout definition, and displays the columns from the last column onward of the obtained table type data with the UI control of the definition information of the last column reflected. [Effects of the Invention]

[0010] According to the present invention, the UI control can be extended and reflected even for a number of column items that exceeds the number of columns set in the pre-configured layout. [Brief explanation of the drawing]

[0011] [Figure 1] Figure 1 shows an example of the configuration of the application provisioning system (Web server) according to the embodiment. [Figure 2] Figure 2 shows an example of a task execution screen. [Figure 3] Figure 3 illustrates the binding of table-type data to the detail control. [Figure 4] Figure 4 is a diagram for explaining the processing by the developer on the setting screen. [Figure 5] Figure 5 is a diagram for explaining the processing by the user on the execution screen. [Figure 6] Figure 6 is a diagram for explaining the layout editing on the setting screen. [Figure 7] Figure 7 is a diagram for explaining the layout editing on the setting screen. [Figure 8] Figure 8 is a diagram for explaining the layout editing on the setting screen. [Figure 9] Figure 9 is a diagram for explaining the layout editing on the setting screen. [Figure 10] Figure 10 is a diagram for explaining the layout editing on the setting screen. [Figure 11] Figure 11 is a diagram showing an example of layout definition. [Figure 12] Figure 12 is a diagram showing an example of the setting screen of the logic flow. [Figure 13] Figure 13 is a diagram showing an example of event assignment definition. [Figure 14] Figure 14 is a diagram showing an example of logic flow definition. [Figure 15] Figure 15 is a diagram showing an example of the setting screen of the API call action. [Figure 16] Figure 16 is a diagram showing an example of the definition created by the API call action setting. [Figure 17] Figure 17 is a diagram for explaining the arguments and return values obtained by the API call. [Figure 18] Figure 18 is a diagram showing an example of the setting screen of the logic flow. [Figure 19] Figure 19 is a diagram for explaining the settings on the dialog display action setting screen. [Figure 20] Figure 20 is a diagram for explaining the definition created by the dialog display action setting and the properties available in the set of values of each control. [Figure 21]FIG. 21 is a diagram for explaining a processing flow at the time of starting an application providing system according to an embodiment. [Figure 22] FIG. 22 is a diagram showing an example of user-specific control information data. [Figure 23] FIG. 23 is a diagram showing an example of event allocation information. [Figure 24] FIG. 24 is a diagram for explaining a processing flow when a user presses a display button. [Figure 25] FIG. 25 is a diagram for explaining a processing flow on the server side when requested by a user. [Figure 26] FIG. 26 is a diagram for explaining a processing flow of monthly data acquisition processing. [Figure 27A] FIG. 27A is a diagram for explaining a flow of a process of setting a return value of an API to a control. [Figure 27B] FIG. 27B is a diagram for explaining a process of setting a return value of an API to a control. [Figure 27C] FIG. 27C is a diagram for explaining a process of setting a return value of an API to a control. [Figure 28] FIG. 28 is a diagram for explaining a process of specifying "definition" information of the last column of table-type data. [Figure 29] FIG. 29 is a diagram showing an example of event allocation information after monthly data acquisition processing. [Figure 30] FIG. 30 is a diagram for explaining a method of copying allocation information for an extended cell. [Figure 31] FIG. 31 is a diagram for explaining a process when a monthly amount label cell is pressed. [Figure 32] FIG. 32 is a diagram for explaining a processing flow when a monthly amount label cell is pressed. [Figure 33] FIG. 33 is a diagram for explaining a processing flow on the server side when a monthly amount label cell is pressed. [Figure 34] FIG. 34 is a diagram showing an example of a display screen after a process when a monthly amount label cell is pressed.

MODE FOR CARRYING OUT THE INVENTION

[0012] Embodiments of the present invention will be described in detail with reference to the drawings. However, the present invention is not limited to these embodiments.

[0013] [1. Overview] Figure 2 shows an example of a business execution screen provided by a business application. Business applications used for data analysis in a business environment expand data across multiple items for analysis. Depending on the analysis, the number of data columns may become variable, for example, as shown in Figure 2, such as execution screen MA-1 where the table-type data in the details section has 4 columns for April to June, or execution screen MA-2 where it has 6 columns for April to August.

[0014] When developing using low-code development tools, it is difficult to change the number of columns in response to screen operations because layout information must be set in advance. In the case of changing the monthly column as shown in Figure 2, it is possible to change the number of columns by setting constraints such as a maximum of 12 months, determining the starting month and the number of months to display, and hiding unnecessary columns according to the conditions, but the setup cost is high. However, when deploying actual departments in columns, it is not possible to set an upper limit, so it becomes impossible to change the number of columns to display.

[0015] In the application provision system 100 of this embodiment, when binding table-type data obtained by logic flow, etc., to details, a setting is provided in the detail control to duplicate the definition information of the last column set by the developer, making it possible to display the UI control of the definition information of the last column even when the number of columns in the table-type data changes.

[0016] Figure 3 illustrates the binding of table-type data to the detail control. When the obtained data D1 is bound to the execution screen MA-3, if the number of columns in data D1 is the same as the number of columns set by the developer, the UI control of the set definition information, such as column width, left / right centering, comma spacing, integer / decimal digit control, and click events are reflected and displayed on the execution screen MA-4. In the application provision system 100 of this embodiment, even if the number of columns in the obtained data is greater than the number of columns set by the developer, the definition information of the last column of the table-type data of the detail control set by the developer is obtained, and the UI control of the definition information of the last column set by the developer is reflected and displayed in the columns from the last column onward of the obtained table-type data. For example, as with data D2 in Figure 3, even if the number of columns is greater than the number set by the developer, the setting information of the last column (April) of the definition information can be duplicated and applied to the columns from the last column onward (May and June) to apply the UI control and event settings. In addition to click events, events that validate cell values ​​(amount, etc.) can be exemplified as events.

[0017] [2. Structure] Referring to Figure 1, an example of the configuration of the application provisioning system 100 (Web server) according to this embodiment will be described. Figure 1 is a block diagram showing an example of the configuration of the application provisioning system 100. As shown in Figure 1, the application provisioning system 100 of this embodiment can be configured, for example, with a low-code platform (low-code development platform / low-code execution platform). Alternatively, it may be configured with a no-code platform.

[0018] The application provisioning system 100 comprises a control unit 102, a communication interface unit 104, a storage unit 106, and an input / output interface unit 108. Each part of the application provisioning system 100 is connected to communicate via any communication path.

[0019] The communication interface unit 104 connects the application provisioning system 100 to the network 300 via communication devices such as routers and wired or wireless communication lines such as dedicated lines. The communication interface unit 104 has the function of communicating data with other devices via communication lines. Here, the network 300 has the function of connecting the application provisioning system 100 to web clients (including web clients used by web clients used by web clients (users)) 200... and business systems not shown, which can communicate with each other, and is, for example, the internet or a LAN (Local Area Network). The data stored in the storage unit 106, which will be described later, may be stored in a data server not shown.

[0020] The input / output interface unit 108 is connected to an input device 400 and an output device 500. The output device 500 can be a monitor (including a home television), a speaker, or a printer. The input device 400 can be a keyboard, mouse, microphone, or a monitor that works in conjunction with the mouse to provide pointing device functionality. In the following, the output device 500 may be referred to as the monitor 500, and the input device 400 as the keyboard 400 or mouse 400.

[0021] The memory unit 106 stores various databases, tables, and files. The memory unit 106 also stores computer programs that work in cooperation with the OS (Operating System) to give instructions to the CPU (Central Processing Unit) to perform various processes. As the memory unit 106, for example, memory devices such as RAM (Random Access Memory) and ROM (Read Only Memory), fixed disk devices such as hard disks, flexible disks, and optical disks can be used.

[0022] The memory unit 106 includes a development application DB 106a for storing various setting information during the development stage, a business application DB 106b to which the application information of the development application DB 106a is made public, and the like.

[0023] The development application DB106a stores layout definitions, event assignment definitions, logic flow definitions, etc.

[0024] A layout definition is a table that defines the layout of a screen created by a developer. As shown in Figure 11 as an example, a layout definition specifies the control ID, identifier name, type, list of child element IDs, and properties.

[0025] The event assignment definition is a table that links the control ID, which identifies the element controls that make up the screen, the type of event for the area that can be specified on the screen, and the logic flow ID, as shown in Figure 13 as an example.

[0026] A logic flow definition includes control information, action information, and logic flow information. As shown in Figure 14 as an example, each logic flow ID stores the action ID, type, and unique settings, as well as the flow ID, source, and destination.

[0027] The control unit 102 is a CPU or similar component that comprehensively controls the application provisioning system 100. The control unit 102 has internal memory for storing control programs such as the OS, programs that define various processing procedures, and required data, and executes various information processing based on these stored programs.

[0028] Functionally, the control unit 102 comprises a setting unit 102a and an execution unit 102b.

[0029] The configuration unit 102a functions as a low-code development platform, creating configuration information (definitions) related to the provision of business applications and registering it in the development application DB 106a.

[0030] For example, the configuration unit 102a provides a layout configuration screen in response to a request from a Web client 200 (developer), and creates a layout definition and registers it in the development application DB 106a based on the developer's actions on the configuration screen.

[0031] Furthermore, the configuration unit 102a provides a logic flow configuration screen in response to a request from the Web client 200 (developer), and creates event assignment definitions and logic flow definitions in response to the developer's operations on the configuration screen, and registers them in the development application DB 106a.

[0032] Furthermore, the configuration unit 102a provides an action setting screen, such as an API call, in response to a request from the Web client 200 (developer), and registers the individual definitions of the configured actions in the development application DB 106a based on the developer's operations on the action setting screen.

[0033] The execution unit 102b functions as a low-code execution platform and provides business applications in response to requests from Web clients 200 (users).

[0034] When the execution unit 102b receives a startup command from the Web client 200 (user), it starts the business application. Specifically, the execution unit 102b acquires the layout definition, event assignment definition, and logic flow definition, expands them into the definition information memory, generates user-specific control information data, expands it into the execution unit memory, and returns the screen HTML, the scripts necessary for event operation, and event assignment information to the user.

[0035] Here, user-specific control information data refers to some of the property information of a control that may change depending on the user. As shown in an example in Figure 22, user-specific control information data stores the control ID, type, and properties.

[0036] Furthermore, in response to a request from the Web client 200 (user), the execution unit 102b obtains a logic flow ID corresponding to the requested event control ID from the event assignment definition, reads the logic flow definition of the obtained logic flow ID, executes the logic flow, and when binding the obtained table type data to the detail control, obtains the definition information of the last column of the detail control's table type data set by the developer from the layout definition, and displays the obtained table type data from the last column onward by reflecting the UI control of the definition information of the last column set by the developer.

[0037] [3. Prerequisites for Processing] This section describes the prerequisites for the processing according to this embodiment.

[0038] [3-1. Overall diagram of the low-code platform] Low-code platforms consist of a configuration screen operated by developers and an execution screen operated by users.

[0039] Figure 4 illustrates the process performed by developers on the settings screen MB-1. On the settings screen MB-1, developers configure layout and event handling settings using drag-and-drop operations with the mouse (400). The information from the settings screen is stored in the development application DB106a.

[0040] Figure 5 illustrates the user's processing on the execution screen MA-6. Based on instructions on the execution screen MA-6, the low-code infrastructure reads the configuration information set on the settings screen, expands it into memory on the Web server 100, and allows it to be executed as an application on the Web server 100 and as a web page (screen + program) for the Web client 200 (user). The Web page (screen + program) for the Web client 200 (user) can be configured to be sent from the Web server 100 to the Web client 200 (user) and executed when loaded into the Web browser of the Web client 200 (user). The program for the Web page of the Web client 200 (user) may be implemented using well-known Web application technologies (for example, a format including instructions and runtime variables written in JavaScript®).

[0041] [3-2. Settings screen] This section provides a detailed explanation of how to configure settings on the settings screen.

[0042] (1) Layout editing screen First, the Web client 200 (developer) edits the layout of the execution screen using the settings screens MB-2 to MD-6 shown in Figures 6 to 10. In the settings screen MB-2 in Figure 6, the properties of the detail input control are selected and the "Repeat last column depending on data" command is checked. When the "Repeat last column depending on data" command is turned on, the definition information of the last column of the table-type data of the detail control set by the developer, such as UI control, is extended to the columns after the last column of the obtained table-type data.

[0043] In the settings screen MB-3 shown in Figure 7, clicking the detail control displays popup P1. Columns can be added, deleted, or duplicated by selecting options in the popup.

[0044] In the settings screen MB-4 shown in Figure 8, after adding a column, clicking on a cell displays popup P2 (Change Cell Type). Clicking popup P2 displays popup P3, allowing you to change the cell's category and type. In Figure 8, the cell type has been changed to numeric.

[0045] In the settings screen MB-5 shown in Figure 9, the column names have been changed, and the properties of the clicked numerical cell are modified. UI control is set by specifying properties in the settings screen MB-5 shown in Figure 9.

[0046] In the settings screen MB-6 shown in Figure 10, processing is assigned to the cell click event. In Figure 10, the click event is assigned as the processing when the monthly amount label cell is pressed, but it is also possible to set it to a double-click event, etc. Based on the above settings, a layout definition is generated. The generated layout definition is shown in Figure 11.

[0047] (2) Logic flow setting screen Next, Web client 200 (developer) configures the process when the display button is pressed in the logic flow configuration screen MB-7 shown in Figure 12. By configuring the API call action flow as circled in Figure 12, the user moves to the action configuration screen described later. In the API call action, by binding the obtained table-type data, a repeating detail is set with the last column having an expanded definition. Note that the logic flow configured here is not limited to API calls; any action that sets table-type data in the detail is acceptable. For example, setting CSV data in the detail control is also acceptable. The event assignment definition generated by this configuration screen is shown in Figure 13, and the logic flow definition is shown in Figure 14. Furthermore, Web client 200 (developer) configures the process when the monthly amount label cell is pressed in the logic flow configuration screen MB-9 shown in Figure 18. By configuring the dialog display action flow as circled in Figure 18, the user moves to the action configuration screen described later.

[0048] (3) Action settings screen Next, the Web client 200 (developer) configures the API call in the action configuration screen MB-8 shown in Figure 15. In the action configuration screen MB-8 shown in Figure 15, "Monthly Data Acquisition API" is selected as the API, and the arguments and return values ​​are set by drag and drop. Figure 16 shows an example of the individual definition of the monthly data acquisition API generated by the action configuration screen MB-8 in Figure 15. As shown in Figure 16, since the API arguments and return values ​​are set in the individual definition, the table-type data obtained by the API call is returned to the client. Figure 17 is a diagram illustrating the arguments and return values ​​obtained by the API call. When an event with an API call configured is requested, the execution unit 102b receives the department code and monthly period specified in the individual definition and acquires table-type data from the business application DB 106b as shown in Figure 17.

[0049] Furthermore, Web client 200 (developer) configures the dialog display settings in the action settings screen MB-10 shown in Figure 19. In the action display screen MB-10 shown in Figure 19, "Expense Breakdown Dialog" is selected as the dialog, and the arguments to be passed to the launch destination are configured. Figure 20 shows an example of an individual definition of the dialog display generated by the action settings screen MB-10 in Figure 19.

[0050] [4. Processing] [4-1. Startup Process] Figure 21 is a diagram illustrating the startup process flow of the application provision system 100 in the embodiment. Upon receiving a startup command from a Web client 200 (user), as shown in Figure 21, the Web server 100 acquires definition information such as the layout definition (control list) shown in Figure 11, the event assignment definition shown in Figure 13, and the logic flow definition (flow definition, action definition) shown in Figure 14, and expands it into the definition information memory (S1). Subsequently, it generates information to be held per execution user (user-specific control information data (see Figure 22)) from the acquired definition information and expands it into the execution unit memory (S2). After that, it returns the HTML of the screen, the script necessary for event operation, and the event assignment information shown in Figure 23 to the user (S3).

[0051] [4-2. Processing when the display button is pressed] Figure 24 illustrates the processing flow when a user presses a display button. For example, when Web client 200 (user) presses (clicks) the display button with control ID "1-7", Web client 200 (user) checks if the event assignment information sent contains control ID "1-7" and event name "click". If the event assignment information sent contains control ID "1-7" and event name "click", it requests event information from Web server 100. If the event assignment information sent does not contain control ID "1-7" and event name "click", the process terminates.

[0052] Figure 25 illustrates the server-side processing flow when a request is made by a user. When a request is made from Web client 200 (user) for control ID "1-7" and event name "click", the logic flow ID "LID0" corresponding to control ID "1-7" and event name "click" is obtained from the event assignment definition, and the logic flow ID "LID0" from the logic flow definition is read and executed (S11).

[0053] Here, the logic flow ID "LID0" is the monthly data acquisition process (API call), and the monthly data acquisition process (API call) is executed (S12).

[0054] Figure 26 illustrates the processing flow for acquiring monthly data. After identifying the monthly data acquisition API (S21), the control sets values ​​for the API arguments according to the individually defined argument settings shown in Figure 16 (S22), and then executes the API (S23). The API return value obtained according to the return value setting is then set in the control (S24).

[0055] Figures 27A, 27B, and 27C illustrate the process flow for setting API return values ​​into controls. The table-type data obtained as API return values ​​is set into the detail controls on the execution screen.

[0056] In the user-specific control information data deployed in the execution unit memory, the column cell list has two columns: column index: 0, label name: department code, cell content alignment: left-aligned, and column index: 1, label name: month, cell content alignment: right-aligned. The data cell list has two columns: column index: 0, cell content alignment: left-aligned, and column index: 1, insert commas every 3 digits: true, cell content alignment: right-aligned. In addition, data D4 in the execution unit memory only has a string label and the data is empty.

[0057] The table data is bound to the detail control on execution screen MA-7. Depending on the number of columns in the bound table data D3, additional columns will be displayed on the screen. The column indexes of the table data D3 are mapped to the column indexes on the screen, and the data is displayed. Execution screen MA-8 is after the table data D3 has been bound. The detail control displays with the number of columns and data corresponding to the columns and data of the table data increased. The user-specific control information data deployed in the execution unit memory also has increased column cell lists and data cell lists to match the bound table data D3. The added column cells and string label cells are set to the user-specific control information data with their default settings. Empty data in the execution unit memory is updated with the bound data D5.

[0058] After binding the table-type data D3, the system checks if "Repeat last column" is enabled in the layout definition expanded in the definition information memory. If it is enabled, the definition information for the last column is identified. The identified definition information is then reflected in the columns following the last column. Since the last column has column index: 1, the definition information for column index: 1 is reflected in the columns from column index: 1 onward, i.e., column indexes: 2 and 3. Here, in the column cells (column indexes: 2 and 3), the alignment of the cell contents is set to "right-aligned," the data cells (column indexes: 2 and 3) are changed to "numeric label cells," "Insert commas every 3 digits" is set to "on," and the alignment of the cell contents is set to "right-aligned." The identified information (UI control) for the last column is reflected in the detail controls of the execution screen MA-9. In addition, in the user-specific control information data deployed in the execution unit memory, the alignment of the cell contents in the column cells is changed to "right-aligned," the data cells (column indices 2 and 3) are changed from "text label cells" to "numeric label cells," "insert commas every 3 digits" is turned "on," and the alignment of the cell contents is changed to "right-aligned."

[0059] Here, we will briefly explain how to identify the definition information of the last column. Figure 28 is a diagram illustrating the process of identifying the definition information of the last column of a table-type data.

[0060] Referencing the definition information memory, the detail header panel is identified from the child element information of the target detail control (S31). In the definition information memory in Figure 28, the first child element "ID2-2" is the detail header panel. Next, the column cells are identified from the child element information of the identified detail header panel (S32). In this case, the column cells are "ID2-2-1 to ID2-2-2".

[0061] Among the identified column cells, the value with the largest column index is used as the final column index (S33). In this case, column index : 1 is the final column index.

[0062] By using the identified last column index, the column cells and data cells that match the last column index can be identified from the column cell list and data cell list of the memory of the execution unit of the detail control (S34), and the definition information of the last column can be identified by obtaining the definition information of those cells.

[0063] After performing the monthly data acquisition process as described above, the HTML for the screen, the scripts necessary for event execution, and event assignment information are returned to the user. The event assignment information sent is the event assignment information after the monthly data acquisition process.

[0064] Figure 29 shows an example of event assignment information after monthly data acquisition processing. If extended cells exist, the assignment information for the detail control cells is duplicated for the increased column indexes, as shown in Figure 29. In Figure 29, for column indexes 2 and 3, where "Repeat last column according to data" is turned on in the detail control on the execution screen, the event assignment information for column index 1, which is the last column, is duplicated and added.

[0065] Figure 30 illustrates the method for duplicating allocation information for extended cells. First, it is determined whether "Repeat last column" is enabled in the layout definition deployed in the definition information memory. If it is enabled, the definition information memory is referenced, and the detail data panel is identified from the child element information of the target detail control (S41). In the definition information memory of Figure 30, the second child element is the detail data panel. Next, the data cells are identified from the child element information of the identified detail data panel (S42). In this case, the data cells are "ID2-3-1~ID2-3-2".

[0066] Among the identified data cells, the value with the largest column index is designated as the last column index. In this case, column index: 1 is the last column index. The cell with the identified last column index set is designated as the last column data cell (S43). In this case, "ID2-3-2" is the last column data cell.

[0067] Next, it is determined whether an event assignment has been made to the last column data cell (S44). If there is a last column data cell in the event assignment definition, the event assignment information is duplicated in the execution unit memory for data cells with a column index greater than that of the last column data cell (S45). In this case, the column index of the last column data cell is 1, and the assignment information of the detail control cell is duplicated for data cells (numeric label cells) with a column index greater than 1.

[0068] [4-3. Processing when the monthly amount label cell is clicked] Figure 31 illustrates the process when the monthly amount label cell is clicked. In the execution screen MA-10 of Figure 31, the process when Web client 200 (user) selects control ID "2-1", column index "2", row index "1", and event name "click" is described below.

[0069] Figure 32 illustrates the processing flow when the monthly amount label cell is clicked. The Web client 200 (user) checks if the sent event assignment information contains control ID "2-1", column index "2", and event name "click". If the sent event assignment information contains control ID "2-1", column index "2", and event name "click", it requests event information from the Web server 100. If the sent event assignment information does not contain control ID "2-1", column index "2", and event name "click", it terminates the process.

[0070] Figure 33 illustrates the server-side processing flow when the monthly amount label cell is clicked. When a request is received from Web client 200 (user) for event control ID "2-3-2" and event type "click", the logic flow ID "LID1" corresponding to control ID "2-3-2" and event name "click" is obtained from the event assignment definition, and the logic flow ID "LID1" from the logic flow definition is read and executed (S51). Subsequently, the dialog display process is executed (S52).

[0071] After performing the dialog display process as described above, the HTML of the screen, the script necessary for event operation, and event assignment information are returned to the user (S53). Upon return, the execution screen MA-11 of the cost breakdown dialog shown in Figure 34 is displayed on Web client 200 (user).

[0072] In the application provisioning system 100 of this embodiment, as described above, even for data with a variable number of column items, the pre-configured UI control can be dynamically extended, and the UI control can be reflected and displayed even for a number of column items that exceeds the pre-configured layout. Furthermore, configured events can also be extended and reflected for a number of column items that exceeds the pre-configured layout.

[0073] [5. Contribution to the United Nations-led Sustainable Development Goals (SDGs)] This embodiment can contribute to improving operational efficiency and promoting appropriate management decisions by companies, thereby contributing to SDGs Goals 8 and 9.

[0074] Furthermore, this embodiment can contribute to reducing waste and promoting paperless and digital processes, thereby contributing to SDGs Goals 12, 13, and 15.

[0075] Furthermore, this embodiment can contribute to strengthening control and governance, thereby enabling contributions to SDG Goal 16.

[0076] [6. Other Embodiments] In addition to the embodiments described above, the present invention may be implemented in various different embodiments within the scope of the technical idea described in the claims.

[0077] For example, among the processes described in the embodiments, all or part of the processes described as being performed automatically can be performed manually, or all or part of the processes described as being performed manually can be performed automatically by known methods.

[0078] Furthermore, the processing procedures, control procedures, specific names, information including parameters such as registration data and search conditions for each process, screen examples, and database configuration shown in this specification and in the drawings may be changed at will unless otherwise specified.

[0079] Furthermore, with respect to the application provisioning system 100, each component shown in the diagram is a functional concept and does not necessarily need to be physically configured as shown.

[0080] For example, the processing functions of the application provisioning system 100, particularly those performed by the control unit, may be implemented in whole or in part by a CPU and a program interpreted and executed by the CPU, or they may be implemented as wired logic hardware. The program is recorded on a non-temporary computer-readable recording medium containing programmed instructions for causing the information processing device to execute the processing described in this embodiment, and is mechanically read by the application provisioning system 100 as needed. That is, a storage unit such as ROM or HDD (Hard Disk Drive) records a computer program that works in cooperation with the OS to give instructions to the CPU and perform various processing tasks. This computer program is executed by being loaded into RAM and works in cooperation with the CPU to constitute the control unit.

[0081] Furthermore, this computer program may be stored on an application program server connected to the application provisioning system 100 via any network, and it is possible to download all or part of it as needed.

[0082] Furthermore, the program for executing the processing described in this embodiment may be stored on a non-temporary computer-readable recording medium, or it may be configured as a program product. Here, "recording medium" includes any "portable physical medium" such as memory cards, USB (Universal Serial Bus) memory, SD (Secure Digital) cards, flexible disks, magneto-optical disks, ROMs, EPROMs (Erasable Programmable Read Only Memory), EEPROMs (Registered Trademark) (Electrically Erasable and Programmable Read Only Memory), CD-ROMs (Compact Disk Read Only Memory), MOs (Magneto-Optical disks), DVDs (Digital Versatile Disks), and Blu-ray (Registered Trademark) Discs.

[0083] Furthermore, "program" refers to a data processing method described in any language or writing method, regardless of its format, such as source code or binary code. Note that "program" is not necessarily limited to a single, monolithic structure; it also includes distributed structures consisting of multiple modules or libraries, and those that work in cooperation with other programs, such as an operating system, to achieve their functions. Regarding the specific configuration and reading procedures for reading the recording medium in each device shown in the embodiments, as well as the installation procedures after reading, well-known configurations and procedures can be used.

[0084] The various databases stored in the memory unit are storage means such as RAM, ROM, other memory devices, hard disks, flexible disks, and optical disks, and store various programs, tables, databases, and web page files used for various processes and website provision.

[0085] Furthermore, the application provisioning system 100 may be configured as a known personal computer or workstation or other information processing device, or as an information processing device to which any peripheral devices are connected. Alternatively, the application provisioning system 100 may be implemented by installing software (including programs or data, etc.) that enables the processing described in this embodiment on the device.

[0086] Furthermore, the specific forms of distribution and integration of the devices are not limited to those shown in the illustration, and all or part of them can be configured by functionally or physically distributing and integrating them in any unit according to various additions or functional loads. In other words, the embodiments described above may be implemented in any combination, or the embodiments may be implemented selectively. [Industrial applicability]

[0087] This invention is particularly useful for all industries that utilize business applications. [Explanation of Symbols]

[0088] 100 Application Delivery Systems 102 Control Unit 102a Settings section 102b Execution Unit 104 Communication Interface Section 106 Storage section 106a Development application database 106b Business Application Database 108 Input / Output Interface Section 200 Web Clients 300 Networks 400 Input Devices 500 Output Device

Claims

1. An application delivery system equipped with a control unit and configured to communicate data with a developer and a client (user), The control unit, A layout definition that defines the screen layout created by the developer, An event assignment definition that associates a control ID for identifying the element controls that constitute the aforementioned screen, the type of event in the area that can be specified within the aforementioned screen, and a logic flow ID, A logic flow definition including control information, action information, and logic flow information, It is configured to be able to access the database that stores it, The control unit, The system includes an execution unit that, upon receiving a startup command from the user, starts the business application. The execution unit is, In response to the user's request, the system retrieves the logic flow ID corresponding to the requested event control ID from the event assignment definition, reads the logic flow definition of the retrieved logic flow ID, and executes the logic flow. When binding the obtained table data to the detail control, the definition information of the last column of the table data of the detail control set by the developer is obtained from the layout definition, and the UI control of the definition information of the last column is reflected in the columns from the last column onward of the obtained table data and displayed. An application delivery system characterized by the following features.

2. The execution unit is, When binding the obtained table data to the detail control, the definition information of the last column of the table data of the detail control set by the developer is obtained from the layout definition, and the event information of the last column is reflected in the columns from the last column onward in the obtained table data. The application provision system according to feature 1.

3. The system includes a setting unit that, in response to developer operations on the business application settings screen, sets the number of columns in the table-type data of the detail control, and accepts a setting to repeat the last column according to the number of columns in the table-type data obtained by the execution of the logic flow. When the execution unit receives a setting from the setting unit to repeat the last column, and binds the obtained table-type data to the detail control, it obtains the definition information of the last column of the table-type data of the detail control set by the developer from the layout definition, and displays the obtained table-type data from the last column onward by reflecting the UI control of the last column. The application provision system according to feature 1.

4. Event assignment information that stores the assignment information of the control and the assignment information of the detail control cell. It is configured to be able to access the database that stores it, When the execution unit receives a startup command from the user, it obtains the layout definition, the event assignment definition, and the logic flow definition, and expands them into the definition information memory. User-specific control information data, which is some of the property information of the controls that can change depending on the user, is generated and expanded into the execution unit memory. The event assignment information is returned to the user. The application provision system according to feature 1.

5. The execution unit executes a logic flow in response to a request from the user, binds the obtained table data to a detail control, and extends the UI control of the last column to the columns of the table data from the last column onward. The user-specific control information is modified to include property information for columns from the last column onward in the table-type data. The allocation information of the detail control cell of the event allocation information is duplicated for the extended cells of the columns from the last column onward in the table-type data. The application provision system according to feature 4.

6. The UI controls applied to columns beyond the last column of the aforementioned table-type data include column width, horizontal / center alignment, comma delimiter, integer / decimal point control, or event type. The application provision system according to feature 1.

7. An application delivery method is provided by an application delivery system that includes a control unit and is configured to communicate data with a client, which is a developer and a user, and is executed on that system. The control unit, A layout definition that defines the screen layout created by the developer, An event assignment definition that associates a control ID for identifying the element controls that constitute the aforementioned screen, the type of event in the area that can be specified within the aforementioned screen, and a logic flow ID, A logic flow definition including control information, action information, and logic flow information, It is configured to be able to access the database that stores it, To be executed by the control unit, Upon receiving a startup command from the user, the system includes an execution step that starts the business application. The execution step described above is: In response to the user's request, the system retrieves the logic flow ID corresponding to the requested event control ID from the event assignment definition, reads the logic flow definition of the retrieved logic flow ID, and executes the logic flow. When binding the obtained table data to the detail control, the definition information of the last column of the table data of the detail control set by the developer is obtained from the layout definition, and the UI control of the definition information of the last column is reflected in the columns from the last column onward of the obtained table data and displayed. A method for providing an application characterized by the following features.

8. An application provision program to be executed on an application provision system equipped with a control unit and configured to communicate data with the developer and the user (client), The control unit, A layout definition that defines the screen layout created by the developer, An event assignment definition that associates a control ID for identifying the element controls that constitute the aforementioned screen, the type of event in the area that can be specified within the aforementioned screen, and a logic flow ID, A logic flow definition including control information, action information, and logic flow information, It is configured to be able to access the database that stores it, The control unit, Upon receiving a startup command from the user, the system executes an execution step to start the business application. The execution step described above is: In response to the user's request, the system retrieves the logic flow ID corresponding to the requested event control ID from the event assignment definition, reads the logic flow definition of the retrieved logic flow ID, and executes the logic flow. When binding the obtained table data to the detail control, the definition information of the last column of the table data of the detail control set by the developer is obtained from the layout definition, and the UI control of the definition information of the last column is reflected in the columns from the last column onward of the obtained table data and displayed. An application provisioning program characterized by the following features.