Information processing device, information processing method, and information processing program

The information processing device and method address the challenge of data tampering by implementing a display control and discrimination unit to maintain previous input values and prevent unauthorized changes, ensuring data integrity.

JP7772677B2Active Publication Date: 2025-11-18OBIC CO LTD
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
JP2022148763
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-09-20
Publication Date
2025-11-18
Estimated Expiration
2042-09-20

AI Technical Summary

Technical Problem

Existing technologies require individual implementation on every screen of the application program to prevent data tampering, making it difficult to easily prevent data tampering.

Method used

An information processing device and method that includes a display control unit, discrimination unit, and information processing unit to determine whether input values can be changed based on stored setting information, allowing the device to maintain previous values or discard unauthorized changes.

Benefits of technology

Easily prevents data tampering by maintaining previous input values and displaying error screens for unauthorized changes, thereby enhancing data integrity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007772677000001
    Figure 0007772677000001
  • Figure 0007772677000002
    Figure 0007772677000002
  • Figure 0007772677000003
    Figure 0007772677000003
Patent Text Reader

Abstract

To facilitate preventing tampering of data.SOLUTION: A display control unit displays an input screen on a display unit. When a value is inputted to an item included in the input screen, a determination unit, referring to setting information indicating whether or not values of the respective items in the input screen which are stored in a storage unit are allowed to be changed, determines whether or not the item to which the value is inputted via the input screen is allowed to be changed in value. When obtaining a determination result indicating that the item to which the value is inputted via the input screen is allowed to be changed in value, an information processing unit supplies, to the display control unit, an information processing result corresponding to the inputted value of the item. Contrarily, when obtaining a determination result indicating that the item to which the value is inputted via the input screen is not allowed to be changed in value, the information processing unit abandons the inputted value of the item to maintain a previous value and supplies, to the display control unit, an information processing result corresponding to the previous value.SELECTED DRAWING: Figure 8
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an information processing device, an information processing method, and an information processing program. [Background technology]

[0002] Technologies for preventing data tampering are known today. For example, a form printing control device disclosed in Patent Document 1 (JP 2004-094818 A) extracts information about the file distribution embedded in a file that combines the form and embedded data and is distributed from a server, and stores the extracted information about the file as a history. Then, based on the stored history information, it determines whether the file is suitable for printing. Furthermore, even for the same distributed file, the process is re-executed depending on the processing status. Furthermore, the distributed file is deleted when it is no longer needed. This makes it possible to prevent tampering with the form and embedded data. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2004-094818 Summary of the Invention [Problem to be solved by the invention]

[0004] However, in the past, it was necessary to consider from the design stage that request data values ​​should not be used as is. This required individual implementation on every screen of the application program, making it difficult to easily prevent data tampering.

[0005] The present invention has been made in view of the above-mentioned problems, and has an object to provide an information processing device, an information processing method, and an information processing program that can easily prevent data tampering. [Means for solving the problem]

[0006] In order to solve the above-mentioned problems and achieve the object, the information processing device of the present invention has a display control unit that displays an input screen on a display unit, a discrimination unit that, when input is made into an item included in the input screen, refers to setting information stored in a memory unit that indicates whether the value of each item on the input screen can be changed, and determines whether the item inputted via the input screen is an item whose value can be changed, and an information processing unit that, if a discrimination result indicating that the value of the item inputted via the input screen can be changed, supplies an information processing result corresponding to the value of the input item to the display control unit, and, if a discrimination result indicating that the value of the item inputted via the input screen cannot be changed, discards the value of the input item, maintains the previous value, and supplies the information processing result corresponding to the previous value to the display control unit.

[0007] In addition, in order to solve the above-mentioned problems and achieve the object, the information processing method of the present invention includes a display control step in which a display control unit displays an input screen on a display unit; a determination step in which, when input is made into an item included in the input screen, a determination unit refers to setting information stored in a memory unit indicating whether the value of each item of the input screen can be changed, and determines whether the item inputted via the input screen is an item whose value can be changed; and an information processing step in which, if a determination result is obtained by the information processing unit indicating that the value of the item inputted via the input screen can be changed, the information processing unit supplies an information processing result corresponding to the value of the input item to the display control unit, and if a determination result is obtained indicating that the value of the item inputted via the input screen cannot be changed, the information processing unit discards the value of the input item, maintains the previous value, and supplies the information processing result corresponding to the previous value to the display control unit.

[0008] In addition, in order to solve the above-mentioned problems and achieve the object, the information processing program of the present invention causes a computer to function as an information processing unit that includes a display control unit that displays an input screen on a display unit, a discrimination unit that, when input is made into an item included in the input screen, refers to setting information stored in a memory unit that indicates whether the value of each item on the input screen can be changed, and determines whether the item inputted via the input screen is an item whose value can be changed, and if a discrimination result indicating that the value of the item inputted via the input screen can be changed is obtained, supplies an information processing result corresponding to the value of the input item to the display control unit, and if a discrimination result indicating that the value of the item inputted via the input screen cannot be changed is obtained, discards the value of the input item, maintains the previous value, and supplies the information processing result corresponding to the previous value to the display control unit. [Effects of the Invention]

[0009] The present invention can easily prevent data tampering. [Brief explanation of the drawings]

[0010] [Figure 1] FIG. 1 is a block diagram showing the system configuration of a Web application system and the hardware configuration of a server device according to a first embodiment. [Figure 2] FIG. 2 is a diagram showing a typical usage pattern of a Web application system. [Figure 3] FIG. 3 is another diagram showing a typical usage pattern of a Web application system. [Figure 4] FIG. 4 is a diagram for explaining an unauthorized use caused by data tampering in a Web application system. [Figure 5] FIG. 5 is a diagram illustrating an outline of the operation for preventing data tampering in the Web application system according to the first embodiment. [Figure 6] FIG. 6 is a diagram for explaining how the Web application system of the first embodiment responds to a data change based on business rules. [Figure 7] FIG. 7 is a diagram showing an example of a set business rule. [Figure 8] FIG. 8 is another diagram showing an overview of the operation for preventing data tampering in the Web application system according to the first embodiment. [Figure 9] FIG. 9 is a diagram illustrating an outline of a preventive operation against unauthorized button operations in the Web application system according to the first embodiment. [Figure 10] FIG. 10 is a diagram showing an example of a panel configuration of the input screen. [Figure 11] FIG. 11 is a diagram illustrating the hierarchical structure of each piece of data corresponding to the panel configuration of the input screen in the Web application system according to the first embodiment. [Figure 12] FIG. 12 is a diagram showing a development form of an information processing program used in a Web application system. [Figure 13] FIG. 13 is a diagram showing a usage pattern of an information processing program developed in a Web application system. [Figure 14] FIG. 14 is a diagram showing a development form of an information processing program used in a Web application system. [Figure 15] FIG. 15 is a diagram showing an example of a layout definition (control list). [Figure 16] FIG. 16 is a diagram for explaining the setting of the logic flow. [Figure 17] FIG. 17 is a diagram showing an example of various definitions used to set a logic flow. [Figure 18] FIG. 18 is a diagram for explaining the action setting. [Figure 19] FIG. 19 is a diagram showing an example in which an API for acquiring data from a business database is set as an action setting. [Figure 20] FIG. 20 is a diagram for explaining the allocation of events to buttons. [Figure 21] FIG. 21 is a diagram for explaining the setting of business rules. [Figure 22] FIG. 22 is a diagram showing an example of a layout definition. [Figure 23] FIG. 23 is a diagram showing an example of a conditional expression indicating a condition of a business rule. [Figure 24] FIG. 24 is a diagram showing an example of the correspondence between each condition and a conditional expression. [Figure 25] FIG. 25 is a diagram showing conditional expressions corresponding to the respective conditions. [Figure 26] FIG. 26 is a diagram showing another example of a conditional expression indicating a condition of a business rule. [Figure 27] FIG. 27 is a diagram showing the relationship between items and values ​​used in a conditional expression. [Figure 28] FIG. 28 is a diagram showing an example of operators used in a conditional expression. [Figure 29] FIG. 29 is a diagram showing an example of setting business rules for each control. [Figure 30] FIG. 30 is a diagram showing an example of setting information of a business rule. [Figure 31] FIG. 31 is a flowchart showing the first half of the flow of processing a request from a user terminal device by a server device of a Web application system. [Figure 32] FIG. 32 is a flowchart showing the second half of the flow of processing a request from a user terminal device by a server device of a Web application system. [Figure 33] FIG. 33 is a diagram showing various definitions and business rules that the server device refers to when it receives a request from a user terminal device. [Figure 34] FIG. 34 is a diagram illustrating an example of session management data. [Figure 35] FIG. 35 shows a list of business rules and a list of conditions that are referred to when evaluating business rules. [Figure 36] FIG. 36 is a diagram showing an example of session management data after evaluation of the business rules. [Figure 37]FIG. 37 shows an example of a request made by changing values ​​on an input screen displayed based on session management data after evaluation of a business rule. [Figure 38] FIG. 38 shows session management data in a state where a request has been accepted as a result of fraudulent determination. [Figure 39] FIG. 39 shows a list of business rules and a list of conditions that are referred to when evaluating business rules. [Figure 40] FIG. 40 is a diagram showing an example of session management data generated based on the evaluation result of the business rule. [Figure 41] FIG. 41 shows an example of a request in which the tax-inclusive price value on the input screen displayed based on the session management data after evaluation of the business rules has been fraudulently changed. [Figure 42] FIG. 42 shows session management data in a state where the previous value is maintained because the request was not accepted as a result of the fraud determination. [Figure 43] FIG. 43 is a diagram showing an example of various definitions that are referenced when the registration button is operated. [Figure 44] FIG. 44 shows a list of business rules and a list of conditions that are referred to when evaluating business rules. [Figure 45] FIG. 45 is a diagram showing an example of session management data after evaluation of the business rules. [Figure 46] FIG. 46 is a diagram showing an example of an input screen displayed based on the session management data after the evaluation of the business rules. [Figure 47] FIG. 47 is a block diagram showing the hardware configuration of a user terminal device according to the second embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0011] A web application system and a user terminal device according to an embodiment of the present invention will be described in detail below with reference to the accompanying drawings. However, the present invention is not limited to such an embodiment.

[0012] [First embodiment] First, a Web application system will be described as a first embodiment to which the present invention is applied.

[0013] (System and hardware configuration) Figure 1 is a block diagram showing the system configuration of a Web application system according to a first embodiment, and the hardware configuration of a server device 1 provided in the Web application system. As shown in Figure 1, the Web application system is configured by interconnecting server device 1, developer terminal device 30, and user terminal device 40 via network 5, which may be a wide area network such as the Internet or a private network such as a LAN (Local Area Network). Server device 1, developer terminal device 30, and user terminal device 40 can be realized using general personal computers, and communicate with each other mainly via Web browsers 13, 31, and 41.

[0014] A developer uses a developer terminal device 30 to evaluate requests from a user terminal device 40 based on business rules (described later), and transmits data processed based on the evaluation results to the user terminal device, thereby developing an information processing program that prevents data tampering. In the first embodiment, the information processing program is a so-called Web application program. Therefore, the information processing program is stored in a storage unit 2 of a server device 1 and executed by a control unit 3.

[0015] The server device 1 also has a database (DB) 11 in the storage unit 2. The server device 1 executes an information processing program in response to a request from the user terminal device 40. Then, the server device 1 reads data corresponding to this information processing from the database (DB) 11 and provides (transmits) the data to the user terminal device 40 via the communication interface unit 4 and the network 55.

[0016] (Server hardware configuration) The server device 1 includes a storage unit 2, a control unit 3, and a communication interface unit 4. The communication interface unit 4 is connected to the above-mentioned network 55, for example, a wide area network such as the Internet or a private network such as a LAN (Local Area Network).

[0017] The storage unit 2 may be, for example, a read-only memory (ROM), a random access memory (RAM), a hard disk drive (HDD), or a solid state drive (SSD). The storage unit 2 stores an information processing program developed by the developer terminal device 30, and also includes a database (DB) 11, which is a storage area for storing data to be provided to the user terminal device 40. The storage unit 2 also stores various data, such as layout definitions, event allocation definitions, logic flow definitions, action definitions, flow definitions, individual settings, condition settings, and business rule settings, which are referenced or generated based on the information processing program.

[0018] (Functional configuration of server device) Next, the control unit 3 of the server device 1 executes the information processing program stored in the memory unit 2, thereby functioning as a display control unit 21, a discrimination unit 22, an information processing unit 23, and a communication control unit 24, as shown in FIG. 1.

[0019] In the first embodiment, the display control unit 21 and the communication control unit 24 together constitute an example of a display control unit. The display control unit 21 generates an input screen to be displayed on the display unit of the user terminal device 40 and supplies it to the communication control unit 24. The communication control unit 24 controls the communication of the communication interface unit 4, which is an example of a communication unit, so as to transmit the generated input screen to the user terminal device 40 via the network 55. The user terminal device 40 displays the transmitted input screen on the display unit via the web browser 41.

[0020] When input is made into an item included in the input screen via the user terminal device 40, the discrimination unit 22 refers to the setting information (business rule setting described later) stored in the memory unit 2 that indicates whether the value of each item on the input screen can be changed, and determines whether the item entered via the input screen is an item whose value can be changed.

[0021] When the determination unit 22 obtains a determination result indicating that the value of the item input via the input screen can be changed, the information processing unit 23 reads (or processes) data that is the information processing result corresponding to the value of the input item from the database 11, and supplies the data to the display control unit 21. The display control unit 21 generates an input screen including the data read from the database 11 (or the processed data). The communication control unit 24 transmits the generated input screen to the user terminal device 40. As a result, an input screen corresponding to the user's input operation is displayed on the display unit of the user terminal device 40.

[0022] Furthermore, when the determination unit 22 returns a determination result indicating that the value of an item entered by the user via the input screen cannot be changed, the information processing unit 23 discards the value of the entered item and maintains the previous value. In this case, the information processing unit 23 reads (or processes) data corresponding to the previous value from the database 11, which is the result of information processing, and supplies the data to the display control unit 21. The display control unit 21 generates an input screen including the data read from the database 11 (or the processed data). The communication control unit 24 transmits the generated input screen to the user terminal device 40. As a result, the value entered by the user's unauthorized input operation is discarded, and an input screen corresponding to the previous value is displayed on the display unit of the user terminal device 40. This makes it possible to prevent data tampering.

[0023] Furthermore, when the determination unit 22 gives a determination result indicating that the value of the item input by the user via the input screen cannot be changed, the display control unit 21 generates an error screen that displays a predetermined error. The communication control unit 24 transmits the generated error screen to the user terminal device 40. This allows the user to recognize that the input value cannot be accepted.

[0024] In addition, the above-mentioned setting information (business rule settings, described later) can be set to prevent changes to items or buttons in the main panel, which corresponds to the entire input screen, or to prevent changes to items or buttons included in a partial panel, which corresponds to a part of the input screen.

[0025] When the setting is such that the items or buttons in the main panel cannot be changed, the discrimination unit 22 determines that all the items or buttons in the main panel cannot be changed. Also, when the setting is such that the items or buttons in the partial panel cannot be changed, the discrimination unit 22 determines that all the items or buttons in the partial panel cannot be changed.

[0026] That is, the setting information has a hierarchical structure in which items are in the lower hierarchical level, partial panels and buttons are in the middle hierarchical level, and the main panel is in the upper hierarchical level. Therefore, the discrimination unit 22 discriminates whether or not a setting that prohibits changes is present in the lower hierarchical level, the middle hierarchical level, and the upper hierarchical level, in that order. If the discrimination unit 22 detects a setting that prohibits changes in the upper hierarchical level, it determines that all items and buttons included in the main panel are unchangeable. If the discrimination unit 22 detects a setting that prohibits changes in the middle hierarchical level, it determines that all items and buttons included in the partial panel are unchangeable. Furthermore, if the discrimination unit 22 detects a setting that prohibits changes in the lower hierarchical level, it determines that items for which the setting prohibits changes are unchangeable are unchangeable.

[0027] Furthermore, as a process to be performed when the condition of a predetermined conditional expression is satisfied, one of the following processes can be set for each item as the setting information: a process to lock the item, which is a process to make the value of the item unchangeable, or a process to hide the item. Details will be described later.

[0028] (The flow from request to response in a typical web application system) Here, we will explain the flow from request to response in a typical Web application system. Figures 2(a) to 2(c) show an example of a typical Web application system in which a general user at Tokyo Store No. 2 (TKY002) makes a request to "launch a sales list" via a Web browser on a user terminal device (Figure 2(a)). In this case, since the user who made the request (=login user) is a "general user," the server device generates an input screen based on session management data in which the store values ​​for Tokyo Store No. 2 (TKY002) are initially set and locked (unchangeable), and sends it to the user terminal device (Figure 2(b)). Note that if the login user is an "administrator," such stores are not locked. As a result, an input screen with the store information for Tokyo Store No. 2 (TKY002) locked is displayed on the user terminal device, as shown in Figure 2(c).

[0029] Next, as shown in FIG. 3(a), the user of the user terminal device inputs the sales period (sales dates) they wish to view, such as "July 1, 2021 to July 31, 2021," into the input screen and makes a request to the server device. As shown in FIG. 3(b), the server device retrieves sales data for Tokyo Store No. 2 (TKY002) from the database for the period from July 1, 2021 to July 31, 2021, and sends it to the user terminal device. As a result, sales information for Tokyo Store No. 2 (TKY002) is displayed in a list for each sales date, as shown in FIG. 3(a).

[0030] (If store information is changed fraudulently) Next, in such a general web application system, as shown in Figure 4(a), assume that the value of a control (item) for Tokyo Store No. 2 (TKY002) is fraudulently changed to "NULL data," and a request is made to the server device to obtain sales data for July 1, 2021 to July 31, 2021. If no measures are taken to prevent this fraud, the server device will obtain sales data for all stores for July 1, 2021 to July 31, 2021 from the database and send it to the user terminal device, as the store information has been changed to "NULL data." This creates the inconvenience of allowing a general user of Tokyo Store No. 2 (TKY002) to fraudulently view sales data for all stores on the user terminal device, as shown in Figure 4.

[0031] To prevent such fraud, it is necessary to implement a control for each and every screen of the Web application system such that, for the store value in a sales data acquisition request, if the currently logged-in user is a general user, the store to which the user belongs is used (the value is re-obtained from cache memory or a database at startup, etc.), and if the currently logged-in user is an administrator, the value of the control (the item where store information is entered) is used.This required a lot of effort to prevent data tampering.

[0032] (Outline of the Web Application System According to the Embodiment) For this reason, in the first Web application system, when store information that is in a locked state as shown in Fig. 5(a) is illegally changed to "NULL data" and a request is made from the user terminal device 40, the server device 1 determines whether the user who made the request has the authority to change the store information based on the business rule settings described later. In this example, as an example, if the logged-in user is a general user, the server device 1 determines that the user does not have the authority to change the store information, discards the value of the request (in this case, the changed store information), and processes the request with the previous store information (before the illegal change).

[0033] Even if the lock is released on the user terminal device 40 side and the value is changed illegally (including illegal execution by JavaScript (registered trademark)), if the status on the user terminal device 40 side and the server device 1 side do not match, the data is considered to have been tampered with and the requested value is not accepted.

[0034] The Web application system of the first embodiment also supports dynamic lock or hide state control based on business rule settings, and selects parameters to accept depending on the state. In addition, in the Web application system of the first embodiment, all changes to values ​​that are the starting point for business rule settings (for example, tax category items) generate server requests to manage the state (lock or hide).

[0035] 6(a) shows an example in which the "Tax Category" item is changed from "2: Tax Included" to "1: Tax Excluded" by the user terminal device 40. Every time the server device 1 receives such a request, it performs the following steps: "Check the value of the invalid request" → "Execute the logic flow associated with the control (item)" → "Evaluate the business rule."

[0036] Specifically, for the "tax category," the user can select, for example, "0: tax exempt," "1: tax excluded," or "2: tax included," as shown in Figure 7. In addition, as a business rule to be described later, as shown in Figure 7, If the tax category is (2), lock the amount excluding tax. · Consumption tax amount If tax category = (0), lock - Tax-included amount If tax category = (0) or tax category = (1), lock It is assumed that the following settings have been made.

[0037] In this case, the server device 1 receives a request to change the "Tax Category" item from "2: Tax Included" to "1: Tax Excluded" because the item is not locked, and changes the tax category in the session management data from "2" to "1" as shown in Figure 6(b). Note that no event is set for when the value of the tax category is changed, so the server device 1 does nothing.

[0038] The server device 1 also changes the tax category in the session management data from "2" to "1," unlocks the tax-excluded amount, as shown in Fig. 6(b), and generates an input screen in which the tax-inclusive amount is locked, and transmits it to the user terminal device 40. As a result, an input screen in which the tax category is set to "1: tax-excluded" is displayed on the user terminal device 40, as shown in Fig. 8(a).

[0039] Next, as shown in Fig. 8(a), assume that the user of the user terminal device 40 fraudulently changes the tax-inclusive price of "33,000 yen" to "100 yen" and makes a request. In this case, the server device 1 also performs "checking the value of the fraudulent request" -> "executing the logic flow associated with the control (item)" -> "evaluating the business rule."

[0040] However, as shown in FIG. 7, the business rule is set to lock the tax-inclusive amount when tax category = (0) or tax category = (1). In this example, the tax category has been changed from "2" to "1," so the tax-inclusive amount is locked. Therefore, when the server device 1 "checks the value of the invalid request," the tax-inclusive amount is currently locked and is therefore not accepted. The server device 1 also executes the processing of the registration button in "executing the logic flow associated with the control (item)."

[0041] Furthermore, in this example, the server device 1 does nothing in "evaluating the business rule" because the set business rule value (tax category) has not changed. Then, because the evaluation of the business rule indicates that the tax-inclusive amount is currently locked, the server device 1 does not accept a request to change the tax-inclusive amount to "100 yen." Instead, the server device 1 generates an input screen in which the tax-inclusive amount is locked at "33,000 yen," as shown in FIG. 8(b), and transmits it to the user terminal device 40. As a result, even if the user performs an unauthorized operation to change the tax-inclusive amount to "100 yen," the input screen in which the tax-inclusive amount is locked at the previous "33,000 yen" can be transmitted to and displayed on the user terminal device 40, as shown in FIG. 8(c) (data tampering can be easily prevented).

[0042] Next, the Web application system of the first embodiment can prevent the tampering of the above-mentioned values ​​as well as the execution of unauthorized events. For example, suppose that the registration button is locked by the business rule settings, and the user illegally unlocks the registration button and operates it, as shown in Figure 9(a). In this case, a request is made to the server device 1 to register the values ​​of each item on the input screen, such as the tax category (1: excluding tax) and the tax amount (30,000 yen).

[0043] In this case, the server device 1 performs the following sequence as described above: "Check the value of the invalid request" → "Execute the logic flow associated with the control (item)" → "Evaluate the business rules." In the "Check the value of the invalid request," it is determined that the values ​​of each item have not changed. In the "Execute the logic flow associated with the control," since the registration button is locked, the server device 1 does not execute the event that registers the values ​​of each item in the database, as shown in FIG. 9(b), and returns a response to the user terminal device 40 indicating a system error. Then, it does not evaluate subsequent business rules. As a result, a system error (illegal execution) is displayed on the display unit via the web browser 41 of the user terminal device 40, as shown in FIG. 9(c).

[0044] As described above, in the Web application system of the first embodiment, when an item is controlled by locking or hiding it on the server device 1 side, the parameters (values ​​of each item) sent in a request from the user terminal device 40 are not reflected in the session management data managed by the server device 1. In addition, in the Web application system of the first embodiment, even when a parent panel of a control (item or button) placed on a panel is locked or hidden, the parameters of the control in the locked panel are not accepted.

[0045] 10, the panels provided are a main panel 61 corresponding to the entire input screen, and an input panel 60, which is an example of a partial panel corresponding to a part of the input screen. The main panel 61 includes the input panel 60, each item in the input panel 60, and various buttons such as a register button 62. The input panel 60 includes each item.

[0046] That is, the data of the main panel 61, the input panel 60, the items, and the registration button 62 have a hierarchical structure as shown in Fig. 11. The data of the main panel 61, the input panel 60, the items, and the registration button 62 have a hierarchical structure in which the root data is at the top level, the data of the main panel 61 is at a higher level, the data of the input panel 60 and the registration button 62 is at a middle level, and the data of each item is at a lower level, as shown in Fig. 11.

[0047] The server device 1 checks whether each control (item or button at a lower level) is locked or hidden in order up to the root (top level), and when it detects that the control is locked or hidden, it stops checking and controls the device not to accept requests from the user terminal device 40.

[0048] That is, the server device 1 checks items in the lower hierarchy, for example, the tax category item (select box) → input panel 60 → main panel 61 → root. As an example, if the input panel 60 is locked, as can be seen from FIG. 10, the tax category item (select box) provided in the input panel 60 will also be locked. Therefore, the server device 1 terminates the check process when it detects that the input panel 60 is locked, and determines that the tax category item (select box) is locked. Then, the server device 1 controls so as not to accept requests from the user terminal device 40 for the locked tax category item (select box).

[0049] (Development form of information processing program) Next, the development operation of an information processing program will be described. The development of this information processing program is carried out on a developer terminal device 30, as shown in Fig. 12. A developer operating the developer terminal device 30 develops an information processing program based on, for example, a low-code development platform, and the program is stored in a database 11 via a web browser 13 of a server device 1.

[0050] It is also possible to develop information processing programs using no-code or full-scratch development. However, with low-code development, as described below, it is relatively easy to develop information processing programs by combining screen components or logic components through visual operations based on a GUI (Graphical User Interface), and it also allows for more detailed settings and control than no-code development.

[0051] (Use of information processing programs) 13 shows a usage form in which an information processing program stored in server device 1 is used as a so-called Web application program on user terminal device 40. As shown in this Fig. 13, a request from user terminal device 40 is sent to server device 1 via Web browser 41. Server device 1 acquires the request via Web browser 13, acquires data corresponding to this request from database 11, and transmits it to user terminal device 40 via Web browser 13. As a result, the data provided from the database of server device 1 (= data requested by user terminal device 40) can be displayed on the display unit via Web browser 41 of user terminal device 40 and used.

[0052] (Information processing program development operation) Next, we will explain the development operations of an information processing program performed by a developer via the developer terminal device 30. As an example, a developer uses low-code to develop an information processing program by combining screen components or logic components through visual operations based on a GUI (Graphical User Interface), as shown in Figure 14. Figure 14 shows an example of developing (designing and editing) an input screen. In this example, the desired control is selected from a list of controls and placed on the input screen. This allows for easy editing of the input screen layout.

[0053] Figure 15 is an example of a layout definition (control list) corresponding to the input screen of Figure 14. The layout definition is stored in association with the control identification number (control ID), name, type, and child element ID of the child element. For example, for a "page" with a control ID of "ID0", a "command bar" with "ID1" and a "main panel" with "ID2" are associated as child elements.

[0054] Additionally, the "Main Panel" with "ID2" has the "Header Panel" with "ID3" and the "Detail Panel" with "ID12" associated as child elements. Additionally, the "Detail Control" with "ID13" has the "Grid Panel (Column)" with "ID14" and the "Grid Panel (Data Row)" with "ID19" associated as child elements.

[0055] After defining the layout of the input screen in this way, the developer then sets the processing (action) to be performed when the display button is clicked from the list of actions on the logic flow setting screen shown in Figure 16. The example in Figure 16 is an example in which the action "Call API" is set for "Get sales data."

[0056] Next, the developer sets the arguments and return values ​​for the "API call" action, as shown in Figure 18. The example in Figure 16 shows that for the "API call" of "Get sales data", the arguments "Store code", "Start sales date", and "End sales date" are set, and the return values ​​are "Sales date", "Sales number", "Customer name", and "Product".

[0057] Next, the developer selects the desired control on the layout editing screen shown in Figure 20 and assigns an event. Figure 20 shows an example in which the "Get Sales Data" event is assigned to the click operation of the "Display Button." The type of event differs depending on the control; a "Verification Event" can be assigned to a "Text Box" control, a "Value Change Event" can be assigned to a "Select Box" control, and "Row Selection" or "Row Double-Click" can be assigned to a "Details Control" control.

[0058] By editing the layout (FIG. 14), setting the logic flow (FIG. 16), setting the action (FIG. 18), and allocating the event (FIG. 20) in this way, the event allocation definition shown in FIG. 17(a), the logic flow definition shown in FIG. 17(b), the action definition shown in FIG. 17(c), and the flow definition shown in FIG. 17(d) are stored in the memory unit 2 of the server device 1. FIG. 17 shows a setting in which "acquisition of sales data" is performed by "clicking" the display button. Also, it shows that the "acquisition of sales data" event shown in FIG. 19 is assigned to the "API call" shown in FIG. 17(c).

[0059] (Business rule settings) Next, the developer sets business rules for each control (item) on the input screen that indicate whether or not values ​​can be changed in response to a request from the user terminal device 40. Figure 21 is an example of an input screen for setting business rules. In this example, the controls for tax category, amount excluding tax, consumption tax amount, and amount including tax are laid out. Figure 22 is a layout definition corresponding to the input screen of Figure 21.

[0060] When setting a business rule, a conditional expression of the business rule is set for each control. When setting the conditional expression of this business rule, the developer first selects the desired condition for setting the conditional expression of the business rule from among the conditions (conditions) such as "Amount excluding tax_control," "Consumption tax amount_control," and "Amount including tax_control" on the condition setting screen shown in Figure 23 by inputting or adding the condition name as necessary. The example in Figure 23 shows the condition "Amount including tax_control" being selected.

[0061] Next, the developer selects a conjunction (AND or OR) for the multiple conditional expressions. In the example of Figure 23, the conjunction "OR" is selected. As shown in Figure 23, a conditional expression consists of a left-hand side value, an operator, and a right-hand side value. As the left-hand side value and the right-hand side value, desired values ​​can be selected and specified from among "control," "variable," "row variable (variable that can be held for each row)," constants (character, numeric, boolean), or system variables (provided initially), as shown in Figure 27. Furthermore, as operators, inequality signs such as "equal to," "not equal to," "greater than," and "less than," as well as "is NULL," "is not NULL," can be specified, as shown in Figure 28.

[0062] In the example of Figure 23, the conditional expression in the upper row is the conditional expression for "tax category = (0)", and the conditional expression in the lower row is the conditional expression for "tax category = (1)". In the example of Figure 23, the conjunction "OR" is selected, which indicates that a business rule has been set that allows the "amount including tax" to be changed when "tax category = (0)" or "tax category = (1)" is true.

[0063] In addition, Fig. 26(a) shows a conditional expression that determines whether or not there is an error in the control, and Fig. 26(b) shows a conditional expression that determines whether or not the value of a variable defined on the screen is greater than the value of the control (the variable is defined on the screen in advance, just like the control).

[0064] Such conditions and conditional expressions are stored in the storage unit 2 as condition setting information in which a condition ID, a name, and an expression (conditional expression) are associated with each other, as shown in Figure 24. The "second expression" shown in Figure 24 is a conditional expression in which "tax category select box (value) = fixed value (2)" with "AND" as a conjunction, as shown in Figure 25(a). The "third expression" shown in Figure 24 is a conditional expression in which "tax category select box (value) = fixed value (0)" with "AND" as a conjunction, as shown in Figure 25(b). The "fourth expression" shown in Figure 24 is a conditional expression in which "tax category select box (value) = fixed value (0)" or "tax category select box (value) = fixed value (1)" with "OR" as a conjunction, as shown in Figure 25(c).

[0065] Next, the developer selects the action to be taken when the condition is met for each control, and the control to which the action will be applied, as shown in Figure 29. The desired action to be taken when the condition is met can be selected from among "lock item," "make item required," and "hide item." The example in Figure 23 shows the action "lock item" selected.

[0066] In addition, the example in FIG. 23 is an example in which the "amount excluding tax text box," "consumption tax amount text box," and "amount including tax text box" are selected as controls to which processing is applied.

[0067] By such a selection operation, business rule setting information including a business rule ID, a processing content, a control ID, and a condition ID is generated and stored in the storage unit 2, as shown in FIG.

[0068] (Web application operation) Next, the operation of the server device 1 returning a response in response to a request received from the user terminal device 40 will be described using the flowcharts of Figures 31 and 32. Figure 31 is a flowchart showing the flow of the first half of such a Web application operation, and Figure 32 is a flowchart showing the flow of the second half of the Web application operation. The operation of the flowcharts of Figures 31 and 32 is executed by the control unit 3 functioning as the display control unit 21, discrimination unit 22, information processing unit 23, and communication control unit 24 shown in Figure 1 based on the information processing program stored in the storage unit 2.

[0069] First, in step S1 of the flowchart in Figure 31, the communication control unit 24 of the server device 1 receives a request sent from the user terminal device 40, and the process proceeds to step S2. In step S2, the determination unit 22 determines whether the request received from the user terminal device 40 is for the start-up of the Web application system. If it is for the start-up of the Web application system (step S2: Yes), the information processing unit 23 performs the above-mentioned Layout definition of the input screen shown in FIG. 33(a), The event allocation definition shown in Fig. 33(b) The logic flow definition shown in Figure 33(c) The action definition shown in Figure 33(d) The flow definition shown in Figure 33(e) The condition list shown in Figure 33(f) The list of business rules shown in Figure 33(g) The API to be called by the API call shown in Figure 33(h), is read from the storage unit 2 and temporarily stored in a storage device such as a RAM (Random Access Memory).

[0070] Furthermore, based on the various information thus read out, the information processing unit 23 generates session management data in which the values ​​of each control, ID3 (tax category), ID5 (amount excluding tax), ID7 (amount including consumption tax), and ID9 (amount including tax), are set to fixed values, such as "2: tax included," "30,000 yen," "3,000 yen," and "33,000 yen," and the lock status is all set to "OFF," as shown in FIG. 34.

[0071] Next, in this case, since it is startup time of the Web application system, the determination unit 22 does not perform a fraud check, and the process proceeds to step S4 via step S8. Also, since it is startup time in this case, the determination unit 22 determines in step S4 that there is no event to be executed (step S4: No), and the process proceeds to step S5 of the flowchart in Fig. 32 via step S11.

[0072] In step S5, the discrimination unit 22 determines whether the device is currently at startup or whether a request has been made by button operation. In this case, since the device is currently at startup (step S5: Yes), the discrimination unit 22 evaluates the business rules in step S12 and supplies the evaluation result to the information processing unit 23. If the tax category is "2: tax included," the information processing unit 23 changes the tax-excluded amount of "ID5" in the session management data from "OFF" to "ON (locked state)," as shown in Figures 35(a), 35(b), and 36. The display control unit 21 generates the input screen shown in Figure 37 based on this session management data.

[0073] In step S7, the communication control unit 24 transmits an input screen corresponding to the initial screen generated by the display control unit 21 to the user terminal device 40. The user terminal device 40 acquires the input screen received from the server device 1 via the web browser 41 and displays it on the display unit.

[0074] Next, suppose that the user makes a request via the user terminal device 40 to change the tax category for ID3, which was previously set to "2: tax included" as shown in Figure 38(a), to "1: tax excluded." This request is acquired by the information processing unit 23 in step S1 of the flowchart shown in Figure 31. In this case, since it is not startup time, the process proceeds to step S3 via step S2, and the determination unit 22 refers to the session management data and determines whether the requested information is in a "locked state."

[0075] In this case, since the "tax category" is not locked (OFF), the discrimination unit 22 performs a discrimination operation to accept this request (step S3: No). Based on the discrimination result that the request is accepted, the information processing unit 23 changes the value of the tax category of ID3 from "2: tax included" to "1: tax excluded" in step S9, as shown in FIG. 38(b). This causes the process to proceed to step S4. At this point, since there is no event to be executed, the process proceeds to step S5 of the flowchart in FIG. 32 via steps S4 and S11.

[0076] In this case, since the request is made by button operation (step S5: Yes), the process proceeds from step S5 to step S12, and the discrimination unit 22 evaluates the business rules as shown in Figures 39(a) and 39(b), and supplies the evaluation result to the information processing unit 23. In this case, since the tax category has been changed to "1: tax excluded", the information processing unit 23 updates the session management data so that the lock status of ID5 "amount excluding tax" is set to "OFF (unlocked)" and the amount including tax of ID9 is set to "ON (locked)", as shown in Figure 40.

[0077] In step S7, the display control unit 21 and the communication control unit 24 transmit partial display data for the updated "Amount excluding tax" for ID5 and the amount including tax for ID9 to the user terminal device 40. Based on the display data received from the server device 1, the user terminal device 40 updates the lock status of the "Amount excluding tax" for ID5 and the amount including tax for ID9 on the input screen.

[0078] Next, suppose that the user makes a request via the user terminal device 40 to fraudulently change the tax-inclusive amount, which was "33,000 yen," to "100 yen," as shown in Fig. 41. This request is acquired by the information processing unit 23 in step S1 of the flowchart shown in Fig. 31. In this case, since it is not startup time, the process proceeds to step S3 via step S2, and the determination unit 22 refers to the session management data and determines whether the requested information is in a "locked state."

[0079] In this case, as shown in Figure 40, the "tax-inclusive amount" of "33,000 yen" for ID9 is locked (step S3: Yes), so the discrimination unit 22 makes a decision not to accept this request (decision to discard the request).

[0080] Next, in step S4, the determination unit 22 refers to the event allocation definition shown in Fig. 43(a), the logic flow definition shown in Fig. 43(b), the action definition shown in Fig. 43(c), and the flow definition shown in Fig. 43(d) to determine the process corresponding to the click operation of the registration button of ID10. In this case, the process corresponding to the click operation of the registration button of ID10 is determined to be "data registration process" as shown in Fig. 43(b). In step S10, the information processing unit 23 executes the logic flow of the "data registration process" based on the determination result.

[0081] Next, the process proceeds to step S5 of the flowchart in FIG. 32, where the discrimination unit 22 evaluates the business rules as shown in FIGS. 44(a) and 44(b) and supplies the evaluation result to the information processing unit 23. In this case, since the fraudulent request to change the tax-inclusive price to "100 yen" was discarded, the information processing unit 23 does not update the session management data as shown in FIG. 45. The display control unit 21 generates the previous input screen as shown in FIG. 46 based on the session management data as shown in FIG. 45. The communication control unit 24 transmits this input screen to the user terminal device 40. This allows the fraudulent request to be discarded and the input screen based on the previous session management data to be maintained, thereby preventing fraudulent data tampering.

[0082] 32, if it is determined that the request is not made at startup or by button operation (step S5: No), the process proceeds to step S6, where the determination unit 22 determines whether the request is for changing the value of a control included in the condition formula. If it is determined that the request is for changing the value of a control included in the condition formula (step S6: Yes), the determination unit 22 evaluates the business rules in step S12. On the other hand, if it is determined that the request is not for changing the value of a control included in the condition formula (step S6: No), no process is performed in step S13, and the process proceeds to step S7.

[0083] (Effects of the first embodiment) As is clear from the above explanation, in the Web application system of the first embodiment, the server device 1 manages all the states, such as the data to be displayed and whether controls are locked or hidden. Therefore, it is possible to evaluate whether a request can be accepted at the time of processing the request from the user terminal device 40. Then, by processing the request based on this evaluation result, it is possible to easily prevent data tampering.

[0084] [Second embodiment] Next, a user terminal device 40 according to a second embodiment will be described. The Web application system according to the first embodiment described above is an example in which the server device 1 manages data provided to the user terminal device 40 based on an information processing program developed by the developer terminal device 30, thereby preventing unauthorized data tampering. In contrast, the user terminal device 40 according to the second embodiment is a so-called standalone terminal device, and is an example in which the user terminal device 40 alone prevents unauthorized data tampering.

[0085] The first embodiment and the second embodiment differ only in this respect, so only the differences between the two will be explained below, and overlapping explanations will be omitted.

[0086] 47 is a block diagram showing the hardware configuration of a user terminal device 40 according to a second embodiment. In this second embodiment, the user terminal device 40 is a standalone terminal device, and includes a storage unit 42, a control unit 43, a communication interface unit 44, and an input / output interface unit 45. An input device 46 and an output device 47 are connected to the input / output interface unit 45. The output device 47 may be a display unit such as a monitor device (including a home television). The input device 46 may be a keyboard device, a mouse device, a microphone device, or a monitor device that cooperates with a mouse device to achieve a pointing device function.

[0087] The communication interface unit 44 is connected to a wide area network such as the Internet or a private network such as a LAN (Local Area Network).

[0088] A storage device such as a ROM (Read Only Memory), a RAM (Random Access Memory), an HDD (Hard Disk Drive), or an SSD (Solid State Drive) can be used as the storage unit 42. The storage unit 42 stores information processing programs similar to those described above, as well as a database (DB) 11 in which data requested via the input device 46 is stored.

[0089] The storage unit also stores the above-mentioned layout definition, event allocation definition, logic flow definition, action definition, flow definition, individual settings, condition settings, business rule settings, and the like.

[0090] The control unit 43 includes the display control unit 21, the determination unit 22, and the information processing unit 23, which are realized by executing the information processing program stored in the storage unit .

[0091] In the user terminal device 40 of the second embodiment, the display control unit 21 displays the input screen via the output device 47, which is an example of a display unit. The user performs a desired input operation via the input device 46, and inputs a desired value or operates a button on the input screen.

[0092] The determination unit 22 evaluates a request generated by the user inputting a desired value or operating a button based on the business rules as described above. When the determination result indicates that the value input via the input screen is changeable, the information processing unit 23 supplies the information processing result corresponding to the input value to the display control unit 21. The display control unit 21 displays the information processing result corresponding to the input value on the output device 47.

[0093] On the other hand, if the determination result indicates that the value of the item input via the input screen cannot be changed, the information processing device 23 discards the input value of the item and maintains the previous value, and supplies the information processing result corresponding to the previous value to the display control unit 21. The display control unit 21 displays the information processing result corresponding to the previous value on the output device 47.

[0094] (Effects of the second embodiment) This makes it possible to easily prevent data tampering in the same way as in the first embodiment, and also to obtain the same effects as in the first embodiment.

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

[0096] Furthermore, this embodiment can contribute to reducing waste and promoting paperless and electronic systems, thereby contributing to the achievement of SDGs Goals 12, 13, and 15.

[0097] Furthermore, this embodiment can contribute to strengthening control and governance, which can contribute to the achievement of Goal 16 of the SDGs.

[0098] [Other embodiments] The present invention may be implemented in various different embodiments other than those described above within the scope of the technical concept set forth in the claims.

[0099] 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 using known methods.

[0100] Furthermore, the processing procedures, control procedures, specific names, information including parameters such as registered data and search conditions for each process, screen examples, and database configurations shown in this specification and drawings can be changed as desired unless otherwise specified.

[0101] Furthermore, with regard to the server device 1 and the user terminal device 40 of the Web application system, the components shown in the figures are functional concepts, and do not necessarily have to be physically configured as shown in the figures.

[0102] For example, the processing functions of the server device 1, particularly the control unit 3 and the processing functions performed by the control unit 3, and the processing functions of the user terminal device 40, particularly the control unit 43 and the processing functions performed by the control unit 43, may be implemented in whole or in part by a central processing unit (CPU) and a program interpreted and executed by the CPU, or may be implemented as hardware using wired logic. The program is recorded on a non-transitory computer-readable recording medium containing programmed instructions for causing the information processing device to execute the processes described in this embodiment, and is mechanically read by the server device 1 or the user terminal device 40 as needed. That is, a computer program is recorded in a storage unit such as a ROM or HDD for cooperating with an OS to issue instructions to the CPU and perform various processes. The computer program is executed by being loaded into RAM and cooperates with the CPU to constitute the control unit 3.

[0103] In addition, the information processing program of the server device 1 or the user terminal device 40 may be stored in another server device connected to the server device 1 or the user terminal device 40 via any network, and it is also possible to download all or part of it as needed.

[0104] Furthermore, the information processing program for executing the processes described in this embodiment may be stored in a non-transitory computer-readable recording medium or configured as a program product. Here, the term "recording medium" includes any "portable physical medium" such as a memory card, a Universal Serial Bus (USB) memory, a Secure Digital (SD) card, a flexible disk, a magneto-optical disk, a ROM, an Erasable Programmable Read Only Memory (EPROM), an Electrically Erasable and Programmable Read Only Memory (EEPROM (registered trademark)), a Compact Disk Read Only Memory (CD-ROM), a Magneto-Optical Disk (MO), a Digital Versatile Disk (DVD), and a Blu-ray (registered trademark) disc.

[0105] Furthermore, a "program" is a data processing method written in any language or description method, and does not matter whether it is in source code, binary code, or other format. Note that a "program" is not necessarily limited to a single entity, but also includes a program that is distributed as multiple modules or libraries, or that achieves its function by working in conjunction with a separate program, such as an OS. Note that the specific configuration and reading procedure for reading a recording medium, as well as the installation procedure after reading, for the server device 1 or user terminal device 40 shown in the embodiments can use well-known configurations and procedures.

[0106] The memory unit 2 and the memory unit 42 are storage means such as memory devices such as RAM, ROM, fixed disk devices such as hard disks, flexible disks, and optical disks, and store various programs, tables, databases, and web page files used for various processes and providing websites.

[0107] The server device 1 or the user terminal device 40 may be configured as an information processing device such as a known personal computer device or a workstation, or may be configured as an information processing device connected to any peripheral device. The information processing device may be realized by installing software (including programs or data) that realizes the processing described in this embodiment.

[0108] Furthermore, the specific form of distribution and integration of the devices is not limited to that shown in the drawings, 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 above-described embodiments can be implemented in any combination, or embodiments can be implemented selectively. [Industrial Applicability]

[0109] The present invention is suitable for application to, for example, the development of application programs. [Explanation of symbols]

[0110] 1. Server device 2 Storage section 3. Control Unit 4. Communication interface section 11 Database 13 Web Browser 21 Display control unit 22 Discrimination part 23 Information Processing Department 24 Communication control section 30 Developer terminal device 31 Web Browser 40 User terminal device 41 Web Browser 42 Storage section 43 Control Unit 44 Communication interface section 45 Input / output interface section 46 Input Devices 47 Output Device 55 Network

Claims

1. a display control unit that displays an input screen on a display unit; a determination unit that, when an input is made to an item included in the input screen, references setting information stored in a storage unit that indicates whether or not the value of each item on the input screen can be changed, and determines whether or not the value of the item input via the input screen is a changeable item; an information processing unit that, when a determination result indicating that the value of the item input via the input screen is changeable is obtained, supplies an information processing result corresponding to the value of the input item to the display control unit, and, when a determination result indicating that the value of the item input via the input screen is not changeable is obtained, discards the value of the input item, maintains the previous value, and supplies an information processing result corresponding to the previous value to the display control unit; An information processing device having the above.

2. the display control unit, when obtaining a determination result from the determination unit indicating that the value of the item input via the input screen cannot be changed, displays a predetermined error on the display unit; 2. The information processing device according to claim 1,

3. The setting information can be set to prohibit changes to items or buttons in a main panel corresponding to the entire input screen, or can be set to prohibit changes to items or buttons included in a partial panel corresponding to a part of the input screen, the determination unit determines that all items or all buttons in the main panel are unchangeable when the setting is such that items or buttons in the main panel are unchangeable, and determines that all items or all buttons in the partial panel are unchangeable when the setting is such that items or buttons in the partial panel are unchangeable; 3. The information processing device according to claim 2, wherein:

4. the setting information has a hierarchical structure in which the items or buttons are in a lower hierarchical level, the partial panel is in a middle hierarchical level, and the main panel is in a higher hierarchical level, the determination unit determines whether or not there is a setting that prohibits changes in the order of the lower hierarchy, the middle hierarchy, and the upper hierarchy, and if a setting that prohibits changes is detected in the upper hierarchy, determines that all items and buttons included in the main panel cannot be changed; if a setting that prohibits changes is detected in the middle hierarchy, determines that all items and buttons included in the partial panel cannot be changed; and if a setting that prohibits changes is detected in the lower hierarchy, determines that the items for which a setting that prohibits changes is set cannot be changed; 4. The information processing device according to claim 3,

5. As a process to be performed when a condition of a predetermined conditional expression is satisfied, one of a process of locking the item, which is a process of making the value of the item unchangeable, and a process of hiding the item can be set for each item as the setting information; 5. The information processing device according to claim 4,

6. a communication control unit that controls communication of a communication unit so that the input screen generated by the display control unit and the information processing result supplied to the display control unit are transmitted to a client terminal device via a network, and a value input to the input screen via the client terminal device is received via the network; 6. The information processing device according to claim 5,

7. a display control step in which a display control unit displays an input screen on a display unit; a determination step in which, when an input is made to an item included in the input screen, a determination unit refers to setting information stored in a storage unit that indicates whether or not the value of each item on the input screen can be changed, and determines whether or not the value of the item input via the input screen is a changeable item; an information processing step in which, when a determination result is obtained by the information processing unit indicating that the value of the item input via the input screen is changeable, the information processing unit supplies the display control unit with an information processing result corresponding to the value of the input item, and, when a determination result is obtained by the information processing unit indicating that the value of the item input via the input screen is not changeable, the information processing unit discards the value of the input item, maintains the previous value, and supplies the display control unit with an information processing result corresponding to the previous value; An information processing method comprising:

8. Computer, a display control unit that displays an input screen on a display unit; a determination unit that, when an input is made to an item included in the input screen, references setting information stored in a storage unit that indicates whether or not the value of each item on the input screen can be changed, and determines whether or not the value of the item input via the input screen is a changeable item; when a determination result indicating that the value of the item input via the input screen is changeable is obtained, an information processing unit supplies an information processing result corresponding to the value of the input item to the display control unit, and when a determination result indicating that the value of the item input via the input screen is not changeable is obtained, an information processing unit discards the value of the input item, maintains the previous value, and supplies an information processing result corresponding to the previous value to the display control unit; An information processing program characterized by:

Citation Information

Patent Citations

  • Form printing control device and its method, computer program, and computer readable recording medium

    JP2004094818A

  • Account title confirmation system in slip issuing

    JP2007206884A

  • Work management system, work management method, and program thereof

    JP2011186651A

  • Information processing apparatus, input support method, and input support program

    JP2013140433A

  • Survey slip management device and survey slip management program

    JP2015069587A