Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7801982B2 - Business rule setting device, business rule setting method, and business rule setting program - Google Patents
[go: Go Back, main page]

JP7801982B2 - Business rule setting device, business rule setting method, and business rule setting program - Google Patents

Business rule setting device, business rule setting method, and business rule setting program

Info

Publication number
JP7801982B2
JP7801982B2 JP2022163081A JP2022163081A JP7801982B2 JP 7801982 B2 JP7801982 B2 JP 7801982B2 JP 2022163081 A JP2022163081 A JP 2022163081A JP 2022163081 A JP2022163081 A JP 2022163081A JP 7801982 B2 JP7801982 B2 JP 7801982B2
Authority
JP
Japan
Prior art keywords
control
business rule
condition
screen
business
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022163081A
Other languages
Japanese (ja)
Other versions
JP2024056296A (en
Inventor
健人 馬場
紘平 山下
剛光 上野
Original Assignee
株式会社オービック
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社オービック filed Critical 株式会社オービック
Priority to JP2022163081A priority Critical patent/JP7801982B2/en
Publication of JP2024056296A publication Critical patent/JP2024056296A/en
Application granted granted Critical
Publication of JP7801982B2 publication Critical patent/JP7801982B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、ビジネスルール設定装置、ビジネスルール設定方法、及びビジネスルール設定プログラムに関する。 The present invention relates to a business rule setting device, a business rule setting method, and a business rule setting program.

例えば、特許文献1では、アプリケーションの開発を高速かつ保守性高く実現することを目的としたアプリケーション開発装置が開示されている。かかるアプリケーション開発装置は、表示部に、状態制御するための関数の内容を設定するためのGUIを表示するGUI表示制御手段と、前記GUIでのユーザ操作に応じて、前記状態制御する関数の条件部分と処理部分を設定する関数設定手段と、前記関数設定手段の設定に応じたオブジェクトを作成して前記記憶部に保存するオブジェクト保存手段と、を備えている。 For example, Patent Document 1 discloses an application development device designed to enable fast and maintainable application development. This application development device includes a GUI display control means for displaying a GUI on a display unit for setting the contents of a function for state control, a function setting means for setting the conditional and processing parts of the function for state control in response to user operations on the GUI, and an object storage means for creating an object in accordance with the settings of the function setting means and storing the object in the storage unit.

特開2021-2088号公報Japanese Patent Application Laid-Open No. 2021-2088

しかしながら、従来においては、画面項目に対してロック、表示等の状態制御を行うための設定を開発者が簡易に行う方法については何ら記載されていない。 However, there has been no previous documentation on how developers can easily configure settings to control the status of screen items, such as locking or displaying them.

本発明は、上記に鑑みてなされたものであり、画面項目に対して状態制御を行うための設定を開発者が簡易に行うことが可能なビジネスルール設定装置、ビジネスルール設定方法、及びビジネスルール設定プログラムを提供することを目的とする。 The present invention was made in consideration of the above, and aims to provide a business rule setting device, a business rule setting method, and a business rule setting program that enable developers to easily configure settings for state control of screen items.

上述した課題を解決し、目的を達成するために、制御部及び記憶部を備えるビジネスルール設定装置であって、前記記憶部には、コントロール名、プロパティを含むコントロール情報と、動的制御の判定に使用されるものであり、コンディション名、条件式を含むコンディション情報と、設定されたコンディションが真である場合に、設定されたコントロールに対してどのような更新を動的に行うかを規定したルールであり、状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報と、を含むテーブルが格納されており、選択した状態制御のタイプについて、前記コントロール情報のコントロールを一方の軸、前記コンディション情報のコンディションを他方の軸としたマトリクス形式のビジネスルール開発画面を表示させる画面制御手段と、前記ビジネスルール開発画面において、マトリクスのセルを選択することでコントロールとコンディションの組を選択し、選択した状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報を前記テーブルに登録する設定手段と、を備えたことを特徴とする。 To solve the above-mentioned problems and achieve the objectives, a business rule setting device is provided with a control unit and a storage unit. The storage unit stores a table containing control information including control names and properties, condition information used to determine dynamic control and including condition names and conditional expressions, and business rule information that is a rule specifying what updates to make dynamically to the set control when the set condition is true and includes state control types, conditions, and controls. The device is also provided with a screen control means for displaying a business rule development screen in a matrix format with the control from the control information on one axis and the condition from the condition information on the other axis for a selected state control type, and a setting means for selecting a control and condition pair by selecting a matrix cell on the business rule development screen, and registering business rule information including the selected state control type, condition, and control in the table.

また、本発明の一態様によれば、前記状態制御のタイプは、ロック、非表示、又は必須を含むことにしてもよい。 Furthermore, according to one aspect of the present invention, the type of state control may include locked, hidden, or required.

また、本発明の一態様によれば、前記画面制御手段は、フィルタ情報に設定されたコントロールとコンディションに前記ビジネスルール開発画面への表示を制限するフィルタ機能を備えることにしてもよい。 Furthermore, according to one aspect of the present invention, the screen control means may be provided with a filter function that limits the display on the business rule development screen to the controls and conditions set in the filter information.

また、本発明の一態様によれば、前記画面制御手段は、前記ビジネスルール開発画面において、一方の軸のコントロールが選択された場合に当該選択されたコントロールのレイアウト画面で設定されている画面情報を表示し、他方の軸のコンディションが選択された場合には、当該コンディションのコンディション設定画面を表示することにしてもよい。 Furthermore, according to one aspect of the present invention, the screen control means may be configured to display screen information set in the layout screen for a control on one axis when that control is selected on the business rule development screen, and to display a condition setting screen for that condition when a condition on the other axis is selected.

また、本発明の一態様によれば、前記テーブルが公開されることで実行可能となるアプリケーションでは、ロジックフローを全て実行後に各ビジネスルールの判定を行うことにしてもよい。 Furthermore, according to one aspect of the present invention, in an application that becomes executable when the table is made public, each business rule may be judged after all logic flows have been executed.

また、上述した課題を解決し、目的を達成するために、本発明は、制御部及び記憶部を備える情報処理装置が実行するビジネスルール設定方法であって、前記記憶部には、コントロール名、プロパティを含むコントロール情報と、動的制御の判定に使用されるものであり、コンディション名、条件式を含むコンディション情報と、設定されたコンディションが真である場合に、設定されたコントロールに対してどのような更新を動的に行うかを規定したルールであり、状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報と、を含むテーブルが格納されており、前記制御部において実行される、選択した状態制御のタイプについて、前記コントロール情報のコントロールを一方の軸、前記コンディション情報のコンディションを他方の軸としたマトリクス形式のビジネスルール開発画面を表示させる画面制御工程と、前記ビジネスルール開発画面において、マトリクスのセルを選択することでコントロールとコンディションの組を選択し、選択した状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報を前記テーブルに登録する設定工程と、を含むことを特徴とする。 In order to solve the above-mentioned problems and achieve the objectives, the present invention provides a business rule setting method executed by an information processing device having a control unit and a storage unit, wherein the storage unit stores a table containing control information including control names and properties, condition information used to determine dynamic control and including condition names and conditional expressions, and business rule information that is a rule that specifies what updates to make to the set control dynamically when the set condition is true and includes state control types, conditions, and controls; the method includes a screen control step of displaying a business rule development screen in a matrix format, with the control information's control on one axis and the condition information's condition on the other axis, for a selected state control type executed by the control unit; and a setting step of selecting a control and condition pair by selecting a matrix cell on the business rule development screen, and registering business rule information including the selected state control type, condition, and control in the table.

また、上述した課題を解決し、目的を達成するために、本発明は、制御部及び記憶部を備える情報処理装置が実行するためのビジネスルール設定プログラムであって、前記記憶部には、コントロール名、プロパティを含むコントロール情報と、動的制御の判定に使用されるものであり、コンディション名、条件式を含むコンディション情報と、設定されたコンディションが真である場合に、設定されたコントロールに対してどのような更新を動的に行うかを規定したルールであり、状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報と、を含むテーブルが格納されており、前記制御部において、選択した状態制御のタイプについて、前記コントロール情報のコントロールを一方の軸、前記コンディション情報のコンディションを他方の軸としたマトリクス形式のビジネスルール開発画面を表示させる画面制御工程と、前記ビジネスルール開発画面において、マトリクスのセルを選択することでコントロールとコンディションの組を選択し、選択した状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報を前記テーブルに登録する設定工程と、を実行するためのビジネスルール設定プログラムであることを特徴とする。 In order to solve the above-mentioned problems and achieve the objectives, the present invention provides a business rule setting program to be executed by an information processing device having a control unit and a storage unit, wherein the storage unit stores a table containing control information including control names and properties, condition information used to determine dynamic control and including condition names and conditional expressions, and business rule information that is a rule that specifies what updates to make to the set control dynamically when the set condition is true and includes state control types, conditions, and controls, and the control unit executes a screen control step in the control unit to display a business rule development screen in a matrix format with the control from the control information on one axis and the condition from the condition information on the other axis for a selected state control type, and a setting step in the business rule development screen to select a control and condition pair by selecting a matrix cell, and to register business rule information including the selected state control type, condition, and control in the table.

本発明によれば、画面項目に対して状態制御を行うための設定を開発者が簡易に行うことが可能となるという効果を奏する。 This invention has the advantage of allowing developers to easily configure settings for state control of screen items.

図1は、本実施の形態に係るビジネスルール設定装置の構成の一例を示すブロック図である。FIG. 1 is a block diagram showing an example of the configuration of a business rule setting device according to this embodiment. 図2は、前提事項を示す図である。FIG. 2 is a diagram showing the prerequisites. 図3は、前提事項を示す図である。FIG. 3 is a diagram showing the prerequisites. 図4は、前提事項を示す図である。FIG. 4 is a diagram showing the prerequisites. 図5は、前提事項を示す図である。FIG. 5 is a diagram showing the prerequisites. 図6は、前提事項を示す図である。FIG. 6 is a diagram showing the prerequisites. 図7は、前提事項を示す図である。FIG. 7 is a diagram showing the prerequisites. 図8は、前提事項を示す図である。FIG. 8 is a diagram showing the prerequisites. 図9は、前提事項を示す図である。FIG. 9 is a diagram showing the prerequisites. 図10は、前提事項を示す図である。FIG. 10 is a diagram showing the prerequisites. 図11は、前提事項を示す図である。FIG. 11 is a diagram showing the prerequisites. 図12は、前提事項を示す図である。FIG. 12 is a diagram showing the prerequisites. 図13は、前提事項を示す図である。FIG. 13 is a diagram showing the prerequisites. 図14は、前提事項を示す図である。FIG. 14 is a diagram showing the prerequisites. 図15は、前提事項を示す図である。FIG. 15 is a diagram showing the prerequisites. 図16は、前提事項を示す図である。FIG. 16 is a diagram showing the prerequisites. 図17は、前提事項を示す図である。FIG. 17 is a diagram showing the prerequisites. 図18は、実行時の画面イメージを示す図である。FIG. 18 shows a screen image during execution. 図19は、定義管理テーブル例を示す図である。FIG. 19 is a diagram illustrating an example of a definition management table. 図20は、登録ボタンに割り付いたロジックフローを示す図である。FIG. 20 is a diagram showing the logic flow assigned to the registration button. 図21は、API管理テーブル例を示す図である。FIG. 21 illustrates an example of an API management table. 図22は、レイアウト開発画面例を示す図である。FIG. 22 is a diagram showing an example of a layout development screen. 図23は、コンディション開発画面例を示す図である。FIG. 23 is a diagram showing an example of a condition development screen. 図24は、定義管理テーブルのコンディション情報の例を示す図である。FIG. 24 is a diagram showing an example of condition information in the definition management table. 図25は、複雑な条件指定を行うコンディション開発画面例及び設定されるコンディション情報の例を示す図である。FIG. 25 shows an example of a condition development screen for specifying complex conditions and an example of the condition information to be set. 図26は、開発用アプリケーションDBの定義管理テーブルのコントロール情報とコンディション情報の例を示す図である。FIG. 26 shows an example of control information and condition information in the definition management table of the development application DB. 図27は、動的更新の対象となるコントロールを説明するための図である。FIG. 27 is a diagram for explaining controls that are subject to dynamic updating. 図28は、ビジネスルール開発画面例を示す図である。FIG. 28 is a diagram showing an example of a business rule development screen. 図29は、コンディション設定画面への遷移を示す図である。FIG. 29 shows the transition to the condition setting screen. 図30は、レイアウト画面への遷移を示す図である。FIG. 30 shows the transition to the layout screen. 図31は、定義管理テーブルのビジネスルール情報の例を示す図である。FIG. 31 is a diagram illustrating an example of business rule information in the definition management table. 図32は、フィルタ機能を追加したビジネスルール開発画面の例を示す図である。FIG. 32 is a diagram showing an example of a business rule development screen to which a filter function has been added. 図33は、定義管理テーブルのフィルタ情報の例を示す図である。FIG. 33 is a diagram illustrating an example of filter information in the definition management table. 図34は、フィルタ情報のフィルタ機能を説明するための図である。FIG. 34 is a diagram for explaining the filter function of the filter information. 図35は、レイアウト画面例を示す図である。FIG. 35 is a diagram showing an example of a layout screen. 図36は、コンディション(税抜金額の場合)の設定イメージを示す図である。FIG. 36 shows an example of how to set the condition (in the case of a price excluding tax). 図37は、ビジネスルールの設定イメージを示す図である。FIG. 37 is a diagram showing an image of setting business rules. 図38は、定義管理テーブルのビジネスルール情報の例を示す図である。FIG. 38 is a diagram showing an example of business rule information in the definition management table. 図39は、ビジネスルールを反映するまでのフローチャートを示す図である。FIG. 39 is a flowchart showing the process up to reflecting the business rules. 図40は、図39のフローチャートの特徴を説明するための図である。FIG. 40 is a diagram for explaining the features of the flowchart of FIG. 図41は、ビジネスルールという仕組みを用意せず、ロジックフロー、アクションのような仕組みだけで動的更新を実現しようとした場合を説明するための図である。FIG. 41 is a diagram for explaining a case where dynamic updating is attempted to be realized only by mechanisms such as logic flow and action, without providing a mechanism called business rules. 図42は、ビジネスルールという仕組みを用意せず、ロジックフロー、アクションのような仕組みだけで動的更新を実現しようとした場合を説明するための図である。FIG. 42 is a diagram for explaining a case where dynamic updating is attempted to be realized only by mechanisms such as logic flow and action, without providing a mechanism called business rules.

以下に、本発明に係るビジネスルール設定装置、ビジネスルール設定方法、及びビジネスルール設定プログラムの実施形態を、図面に基づいて詳細に説明する。なお、本実施形態により本発明が限定されるものではない。 Embodiments of a business rule setting device, a business rule setting method, and a business rule setting program according to the present invention are described in detail below with reference to the accompanying drawings. Note that the present invention is not limited to these embodiments.

[1.概要]
(1)課題
従来、項目状態の制御をプログラミングにより行っており、開発者による高度な設定作業が必要であった。制御が複雑化した場合、開発者にも相応の技術力が必要となり、不具合を防ぐために設定やテストにかかるコストが増加する、という課題があった。また、一度設定した仕組みを変更する場合には、相応の時間とコストが必要となることから、業務環境の変化に伴いシステムを柔軟に変更していくことが難しいという課題が存在した。その結果、顧客のニーズに素早く対応できないことで、ユーザの満足度が低下してしまうというリスクが存在していた。
[1. Overview]
(1) Issues: Previously, item status control was performed through programming, requiring advanced configuration work by developers. As control became more complex, developers also needed to have appropriate technical skills, and the costs of configuration and testing to prevent malfunctions increased. Furthermore, changing a system once configured required considerable time and cost, making it difficult to flexibly change the system in line with changes in the business environment. As a result, there was a risk that user satisfaction would decline due to an inability to respond quickly to customer needs.

そこで、本実施の形態では、画面項目に対して状態制御を行うための設定を開発者が簡易に行うことが可能なシステムを提供する。 In this embodiment, we provide a system that allows developers to easily configure settings for state control of screen items.

具体的には、本システムは、画面項目に対してロック、表示などの状態制御を行うための設定を、ローコード開発基盤上で実現するための仕組みである。本仕組みによって、複雑化しがちな画面項目の制御をプログラミングなしで簡易的に行うことができる。 Specifically, this system is a mechanism for implementing settings for controlling the status of screen items, such as locking and display, on a low-code development platform. This mechanism allows for easy control of screen items, which tend to become complicated, without the need for programming.

業務アプリケーションにおける項目の状態制御は、安定的に業務を進める上で非常に重要な部分であり、その設定を簡素化することができる本仕組みは、設定やテストにかかる工数を低下させ、システムの早期稼働に貢献することができる。また、設定が簡素化したことで、システムの不具合を最小限に抑えることができ、ユーザの満足度を高める効果も期待できる。 Controlling the status of items in business applications is extremely important for stable business operations, and this mechanism, which simplifies this configuration, reduces the amount of work required for configuration and testing, contributing to the early launch of the system. Furthermore, simplified configuration can minimize system malfunctions, which is also expected to increase user satisfaction.

(2)背景
業務アプリケーションに必要な項目の動的制御について説明する。一般的な業務アプリケーションでは、業務オペレータによる操作に応じて、画面項目に対して動的に制御(ロック、非表示など)をかけることが一般的である。一例として、0と1という2種類の値を受け付ける項目Aに対して、値に1が入力されている場合のみ、項目Bの情報が必要になる、といった要件を考える。この要件を満たすには、画面項目に動的な制御(例:項目Aの値が0であれば項目Bをロック、値が1であれば項目Bをアンロックする)を行う必要がある。
(2) Background This section explains the dynamic control of items required for business applications. In general business applications, it is common to dynamically control (lock, hide, etc.) screen items according to operations by business operators. As an example, consider a requirement where item A accepts two values, 0 and 1, and information from item B is required only when the value 1 is entered. To satisfy this requirement, it is necessary to dynamically control the screen items (for example, if the value of item A is 0, item B is locked, and if the value is 1, item B is unlocked).

このように、業務上の決まり事(項目Aの値が1の場合に、項目Bの情報を入力する)を業務アプリケーション画面上での具体的な動作として設定に落とし込んだものを、「ビジネスルール」と称する。ビジネスルールの設定が行われない場合、オペレータが業務上必要な情報を入力しない、もしくは不必要な情報を入力してしまうことに繋がり、業務に支障をきたす危険性がある。 In this way, business rules (enter information from item B when the value of item A is 1) that are set as specific actions on a business application screen are called "business rules." If business rules are not set, operators may not enter information required for business purposes, or may enter unnecessary information, which could disrupt business operations.

従来の開発では、開発者の手作業によるプログラミングを行うことで、項目の動的な制御を実現することが一般的であった。設定が複雑な制御を行う場合には、プログラミングの難易度が上がり、システムの完成までにかかる工数も増加する。また、急な項目の変更などがあった場合に、再設定が難しくなるという問題があった。 In conventional development, dynamic control of items was typically achieved by developers manually programming. When performing control with complex settings, the programming became more difficult and the man-hours required to complete the system also increased. Another problem was that if there were sudden changes to items, it became difficult to reconfigure them.

(3)解決手段
ローコード開発ツールによって作成された業務アプリケーションでは、様々な処理をアクション処理によって実現している。しかし、項目の動的制御をアクション内の処理で実現しようとすると、設定や考慮すべき制御上の問題が増え、開発コストが増加する。
(3) Solution: In business applications created with low-code development tools, various processes are implemented using action processing. However, if dynamic control of items is implemented using processing within an action, the number of configuration and control issues that must be considered increases, increasing development costs.

そこで、本実施の形態では、アクション設定とビジネスルールに係る設定とを明確に分離することで、開発時の設定負荷を下げつつ、意図しない不具合を防ぐことを可能にした。また、ビジネスルールの設定画面にも工夫を設けることで、開発者がビジネスルールの設定を容易に行うことを可能にした。 In this embodiment, by clearly separating action settings from business rule settings, it is possible to reduce the configuration load during development while preventing unintended problems. Furthermore, by incorporating ingenuity into the business rule configuration screen, it is possible for developers to easily configure business rules.

その結果、システム設定にかかる工数が低下し、ユーザに質の高いアプリケーションを短期間で提供することが可能になった。また、ビジネスの状況によって業務上の決まり事が変化することも考えられるが、本仕組みを使用して都度ビジネスルール設定を最適化していくことで、状況に最適化されたシステムを短期間でユーザに提供することができる。 As a result, the amount of work required for system configuration has been reduced, making it possible to provide high-quality applications to users in a short period of time. Furthermore, while business rules may change depending on the business situation, by using this system to optimize business rule settings as they occur, it is possible to provide users with a system optimized for the situation in a short period of time.

[2.構成]
本実施形態に係るビジネスルール設定装置100の構成の一例について、図1を参照して説明する。図1は、ビジネスルール設定装置100の構成の一例を示すブロック図である。ビジネスルール設定装置100は、開発者が使用するアプリケーション開発用の装置である。ビジネスルール設定装置100は、後述する[3.前提事項]、[4.画面項目の動的な更新の設定方法(コンディション及びビジネスルールの設定)]で説明する機能を搭載しており、これらで説明する処理を実行可能に構成されている。
2. Configuration
An example of the configuration of a business rule setting device 100 according to this embodiment will be described with reference to Fig. 1. Fig. 1 is a block diagram showing an example of the configuration of the business rule setting device 100. The business rule setting device 100 is a device used by developers for developing applications. The business rule setting device 100 is equipped with the functions described in [3. Prerequisites] and [4. Setting Method for Dynamically Updating Screen Items (Setting Conditions and Business Rules)] below, and is configured to be able to execute the processes described therein.

ビジネスルール設定装置100は、ワークステーション、デスクトップ型パーソナルコンピュータのような据置型情報処理装置、市販されているノート型パーソナルコンピュータなどの情報処理装置であってもよい。 The business rule setting device 100 may be an information processing device such as a workstation, a stationary information processing device such as a desktop personal computer, or a commercially available notebook personal computer.

ビジネスルール設定装置100は、制御部102と通信インターフェース部104と記憶部106と入出力インターフェース部108と、を備えている。ビジネスルール設定装置100が備えている各部は、任意の通信路を介して通信可能に接続されている。 The business rule setting device 100 comprises a control unit 102, a communication interface unit 104, a memory unit 106, and an input/output interface unit 108. Each unit of the business rule setting device 100 is connected to each other so that they can communicate with each other via any communication path.

通信インターフェース部104は、ルータ等の通信装置および専用線等の有線または無線の通信回線を介して、ビジネスルール設定装置100をネットワーク300に通信可能に接続する。通信インターフェース部104は、他の装置と通信回線を介してデータを通信する機能を有する。ここで、ネットワーク300は、ビジネスルール設定装置100と不図示の開発者端末、サーバ200等の他の装置とを相互に通信可能に接続する機能を有し、例えばインターネットやLAN(Local Area Network)等である。なお、後述するテーブル等のデータは、例えばサーバ200に格納されてもよい。 The communication interface unit 104 communicatively connects the business rule setting device 100 to the network 300 via a communication device such as a router and a wired or wireless communication line such as a dedicated line. The communication interface unit 104 has the function of exchanging data with other devices via the communication line. Here, the network 300 has the function of communicatively connecting the business rule setting device 100 to other devices such as a developer terminal (not shown) and a server 200, and is, for example, the Internet or a LAN (Local Area Network). Note that data such as tables described below may be stored in the server 200, for example.

入出力インターフェース部108には、入力装置112および出力装置114が接続されている。出力装置114には、モニタ(家庭用テレビを含む)の他、スピーカやプリンタを用いることができる。入力装置112には、キーボード、マウス、及びマイクの他、マウスと協働してポインティングデバイス機能を実現するモニタを用いることができる。なお、以下では、出力装置114をモニタ114とし、入力装置112をキーボード112またはマウス112として記載する場合がある。 An input device 112 and an output device 114 are connected to the input/output interface unit 108. The output device 114 may be a monitor (including a home television), a speaker, or a printer. The input device 112 may be a keyboard, a mouse, a microphone, or a monitor that functions as a pointing device in conjunction with a mouse. Note that, below, the output device 114 may be referred to as the monitor 114, and the input device 112 may be referred to as the keyboard 112 or the mouse 112.

記憶部106には、各種のデータベース、テーブルおよびファイルなどが格納される。記憶部106には、OS(Operating System)と協働してCPU(Central Processing Unit)に命令を与えて各種処理を行うためのコンピュータプログラムが記録される。記憶部106として、例えば、RAM(Random Access Memory)・ROM(Read Only Memory)等のメモリ装置、ハードディスクのような固定ディスク装置、フレキシブルディスク、および光ディスク等を用いることができる。 The storage unit 106 stores various databases, tables, files, and the like. The storage unit 106 stores computer programs that work in conjunction with the OS (Operating System) to issue commands to the CPU (Central Processing Unit) to perform various processes. The storage unit 106 can be, for example, a memory device such as RAM (Random Access Memory) or ROM (Read Only Memory), a fixed disk device such as a hard disk, a flexible disk, or an optical disk.

記憶部106は、定義管理テーブル等を格納する開発用アプリケーションDB106aを備えている。定義管理テーブルは、例えば、定義識別データ(定義IDおよび定義名)と、コントロール情報と、アクション情報と、ロジックフロー情報と、紐付け情報と、コンディション情報と、ビジネスルール情報と、フィルタ情報と、を含んでいてもよい(図19、図24、図31、図33等参照)。 The storage unit 106 includes a development application DB 106a that stores a definition management table and the like. The definition management table may include, for example, definition identification data (definition ID and definition name), control information, action information, logic flow information, linking information, condition information, business rule information, and filter information (see Figures 19, 24, 31, 33, etc.).

コントロール情報は、コントロール名、プロパティ等を含んでいてもよい。 Control information may include the control name, properties, etc.

コンディション情報は、動的制御の判定に使用されるものであり、コンディション名、条件式等を含んでいてもよい。 Condition information is used to determine dynamic control and may include condition names, condition expressions, etc.

ビジネスルール情報は、設定されたコンディションが真である場合に、設定されたコントロールに対してどのような更新を動的に行うかを規定したルールであり、状態制御のタイプ(例えば、コントロールのロック、非表示、必須等)、コンディション、反映先のコントロール等を含むことにしてもよい。 Business rule information is a rule that specifies what updates should be dynamically made to the set control when the set condition is true, and may include the type of state control (e.g., whether the control is locked, hidden, required, etc.), the condition, the control to which the updates should be made, etc.

フィルタ情報は、ビジネスルール開発画面へのコントロールとコンディションの表示を制限するためのものであり、フィルタ名、コントール要素、コンディション要素を含むことにしてもよい。 Filter information is used to limit the display of controls and conditions on the business rule development screen, and may include the filter name, control elements, and condition elements.

制御部102は、ビジネスルール設定装置100を統括的に制御するCPU等である。制御部102は、OS等の制御プログラム・各種の処理手順等を規定したプログラム・所要データなどを格納するための内部メモリを有し、格納されているこれらのプログラムに基づいて種々の情報処理を実行する。 The control unit 102 is a CPU or the like that provides overall control of the business rule setting device 100. The control unit 102 has internal memory for storing control programs such as an OS, programs that define various processing procedures, and required data, and executes various information processing operations based on these stored programs.

制御部102は、機能概念的に、画面制御部102aと、設定部102bと、を備えている。 The control unit 102 conceptually comprises a screen control unit 102a and a setting unit 102b.

画面制御部102aは、開発者端末の開発者からのリクエストに応じて、定義管理テーブルの各種情報を設定するための各種設定画面(開発画面)を提供する。 The screen control unit 102a provides various setting screens (development screens) for setting various information in the definition management table in response to requests from developers on developer terminals.

例えば、画面制御部102aは、選択した状態制御のタイプについて、コントロール情報のコントロールを一方の軸、コンディション情報のコンディションを他方の軸としたマトリクス形式のビジネスルール開発画面を表示させる(図26~31等参照)。 For example, the screen control unit 102a displays a business rule development screen in matrix format for the selected state control type, with the control from the control information on one axis and the condition from the condition information on the other axis (see Figures 26 to 31, etc.).

画面制御部102aは、フィルタ情報に設定されたコントロールとコンディションにビジネスルール開発画面への表示を制限するフィルタ機能を備えることにしてもよい(図32~図34等参照)。 The screen control unit 102a may also be equipped with a filter function that limits the display on the business rule development screen to the controls and conditions set in the filter information (see Figures 32 to 34, etc.).

画面制御部102aは、ビジネスルール開発画面において、一方の軸のコントロールが選択された場合に当該選択されたコントロールのレイアウト画面で設定されている画面情報を提供し、他方の軸のコンディションが選択された場合には、当該コンディションのコンディション設定画面を表示させることにしてもよい(図29~図31等参照)。 When a control on one axis is selected on the business rule development screen, the screen control unit 102a may provide the screen information set on the layout screen for the selected control, and when a condition on the other axis is selected, the screen control unit 102a may display the condition setting screen for that condition (see Figures 29 to 31, etc.).

設定部102bは、各種設定画面上での開発者端末の開発者の操作に応じて、定義管理テーブルに各種情報を設定する。 The setting unit 102b sets various information in the definition management table in response to operations performed by the developer on the developer terminal on various setting screens.

例えば、設定部102bは、ビジネスルール開発画面において、マトリクスのセルを選択することでコントロールとコンディションの組を選択し、選択した状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報を定義管理テーブルに登録する(図26~図34等参照)。 For example, the setting unit 102b selects a control and condition pair by selecting a matrix cell on the business rule development screen, and registers business rule information including the selected state control type, condition, and control in the definition management table (see Figures 26 to 34, etc.).

状態制御のタイプは、コントロールのロック、非表示、又は必須を含むことにしてもよい。 State control types may include locking, hiding, or requiring the control.

定義管理テーブルが公開されることで実行可能となるアプリケーションでは、ロジックフローを全て実行後に各ビジネスルールの判定を行うことにしてもよい(図39及び図40参照)。 In applications that become executable by publishing the definition management table, each business rule may be judged after all logic flows have been executed (see Figures 39 and 40).

[3.前提事項]
本項目では、本実施形態における処理を説明するための前提事項について説明する。
[3. Prerequisites]
In this section, prerequisites for explaining the processing in this embodiment will be described.

[3-1.ローコード開発ツールの概要]
(1)ローコード開発とは
ローコード開発とは、システム構築における開発手法の一つである。本明細書で指すシステムとは、企業が業務に利用するための一般的なERPシステム等を指すものとし、以下、「業務アプリケーション」という。
[3-1. Overview of low-code development tools]
(1) What is Low-Code Development? Low-code development is a development method for building systems. In this specification, the term "system" refers to a general ERP system or the like used by companies for their business operations, hereafter referred to as a "business application."

従来の開発においては、開発者自らがプログラミングよりソースコードを記述し、UIから処理に必要な業務ロジックに至るまで、業務アプリケーション全体の構築を行っていた。一方で、ローコード開発では、一般的にローコード開発ツールを用いて開発を行う。ローコード開発ツールは、設定に基づき、主に業務アプリケーションのUI部分を生成する機能を持つ。 In traditional development, developers write source code themselves rather than programming, and build the entire business application, from the UI to the business logic required for processing. In contrast, low-code development generally involves the use of low-code development tools. Low-code development tools primarily have the function of generating the UI portion of a business application based on configuration.

つまり、開発者は、自身がプログラミングを行わなくても、ローコード開発ツールを設定することで業務アプリケーションのUI部分を構築することが可能となる。結果として、開発者自身の作業量を削減し、効率的にシステム開発を行うことができるというメリットがある。 In other words, developers can build the UI portion of business applications by setting up low-code development tools without having to do any programming themselves. As a result, there are benefits to reducing the amount of work developers themselves do and enabling more efficient system development.

(2)ローコード開発ツールとは
図2は、ローコード開発ツールの全体図を示す図である。以下の説明では、開発者側および顧客となる企業の業務オペレータ側という2種類の利用者を想定している。開発者がローコード開発ツールを用いた業務アプリケーションのUI設定および業務ロジックの作成を行う段階(開発段階)と、業務オペレータが実際にアプリケーションとして利用する段階(利用段階)と、の2つの段階に分けて説明を行う。
(2) What is a Low-Code Development Tool? Figure 2 shows an overview of a low-code development tool. The following explanation assumes two types of users: developers and business operators at client companies. The explanation is divided into two stages: the development stage, in which developers use low-code development tools to create UI settings and business logic for business applications, and the usage stage, in which business operators actually use the applications.

開発段階とは、開発者がローコード開発基盤を用いて、業務アプリケーションの設定情報をデータベースに登録する段階である。利用段階とは、ローコード実行基盤が、開発段階で登録された設定情報を解析し、実際の業務アプリケーションへ変換することで、業務オペレータが業務を実行する段階である。本明細書では、ローコード開発基盤およびローコード実行基盤を合わせて、「ローコード開発ツール」と総称する。 The development stage is when developers use the low-code development platform to register business application configuration information in a database. The usage stage is when the low-code execution platform analyzes the configuration information registered in the development stage and converts it into an actual business application, allowing business operators to execute the business. In this specification, the low-code development platform and low-code execution platform are collectively referred to as the "low-code development tool."

ここで、各段階で生成されるデータ管理方法について説明する。統制上の観点から、開発者が開発時にアプリケーション設定を管理するデータベースと、業務オペレータが業務利用時に参照するアプリケーション設定を管理するデータベースとは、明確に分ける必要がある。これは、開発者が、業務用データベースを直接操作することがないようにするためである。以下の説明では、開発者が利用するアプリケーション設定管理用のデータベースを「開発用アプリケーションDB」といい、業務オペレータが利用するアプリケーション設定管理用のデータベースを「業務用アプリケーションDB」という。業務用アプリケーションDBとは別に、業務用必要なデータ(マスタデータや仕訳データ等)を管理するデータベースを「業務用DB」という。アプリケーションからは業務用APIを介して業務用DBの情報の取得・更新を行う。 Here, we will explain how to manage the data generated at each stage. From a control perspective, it is necessary to clearly separate the database in which developers manage application settings during development from the database in which business operators manage application settings referenced during business use. This is to prevent developers from directly operating the business database. In the following explanation, the database used by developers to manage application settings will be referred to as the "development application DB," and the database used by business operators to manage application settings will be referred to as the "business application DB." A database that manages data required for business purposes (master data, accounting data, etc.) separate from the business application DB will be referred to as the "business DB." Applications retrieve and update information in the business DB via a business API.

(2-1)開発段階
開発段階は、図2の上半分に示すように、開発者がローコード開発ツール(ローコード開発基盤側)を用いて業務アプリケーションの開発を行う段階である。ローコード開発では、主にアプリケーション画面のレイアウトと、レイアウトを操作した時に行われる一連のイベント処理(アクション、ロジックフロー)の開発の設定を行う。最終的にレイアウトとロジックフローを紐づけることで、業務アプリケーションのUI部分を生成できる。開発段階での主な設定内容は、以下の(A)~(C)のとおりである。
(2-1) Development Phase As shown in the upper half of Figure 2, the development phase is when developers use low-code development tools (on the low-code development platform side) to develop business applications. Low-code development mainly involves setting up the layout of the application screen and the development of a series of event processes (actions, logic flow) that are performed when the layout is operated. Finally, by linking the layout and logic flow, the UI portion of the business application can be generated. The main settings in the development phase are as follows (A) to (C).

(A)レイアウト開発
業務アプリケーションの画面レイアウト部分の設定を行う。
(A) Layout development: Setting the screen layout of business applications.

(B)ロジックフロー開発およびアクション開発
業務アプリケーションの処理部分の設定を行う。ローコード開発ツールでは、業務アプリケーションにおける処理を、アクションという単位で設定できる(先述のUI部分と業務ロジックの紐づけも、このアクションを通して行われる)。更に、アクション同士をフローでつなぐことで、一連アクションを処理する順序を設定できる。このアクションの処理順序の設定を「ロジックフロー」という。
(B) Logic flow development and action development This involves configuring the processing part of a business application. With low-code development tools, the processing in a business application can be configured in units called actions (the linking of the UI part and business logic mentioned above is also done through these actions). Furthermore, by connecting actions with flows, the order in which a series of actions are processed can be set. This setting of the processing order of actions is called a "logic flow."

業務ロジックを呼びだすための特殊なアクション設定について説明する。ローコード開発において、開発者が個別のプログラミング作業等によって作成するのは業務ロジック部分のみであり、UI部分はローコード開発ツールの操作によって生成される。このため、UI側から業務ロジックを呼び出すために、開発者は作成した業務ロジックをAPI化してAPIマスタに登録しておく必要がある。APIマスタに登録したAPIを、API呼出アクションから呼び出すことで、業務ロジックを実行することができる。 This section explains the special action settings for calling business logic. In low-code development, developers only create the business logic portion through individual programming tasks, while the UI portion is generated by operating the low-code development tool. Therefore, in order to call business logic from the UI side, developers must convert the created business logic into an API and register it in the API master. Business logic can be executed by calling the API registered in the API master from an API call action.

(C)レイアウトとロジックフローの結合
(A)で設定したレイアウトに対して、(B)のロジックフローを割り付ける設定を行う。
(C) Combining layout and logic flow. Assign the logic flow (B) to the layout set in (A).

(2-2)利用段階
利用段階は、図2の下半分に示すように、ローコード開発ツール(ローコード実行基盤側)が登録されている業務アプリケーション設定を解析し、業務アプリケーションへの変換を行うことで、業務オペレータが業務アプリケーションを操作する段階である。
(2-2) Usage Phase As shown in the lower half of Figure 2, the usage phase is the phase in which the low-code development tool (on the low-code execution platform) analyzes the registered business application settings and converts them into a business application, allowing the business operator to operate the business application.

利用段階の画面イメージを説明する。図3は、利用段階の画面イメージを示す図である。一例として、取引先マスタメンテの一覧画面を設定する場合の仕組みについて説明する。画面名は、取引先マスタメンテ(一覧画面)となっている。業務オペレータが登録されている取引先情報を確認するためのジョブである。抽出条件(基準日、取引先CD(From、To))を入力した状態で表示ボタンを押すと確認メッセージダイアログが表示される。ダイアログでYesを選択時は、基準日時点で存在している、かつ、取引先CDが抽出条件を満たす取引先が取引先マスタから読み出されて画面上に表示される。つまり、業務用アプリケーションDBから取引先を取得するAPIを呼び出し、取得した情報を画面上にセットする。ダイアログでNoを選択時は、何も処理が実行されない。 Explains the screen image during the usage phase. Figure 3 shows a screen image during the usage phase. As an example, we will explain the mechanism for setting up a list screen for supplier master maintenance. The screen name is Supplier Master Maintenance (List Screen). This is a job for business operators to check registered supplier information. When the display button is pressed after entering the extraction conditions (base date, supplier CD (From, To)), a confirmation message dialog is displayed. If Yes is selected in the dialog, suppliers that existed as of the base date and whose supplier CD meets the extraction conditions are read from the supplier master and displayed on the screen. In other words, an API is called to retrieve suppliers from the business application database, and the retrieved information is set on the screen. If No is selected in the dialog, no processing is performed.

(2-3)開発時の設定について
上記のようなアプリケーションを実現するために、開発者がローコード開発基盤を用いてアプリケーション設定を行う。このアプリケーション設定を「UI定義」という。このUI定義は、開発用アプリケーションDBの定義管理テーブルに登録される。図4は、定義テーブル例を示す図である。定義管理テーブルでは、アプリケーション内のコントロール情報、アクション情報、ロジックフロー情報、レイアウトとロジックの紐づけ情報などを管理している。定義管理テーブル内の用語の意味は、以下のとおりである。
(2-3) Settings during development To realize the above-mentioned application, the developer configures the application using a low-code development platform. This application configuration is called a "UI definition." This UI definition is registered in the definition management table of the development application DB. Figure 4 is a diagram showing an example of the definition table. The definition management table manages control information, action information, logic flow information, and information linking layout and logic within the application. The meanings of the terms in the definition management table are as follows:

・定義ID・・・UI定義作成時に、自動で採番されるGuid文字列。
・定義名・・・UI定義作成時に、開発者が命名。
・コントロール情報・・・以下の「(1)レイアウト開発」を参照。
・アクション情報・・・以下の「(2)ロジックフローおよびアクション開発」を参照。
・ロジックフロー情報・・・以下の「(2)ロジックフローおよびアクション開発」を参照。
・紐づけ情報・・・以下の「(3)レイアウトとロジックの結合」を参照。
Definition ID: A Guid string that is automatically assigned when creating a UI definition.
・Definition name: Named by the developer when creating the UI definition.
・Control information: See "(1) Layout development" below.
・Action information: See "(2) Logic flow and action development" below.
・Logic flow information: See "(2) Logic flow and action development" below.
- Linking information: See "(3) Combining layout and logic" below.

(1)レイアウト開発
図5はレイアウト開発を説明するための図である。開発段階では、開発者がレイアウト開発画面を操作することで、開発用アプリケーションDBにコントロール情報を登録するつまり、上述した定義管理テーブルのコントロール情報の列にデータが格納される。例えば、図5の画面例では、基準日を入力するテキストボックスを日付テキストから選択して配置している。配置したコントロールをクリックすると、クリックしたコントロールの種類に応じたプロパティの設定を行うことができる。例えば、日付テキストは、その入力がアプリケーション上必須のものかどうかを示す必須プロパティが用意されている。図5の画面例では必須プロパティがONになっているので、基準日テキストはアプリケーション上、入力必須のコントロールとなる。
(1) Layout Development FIG. 5 is a diagram illustrating layout development. During the development stage, a developer operates the layout development screen to register control information in the development application DB. In other words, data is stored in the control information column of the definition management table described above. For example, in the example screen shown in FIG. 5, a text box for inputting a reference date is selected and placed from the date text. Clicking on the placed control allows the user to set properties according to the type of control clicked. For example, the date text has a required property that indicates whether its input is required for the application. In the example screen shown in FIG. 5, the required property is ON, so the reference date text is a control that must be entered for the application.

利用段階では、開発用アプリケーションDBから業務用アプリケーションDBへ、定義管理テーブル情報を公開することで、アプリケーションとして実行可能となる。上記例では、基準日が必須となるので、業務オペレータが基準日を入力せずに処理を進めようとした場合に、エラーが表示される。 At the usage stage, the definition management table information is published from the development application DB to the business application DB, allowing it to be executed as an application. In the above example, the base date is required, so if the business operator attempts to proceed without entering a base date, an error will be displayed.

(2)ロジックフローおよびアクション開発
(2-1)アクション設定について
開発段階では、開発者がロジックフローおよびアクション開発画面を操作することで、開発用アプリケーションDBにロジックフロー情報およびアクション情報を登録する(上述した定義管理テーブルのアクション情報及びコントロール情報の列にデータが格納される)。ローコード開発ツールにおけるロジックフロー設定は、処理が開始するための開始アクションと処理が終了するための終了アクションの間でフローがつながっている状態が初期状態となる。この2つのアクションの間に、必要なアクションを図6に示すように組み込むことで、設定を行う。
(2) Logic Flow and Action Development (2-1) Action Settings During the development phase, developers operate the logic flow and action development screens to register logic flow information and action information in the development application DB (data is stored in the action information and control information columns of the definition management table described above). The initial state of logic flow settings in low-code development tools is a state in which the flow is connected between the start action that starts the process and the end action that ends the process. The settings are made by incorporating the necessary actions between these two actions, as shown in Figure 6.

アクションをクリックして編集することで、各アクションに詳細な設定を行うことができる。アクションごとに、設定できる内容は異なる。例えば、メッセージ表示アクションでは、メッセージの種類や、メッセージの内容を設定できる。図7に示すメッセージアクション設定例では、Yes、No型のメッセージボックスに、「取引先を表示します、よろしいですか?」というメッセージを表示する設定を行っている。 You can make detailed settings for each action by clicking on it and editing it. The settings that can be made vary for each action. For example, for a message display action, you can set the type of message and the message content. In the example message action settings shown in Figure 7, a Yes/No type message box is set to display the message "Customers will be displayed. Is this OK?"

アクション設定で、Yes、No型のメッセージボックスが選択された場合は、ロジックフロー上処理を、Yes選択時、No選択時で分岐させることができるようになる。図8に示す例では、メッセージ(取引先を表示します、よろしいですか?)に対して、Yesが選択された場合は、API呼出アクションで取引先を取得するような処理を行い、これに対して、Noが選択された場合は、処理が終了する。 When a Yes/No type message box is selected in the action settings, the logic flow processing can be branched depending on whether Yes or No is selected. In the example shown in Figure 8, if Yes is selected in response to the message (Customer information will be displayed, is this OK?), processing is performed to obtain the customer information using an API call action, but if No is selected, processing ends.

(2-2)業務ロジックを紐づけるための特殊なアクション設定について
図9に示す例では、メッセージでYesを選択後、API呼出アクションが実行される。先述のように、ローコード開発ツールでは、業務アプリケーションのUI部分のみ生成することができ、業務データの取得および更新といった業務ロジックについては、開発者がプログラミング作業によって開発する必要がある。つまり、業務ロジック自体は、ローコード開発ツールから独立した外部のロジックとなる。API呼出アクションとは、ローコード開発ツールで作成したUI情報と、開発者が作成した業務ロジックと、をそれぞれ紐づけて実行することができる特殊なアクションのことである。準備として、開発者は、ローコード開発ツールで生成したUI側から呼び出したい業務ロジックをAPI化し(図10参照)、APIマスタに登録しておく(図11参照)。
(2-2) Special Action Settings for Linking Business Logic In the example shown in FIG. 9 , after selecting Yes in the message, an API call action is executed. As mentioned above, low-code development tools can only generate the UI portion of a business application, and developers must develop business logic, such as retrieving and updating business data, through programming. In other words, the business logic itself is external logic independent of the low-code development tool. An API call action is a special action that can link and execute UI information created with the low-code development tool and business logic created by the developer. As a preparation, the developer converts the business logic they want to call from the UI created with the low-code development tool into an API (see FIG. 10 ) and registers it in the API master (see FIG. 11 ).

業務ロジックのAPI化について説明する。図10に示すように、業務アプリケーション実行時に読み込まれるモジュールに、あらかじめAPIを作成しておく。つまり、実行したい業務ロジックの実処理、後からAPI呼出時に必要となるキー情報などを管理しておく。図10の例では、引数に基準日(日付)を指定した場合に、その日付時点で登録されている取引先情報(取引先CDおよび取引先名等)の一覧を返すようなAPIを登録している。 This section explains how to turn business logic into an API. As shown in Figure 10, an API is created in advance in a module that is loaded when the business application is executed. In other words, it manages the actual processing of the business logic to be executed, as well as key information that will be required when the API is called later. In the example of Figure 10, an API is registered that, when a base date (date) is specified as an argument, returns a list of customer information (customer CD, customer name, etc.) registered as of that date.

APIマスタに登録への登録について説明する。作成したAPI情報を、図11に示すように、API管理テーブルに登録する。 We will now explain how to register in the API master. The created API information is registered in the API management table as shown in Figure 11.

その後、API呼出アクションの編集画面では、図12に示すように、開発者があらかじめ登録したAPIを格納したAPIマスタの中から、必要なAPIを選択し、そのAPIの引数や戻り値の設定を行う。 Then, on the editing screen for the API call action, as shown in Figure 12, the developer selects the required API from the API master that stores APIs previously registered by the developer, and sets the arguments and return values for that API.

アクション情報について説明する。定義管理テーブルのアクション情報には、図13に示すように、アクションごとに設定された情報(ID、名前、アクションタイプおよび各設定等)がセットされる。メッセージ表示アクションの例では、メッセージ種類が3(Yes、No)、メッセージ内容が「取引先を表示します、よろしいですか?」という情報が登録される。API呼出アクションの例では、APIに渡す引数(基準日)の値に、画面上の基準日テキストの値をセットし、結果返ってきた戻り値(取引先CDおよび取引先名等)の値を、画面上の取引先CDテキストセル、取引先名テキストセルにセットしている情報が登録される。 Now, let's take a look at action information. As shown in Figure 13, the action information in the definition management table contains information set for each action (ID, name, action type, and each setting, etc.). In the example of a message display action, the message type is registered as 3 (Yes, No) and the message content is "Displaying business partners, is this OK?". In the example of an API call action, the value of the argument (base date) passed to the API is set to the value of the base date text on the screen, and the values of the returned values (business partner CD and business partner name, etc.) are set in the business partner CD text cell and business partner name text cell on the screen.

ロジックフロー情報について説明する。定義管理テーブルのロジックフロー情報には、図14に示すように、ロジックフローごとに設定された情報(ID、名前およびアクション同士を繋ぐフロー群等)がセットされる。前アクションIDは、先に処理されるアクションのIDであり、後アクションIDは、前アクションが実行された後に実行されるアクションのIDである。コールバックキーは、アクション実行時にユーザが何か行ためを選択した場合に、その選択結果を判別するためのキーである。図14の例では、ユーザがメッセージボックスでYesを選択した場合はコールバックキーがYesのフローを特定し、後アクションIDにセットされたアクションが実行される。 Now, let's explain the logic flow information. As shown in Figure 14, the logic flow information in the definition management table contains information set for each logic flow (ID, name, flow group connecting actions, etc.). The previous action ID is the ID of the action that will be processed first, and the next action ID is the ID of the action that will be executed after the previous action is executed. The callback key is a key used to determine the result of a selection made by the user when executing an action. In the example of Figure 14, if the user selects Yes in the message box, the callback key identifies the Yes flow, and the action set in the next action ID is executed.

(3)レイアウトとロジックの結合
開発段階では、開発者がレイアウト開発画面で各コントロールにロジックフローの割り付けを行うことで、開発用アプリケーションDBに紐づけ情報を登録する(図15参照)。すなわち、上述した定義管理テーブルの紐付け情報の列にデータが格納される。「(1)レイアウト開発」と「(2)ロジックフローおよびアクション開発」でそれぞれ作成したコントロールとフローの割り付けを行う。図15に示すように、コントロールのプロパティに、イベント項目(ボタンコントロールの場合には、クリックイベント)があり、ここに先ほど登録したフローがプルダウン形式で一覧が表示される。
(3) Combining Layout and Logic During the development stage, the developer assigns a logic flow to each control on the layout development screen, thereby registering the linking information in the development application DB (see Figure 15). That is, data is stored in the linking information column of the definition management table described above. The controls and flows created in "(1) Layout Development" and "(2) Logic Flow and Action Development" are assigned. As shown in Figure 15, the control properties include an event item (click event in the case of a button control), where the flows previously registered are listed in a pull-down format.

紐づけ情報について説明する。定義管理テーブルのロジックフロー情報には、図16に示すように、コントロール(表示ボタン)のID、イベントタイプおよびロジックフロー(ロジックフロー1)のIDという3つの情報が紐づけて登録される。一つのコントロールに対して、複数のイベントに割り付けられるようなコントロールでは、コントロールのIDだけでは紐づけが特定できないため、イベントタイプを紐づけ情報に含める必要がある(テキストボックスの検証時処理および脱出時処理等)。 Now, let's explain the linking information. As shown in Figure 16, the logic flow information in the definition management table registers three pieces of linked information: the control (display button) ID, the event type, and the ID of the logic flow (Logic Flow 1). For controls that can be assigned to multiple events, the linking cannot be determined by the control ID alone, so the event type must be included in the linking information (e.g., text box validation processing and exit processing).

以上の設定を行い、業務用アプリケーションDBへ定義管理テーブル情報を公開することで、アプリケーションとして実行が可能となる(後述する「実行時の画面イメージ」を参照)。ローコード実行基盤上で、公開された定義管理テーブル情報を解析し、アプリケーションとして実行する。特に、ロジックフローの実行時は、図17に示すようなフローチャート処理がローコード実行基盤内で行われる。図17は、クライアントによるアプリケーション操作~該当アクションの終了アクション完了までのフローチャートである。 By completing the above settings and publishing the definition management table information to the business application database, it becomes possible to execute it as an application (see "Screen image at execution" below). The published definition management table information is analyzed on the low-code execution platform and executed as an application. In particular, when a logic flow is executed, the flowchart processing shown in Figure 17 is carried out within the low-code execution platform. Figure 17 is a flowchart from application operation by the client to the completion of the end action for the relevant action.

[4.画面項目の動的な更新の設定方法(コンディション及びビジネスルールの設定)]
図18~図42を参照して、本実施の形態の特徴的な部分である画面項目の動的な更新の設定方法(コンディション及びビジネスルールの設定)を説明する。
[4. How to set up dynamic updates for screen items (setting conditions and business rules)]
A method for setting dynamic updates of screen items (setting conditions and business rules), which is a characteristic feature of this embodiment, will be described with reference to FIGS.

本明細書の画面項目の動的な更新の設定方法には、開発段階、実行段階でそれぞれについて特徴がある。 The method for configuring dynamic updates of screen items described in this specification has its own unique features for both the development and execution stages.

実行段階では、アクション、ロジックフローの処理と、ビジネスルールの処理とを明確に分けることで、それぞれの処理が競合して不正な動作が起きることを防いだ。 During the execution phase, the processing of actions and logic flows is clearly separated from the processing of business rules, preventing conflicts between the various processes and resulting in incorrect behavior.

開発段階では、アクション、ロジックフローの設定と、コンディション、ビジネスルールの設定とを明確に分けることで、ローコード開発基盤における設定の複雑化を防いだ。また、開発者が直感的にビジネスルール設定できる画面構成にすることで、設定時の不具合を最小限に抑えることを可能とした。 During the development phase, the complexity of configuration on the low-code development platform was prevented by clearly separating the settings for actions and logic flows from the settings for conditions and business rules. Furthermore, the screen layout allowed developers to intuitively configure business rules, minimizing problems during configuration.

以下、それぞれの特徴について説明を行う。 The features of each are explained below.

(1)実行時の画面イメージ
図18は、実行時の画面イメージを示す図である。例として取引先マスタメンテ画面を設定する場合の仕組みについて説明する。画面名は、取引先マスタメンテ(編集画面)である。ここでは、取引先マスタメンテ画面の編集画面をメインに説明する。業務オペレータが取引先情報を登録するためのジョブについて説明する。取引先CD、取引先名、改定日、法人区分、法人番号の5項目のみが存在するものとする。取引先マスタメンテ(一覧画面)から取引先マスタメンテ(編集画面)に遷移する。
(1) Screen image at execution time Figure 18 is a diagram showing the screen image at execution time. As an example, we will explain the mechanism for setting up the Customer Master Maintenance screen. The screen name is Customer Master Maintenance (Edit Screen). Here, we will mainly explain the edit screen of the Customer Master Maintenance screen. We will explain the job that allows the business operator to register customer information. It is assumed that there are only five items: Customer CD, Customer Name, Revision Date, Corporate Classification, and Corporate Number. Transition from Customer Master Maintenance (List Screen) to Customer Master Maintenance (Edit Screen).

取引先には法人と個人の2種類が存在し、法人(法人区分=0)の場合には法人番号の入力が必要で、個人(法人区分=1)の場合には法人番号の入力は不要となる。このようなアプリケーションを設定するにあたり、法人区分の値に応じて、法人番号のロック状態を動的に切り替えることで、必要な情報が漏れなく登録されるようにしたい。 There are two types of business partners: corporations and individuals. Corporations (corporate category = 0) require the entry of a corporate number, while individuals (corporate category = 1) do not. When setting up such an application, we want to ensure that all necessary information is registered by dynamically switching the lock status of the corporate number depending on the value of the corporate category.

図18に示すように、業務オペレータが、法人区分の値を1(個人)に変更すると、法人番号(テキスト)がロックされる。他方、法人区分の値を0(法人)に変更すると、法人番号(テキスト)がアンロックされる。 As shown in Figure 18, when the business operator changes the value of the corporate category to 1 (individual), the corporate number (text) is locked. On the other hand, when the business operator changes the value of the corporate category to 0 (corporation), the corporate number (text) is unlocked.

(2)前提となる定義管理テーブルの情報(コントロール情報、アクション情報、ロジックフロー情報、紐づけ情報)
図19は、定義管理テーブル例を示す図である。定義管理テーブルには、取引先マスタ(編集画面)の情報として、図19に示すような情報が登録されているものとする。アクション情報、ロジックフロー情報、紐づけ情報は、簡略化のため登録に関わる部分のみ表示している。
(2) Information on the underlying definition management table (control information, action information, logic flow information, linking information)
19 is a diagram showing an example of a definition management table. The definition management table is assumed to have the information shown in FIG. 19 registered as customer master (edit screen) information. For simplicity, only the action information, logic flow information, and linking information related to registration are shown.

図20は、登録ボタンに割り付いたロジックフローを示す図である。図20において、登録ボタンには、API呼出アクション1が割り付いている。図21は、API管理テーブル例を示す図である。API呼出アクション1では、取引先データ登録処理(API)が実行される想定である。取引先CD、取引先名、改定日、法人区分、法人番号の5つの情報を引数に受け取り、引数を元に取引先情報の更新を行う(戻り値は返さないものとする)。 Figure 20 shows the logic flow assigned to the registration button. In Figure 20, API call action 1 is assigned to the registration button. Figure 21 shows an example of an API management table. API call action 1 is expected to execute the customer data registration process (API). Five pieces of information - customer CD, customer name, revision date, corporate classification, and corporate number - are received as arguments, and the customer information is updated based on the arguments (no return value is assumed).

(3)新たに必要な定義管理テーブルの情報(コンディション情報、ビジネスルール情報)
コンディション開発画面、ビジネスルール開発画面は、レイアウト開発画面から遷移することができる。図22は、レイアウト開発画面例を示す図である。図22のレイアウト開発画面において、コンディションボタンをクリックすると、コンディション開発画面へ遷移する。また、ビジネスルールボタンをクリックすると、ビジネスルール開発画面へ遷移する。前述のように、取引先マスタメンテには法人番号の動的な制御が必要である。以下、法人番号の動的制御を実現するために、開発者がローコード開発基盤を用いて行う設定について説明する。
(3) Information on newly required definition management tables (condition information, business rule information)
The condition development screen and business rule development screen can be accessed from the layout development screen. Figure 22 is a diagram showing an example of the layout development screen. Clicking the condition button on the layout development screen in Figure 22 will transition to the condition development screen. Also, clicking the business rule button will transition to the business rule development screen. As mentioned above, dynamic control of the corporate number is required for customer master maintenance. Below, we will explain the settings that developers make using the low-code development platform to achieve dynamic control of the corporate number.

法人番号の制御の判定には、法人区分の値が利用される。そのため、まずは法人区分の値を動的制御の判定に必要な条件式(以下、「コンディション」と呼称)として登録する必要がある。 The corporate classification value is used to determine the control of the corporate number. Therefore, you must first register the corporate classification value as the condition expression (hereinafter referred to as the "condition") required to determine dynamic control.

(3-1)コンディション設定について
図23は、コンディション開発画面例を示す図である。コンディション設定は、画面上の要素を左辺と右辺に値として設定し、比較のための等号(or不等号)を組み合わせることで、一つの式として構成される。式に設定する値の例としては数値や文字列のような定数情報の他に、画面上のコントロールの値を設定することができる(どのような値を設定するかは、式ごとにタイプを指定できる)。式の左辺と右辺を比較し、比較結果が真(true)であれば、後述するビジネスルールに基づいて画面情報が更新される。
(3-1) Condition Settings Figure 23 shows an example of the condition development screen. Condition settings are configured as a single formula by setting elements on the screen as values on the left and right sides and combining them with equality (or inequality) signs for comparison. Examples of values that can be set in a formula include constant information such as numbers and character strings, as well as the value of a control on the screen (the type of value to be set can be specified for each formula). The left and right sides of the formula are compared, and if the comparison result is true, the screen information is updated based on the business rules described below.

図23において、タイプ=コントロールを指定した場合には、画面上のコントロールを一覧から選択でき、プロパティ(値やエラーの有無など)を式にセットできる。タイプ=定数を指定した場合には、任意の値(文字列、数値、真偽値)を指定できる。上記の設定例では、法人区分の値に1をセットした場合に、真となる。図24は、登録される定義管理テーブルのコンディション情報の例を示す図である。図24では、図23で設定したコンディション情報が設定されている。 In Figure 23, if Type = Control is specified, a control on the screen can be selected from a list, and properties (such as value and whether or not there is an error) can be set in the expression. If Type = Constant is specified, any value (string, number, boolean) can be specified. In the above setting example, if the value of the corporate classification is set to 1, it will be true. Figure 24 is a diagram showing an example of condition information to be registered in the definition management table. In Figure 24, the condition information set in Figure 23 is set.

また、一つのコンディション内には式やコンディションを複数含めることができ、それぞれの条件をAND、ORで結びつけることで、より複雑な条件指定を行うことが可能となる。図25は、複雑な条件指定を行うコンディション開発画面例及び設定されるコンディション情報の例を示す図である。図25の画面例では、式、コンディションを追加するためのボタンが用意されている。図25の例では、コンディション「テキストボックス1=1 かつ テキストボックス2=2 かつ (テキストボックス3=3 または テキストボックス4=4)を満たす場合に、このコンディションは真となる。」が設定される。 In addition, multiple expressions and conditions can be included within a single condition, and by linking each condition with AND or OR, it is possible to specify more complex conditions. Figure 25 shows an example of a condition development screen for specifying complex conditions, and an example of the condition information that can be set. The example screen in Figure 25 provides buttons for adding expressions and conditions. In the example in Figure 25, the condition "This condition is true if Text Box 1 = 1 AND Text Box 2 = 2 AND (Text Box 3 = 3 OR Text Box 4 = 4) are met." is set.

(3-2)ビジネスルール設定について
ビジネスルールとは、設定されたコンディションが真である場合に、設定されたコントロールに対してどのような更新を動的に行うか、ルールを定めたものである。動的な更新の種類として、「ロック」、「非表示」、「必須」の3種類を選択でき、コンディションが真である場合に、設定されたコントロールがロック、非表示、必須状態になる。
(3-2) About business rule settings A business rule is a rule that determines what kind of dynamic update is performed on the set control when the set condition is true. Three types of dynamic update can be selected: "Locked,""Hidden," and "Required." When the condition is true, the set control will be locked, hidden, or required.

ビジネスルール開発画面上では、縦軸にコントロール一覧、横軸にコンディション一覧をとるマトリクス表が表示され、セル上にチェックをつけることができる。開発者がビジネスルールのタイプ(コンディションを満たした際の処理)を指定し、マトリクス表にチェックをつけることで、設定が完了する。 The business rule development screen displays a matrix table with a list of controls on the vertical axis and a list of conditions on the horizontal axis, and allows check boxes to be placed in cells. The developer specifies the type of business rule (the action to be taken when a condition is met) and checks the box in the matrix table to complete the setup.

このようにローコード開発基盤では、複雑になりがちな動的な画面更新を、プログラミングなしで容易に設定できるため、設定の負荷や意図しないバグの発生を最小限に抑えることができる。主な特徴は以下の点が挙げられる。 In this way, a low-code development platform makes it easy to configure dynamic screen updates, which can often be complex, without programming, minimizing the configuration burden and the occurrence of unintended bugs. The main features are as follows:

特徴1:値によって判定可能な動的な画面更新を、コンディション、ビジネスルールの設定だけで完結させることができる(ロジックフローの設定で制御を実現しようとすると、設定が煩雑、かつ判定後に値を書き換えられてしまうとアクションの処理順によっては不具合を生む場合がある)。 Feature 1: Dynamic screen updates that can be determined by values can be completed simply by setting conditions and business rules (trying to achieve control by setting logic flow would be cumbersome, and if values are rewritten after a determination is made, this could cause problems depending on the order in which actions are processed).

特徴2:コンディションとビジネスルールの分離により、複雑になりがちな設定をシンプルにすることができる(条件と状態を定義内の別項目としてDB上管理している)。 Feature 2: By separating conditions and business rules, settings that tend to become complicated can be simplified (conditions and states are managed in the database as separate items within the definition).

特徴3:ビジネスルールをマトリクス形式で設定できる(複雑なビジネスルール設定を一つの画面で行うことができる)。 Feature 3: Business rules can be set in matrix format (complex business rules can be set on a single screen).

特徴4:マトリクス形式での設定に加えて、設定に必要な情報を確認しやすくすることで、大規模アプリケーションの開発においても、設定コストを最小限に抑えることができる。
1.コンディション(横軸)をクリックすることで、該当のコンディション設定画面に遷移することができる。
2.コントロール(縦軸)をクリックすることで、表示されているレイアウト画面がハイライト表示される。
3.レイアウト画面上のコントロールをクリックすることで、マトリクスの行が選択状態(フォーカス状態)となる。
Feature 4: In addition to the matrix format settings, the information required for the settings can be easily checked, minimizing the setup costs even when developing large-scale applications.
1. Clicking on a condition (horizontal axis) will take you to the corresponding condition setting screen.
2. Clicking on the control (vertical axis) will highlight the displayed layout screen.
3. Clicking on a control on the layout screen selects (focuses on) a row in the matrix.

特徴5:大規模システムにおいては、設定項目の数が多くなりがちなため、フィルタを用いてマトリクス表上に表示するコントロール、およびコンディションの種類を制限することで、開発者の設定ミスを防ぐ。 Feature 5: In large-scale systems, the number of configuration items tends to increase, so by using filters to limit the types of controls and conditions displayed in the matrix table, developers can prevent configuration errors.

大規模なアプリケーション画面では、コンディション、コントロールの数が膨大になり、設定作業の負荷がかかるという課題があるが、この特徴を生かして、コンディションやレイアウトを確認しやすくすることで、その負荷を下げることができる。 Large-scale application screens can have a huge number of conditions and controls, which can make the configuration process a burden. However, by taking advantage of this feature and making it easier to check conditions and layouts, this burden can be reduced.

(A)設定例(ビジネスルール:ロックの場合)
ビジネスルール開発画面では、開発用アプリケーションDBのコントロール情報とコンディション情報から、動的更新の対象となるコントロールを抽出し、それぞれ縦軸、横軸に一覧表示する。
(A) Example of settings (Business rule: Lock)
On the business rule development screen, controls that are subject to dynamic update are extracted from the control information and condition information in the development application DB, and are displayed as a list on the vertical and horizontal axes, respectively.

図26は、開発用アプリケーションDBの定義管理テーブルのコントロール情報とコンディション情報の例を示す図である。図27は、動的更新の対象となるコントロールを説明するための図である。図27において、ローコード開発基盤上では、それぞれのコントロール要素が各ビジネスルールタイプの更新対象かどうかを判定するために、図中の属性テーブルで属性を保持している。属性テーブルは、コントロール要素(テキスト、ラベル、ボタン、ラジオボタン等)が各ビジネスルールタイプ(ロック、非表示、必須)の更新対象か否か(可:更新対象、不可:非更新対象)を規定している。属性テーブルは、記憶部に登録されており、ビジネスルール開発画面を表示する際に参照して、ビジネスルールのタイプ毎に、コントロール情報から設定可能なコントロールを抽出している。この属性テーブルの例では、ビジネスルールタイプがロックの場合、ラベルは対象コントロールの一覧に表示されない。ビジネスルールタイプが非表示の場合、ラベルは対象コントロールの一覧に表示される。 Figure 26 shows an example of control information and condition information in the definition management table of the development application DB. Figure 27 is a diagram explaining controls that are subject to dynamic updates. In Figure 27, the low-code development platform stores attributes in an attribute table in the figure to determine whether each control element is subject to update for each business rule type. The attribute table specifies whether a control element (text, label, button, radio button, etc.) is subject to update for each business rule type (locked, hidden, required) (Yes: subject to update, No: not subject to update). The attribute table is registered in the memory and is referenced when displaying the business rule development screen to extract configurable controls from the control information for each business rule type. In this example attribute table, if the business rule type is locked, the label is not displayed in the list of target controls. If the business rule type is hidden, the label is displayed in the list of target controls.

図28は、ビジネスルール開発画面例を示している。(A)は、ビジネスルールタイプが「ロック」の場合、(B)は、ビジネスルールタイプが「非表示」の場合の例を示している。 Figure 28 shows an example of the business rule development screen. (A) shows an example when the business rule type is "locked," and (B) shows an example when the business rule type is "hidden."

図28に示すように、ビジネスルール開発画面は、縦軸にコントロール一覧、横軸にコンディション一覧がマトリクス形式の表で表示される。画面例では、簡略化のためテキスト、ラベルのみ表示している。(A)に示すように、ビジネスルールタイプがロックの場合、上記属性よりラベルは対象コントロールの一覧に表示されない。(B)に示すように、ビジネスルールタイプが非表示の場合、上記属性よりラベルは対象コントロールの一覧に表示される。開発者がビジネスルールのタイプ(コンディションを満たした際の処理)を指定し、マトリクス表にチェックをつけることで、選択したコントロール及びコンディションの組についてのビジネスルール情報を定義管理テーブルに設定することができる。(A)に示す例では、コントロール「法人番号」とコンディション「コンディション1」の組のセルがチェックされている。 As shown in Figure 28, the business rule development screen displays a matrix table with a list of controls on the vertical axis and a list of conditions on the horizontal axis. For simplicity's sake, the example screen only displays text and labels. As shown in (A), if the business rule type is locked, the label will not be displayed in the list of target controls due to the above attribute. As shown in (B), if the business rule type is hidden, the label will be displayed in the list of target controls due to the above attribute. By specifying the business rule type (the process to be performed when a condition is met) and checking boxes in the matrix table, the developer can set business rule information for the selected control and condition combination in the definition management table. In the example shown in (A), the cell for the combination of control "Corporate Number" and condition "Condition 1" is checked.

図29に示すように、横軸のコンディションをクリックすると、コンディション開発画面に遷移する。 As shown in Figure 29, clicking on the condition on the horizontal axis will take you to the condition development screen.

図30に示すように、縦軸のコントロールをクリックすると、レイアウト開発画面で設定されている画面情報が表示され、選択されたコントロールの行がハイライト表示される。 As shown in Figure 30, when you click a control on the vertical axis, the screen information set on the layout development screen is displayed, and the row of the selected control is highlighted.

図31は、定義管理テーブルに設定されるビジネスルール情報の例を示す図である。ビジネスルール情報は、ビジネスルール名、タイプ、コンディション、反映先を含んでいる。タイプは、選択されたビジネスルールのタイプで更新される。コンディションと反映先は、チェックONのコンディションとコントローロールの項目の組合せが1つのビジネスルールとして更新される。 Figure 31 shows an example of business rule information set in the definition management table. Business rule information includes the business rule name, type, condition, and destination. The type is updated with the type of the selected business rule. The condition and destination are updated as a single business rule, with the combination of checked condition and control role items.

同図に示す例では、ビジネスルール名「ビジネスルール1」、タイプ「ロック」、コンディション「コンディション1」、反映先「法人番号(テキスト)」となっている。 In the example shown in the figure, the business rule name is "Business Rule 1", the type is "Lock", the condition is "Condition 1", and the destination is "Corporate Number (Text)".

(B)マトリクス画面におけるフィルタ機能について
システムが大規模化するにつれて、画面上のコントロール数や、必要なコンディション数は増加する。その結果、マトリクス表も肥大化するため、開発者による設定の付け忘れや付け間違いなどの設定ミスが発生する可能性が高まる。そこで、本仕組みでは、マトリクス表にフィルタ機能を設けることで、開発者による設定ミスを最小限に防ぐような仕組みを用意した。
(B) About the filter function on the matrix screen As the scale of a system increases, the number of controls on the screen and the number of required conditions also increase. As a result, the matrix table also becomes larger, increasing the possibility of developers making configuration errors, such as forgetting to add settings or adding the wrong settings. Therefore, this system provides a filter function in the matrix table to minimize configuration errors by developers.

図32は、フィルタ機能を追加したビジネスルール開発画面の例を示す図である。図32において、ビジネスルール開発画面は、設定中のフィルタを選択する欄と、フィルタを追加ボタンと、備えている。フィルタを追加ボタンをクリックすると、フィルタ追加画面に遷移する。フィルタ追加画面で、開発者がフィルタの名前を設定し、フィルタ対象のコントロールとコンディションをチェックして選択し、登録ボタンをクリックすることで、フィルタ情報が定義管理テーブルに設定される。図32に示す例では、フィルタ名「取引先用フィルタ」が設定され、コントロール「取引先」、「取引先名」、コンディション「コンディション1」が選択されている。この画面上のコントロール、コンディションの一覧も、開発用アプリケーションDBのコントロール情報及びコンディション情報から取得する。 Figure 32 shows an example of a business rule development screen with a filter function added. In Figure 32, the business rule development screen has a field for selecting the filter being set and an Add Filter button. Clicking the Add Filter button transitions to the Add Filter screen. On the Add Filter screen, the developer sets the filter name, checks and selects the controls and conditions to be filtered, and clicks the Register button, which sets the filter information in the definition management table. In the example shown in Figure 32, the filter name "Customer Filter" is set, and the controls "Customer" and "Customer Name" and the condition "Condition 1" are selected. The list of controls and conditions on this screen is also obtained from the control information and condition information in the development application DB.

図33は、定義管理テーブルに設定されるフィルタ情報の例を示す図である。フィルタ情報は、フィルタ名、コントロール要素、コンディション要素で構成されている。図33に示す例では、フィルタ名「取引先用フィルタ」、コントロール要素「1.取引先」、「2.取引先名」、コンディション要素「1.コンディション1」が設定される。 Figure 33 shows an example of filter information set in the definition management table. Filter information consists of a filter name, control element, and condition element. In the example shown in Figure 33, the filter name "Customer Filter", control elements "1. Customer" and "2. Customer Name", and condition element "1. Condition 1" are set.

図34は、フィルタ情報のフィルタ機能を説明するための図である。登録したフィルタ情報は定義管理テーブル(定義情報)に登録され、ビジネスルール開発画面で、フィルタを選択すると、対象にチェックをつけたコンディションとコントロールが絞り込んで表示される。 Figure 34 is a diagram explaining the filter function of filter information. Registered filter information is registered in the definition management table (definition information), and when you select a filter on the business rule development screen, the conditions and controls that you have checked are displayed in a narrowed down view.

図34の上は、ビジネスルール開発画面の表示例、左下は、フィルタ=未設定の場合の対象コントロール情報及びコンディション情報の例、右下は、フィルタ=取引先の場合の対象コントロール情報及びコンディション情報の例を示している。ビジネスルール開発画面上で、開発者が設定時に利用したいフィルタを選択すると、選択したフィルタの条件を満たすコントロール及びコンディションを定義管理テーブルから抽出して、ビジネスルール開発画面に表示し、コントロール、コンディションが絞り込まれて表示される。 The top of Figure 34 shows an example of the business rule development screen, the bottom left shows an example of target control information and condition information when the filter is not set, and the bottom right shows an example of target control information and condition information when the filter is set to business partner. When a developer selects the filter they want to use when setting up on the business rule development screen, the controls and conditions that meet the conditions of the selected filter are extracted from the definition management table and displayed on the business rule development screen, narrowing down the controls and conditions.

図34に示す例では、取引先用フィルタが選択されて、取引先用フィルタの条件を満たすコントロール「取引先」、「取引先名」、コンディション「コンディション1」が表示されている。 In the example shown in Figure 34, the customer filter is selected, and the controls "Customer," "Customer Name," and "Condition 1" that meet the conditions of the customer filter are displayed.

(C)マトリクス画面の利点について
取引先マスタメンテの例では、一つの条件(法人区分)に対して、一つのコントロール(法人番号)に制御をかけていたが、より複雑なパターンとして、複数のコンディションを利用して、複数コントロールに対して動的なロック制御を行う場合を考える。図35は、画面例、図36は、コンディション(税抜金額の場合)の設定イメージ、図37は、ビジネスルールの設定イメージを示す図である。
(C) Advantages of the Matrix Screen In the example of customer master maintenance, one control (corporate number) was controlled for one condition (corporate classification), but as a more complex pattern, consider the case where multiple conditions are used to dynamically lock multiple controls. Figure 35 shows an example screen, Figure 36 shows an example of how to set a condition (amount excluding tax), and Figure 37 shows an example of how to set business rules.

図35の画面例では、税区分、税抜金額、消費税額、税込金額の4つの項目を入力する。この時、税区分の値に応じて、税抜金額、消費税額、税込金額の3つのコントロールをそれぞれ異なる条件でロック制御を行う。 In the example screen in Figure 35, four items are entered: tax category, amount excluding tax, consumption tax amount, and amount including tax. At this time, depending on the value of the tax category, the three controls for the amount excluding tax, consumption tax amount, and amount including tax are locked under different conditions.

税区分=0(非課税)の場合、消費税額テキストボックス、税込金額テキストボックスをロックする(非課税・・・税抜金額のみオペレータが入力する方式)。
税区分=1(外税)の場合、税込金額テキストボックスをロックする(外税・・・税抜金額と消費税額をオペレータが入力する方式)。
税区分=2(内税)の場合、税抜金額テキストボックスをロックする(内税・・・税込金額と消費税額をオペレータが入力する方式)。
If the tax category is 0 (tax exempt), the consumption tax amount text box and tax-inclusive amount text box are locked (tax exempt: the operator enters only the amount excluding tax).
If tax category = 1 (excluding tax), the tax-inclusive amount text box is locked (excluding tax: the operator enters the amount excluding tax and the amount of consumption tax).
If tax category = 2 (tax included), the tax-excluded amount text box is locked (tax included: the operator enters the tax-inclusive amount and the consumption tax amount).

税抜金額、税込金額、消費税額に対して、それぞれロックする条件が異なるため、それぞれコンディションを用意する。
税抜金額は税区分=2でロック
税込金額は税区分=0or1でロック
消費税額は税区分=0でロック
Since the locking conditions are different for the tax-excluded amount, tax-included amount, and consumption tax amount, prepare conditions for each.
The amount excluding tax is locked with tax category = 2. The amount including tax is locked with tax category = 0 or 1. The amount of consumption tax is locked with tax category = 0.

上記例のように、複数の画面項目に対して、それぞれ異なる条件で動的更新をかけたい場合に、本仕組みのようなマトリクス形式での設定であれば、1つの画面でコントロールと条件、更新の種類(上記例ではロック)の紐づけを行うことができるため、設定内容の保守性・可読性が高く、開発者にとっての利便性が大きい。 As in the example above, if you want to dynamically update multiple screen items using different conditions, a matrix-style setup like this system allows you to link controls, conditions, and update types (lock in the example above) on a single screen, making the settings highly maintainable and readable, and very convenient for developers.

図38は、上記例により定義管理テーブルに登録されるビジネスルール情報の例を示す図である。 Figure 38 shows an example of business rule information registered in the definition management table in the above example.

(4)ビジネスルールを反映するまでのフローチャート
以上の設定を行い、業務用アプリケーションDBへ定義管理テーブルの情報を公開することで、アプリケーションとして実行が可能となる(「実行時の画面イメージ」を参照)。ローコード実行基盤上で、公開された定義管理テーブル情報を解析し、アプリケーションとして実行する。特に、ビジネスルールを反映する時は、図39に示すようなフローチャート処理がローコード実行基盤内で行われる。図39は、ビジネスルールを反映するまでのフローチャートを示す図である。
(4) Flowchart for Reflecting Business Rules By making the above settings and publishing the definition management table information to the business application DB, it becomes possible to execute it as an application (see "Screen image at execution"). The published definition management table information is analyzed on the low-code execution platform and executed as an application. In particular, when reflecting business rules, the flowchart processing shown in Figure 39 is performed within the low-code execution platform. Figure 39 is a diagram showing a flowchart for reflecting business rules.

図39において、オペレータの画面操作によってイベントが発火すると(ステップS1)、ロジックフローが割りついているかを判定し(ステップ2)、ロジックフローが割りついている場合(ステップS2の「Yes」)には、ロジックフローの処理を実行して(ステップS3)、ステップS3に移行し、ロジックフローが割りついていない場合(ステップS2の「No」)には、ステップS4に移行する。 In Figure 39, when an event is triggered by an operator's screen operation (step S1), it is determined whether a logic flow has been assigned (step S2). If a logic flow has been assigned ("Yes" in step S2), the logic flow processing is executed (step S3) and the process proceeds to step S3. If a logic flow has not been assigned ("No" in step S2), the process proceeds to step S4.

ステップS4では、ロジックフローを実行完了後、判定すべきビジネスルールを抽出する。つぎに、各ビジネスルールについて判定を行う(ステップS5)。各ビジネスルールが終了するまでステップS5~S17の処理をループする(ループ処理)。ループ対象のビジネスルールに割ついたコンディションを抽出し(ステップS6)、ビジネスルールのタイプによって分岐する(ステップS7)。 In step S4, after the logic flow has been executed, the business rules to be judged are extracted. Next, a judgment is made for each business rule (step S5). Steps S5 to S17 are repeated in a loop until each business rule is completed (loop processing). The conditions assigned to the business rule to be looped are extracted (step S6), and branching is performed based on the type of business rule (step S7).

タイプが「ロック」の場合は、コンディションを満たすか判定して(ステップS8)、コンディションを満たす場合には(ステップS8の「Yes」)、反映先のコントロールをロックして(ステップS11)、ステップS17に移行する一方、コンディションを満たさない場合には(ステップS8の「No」)、反映先のコントロールをアンロックして(ステップS12)、ステップS17に移行する。 If the type is "lock," it is determined whether the condition is met (step S8). If the condition is met ("Yes" in step S8), the target control is locked (step S11) and the process proceeds to step S17. If the condition is not met ("No" in step S8), the target control is unlocked (step S12) and the process proceeds to step S17.

タイプが「非表示」の場合は、コンディションを満たすか判定して(ステップS9)、コンディションを満たす場合には(ステップS9の「Yes」)、反映先のコントロールを非表示状態にして(ステップS13)、ステップS17に移行する一方、コンディションを満たさない場合には(ステップS9の「No」)、反映先のコントロールを表示状態して(ステップS14)、ステップS17に移行する。 If the type is "Hidden," it is determined whether the condition is met (step S9). If the condition is met ("Yes" in step S9), the target control is made invisible (step S13) and the process proceeds to step S17. If the condition is not met ("No" in step S9), the target control is made visible (step S14) and the process proceeds to step S17.

タイプが「必須」の場合は、コンディションを満たすか判定して(ステップS10)、コンディションを満たす場合には(ステップS10の「Yes」)、反映先のコントロールを必須状態にして(ステップS15)、ステップS17に移行する一方、コンディションを満たさない場合には(ステップS10の「No」)、反映先のコントロールの必須状態を解除して(ステップS16)、ステップS17に移行する。 If the type is "Required," it is determined whether the condition is met (Step S10). If the condition is met ("Yes" in Step S10), the target control is made required (Step S15) and the process proceeds to Step S17. If the condition is not met ("No" in Step S10), the target control's required status is cancelled (Step S16) and the process proceeds to Step S17.

ステップS17では、未判定のビジネスルールが存在するか否かを判定し、未判定のビジネスルールが存在する場合には(ステップS17の「Yes」)、ステップS5に戻り、未判定のビジネスルールが存在しなくなるまで、ステップS4~ステップS16の処理をループし、未判定のビジネスルールが存在しない場合には(ステップS17の「No」)、処理を終了する。 In step S17, it is determined whether any undetermined business rules exist. If any undetermined business rules exist ("Yes" in step S17), the process returns to step S5 and loops through steps S4 to S16 until no undetermined business rules exist. If no undetermined business rules exist ("No" in step S17), the process ends.

図40は、図39のフローチャートの特徴を説明するための図である。画面上の値が変更されるケースには、クライアント側での変更と、サーバ側での変更の以下の2パターンが存在する。(1)クライアント側の変更は、業務オペレータが直接値を変更した場合である。(2)サーバ側の変更は、画面更新アクション(アクションの一つ、画面上の値を更新することができる)が実行された場合である。 Figure 40 is a diagram explaining the features of the flowchart in Figure 39. There are two cases in which values on the screen are changed: changes on the client side and changes on the server side. (1) A change on the client side occurs when a business operator changes a value directly. (2) A change on the server side occurs when a screen update action (one of the actions that can update values on the screen) is executed.

図40(A)に示すように、ステップS1において、(1)業務オペレータが直接値を変更した場合は、イベント発火前に値が確定する。ステップS3において、(2)画面更新アクションで値を変更した場合は、ロジックフロー処理内で値が確定する。 As shown in Figure 40 (A), in step S1, (1) if the business operator changes the value directly, the value is finalized before the event is fired. In step S3, (2) if the value is changed by a screen update action, the value is finalized within the logic flow processing.

図40(B)は、画面更新アクションを呼び出すロジックフロー例を示している。例えば、画面上の値を更新するアクションで、法人区分を「1」に更新する。 Figure 40 (B) shows an example logic flow that calls a screen update action. For example, an action that updates a value on the screen updates the corporate classification to "1."

図40(C)は、取引先マスタメンテ(編集画面)の例を示している。ロジックフローを実行すると、画面更新アクションによって、画面上の値が更新され、ロジックフローの判定にも影響を与える。 Figure 40 (C) shows an example of the Customer Master Maintenance (edit screen). When a logic flow is executed, the screen update action updates the values on the screen, which also affects the logic flow's judgment.

画面更新アクションを呼び出すロジックフロー例のように、画面上の値を更新するようなアクションが含まれている場合、ロジックフロー内のどのタイミングで画面更新が行われるか分からないため、終了アクションが完了するまで画面上の値を確定させることができない。 When an action that updates a value on the screen is included, such as in the example logic flow that calls a screen update action, it is not known at what point in the logic flow the screen update will occur, so the value on the screen cannot be finalized until the end action is completed.

そのため、必ずロジックフローが完了した後に、ビジネスルールの判定を行っており、この2種類の処理を分離している点が大きな特徴といえる。 For this reason, business rules are always judged after the logic flow is completed, and the separation of these two types of processing is a major feature.

(5)動的更新を、アクション処理で実現しようとした場合の管理の煩雑さについて
図41及び図42を参照して、ビジネスルールという仕組みを用意せず、ロジックフロー、アクションのような仕組みだけで動的更新を実現しようとする場合について説明する。一般的なローコード開発ではこのケースが多いと思われる。図41において、ロック、表示非表示といった状態制御を行うアクションを用意し、ロジックフロー内で実行する場合、複数のロジックフローに状態制御のためのアクションが分散することとなる。その結果、開発者にとって一覧性のある開発・保守が難しくなる。複数あるロジックフローの中から、状態制御に係る部分を把握し、適切に管理していくことは難しい。
(5) Complexity of management when dynamic updates are implemented using action processing. Referring to Figures 41 and 42, we will explain the case of implementing dynamic updates using only logic flow and action mechanisms, without providing a business rule mechanism. This is likely to be the case in typical low-code development. In Figure 41, when state control actions such as locking and display/hide are prepared and executed within a logic flow, the state control actions are distributed across multiple logic flows. As a result, it becomes difficult for developers to develop and maintain a comprehensive view. It is difficult to identify and properly manage the state control-related parts of multiple logic flows.

また、図42において、前述した画面更新アクションのように、サーバ側で画面の値を書き換えが行われる場合、書き換えた値によっては状態制御の結果が変化する可能性があるため、サーバ側で値が変化するタイミングを把握し適切なタイミングで状態制御を行わなければ、誤った設定を行ってしまうリスクが存在する。 Also, in Figure 42, when screen values are rewritten on the server side, as in the screen update action mentioned above, the results of state control may change depending on the rewritten values. Therefore, if the server does not understand when values change and perform state control at the appropriate time, there is a risk of incorrect settings being made.

このように、ロジックフロー、アクションだけで処理を完結させようとすると、開発者にとって考慮すべき事項が増え、設定の難しい仕組みとなってしまう。 As such, if you try to complete processing using only logic flow and actions, the number of things that developers have to consider increases, making the system difficult to configure.

以上説明したように、本実施の形態によれば、選択した状態制御のタイプについて、コントロール情報のコントロールを一方の軸、コンディション情報のコンディションを他方の軸としたマトリクス形式のビジネスルール開発画面を表示させる画面制御部102aと、ビジネスルール開発画面において、マトリクスのセルを選択することでコントロールとコンディションの組を選択し、選択した状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報を定義管理テーブルに登録する設定部102bと、を備えているので、画面項目に対して状態制御を行うための設定を開発者が簡易に行うことが可能となる。 As described above, this embodiment includes a screen control unit 102a that displays a matrix-format business rule development screen with the control from the control information on one axis and the condition from the condition information on the other axis for the selected state control type, and a setting unit 102b that selects a control and condition pair by selecting a matrix cell on the business rule development screen and registers business rule information including the selected state control type, condition, and control in the definition management table, allowing developers to easily configure state control for screen items.

[5.国連が主導する持続可能な開発目標(SDGs)への貢献]
本実施形態により、業務効率化や企業の適切な経営判断を推進することに寄与することができるので、SDGsの目標8及び9に貢献することが可能となる。
[5. 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 SDGs Goals 8 and 9.

また、本実施形態により、廃棄ロス削減や、ペーパレス・電子化を推進することに寄与することができるので、SDGsの目標12、13及び15に貢献することが可能となる。 Furthermore, this embodiment can contribute to reducing waste and promoting paperless and electronic systems, thereby contributing to SDGs goals 12, 13, and 15.

また、本実施形態により、統制、ガバナンス強化に寄与することができるので、SDGsの目標16に貢献することが可能となる。 Furthermore, this embodiment can contribute to strengthening control and governance, thereby contributing to Goal 16 of the SDGs.

[6.他の実施形態]
本発明は、上述した実施形態以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施形態にて実施されてよいものである。
6. 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.

例えば、実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。 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.

また、本明細書中や図面中で示した処理手順、制御手順、具体的名称、各処理の登録データや検索条件等のパラメータを含む情報、画面例、データベース構成については、特記する場合を除いて任意に変更することができる。 In addition, the processing procedures, control procedures, specific names, registered data for each process, information including parameters such as search conditions, screen examples, and database configurations shown in this specification and drawings may be changed as desired unless otherwise specified.

また、ビジネスルール設定装置100に関して、図示の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。 Furthermore, with regard to the business rule setting device 100, the components shown in the figure are functional concepts and do not necessarily have to be physically configured as shown.

例えば、ビジネスルール設定装置100が備える処理機能、特に制御部にて行われる各処理機能については、その全部または任意の一部を、CPUおよび当該CPUにて解釈実行されるプログラムにて実現してもよく、また、ワイヤードロジックによるハードウェアとして実現してもよい。尚、プログラムは、本実施形態で説明した処理を情報処理装置に実行させるためのプログラム化された命令を含む一時的でないコンピュータ読み取り可能な記録媒体に記録されており、必要に応じてビジネスルール設定装置100に機械的に読み取られる。すなわち、ROMまたはHDD(Hard Disk Drive)などの記憶部などには、OSと協働してCPUに命令を与え、各種処理を行うためのコンピュータプログラムが記録されている。このコンピュータプログラムは、RAMにロードされることによって実行され、CPUと協働して制御部を構成する。 For example, all or any part of the processing functions of the business rule setting device 100, particularly the processing functions performed by the control unit, may be implemented by a 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 business rule setting device 100 as needed. In other words, a computer program that works in conjunction with the OS to issue commands to the CPU and perform various processes is recorded in a storage unit such as a ROM or HDD (Hard Disk Drive). This computer program is executed by being loaded into RAM, and works in conjunction with the CPU to form the control unit.

また、このコンピュータプログラムは、ビジネスルール設定装置100に対して任意のネットワークを介して接続されたアプリケーションプログラムサーバに記憶されていてもよく、必要に応じてその全部または一部をダウンロードすることも可能である。 In addition, this computer program may be stored on an application program server connected to the business rule setting device 100 via any network, and all or part of it may be downloaded as needed.

また、本実施形態で説明した処理を実行するためのプログラムを、一時的でないコンピュータ読み取り可能な記録媒体に格納してもよく、また、プログラム製品として構成することもできる。ここで、この「記録媒体」とは、メモリーカード、USB(Universal Serial Bus)メモリ、SD(Secure Digital)カード、フレキシブルディスク、光磁気ディスク、ROM、EPROM(Erasable Programmable Read Only Memory)、EEPROM(登録商標)(Electrically Erasable and Programmable Read Only Memory)、CD-ROM(Compact Disk Read Only Memory)、MO(Magneto-Optical disk)、DVD(Digital Versatile Disk)、および、Blu-ray(登録商標) Disc等の任意の「可搬用の物理媒体」を含むものとする。 In addition, the program for executing the processing described in this embodiment may be stored on a non-temporary computer-readable recording medium, or may be configured as a program product. Here, this "recording medium" includes memory cards, USB (Universal Serial Bus) memories, 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 more. This includes any "portable physical media" such as a Blu-ray Disc (registered trademark) and a Blu-ray (registered trademark) Disc.

また、「プログラム」とは、任意の言語または記述方法にて記述されたデータ処理方法であり、ソースコードまたはバイナリコード等の形式を問わない。なお、「プログラム」は必ずしも単一的に構成されるものに限られず、複数のモジュールやライブラリとして分散構成されるものや、OSに代表される別個のプログラムと協働してその機能を達成するものをも含む。なお、実施形態に示した各装置において記録媒体を読み取るための具体的な構成および読み取り手順ならびに読み取り後のインストール手順等については、周知の構成や手順を用いることができる。 A "program" is a data processing method written in any language or description method, and may be in any format, such as source code or binary code. It should be noted that a "program" is not necessarily limited to a single structure, but also includes a distributed structure consisting of multiple modules or libraries, or a structure that achieves its function by working in conjunction with a separate program, such as an OS. The specific structure and reading procedure for reading a recording medium in each device shown in the embodiments, as well as the installation procedure after reading, can use well-known structures and procedures.

記憶部に格納される各種のデータベース等は、RAM、ROM等のメモリ装置、ハードディスク等の固定ディスク装置、フレキシブルディスク、および、光ディスク等のストレージ手段であり、各種処理やウェブサイト提供に用いる各種のプログラム、テーブル、データベース、および、ウェブページ用ファイル等を格納する。 The various databases stored in the memory unit are storage devices such as memory devices such as RAM and 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 website provision.

また、ビジネスルール設定装置100は、既知のパーソナルコンピュータまたはワークステーション等の情報処理装置として構成してもよく、また、任意の周辺装置が接続された当該情報処理装置として構成してもよい。また、ビジネスルール設定装置100は、当該装置に本実施形態で説明した処理を実現させるソフトウェア(プログラムまたはデータ等を含む)を実装することにより実現してもよい。 The business rule setting device 100 may also be configured as an information processing device such as a known personal computer or workstation, or as an information processing device connected to any peripheral device. The business rule setting device 100 may also be implemented by installing software (including programs, data, etc.) that causes the device to perform the processing described in this embodiment.

更に、装置の分散・統合の具体的形態は図示するものに限られず、その全部または一部を、各種の付加等に応じてまたは機能負荷に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。すなわち、上述した実施形態を任意に組み合わせて実施してもよく、実施形態を選択的に実施してもよい。 Furthermore, the specific form of distribution and integration of the devices is not limited to that shown in the figures, and all or part of them can be functionally or physically distributed and integrated in any unit depending on various additions or functional loads. In other words, the above-mentioned embodiments may be implemented in any combination, or embodiments may be implemented selectively.

本発明は、全業種・全業界において利用可能である。 This invention can be used in all business sectors and industries.

100 ビジネスルール設定装置
102 制御部
102a 画面制御部
102b 設定部
104 通信インターフェース部
106 記憶部
106a 開発用アプリケーションDB
108 入出力インターフェース部
112 入力装置
114 出力装置
200 サーバ
300 ネットワーク
100 Business rule setting device 102 Control unit
102a Screen control unit
102b Setting unit 104 Communication interface unit 106 Storage unit
106a Development application DB
108 Input/output interface unit 112 Input device 114 Output device 200 Server 300 Network

Claims (6)

制御部及び記憶部を備え、開発者がビジネスルールを設定するためのビジネスルール設定装置であって、
前記記憶部には、
コントロール名、プロパティを含むコントロール情報と、
動的制御の判定に使用されるものであり、コンディション名、条件式を含むコンディション情報と、
設定されたコンディションが真である場合に、設定されたコントロールに対してどのような更新を動的に行うかを規定したルールであり、状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報と、
を含むテーブルが格納されており、
選択した状態制御のタイプについて、前記コントロール情報のコントロールを一方の軸、前記コンディション情報のコンディションを他方の軸としたマトリクス形式のビジネスルール開発画面を表示させる画面制御手段と、
前記ビジネスルール開発画面において、マトリクスのセルを選択することでコントロールとコンディションの組を選択し、選択した状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報を前記テーブルに登録する設定手段と、
を備え、
前記画面制御手段は、前記ビジネスルール開発画面上での開発者の操作に応じて、コンディションとコントロールの前記ビジネスルール開発画面への表示を制限するフィルタ機能を備えたことを特徴とするビジネスルール設定装置。
A business rule setting device for allowing a developer to set business rules , the device comprising a control unit and a storage unit,
The storage unit includes:
Control information including control name and properties,
Condition information including a condition name and a condition expression, which is used to determine dynamic control;
A rule that specifies how to dynamically update the set control when the set condition is true. Business rule information including the type of state control, condition, and control.
It contains a table containing
a screen control means for displaying a business rule development screen in a matrix format with the control of the control information on one axis and the condition of the condition information on the other axis for the selected type of state control;
a setting means for selecting a set of a control and a condition by selecting a cell in a matrix on the business rule development screen, and registering business rule information including the type, condition, and control of the selected state control in the table;
Equipped with
The business rule setting device is characterized in that the screen control means has a filter function that limits the display of conditions and controls on the business rule development screen in accordance with operations by a developer on the business rule development screen .
前記状態制御のタイプは、ロック、非表示、又は必須を含むことを特徴とする請求項1に記載のビジネスルール設定装置。 The business rule setting device of claim 1, wherein the type of state control includes locked, hidden, or required. 前記画面制御手段は、前記ビジネスルール開発画面において、一方の軸のコントロールが選択された場合に当該選択されたコントロールのレイアウト画面で設定されている画面情報を表示し、他方の軸のコンディションが選択された場合には、当該コンディションのコンディション設定画面を表示することを特徴とする請求項1に記載のビジネスルール設定装置。 The business rule setting device of claim 1, wherein the screen control means displays the screen information set in the layout screen for a control on one axis when that control is selected on the business rule development screen, and displays the condition setting screen for that condition when a condition on the other axis is selected. 前記テーブルが公開されることで実行可能となるアプリケーションでは、ロジックフローを全て実行後に各ビジネスルールの判定を行うことを特徴とする請求項1~のいずれか1つに記載のビジネスルール設定装置。 The business rule setting device according to any one of claims 1 to 3 , characterized in that in an application that becomes executable when the table is made public, a judgment is made on each business rule after all logic flows have been executed. 制御部及び記憶部を備え、開発者がビジネスルールを設定するためのビジネスルール設定装置が実行するビジネスルール設定方法であって、
前記記憶部には、
コントロール名、プロパティを含むコントロール情報と、
動的制御の判定に使用されるものであり、コンディション名、条件式を含むコンディション情報と、
設定されたコンディションが真である場合に、設定されたコントロールに対してどのような更新を動的に行うかを規定したルールであり、状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報と、
を含むテーブルが格納されており、
前記制御部において実行される、
選択した状態制御のタイプについて、前記コントロール情報のコントロールを一方の軸、前記コンディション情報のコンディションを他方の軸としたマトリクス形式のビジネスルール開発画面を表示させる画面制御工程と、
前記ビジネスルール開発画面において、マトリクスのセルを選択することでコントロールとコンディションの組を選択し、選択した状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報を前記テーブルに登録する設定工程と、
を含み、
前記画面制御工程は、前記ビジネスルール開発画面上での開発者の操作に応じて、コンディションとコントロールの前記ビジネスルール開発画面への表示を制限するフィルタ機能を備えたことを特徴とするビジネスルール設定方法。
A business rule setting method executed by a business rule setting device for allowing a developer to set business rules, the business rule setting device comprising a control unit and a storage unit,
The storage unit includes:
Control information including control name and properties,
Condition information including a condition name and a condition expression, which is used to determine dynamic control;
Business rule information including the type of state control, condition, and control, which is a rule that specifies what updates should be made dynamically to the set control when the set condition is true;
It contains a table containing
Executed in the control unit:
a screen control step of displaying a business rule development screen in a matrix format with the control of the control information as one axis and the condition of the condition information as the other axis for the selected type of state control;
a setting step of selecting a set of a control and a condition by selecting a cell of a matrix on the business rule development screen, and registering business rule information including the selected state control type, condition, and control in the table;
Including,
A business rule setting method characterized in that the screen control step is provided with a filter function that limits the display of conditions and controls on the business rule development screen in accordance with operations by a developer on the business rule development screen .
制御部及び記憶部を備え、開発者がビジネスルールを設定するためのビジネスルール設定装置に実行させるためのビジネスルール設定プログラムであって、
前記記憶部には、
コントロール名、プロパティを含むコントロール情報と、
動的制御の判定に使用されるものであり、コンディション名、条件式を含むコンディション情報と、
設定されたコンディションが真である場合に、設定されたコントロールに対してどのような更新を動的に行うかを規定したルールであり、状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報と、
を含むテーブルが格納されており、
前記制御部に、
選択した状態制御のタイプについて、前記コントロール情報のコントロールを一方の軸、前記コンディション情報のコンディションを他方の軸としたマトリクス形式のビジネスルール開発画面を表示させる画面制御工程と、
前記ビジネスルール開発画面において、マトリクスのセルを選択することでコントロールとコンディションの組を選択し、選択した状態制御のタイプ、コンディション、コントロールを含むビジネスルール情報を前記テーブルに登録する設定工程と、
を実行するためのビジネスルール設定プログラムであり、
前記画面制御工程は、前記ビジネスルール開発画面上での開発者の操作に応じて、コンディションとコントロールの前記ビジネスルール開発画面への表示を制限するフィルタ機能を備えたことを特徴とするビジネスルール設定プログラム。
A business rule setting program for a developer to set business rules, the business rule setting program comprising a control unit and a storage unit, and to be executed by a business rule setting device ,
The storage unit includes:
Control information including control name and properties,
Condition information including a condition name and a condition expression, which is used to determine dynamic control;
A rule that specifies how to dynamically update the set control when the set condition is true. Business rule information including the type of state control, condition, and control.
It contains a table containing
The control unit
a screen control step of displaying a business rule development screen in a matrix format with the control of the control information as one axis and the condition of the condition information as the other axis for the selected type of state control;
a setting step of selecting a set of a control and a condition by selecting a cell of a matrix on the business rule development screen, and registering business rule information including the selected state control type, condition, and control in the table;
It is a business rule setting program for executing
The screen control process is characterized by having a filter function that limits the display of conditions and controls on the business rule development screen in accordance with operations by a developer on the business rule development screen.
JP2022163081A 2022-10-11 2022-10-11 Business rule setting device, business rule setting method, and business rule setting program Active JP7801982B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022163081A JP7801982B2 (en) 2022-10-11 2022-10-11 Business rule setting device, business rule setting method, and business rule setting program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022163081A JP7801982B2 (en) 2022-10-11 2022-10-11 Business rule setting device, business rule setting method, and business rule setting program

Publications (2)

Publication Number Publication Date
JP2024056296A JP2024056296A (en) 2024-04-23
JP7801982B2 true JP7801982B2 (en) 2026-01-19

Family

ID=90749315

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022163081A Active JP7801982B2 (en) 2022-10-11 2022-10-11 Business rule setting device, business rule setting method, and business rule setting program

Country Status (1)

Country Link
JP (1) JP7801982B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013200786A (en) 2012-03-26 2013-10-03 Fujitsu Ltd Screen control system, screen control program, screen creation support program and screen control method
JP2019117499A (en) 2017-12-27 2019-07-18 株式会社オービック Registration screen processor, registration screen processing method and registration screen processing program
JP2022019197A (en) 2020-07-17 2022-01-27 株式会社オービック Specification reference work support device, specification reference work support method and specification reference work support program
JP2022059478A (en) 2020-10-01 2022-04-13 株式会社オービック Information processing device, information processing program, and information processing method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013200786A (en) 2012-03-26 2013-10-03 Fujitsu Ltd Screen control system, screen control program, screen creation support program and screen control method
JP2019117499A (en) 2017-12-27 2019-07-18 株式会社オービック Registration screen processor, registration screen processing method and registration screen processing program
JP2022019197A (en) 2020-07-17 2022-01-27 株式会社オービック Specification reference work support device, specification reference work support method and specification reference work support program
JP2022059478A (en) 2020-10-01 2022-04-13 株式会社オービック Information processing device, information processing program, and information processing method

Also Published As

Publication number Publication date
JP2024056296A (en) 2024-04-23

Similar Documents

Publication Publication Date Title
US8073836B2 (en) System for viewing databases
AU2004202329B2 (en) Framework for creating modular web applications
US5999911A (en) Method and system for managing workflow
US9977654B2 (en) Method of developing an application for execution in a workflow management system and apparatus to assist with generation of an application for execution in a workflow management system
US11886836B2 (en) Dynamic enterprise application platform
US7603624B2 (en) System and method for styling content in a graphical user interface control
JP2016224923A (en) Method and system for automated generation of user form interface
JP7787967B2 (en) App development support system, app development support method, and app development support program
WO2007050110A2 (en) Method and model for enterprise system development and execution
US20080015911A1 (en) Methods and apparatuses for developing business solutions
JP7411766B2 (en) Setting work support device, setting work support method, and setting work support program
JP7801982B2 (en) Business rule setting device, business rule setting method, and business rule setting program
WO2005054988A2 (en) System and method for configuring a graphical user interface based on data type
JP7584370B2 (en) Information processing device, information processing method, and information processing program
US20050114851A1 (en) System and method for configuring a graphical user interface based on data type
JP7824169B2 (en) Focus target determination device, focus target determination method, and focus target determination program
CN118733012A (en) A multi-layer atomic visual design method and device based on style reference
JP7837933B2 (en) Application delivery system, application delivery method, and application delivery program
Jørgensen et al. Variability handling for mobile banking apps on ios and android
JP2025153927A (en) Application providing system, application providing method and application providing program
US12596558B1 (en) No-code UI creation for a multi-tenant cloud-based application that supports an extensible data schema model
JP7618529B2 (en) Information processing device, information processing method, and information processing program
Vesterli Oracle ADF Survival Guide
JP4706001B2 (en) Design computer programs
Thangaswamy VSTO 3.0 for Office 2007 Programming

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20241119

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20250806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250902

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20251031

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20251209

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20260106

R150 Certificate of patent or registration of utility model

Ref document number: 7801982

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150