JP6836077B2 - Information processing device and its processing method and program - Google Patents

Information processing device and its processing method and program Download PDF

Info

Publication number
JP6836077B2
JP6836077B2 JP2017254613A JP2017254613A JP6836077B2 JP 6836077 B2 JP6836077 B2 JP 6836077B2 JP 2017254613 A JP2017254613 A JP 2017254613A JP 2017254613 A JP2017254613 A JP 2017254613A JP 6836077 B2 JP6836077 B2 JP 6836077B2
Authority
JP
Japan
Prior art keywords
definition
data model
application
setting
data
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
JP2017254613A
Other languages
Japanese (ja)
Other versions
JP2019121087A (en
Inventor
中山 圭
圭 中山
文洋 柴本
文洋 柴本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Marketing Japan Inc
Canon IT Solutions Inc
Original Assignee
Canon Marketing Japan Inc
Canon IT Solutions Inc
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 Canon Marketing Japan Inc, Canon IT Solutions Inc filed Critical Canon Marketing Japan Inc
Priority to JP2017254613A priority Critical patent/JP6836077B2/en
Publication of JP2019121087A publication Critical patent/JP2019121087A/en
Application granted granted Critical
Publication of JP6836077B2 publication Critical patent/JP6836077B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、データベースに接続するアプリケーションを構築するための情報処理装置と、その処理方法及びプログラムに関する。 The present invention relates to an information processing apparatus for constructing an application connected to a database, and a processing method and program thereof.

従来、入出力定義やデータモデル定義などを設定し、アプリケーションを構築するツールやサービスが存在する。 Conventionally, there are tools and services for building applications by setting input / output definitions and data model definitions.

それらのツールやサービスを用いて構築したアプリケーションは、設定されたデータモデル定義を用いてデータベースのデータを操作(検索、挿入、更新、削除等)する。また、その操作のうち、登録、更新(論理削除を含む)等を行った場合、監査用の証跡情報として、データベースにおける当該データの「登録ユーザID」「登録日時」「更新ユーザID」「更新日時」等のカラムに処理ユーザID又は処理日時の値を記憶することが一般的である。 Applications built using these tools and services operate (search, insert, update, delete, etc.) data in the database using the set data model definitions. In addition, when registration, update (including logical deletion), etc. is performed among the operations, the "registered user ID", "registration date and time", "update user ID", and "update" of the relevant data in the database are used as trail information for auditing. It is common to store the processing user ID or the value of the processing date and time in a column such as "date and time".

特許文献1には、監査用の証跡情報として、「承認者ID」及び「承認日時」を複数のテーブルに登録する仕組みが開示されている。 Patent Document 1 discloses a mechanism for registering an "approver ID" and an "approval date and time" in a plurality of tables as trail information for auditing.

特開2014−38479号公報Japanese Unexamined Patent Publication No. 2014-38479

しかし、特許文献1には、監査用の証跡情報を容易に取得することについては開示されているが、監査用の証跡情報を持つ複数テーブルを利用するアプリケーションの構築については触れられていない。つまり、上記のようなアプリケーション構築ツールで、このようなテーブル構造のデータベースを利用するアプリケーションを構築するには、同じ証跡情報項目を持つデータモデルをテーブルの数分設定し、それらのデータモデルを介して証跡情報の登録及び更新をしなければならず、大変面倒である。 However, although Patent Document 1 discloses that the trail information for auditing can be easily obtained, it does not mention the construction of an application that uses a plurality of tables having the trail information for auditing. In other words, in order to build an application that uses such a table-structured database with the above application construction tool, set data models with the same trail information items for the number of tables, and use those data models. It is very troublesome to register and update the trail information.

そこで、本発明の目的は、データモデル定義を利用するアプリケーションを容易に構築する仕組みを提供することである。 Therefore, an object of the present invention is to provide a mechanism for easily constructing an application that uses a data model definition.

データベースのデータの操作に用いるデータモデルの定義を記憶するデータモデル記憶手段を備え、前記データベースに接続するアプリケーションを構築する情報処理装置であって、前記構築するアプリケーションで用いる第2データモデルの定義に任意の定義の設定を受け付ける定義受付手段と、前記定義受付手段により受け付けた定義と組み合わせる、前記データモデル記憶手段に記憶されている第1データモデルの定義を、前記アプリケーションで用いる第2データモデルの定義の一部として設定を受け付ける設定受付手段と、前記定義受付手段により設定を受け付けた定義と前記設定受付手段により設定を受け付けた前記第1データモデルの定義を用いて第2データモデルに対応するアプリケーションを構築するアプリケーション構築手段とを備えることを特徴とする情報処理装置。 An information processing device that has a data model storage means for storing the definition of a data model used for manipulating data in a database and constructs an application connected to the database, and is used for defining a second data model used in the application to be constructed. The definition of the first data model stored in the data model storage means, which is combined with the definition receiving means that accepts the setting of an arbitrary definition and the definition received by the definition receiving means, is used in the application. Corresponds to the second data model by using the setting receiving means that accepts the setting as a part of the definition, the definition that accepts the setting by the definition receiving means, and the definition of the first data model that accepts the setting by the setting receiving means. An information processing device including an application construction means for constructing an application.

本発明によれば、データモデル定義を利用するアプリケーションを容易に構築する仕仕組みを提供することができる。 According to the present invention, it is possible to provide a mechanism for easily constructing an application that uses a data model definition.

本発明に係る情報処理装置、アプリケーションサーバ、データベースサーバ、アプリケーションクライアントの構成の一例を示すシステム構成図である。It is a system block diagram which shows an example of the structure of the information processing apparatus, application server, database server, and application client which concerns on this invention. 本発明に係る情報処理装置、アプリケーションサーバ、データベースサーバ、アプリケーションクライアントとして適用可能な各ハードウェア構成の一例を示すブロック図である。It is a block diagram which shows an example of each hardware configuration applicable as an information processing apparatus, an application server, a database server, and an application client which concerns on this invention. 本発明の実施の形態のソフトウェア構成を示すブロック図の一例である。This is an example of a block diagram showing a software configuration according to an embodiment of the present invention. 本発明に係るプログラム生成装置の構成図である。It is a block diagram of the program generation apparatus which concerns on this invention. アプリケーション生成のフローチャートの一例を示す図である。It is a figure which shows an example of the flowchart of application generation. SQL文生成のフローチャートの一例を示す図である。It is a figure which shows an example of the flowchart of the SQL statement generation. 日付時刻更新のフローチャートの一例を示す図である。It is a figure which shows an example of the flowchart of the date-time update. データモデル定義画面の一例を示す図である。It is a figure which shows an example of the data model definition screen. データモデル定義XMLの一例を示す図である。It is a figure which shows an example of the data model definition XML. INSERT押下前画面、INSERT押下後画面の一例を示す図である。It is a figure which shows an example of the screen before pressing INSERT, and the screen after pressing INSERT. INSERT SQL文、INSERT押下後DBレコードの一例を示す図である。It is a figure which shows an example of the INSERT SQL statement and the DB record after pressing INSERT. UPDATE押下前画面、UPDATE押下後画面の一例を示す図である。It is a figure which shows an example of the screen before pressing UPDATE and the screen after pressing UPDATE. UPDATE押下前DBレコード、UPDATE SQL文、UPDATE押下後DBレコードの一例を示す図である。It is a figure which shows an example of the DB record before pressing UPDATE, the UPDATE SQL statement, and the DB record after pressing UPDATE. 継承関係を持つデータモデル定義画面の一例を示す図である。It is a figure which shows an example of the data model definition screen which has an inheritance relationship. 継承関係を持つデータモデル定義画面の一例を示す図である。It is a figure which shows an example of the data model definition screen which has an inheritance relationship. 継承関係を持つデータモデル定義XMLの一例を示す図である。It is a figure which shows an example of the data model definition XML which has an inheritance relationship.

以下、本発明の実施の形態を、図面を参照して詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

図1は、本発明に係る情報処理装置(開発者がWebアプリケーション生成のために操作するプログラム開発装置)、アプリケーションサーバ、データベースサーバ、アプリケーションクライアントの構成の一例を示すシステム(情報処理システム)構成図である。 FIG. 1 is a system (information processing system) configuration diagram showing an example of the configuration of an information processing device (a program development device operated by a developer for generating a Web application), an application server, a database server, and an application client according to the present invention. Is.

情報処理装置101は、開発者の操作に従って画面レイアウト及びデータベース検索指示などを定義する。情報処理装置101は、プログラム生成、アプリケーション生成を行う。 The information processing device 101 defines a screen layout, a database search instruction, and the like according to the operation of the developer. The information processing device 101 generates a program and an application.

なお、この実施形態においては、情報処理装置101で生成するアプリケーションはWebアプリケーションとしたが、これに限定するものではなく、携帯電話・スマートフォン・タブレットなどの情報処理装置で動作するアプリケーションや組込みソフトウェアなど、Web技術による通信を利用したアプリケーションでなくてもよい。 In this embodiment, the application generated by the information processing device 101 is a Web application, but the application is not limited to this, and an application or embedded software that operates on an information processing device such as a mobile phone, a smartphone, or a tablet is not limited to this. , It does not have to be an application that uses communication by Web technology.

アプリケーションサーバ102は、情報処理装置101で開発されたアプリケーションを実行する。また、データベースサーバ103と接続して動作することが可能である。 The application server 102 executes the application developed by the information processing device 101. Further, it is possible to operate by connecting to the database server 103.

データベースサーバ103は、開発されたアプリケーションが使用するデータベースであり、また本発明では開発時にも動作確認などのために利用してもよい。例えば、開発者が利用するためにデータベースサーバ103は、情報処理装置101や、アプリケーションサーバ102と同一の装置で構成されていてもよいし、LANなどのネットワーク105内に配置されてもよい。 The database server 103 is a database used by the developed application, and in the present invention, it may be used for checking the operation even at the time of development. For example, the database server 103 may be configured by the same device as the information processing device 101 and the application server 102 for use by the developer, or may be arranged in a network 105 such as a LAN.

アプリケーションクライアント104(情報処理装置)は、アプリケーションサーバ102と協調して情報処理装置101で開発したアプリケーションプログラムを動作させる、エンドユーザの入力端末である。この、アプリケーションクライアント104は、携帯端末などの情報処理装置であってもよいこととする。 The application client 104 (information processing device) is an end user input terminal that operates an application program developed by the information processing device 101 in cooperation with the application server 102. The application client 104 may be an information processing device such as a mobile terminal.

なお、情報処理装置101、アプリケーションサーバ102、データベースサーバ103、および、アプリケーションクライアント104の何れかを、クラウドなどのインターネット上に配置してもよい。
Any one of the information processing device 101, the application server 102, the database server 103, and the application client 104 may be arranged on the Internet such as a cloud.

図2は、本発明に係る情報処理装置101、アプリケーションサーバ102、データベースサーバ103、アプリケーションクライアント104として適用可能な各ハードウェア構成の一例を示すブロック図である。 FIG. 2 is a block diagram showing an example of each hardware configuration applicable as the information processing device 101, the application server 102, the database server 103, and the application client 104 according to the present invention.

図2において、CPU201は、システムバス204に接続される各デバイスを統括的に制御する。 In FIG. 2, the CPU 201 comprehensively controls each device connected to the system bus 204.

また、ROM203あるいは外部メモリ211には、CPU201の制御プログラムであるオペレーティングシステム(OS)や、各サーバ、クライアント、装置など情報処理装置の後述する各種機能を実現するためのプログラムが記憶されている。 Further, the ROM 203 or the external memory 211 stores an operating system (OS) which is a control program of the CPU 201, and a program for realizing various functions described later of the information processing device such as each server, client, and device.

RAM202は、CPU201の主メモリ、ワークエリア、一時待避領域等として機能する。 The RAM 202 functions as a main memory, a work area, a temporary save area, and the like of the CPU 201.

入力コントローラ205は、入力部209からの入力を制御する。この入力部209としては、情報処理装置では、キーボード、マウス等のポインティングデバイス、タッチパネルが挙げられる。
なお、入力部209がタッチパネルの場合、ユーザがタッチパネルに表示されたアイコンやカーソルやボタンに合わせて押下(指等でタッチ)することにより、各種の指示を行うことができることとする。
また、タッチパネルは、マルチタッチスクリーン等の、複数の指でタッチされた位置を検出することが可能なタッチパネルであってもよい。
The input controller 205 controls the input from the input unit 209. Examples of the input unit 209 include a pointing device such as a keyboard and a mouse, and a touch panel in the information processing device.
When the input unit 209 is a touch panel, the user can give various instructions by pressing (touching with a finger or the like) the icon, the cursor, or the button displayed on the touch panel.
Further, the touch panel may be a touch panel such as a multi-touch screen that can detect the position touched by a plurality of fingers.

出力コントローラ206は、出力部210の表示を制御する。この出力部210としては、例えば、CRTや液晶ディスプレイ等が挙げられる。尚、本体と一体になったノート型パソコンのディスプレイも含まれるものとする。また、プロジェクタであってもよいこととする。 The output controller 206 controls the display of the output unit 210. Examples of the output unit 210 include a CRT and a liquid crystal display. It should be noted that the display of the notebook personal computer integrated with the main body is also included. Further, it may be a projector.

外部メモリコントローラ207は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザーファイル、編集ファイル、プリンタドライバ等を記憶する外部メモリ211へのアクセスを制御する。外部メモリ211には、各サーバ、クライアント、装置等の各種機能を実現するための各種テーブル、パラメータが記憶されている。この外部メモリ211としては、ハードディスク(HD)やフレキシブルディスク(FD)、PCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)、スマートメディア等が挙げられる。 The external memory controller 207 controls access to the external memory 211 that stores the boot program, various applications, font data, user files, edit files, printer drivers, and the like. The external memory 211 stores various tables and parameters for realizing various functions of each server, client, device, and the like. Examples of the external memory 211 include a hard disk (HD), a flexible disk (FD), a compact flash (registered trademark) connected to a PCMCIA card slot via an adapter, smart media, and the like.

なお、CPU201は、例えばRAM202内の表示情報用領域へアウトラインフォント展開(ラスタライズ)処理を実行することにより、出力部210上での表示を可能としている。また、CPU201は、出力部210上の不図示のマウスカーソル等でのユーザ指示を可能とする。
通信I/Fコントローラ208は、ネットワークを介して外部機器との通信制御処理を実行する。例えば、TCP/IPを用いた通信等が可能である。
Note that the CPU 201 enables display on the output unit 210 by, for example, executing an outline font expansion (rasterization) process on the display information area in the RAM 202. Further, the CPU 201 enables a user instruction with a mouse cursor or the like (not shown) on the output unit 210.
The communication I / F controller 208 executes a communication control process with an external device via the network. For example, communication using TCP / IP is possible.

本発明を実現するためのプログラム212は外部メモリ211に記録されており、必要に応じてRAM202にロードされることによりCPU201によって実行されるものである。
The program 212 for realizing the present invention is recorded in the external memory 211, and is executed by the CPU 201 by being loaded into the RAM 202 as needed.

図3は、本発明の実施の形態のソフトウェア構成を示すブロック図の一例である。 FIG. 3 is an example of a block diagram showing a software configuration according to an embodiment of the present invention.

情報処理装置101は、以下の機能部を備える。 The information processing device 101 includes the following functional units.

データモデル記憶部301は、データベースのデータの操作に用いるデータモデルの定義を記憶する機能部である。 The data model storage unit 301 is a functional unit that stores the definition of the data model used for manipulating the data in the database.

継承設定受付部302は、データモデル記憶部301に記憶されている第1データモデルの定義を第2データモデルが継承する設定を受け付ける機能部である。 The inheritance setting receiving unit 302 is a functional unit that receives a setting in which the second data model inherits the definition of the first data model stored in the data model storage unit 301.

アプリケーション構築部303は、継承設定受付部302により設定を受け付けた第2データモデルを用いてデータの操作を行う場合には第1データモデルの定義に基づく定義を用いてデータの操作を行うアプリケーションを構築する機能部である。 When the application construction unit 303 operates the data using the second data model whose setting is accepted by the inheritance setting reception unit 302, the application construction unit 303 uses the definition based on the definition of the first data model to operate the data. It is a functional part to be built.

データモデル編集受付部304は、データモデルの定義の編集を受け付ける機能部である。 The data model editing reception unit 304 is a functional unit that accepts editing of the definition of the data model.

アプリケーション構築部303は、データモデル編集受付部304により第1データモデルの定義の編集を受け付けた後に継承設定受付部302により設定を受け付けた第2データモデルを用いてデータの操作を行う場合にはデータモデル編集受付部304により受け付けた編集に従って変更した第1データモデルの定義に基づく定義を用いてデータの操作を行うアプリケーションを構築する機能部である。 When the application construction unit 303 operates data using the second data model whose inheritance setting reception unit 302 has received the setting after the data model editing reception unit 304 has received the editing of the definition of the first data model. This is a functional unit for constructing an application that manipulates data using a definition based on the definition of the first data model changed according to the edit received by the data model edit reception unit 304.

データモデル編集受付部304は、第2データモデルの定義の編集を受け付ける画面に表示された第1データモデルの定義の編集を抑止するよう制御する機能部である。 The data model editing reception unit 304 is a functional unit that controls to suppress the editing of the definition of the first data model displayed on the screen for accepting the editing of the definition of the second data model.

データモデル生成部305は、第1データモデルの定義に基づき、継承設定受付部302により設定を受け付けた第2データモデルの定義を生成する機能部である。 The data model generation unit 305 is a functional unit that generates the definition of the second data model whose settings have been accepted by the inheritance setting reception unit 302 based on the definition of the first data model.

アプリケーション構築部303は、データモデル生成部305により生成された第2データモデルの定義を用いてデータの操作を行うアプリケーションを構築する機能部である。 The application construction unit 303 is a functional unit that constructs an application that manipulates data using the definition of the second data model generated by the data model generation unit 305.

データモデル生成部305は、データモデル編集受付部304により受け付けた編集に従って変更した第1データモデルの定義に基づき、継承設定受付部302により設定を受け付けた第2データモデルの定義を生成する機能部である。 The data model generation unit 305 is a functional unit that generates the definition of the second data model whose setting is accepted by the inheritance setting reception unit 302 based on the definition of the first data model changed according to the edit received by the data model edit reception unit 304. Is.

データモデル編集受付部304は、第2データモデルの定義の編集を受け付ける画面に第1データモデルの定義を識別して表示する機能部である。
The data model editing reception unit 304 is a functional unit that identifies and displays the definition of the first data model on the screen that accepts editing of the definition of the second data model.

図4は、情報処理装置101の構成図である。 FIG. 4 is a configuration diagram of the information processing device 101.

情報処理装置101は、リポジトリ定義部401及びWebアプリケーション生成部407を備える。 The information processing device 101 includes a repository definition unit 401 and a Web application generation unit 407.

情報処理装置101は、Webアプリケーションを開発する開発者により設定されたリポジトリ定義部401の各定義を用いて、Webアプリケーション生成部407によりWebアプリケーションを生成する。 The information processing device 101 generates a Web application by the Web application generation unit 407 using each definition of the repository definition unit 401 set by the developer who develops the Web application.

リポジトリ定義部401には、アプリケーション定義402、入出力定義403、データモデル定義404、ビジネスプロセス定義405、データベース定義406が記憶されている。これら402〜406の定義は、Webアプリケーション構築ツールを介して、開発者によって入力設定または配置される。 The application definition 402, the input / output definition 403, the data model definition 404, the business process definition 405, and the database definition 406 are stored in the repository definition unit 401. These definitions of 402 to 406 are input and set or arranged by the developer via the Web application construction tool.

なお、入出力定義403は、入力項目定義情報及び出力項目定義情報を含む。入力項目定義情報は、生成されたWebアプリケーションの画面を介して当該Webアプリケーションのユーザが入力する入力項目を定義した情報である。出力項目定義情報は、生成されたWebアプリケーションの画面に出力する出力項目を定義した情報である。以降、「入力項目定義情報」及び「出力項目定義情報」をまとめて「入出力項目定義情報」と呼ぶ。 The input / output definition 403 includes input item definition information and output item definition information. The input item definition information is information that defines the input items input by the user of the Web application through the screen of the generated Web application. The output item definition information is information that defines the output items to be output to the screen of the generated Web application. Hereinafter, the "input item definition information" and the "output item definition information" are collectively referred to as "input / output item definition information".

Webアプリケーション生成部407は、Webアプリケーション生成用のリポジトリ定義解析部408を用いてリポジトリ定義部401に記憶されている各定義を解析し、Webアプリケーションコード生成部410及びソースコードコンパイル部411を介し、コンパイル済Java(登録商標)コード413及びHTML/JSP/JavaScript(登録商標)412を含むWebアプリケーションを生成する。すなわち、設定された定義を用いて、アプリケーションとして用いられるプログラムを生成する手段の一例である。
The Web application generation unit 407 analyzes each definition stored in the repository definition unit 401 by using the repository definition analysis unit 408 for Web application generation, and uses the Web application code generation unit 410 and the source code compilation unit 411 to analyze each definition. Generate a web application that includes compiled Java® code 413 and HTML / JSP / Javascript® 412. That is, it is an example of a means for generating a program used as an application by using the set definition.

図5は、アプリケーション生成のフローチャートの一例を示す図である。 FIG. 5 is a diagram showing an example of an application generation flowchart.

情報処理装置101は、ディレクトリ構造を用いて、リポジトリ定義部401の各定義をファイルとして管理する。なお、本実施形態においては、ディレクトリ構造600を用いて、リポジトリ定義部401の各定義をファイルとして管理するとしたが、これに限定するものではなく、例えば、データベースを用いてリポジトリ定義部401の各定義を管理してもよいし、クラウドなどネットワーク上の記憶装置を用いて管理する等としてもよい。 The information processing device 101 manages each definition of the repository definition unit 401 as a file by using the directory structure. In this embodiment, the directory structure 600 is used to manage each definition of the repository definition unit 401 as a file, but the present invention is not limited to this, and for example, each definition of the repository definition unit 401 using a database. The definition may be managed, or may be managed using a storage device on a network such as a cloud.

アプリケーション生成のフローチャートについて説明する。 The flowchart of application generation will be described.

ステップS501において、情報処理装置101は、アプリケーション定義402の設定を受け付ける。具体的には、アプリケーション構築ツールの画面を介して、アプリケーション開発者から入出力定義403、データモデル定義404、ビジネスプロセス定義405及びデータベース定義406の設定を受け付ける。
In step S501, the information processing device 101 accepts the setting of the application definition 402. Specifically, the settings of the input / output definition 403, the data model definition 404, the business process definition 405, and the database definition 406 are received from the application developer via the screen of the application construction tool.

図8は、データモデル定義404の設定を受け付けるデータモデル定義画面800の一例を示す図である。アプリケーション開発者は、データモデル定義画面800を介して、データモデル定義404の設定をする。すなわち、データモデル定義404は、データベースのデータの操作に用いるデータモデルの定義を記憶する手段の一例である。
図8の加工式801のようにして、テーブルのカラムに対応する項目コード毎にタイムゾーンの指定をする。
FIG. 8 is a diagram showing an example of the data model definition screen 800 that accepts the setting of the data model definition 404. The application developer sets the data model definition 404 via the data model definition screen 800. That is, the data model definition 404 is an example of a means for storing the definition of the data model used for manipulating the data in the database.
The time zone is specified for each item code corresponding to the column of the table as in the processing formula 801 of FIG.

これにより、データベースの1つのテーブルにおいても、複数のタイムゾーンを使い分けるアプリケーションを構築する仕組みを提供することができる。つまり、構築したアプリケーションをクラウド環境で動作させるケース等、エンドユーザが閲覧する日時情報(例:画面に表示する日時情報)には、エンドユーザの住む地域とのタイムゾーンを利用し、それ以外の日時情報(監査用等)には、異なるタイムゾーン(例:システム日時)を利用したいケースにおいても、複数のタイムゾーンを使い分けるアプリケーションを構築する仕組みを提供することができるようになる。また、世界各国のエンドユーザがアプリケーションを利用するケースであっても、複数のタイムゾーンを使い分けるアプリケーションを構築する仕組みを提供することができるようになる。 As a result, it is possible to provide a mechanism for constructing an application that uses a plurality of time zones properly even in one table of the database. In other words, for the date and time information viewed by the end user (example: date and time information displayed on the screen), such as when the constructed application is operated in a cloud environment, the time zone with the area where the end user lives is used, and other than that. For date and time information (for auditing, etc.), even in cases where different time zones (eg, system date and time) are desired to be used, it becomes possible to provide a mechanism for constructing an application that uses multiple time zones properly. In addition, even in the case where end users around the world use the application, it will be possible to provide a mechanism for constructing an application that uses multiple time zones properly.

タイムゾーンの指定を指定する場合、加工式801に“@DBZONEDATE:[INSERT][:タイムゾーン文字列]”形式で設定をする。この設定方法について、具体的に説明する。“INSERT”を付けると、レコード挿入時のみこの項目コードに日時が記録される(つまり、レコード更新時には記録されない)。“INSERT”を省略する場合は“@DBZONEDATE::タイムゾーン文字列”と設定する(つまり、レコード挿入時及びレコード更新時にタイムゾーン日時が記録される)。 When the time zone is specified, the processing formula 801 is set in the format of "@DBZONEDATE: [INSERT] [: time zone character string]". This setting method will be specifically described. If "INSERT" is added, the date and time will be recorded in this item code only when the record is inserted (that is, it will not be recorded when the record is updated). To omit "INSERT", set "@DBZONEDATE :: time zone character string" (that is, the time zone date and time is recorded when the record is inserted and when the record is updated).

タイムゾーン文字列として、“@LOCAL”が指定された場合は、データベースサーバ103のシステム日時を使用する。(つまり、SQL文に、“AT TIME ZONE”句を付加しない)。タイムゾーン文字列は、SQL文にそのまま渡される(つまり、DBMSに準拠したタイムゾーンを指定することができる)。 When "@LOCAL" is specified as the time zone character string, the system date and time of the database server 103 is used. (That is, the "AT TIME ZONE" clause is not added to the SQL statement). The time zone character string is passed as it is to the SQL statement (that is, a DBMS-compliant time zone can be specified).

タイムゾーン文字列を省略すると、SQL生成時、SQL文にタイムゾーンが付加されない。つまり、データベースサーバ103のシステム日時が登録される。 If the time zone character string is omitted, the time zone is not added to the SQL statement when the SQL is generated. That is, the system date and time of the database server 103 is registered.

また、タイムゾーン日時に未対応のDBMSの場合、データベースサーバ103又はアプリケーションサーバ102の日時を登録する。具体的には、データベース定義406に定義された接続先データベースサーバ103のDBMSがタイムゾーン日時に対応しているか否かを判定し、対応していない場合はSQL生成時にタイムゾーン日時の指定を行わないようにする。これにより、タイムゾーン日時に未対応のDBMSであっても、SQLエラーにならず、処理を続けることが可能になる。 If the DBMS does not support the time zone date and time, the date and time of the database server 103 or the application server 102 is registered. Specifically, it is determined whether or not the DBMS of the connection destination database server 103 defined in the database definition 406 corresponds to the time zone date and time, and if not, the time zone date and time is specified at the time of SQL generation. Try not to. As a result, even if the DBMS does not support the time zone date and time, the processing can be continued without causing an SQL error.

また、アプリケーション実行時、アプリケーション利用者のHTTPセッションにセッションキー“@TIME_ZONE”として値が設定されている場合は、“タイムゾーン文字列”の指定の有無にかかわらず、セッション値を使用する。 When the application is executed, if a value is set as the session key "@TIME_ZONE" in the HTTP session of the application user, the session value is used regardless of whether or not the "time zone character string" is specified.

以上から、項目コード804〜806の加工式は、“@DBZONEDATE::タイムゾーン文字列”形式であるため、レコード挿入時及びレコード更新時に指定された各タイムゾーンで処理日時を記録する。項目コード807の加工式は、“@DBZONEDATE::@LOCAL”形式であるため、レコード挿入時及びレコード更新時に指定された各タイムゾーンでデータベースサーバ103のシステム日時を記録する。項目コード808〜810の加工式は、“@DBZONEDATE:INSERT:タイムゾーン文字列”形式であるため、レコード挿入時に指定された各タイムゾーンで処理日時を記録する。項目コード811の加工式は、“@DBZONEDATE:INSERT:@LOCAL”形式であるため、レコード挿入時に指定された各タイムゾーンでデータベースサーバ103のシステム日時を記録する。 From the above, since the processing formulas of the item codes 804 to 806 are in the "@DBZONEDATE :: time zone character string" format, the processing date and time are recorded in each time zone specified at the time of record insertion and record update. Since the processing formula of the item code 807 is in the "@DBZONEDATE :: @ LOCAL" format, the system date and time of the database server 103 is recorded in each time zone specified at the time of record insertion and record update. Since the processing formulas of the item codes 808 to 810 are in the "@DBZONEDATE: INSERT: time zone character string" format, the processing date and time are recorded in each time zone specified at the time of record insertion. Since the processing formula of the item code 811 is in the "@DBZONEDATE: INSERT: @ LOCAL" format, the system date and time of the database server 103 is recorded in each time zone specified at the time of record insertion.

なお、本実施形態においては、“@LOCAL”が指定された場合は、データベースサーバ103のシステム日杖kを使用するとしたが、これに限定するものではなく、アプリケーションサーバ102であっても、アプリケーションサーバ102又はデータベースサーバ103を選択できるとしてもよい。 In the present embodiment, when "@LOCAL" is specified, the system date k of the database server 103 is used, but the present invention is not limited to this, and even if the application server 102 is an application. Server 102 or database server 103 may be selectable.

また、本実施形態においては、各データモデルの各項目コード(各テーブルの各カラムに対応)にタイムゾーン設定をするとしたが、これに限定するものではなく、複数のデータモデルや複数の項目コードに対して、一括的にタイムゾーンを指定できるとしてもよい。 Further, in the present embodiment, the time zone is set for each item code of each data model (corresponding to each column of each table), but the time zone is not limited to this, and a plurality of data models and a plurality of item codes are set. On the other hand, it may be possible to specify the time zone at once.

ステップS501にて、受け付けたアプリケーション定義402(入出力定義403、データモデル定義404、ビジネスプロセス定義405及びデータベース定義406)の設定は、リポジトリ定義部401にXMLファイル形式で記憶する。例えば、データモデル定義画面800を介して受け付けた「商品データモデル」は、リポジトリ定義部401にデータモデル定義XML900(図9)のような形式で記憶する。 The settings of the application definition 402 (input / output definition 403, data model definition 404, business process definition 405, and database definition 406) received in step S501 are stored in the repository definition unit 401 in the XML file format. For example, the "product data model" received via the data model definition screen 800 is stored in the repository definition unit 401 in a format such as the data model definition XML900 (FIG. 9).

図9は、データモデル定義XMLの一例を示す図である。項目コード毎の設定が、<dm−item>〜</dm−item>部分に記載されている。加工式801の設定は、<statement>〜</statement>部分に記載される。 FIG. 9 is a diagram showing an example of the data model definition XML. The settings for each item code are described in the <dm-item> to </ dm-item> parts. The setting of the processing formula 801 is described in the <statement> to </ statement> parts.

なお、本実施形態においては、データモデル定義404等のアプリケーション定義402をXMLファイル形式で記憶するとしたが、これに限定するものではなく、他のファイル形式やデータベースに登録する等の他の記憶方法であってもよい。 In the present embodiment, the application definition 402 such as the data model definition 404 is stored in the XML file format, but the present invention is not limited to this, and other storage methods such as registering in another file format or database are used. It may be.

ステップS502において、情報処理装置101は、アプリケーション生成の指示を受け付ける。 In step S502, the information processing device 101 receives an instruction to generate an application.

ステップS503において、情報処理装置101は、リポジトリ定義部401からアプリケーション定義402を取得する。リポジトリ定義解析部408は、読み込んだ定義を解析したうえでメモリに保管しておき、解析された定義は各生成部から適宜参照される。 In step S503, the information processing apparatus 101 acquires the application definition 402 from the repository definition unit 401. The repository definition analysis unit 408 analyzes the read definition and stores it in the memory, and the analyzed definition is appropriately referred to by each generation unit.

ステップS504において、情報処理装置101は、リポジトリ定義部401からデータモデル定義404を取得する。 In step S504, the information processing apparatus 101 acquires the data model definition 404 from the repository definition unit 401.

ステップS505において、情報処理装置101は、リポジトリ定義部401から入出力定義403を取得する。 In step S505, the information processing apparatus 101 acquires the input / output definition 403 from the repository definition unit 401.

ステップS506において、情報処理装置101は、リポジトリ定義部401からビジネスプロセス定義405を取得する。 In step S506, the information processing apparatus 101 acquires the business process definition 405 from the repository definition unit 401.

ステップS507において、情報処理装置101は、リポジトリ定義部401からデータベース定義406を取得する。 In step S507, the information processing apparatus 101 acquires the database definition 406 from the repository definition unit 401.

ステップS508において、情報処理装置101は、Webアプリケーション生成部407を用いて、Webアプリケーションに用いるプログラムを生成する。すなわち、ステップS508は、アプリケーションを構築する処理の一例を示すステップである。 In step S508, the information processing device 101 uses the Web application generation unit 407 to generate a program used for the Web application. That is, step S508 is a step showing an example of a process for constructing an application.

ステップS509において、情報処理装置101は、SQL文を生成する(詳細は、図6の説明にて後述する)。 In step S509, the information processing apparatus 101 generates an SQL statement (details will be described later in the description of FIG. 6).

ステップS510において、情報処理装置101は、ステップS508にて生成したプログラム及びステップS509にて生成したSQL文をアプリケーションサーバ102に配置(デプロイ)する。これにより、複数のタイムゾーンを使い分けるアプリケーションを構築する仕組みを提供することができる。 In step S510, the information processing apparatus 101 arranges (deploys) the program generated in step S508 and the SQL statement generated in step S509 on the application server 102. This makes it possible to provide a mechanism for constructing an application that uses a plurality of time zones properly.

以上で、図5の説明を終了する。
This is the end of the description of FIG.

図6は、SQL文生成のフローチャートの一例を示す図である。 FIG. 6 is a diagram showing an example of a flowchart for generating SQL statements.

ステップS601において、情報処理装置101は、ステップS504にて取得したデータモデル定義404の加工式801(図9の<statement>〜</statement>部分)に“@DBZONEDATE”が設定されているかを判定し、設定されている場合はステップS602に進み、設定されていない場合は図6の処理を終了する。 In step S601, the information processing apparatus 101 determines whether or not "@DBZONEDATE" is set in the processing formula 801 (<statement> to </ status> portion of FIG. 9) of the data model definition 404 acquired in step S504. If it is set, the process proceeds to step S602, and if it is not set, the process of FIG. 6 ends.

ステップS602において、情報処理装置101は、ステップS504にて取得したデータモデル定義404の加工式801に“@LOCAL”が設定されているか判定し、設定されている場合はステップS603に進み、設定されていない場合はステップS604に進む。 In step S602, the information processing apparatus 101 determines whether "@LOCAL" is set in the processing formula 801 of the data model definition 404 acquired in step S504, and if it is set, proceeds to step S603 and is set. If not, the process proceeds to step S604.

ステップS603において、情報処理装置101は、データベースサーバ103の日付を取得するSQL文を作成する(例:図11の1110又は図13の1320の対象カラム名=CURRENT_TIMESTAMP)。なお、本実施形態においては、データベースサーバ103の日付を“CURRENT_TIMESTAMP”としたが、これに限定するものではなく、DBMSの種類によっては、“SYSTIMESTAMP”等、他の表現方法であってもよい。 In step S603, the information processing apparatus 101 creates an SQL statement for acquiring the date of the database server 103 (example: target column name of 1110 in FIG. 11 or 1320 in FIG. 13 = CURRENT_TIMESTAMP). In the present embodiment, the date of the database server 103 is set to "CURRENT_TIMESTAMP", but the present invention is not limited to this, and other expression methods such as "SYSTIMESTAMP" may be used depending on the type of DBMS.

ステップS604において、情報処理装置101は、“AT TIME ZONE”付のSQL文を作成する(例:図11の1110又は図13の1320の対象カラム名=CURRENT_TIMESTAMP AT TIME ZONE タイムゾーン文字列)。すなわち、ステップS604は、データモデル定義に第1の所定の値(タイムゾーン文字列)が設定されている場合に、当該第1の所定の値に応じたタイムゾーンを指定するクエリを用いてデータベースのデータを操作するアプリケーションを構築する処理の一例を示すステップである。 In step S604, the information processing apparatus 101 creates an SQL statement with "AT TIME ZONE" (example: target column name of 1110 in FIG. 11 or 1320 in FIG. 13 = CURRET_TIMESTAP AT TIME ZONE time zone character string). That is, in step S604, when the first predetermined value (time zone character string) is set in the data model definition, the database is used with a query that specifies the time zone corresponding to the first predetermined value. This is a step showing an example of the process of constructing an application that manipulates the data of.

なお、本実施形態においては、データベースサーバ103の日付を“CURRENT_TIMESTAMP AT TIME ZONE タイムゾーン文字列”としたが、これに限定するものではなく、DBMSの種類によっては、“SYSTIMESTAMP AT TIME ZONE タイムゾーン文字列”等、他の表現方法であってもよい。ただし、タイムゾーン文字列については、データベースの種類によってその指定方法が異なる場合があるため、加工式801に設定されたタイムゾーン文字列をそのまま利用するとした方が、汎用性が高まるため好ましい。 In the present embodiment, the date of the database server 103 is set to "CURRENT_TIMESTAP AT TIME ZONE time zone character string", but the present invention is not limited to this, and depending on the type of DBMS, "SYSTEMSTAPM AT TIME ZONE time zone character" is used. It may be another expression method such as "column". However, since the method of specifying the time zone character string may differ depending on the type of database, it is preferable to use the time zone character string set in the processing formula 801 as it is because the versatility is improved.

ステップS605において、情報処理装置101は、データモデル定義404の加工式801の“@DBZONEDATE”に“INSERT”が設定されているか判定し、設定されている場合はステップS606に進み、設定されていない場合はステップS607に進む。つまり、“@DBZONEDATE”に“INSERT”が設定されている場合は、レコード挿入時のみこの項目コードに日時が記録される。すなわち、ステップS605は、記憶されているデータモデル定義に第2の所定の値(“INSERT”)が設定されているか否かを判定する処理の一例を示すステップである。また、ステップS605は、判定に従って、データベースのデータを更新するときにタイムゾーンを指定するクエリを用いるアプリケーションを構築するか、データベースのデータを更新するときにタイムゾーンを指定しないクエリを用いるアプリケーションを構築するかを制御する処理の一例を示すステップである。 In step S605, the information processing apparatus 101 determines whether or not "INSERT" is set in "@DBZONEDATE" of the processing formula 801 of the data model definition 404, and if it is set, proceeds to step S606 and is not set. In the case, the process proceeds to step S607. That is, when "INSERT" is set in "@DBZONEDATE", the date and time are recorded in this item code only when the record is inserted. That is, step S605 is a step showing an example of a process of determining whether or not a second predetermined value (“INSERT”) is set in the stored data model definition. Further, in step S605, according to the determination, an application that uses a query that specifies a time zone when updating the database data is constructed, or an application that uses a query that does not specify a time zone when updating the database data is constructed. This is a step showing an example of a process for controlling whether or not to perform.

ステップS606において、情報処理装置101は、ステップS505にて取得した入出力定義403のアクション定義に“@INSERT”が定義されているか判定し、設定されている場合はステップS608に進み、設定されていない場合は図6の処理を終了する。つまり、レコード挿入を行うアクション(例;挿入ボタン押下時)によって実行される処理の場合は、INSERT SQL文に日付時刻のSQLを付加すべく、ステップS608に進む。 In step S606, the information processing device 101 determines whether "@INSERT" is defined in the action definition of the input / output definition 403 acquired in step S505, and if it is set, proceeds to step S608 and is set. If not, the process of FIG. 6 is terminated. That is, in the case of the process executed by the action of inserting the record (eg, when the insert button is pressed), the process proceeds to step S608 in order to add the SQL of the date and time to the INSERT SQL statement.

ステップS607において、情報処理装置101は、ステップS505にて取得した入出力定義403のアクション定義に“@INSERT”又は“@UPDATE”が定義されているか判定し、設定されている場合はステップS608に進み、設定されていない場合は図6の処理を終了する。つまり、レコード挿入又はレコード更新を行うアクション(例;挿入ボタン又は更新ボタン押下時)によって実行される処理の場合は、INSERT SQL文又はUPDATE SQL文に日付時刻のSQLを付加すべく、ステップS608に進む。 In step S607, the information processing apparatus 101 determines whether "@INSERT" or "@UPDATE" is defined in the action definition of the input / output definition 403 acquired in step S505, and if it is set, goes to step S608. If it is not set, the process of FIG. 6 is terminated. That is, in the case of the process executed by the action of inserting or updating the record (eg, when the insert button or the update button is pressed), step S608 is performed in order to add the date and time SQL to the INSERT SQL statement or the UPDATE SQL statement. move on.

ステップS608において、情報処理装置101は、ステップS603又はステップS604で作成した日付時刻のSQLを処理SQL文に付加する。 In step S608, the information processing apparatus 101 adds the date and time SQL created in step S603 or step S604 to the processing SQL statement.

以上で、図6の説明を終了する。
This is the end of the description of FIG.

図7は、図5・図6の処理により構築されたアプリケーションが日付時刻を更新する処理のフローチャートの一例を示す図である。 FIG. 7 is a diagram showing an example of a flowchart of a process in which the application constructed by the processes of FIGS. 5 and 6 updates the date and time.

ステップS701において、アプリケーションサーバ102は、デプロイしたコンパイル済Java(登録商標)コード413を実行し、生成されたSQL文に“AT TIME ZONE”句が無い且つアプリケーション利用者のHTTPセッションにセッションキー“@TIME_ZONE”として値が設定されているか判定し、Yesの場合はステップS703に進み、Noの場合はステップS702に進む。すなわち、ステップS701は、アプリケーションを利用するユーザのセッションに所定のセッションキーが存在するか否かを判定する処理の一例を示すステップである。 In step S701, the application server 102 executes the deployed compiled Java® code 413, has no "AT TIME ZONE" clause in the generated SQL statement, and has a session key "@" in the application user's HTTP session. It is determined whether or not the value is set as "TIME_ZONE", and if Yes, the process proceeds to step S703, and if No, the process proceeds to step S702. That is, step S701 is a step showing an example of a process of determining whether or not a predetermined session key exists in the session of the user who uses the application.

ステップS702において、アプリケーションサーバ102は、図6の処理により生成されたSQL文を実行する。 In step S702, the application server 102 executes the SQL statement generated by the process of FIG.

具体的には、「INSERT押下前画面1010(図10)」でINSERTボタン1011の押下を受け付けた場合、このINSERTボタン1011(=INSERTアクション)に対応付けられて生成された「INSERT SQL文 1110(図11)」が実行されることによって、「INSERT後 DBレコード1120(図11)」がデータベースに登録され、「INSERT押下後画面1020(図10)」のような画面が表示される。 Specifically, when the press of the INSERT button 1011 is accepted on the "screen before pressing the INSERT 1010 (FIG. 10)", the "INSERT SQL statement 1110 (= INSERT SQL statement 1110" generated in association with the INSERT button 1011 (= INSERT action) By executing "FIG. 11)", "DB record 1120 after INSERT (FIG. 11)" is registered in the database, and a screen such as "Screen after pressing INSERT 1020 (FIG. 10)" is displayed.

同様に、「UPDATE押下前画面1210(図12)」でUPDATEボタン1211の押下を受け付けた場合、このUPDATEボタン1211(=UPDATEアクション)に対応付けられて生成された「UPDATE SQL文 1320(図13)」が実行されることによって、データベースに記憶されている「UPDATE前 DBレコード1310(図13)」が、「UPDATE後 DBレコード1330(図13)」に更新され、UPDATE押下後画面1220(図12)」のような画面が表示される。つまり、データモデル定義画面800の加工式801に“INSERT”を付けた項目コードについては、レコード更新時に日付は記録されない。 Similarly, when the press of the UPDATE button 1211 is accepted on the "UPDATE button before pressing screen 1210 (FIG. 12)", the "UPDATE SQL statement 1320 (FIG. 13) generated in association with the UPDATE button 1211 (= UPDATE action) is generated. ) ”Is executed, the“ pre-UPDATE DB record 1310 (FIG. 13) ”stored in the database is updated to“ post-UPDATE DB record 1330 (FIG. 13) ”, and the screen after pressing UPDATE 1220 (FIG. 13). A screen like "12)" is displayed. That is, for the item code in which "INSERT" is added to the processing formula 801 of the data model definition screen 800, the date is not recorded when the record is updated.

これにより、アプリケーション開発者が定義したデータモデル定義404の加工式801のタイムゾーン文字列に従って、挿入日時又は更新日時を記録することができるようになる。つまり、アプリケーション設計のタイムゾーンに合わせた日時の記録及びその後の日時表示ができるようになる。 As a result, the insertion date and time or the update date and time can be recorded according to the time zone character string of the processing formula 801 of the data model definition 404 defined by the application developer. That is, it becomes possible to record the date and time according to the time zone of the application design and display the date and time after that.

ステップS703において、アプリケーションサーバ102は、図6の処理により生成されたSQL文とセッションキー“@TIME_ZONE”の値とを用いて動的にSQL文を生成し実行する。すなわち、ステップS703は、所定のセッションキーが存在する場合、当該セッションキーに対応する値に応じたタイムゾーンを指定するクエリを用いてデータベースのデータを操作するアプリケーションを構築する処理の一例を示すステップである。また、ステップS703は、所定のセッションキーが存在する場合、当該セッションキーに対応する値に応じたタイムゾーンを指定するクエリを用いてデータベースのデータを操作するアプリケーションを構築する処理の一例を示すステップである。 In step S703, the application server 102 dynamically generates and executes the SQL statement generated by the process of FIG. 6 and the value of the session key “@TIME_ZONE”. That is, step S703 shows an example of a process of constructing an application that manipulates database data by using a query that specifies a time zone corresponding to a value corresponding to the session key when a predetermined session key exists. Is. Further, step S703 is a step showing an example of a process of constructing an application that manipulates database data by using a query that specifies a time zone corresponding to a value corresponding to the session key when a predetermined session key exists. Is.

具体的には、アプリケーション利用者のHTTPセッションに@TIME_ZONE=“America/New_York”と記録されていた場合、図8の加工式801の“タイムゾーン文字列”の指定に関わらず、図6の処理により生成されたSQL文中のタイムゾーン文字列を“America/New_York”に置換して、動的にSQL文を生成し実行する。これにより、アプリケーション開発者が定義したデータモデル定義404の加工式801のタイムゾーン文字列に関わらず、アプリケーション利用者のタイムゾーン文字列に従って、挿入日時又は更新日時を記録することができるようになる。つまり、アプリケーション利用者のタイムゾーンに合わせた日時の記録及びその後の日時表示ができるようになる。 Specifically, when @TIME_ZONE = "America / New_York" is recorded in the HTTP session of the application user, the process of FIG. 6 is performed regardless of the designation of the "time zone character string" of the processing formula 801 of FIG. Replaces the time zone character string in the SQL statement generated by with "America / New_York" to dynamically generate and execute the SQL statement. As a result, regardless of the time zone character string of the processing formula 801 of the data model definition 404 defined by the application developer, the insertion date and time or the update date and time can be recorded according to the time zone character string of the application user. .. That is, it becomes possible to record the date and time according to the time zone of the application user and display the date and time thereafter.

以上で、図7の説明を終了する。
This is the end of the description of FIG.

ここまで、監査用の証跡情報(図8の804〜811)を持つデータモデル定義404を利用したアプリケーションの構築について説明した。このような証跡情報は、データベースの各テーブルに通常持つため、各データモデル定義404にも同様に持つ必要がある。また、上記のように証跡情報にタイムゾーンの指定を含む場合は、データ項目の設定だけでなく、加工式801等の設定も各データモデル定義404に必要となる。 Up to this point, the construction of an application using the data model definition 404 having trail information for auditing (804 to 811 in FIG. 8) has been described. Since such trail information is normally stored in each table of the database, it is necessary to have such trail information in each data model definition 404 as well. Further, when the trail information includes the designation of the time zone as described above, not only the setting of the data item but also the setting of the processing formula 801 and the like is required for each data model definition 404.

そこで、図14〜図16を用いて、監査用の証跡情報を持つ複数テーブルを利用するアプリケーションの構築について説明する。
Therefore, with reference to FIGS. 14 to 16, the construction of an application that uses a plurality of tables having trail information for auditing will be described.

図14は、継承関係を持つデータモデル定義画面1400の一例である。 FIG. 14 is an example of the data model definition screen 1400 having an inheritance relationship.

例えば、継承設定を用いて図8の商品データモデル(COMMODITY_DM)を定義する場合、図8の商品データモデル(COMMODITY_DM)から証跡情報(804〜811)だけをタイムゾーンデータモデル1410(TIMEZONE_DM)として切り出して設定する(1411〜1418)。一方、残った商品データモデル独自のデータ項目(1421及び1422)を商品データモデル1420として設定する。 For example, when the product data model (COMMODITY_DM) of FIG. 8 is defined using the inheritance setting, only the trail information (804 to 811) is cut out as the time zone data model 1410 (TIMEZONE_DM) from the product data model (COMMODITY_DM) of FIG. (1411-1418). On the other hand, the remaining data items (1421 and 1422) unique to the product data model are set as the product data model 1420.

図14の1423はデータモデルの継承設定であり、ここでは、商品データモデル1420(子データモデル)がタイムゾーンデータモデル1410(親データモデル)を継承するという意味を表す。つまり、商品データモデル1420は、タイムゾーンデータモデル1410のデータ項目(1411〜1418)を持つという設定である。すなわち、1423は、第1データモデルの定義を第2データモデルが継承する設定を受け付ける手段の一例である。これにより、タイムゾーンデータモデル1410を親、商品データモデル1420を子とする、データモデルの継承設定ができる。 1423 in FIG. 14 is a data model inheritance setting, which means that the product data model 1420 (child data model) inherits the time zone data model 1410 (parent data model). That is, the product data model 1420 is set to have the data items (141 to 1418) of the time zone data model 1410. That is, 1423 is an example of a means for accepting a setting in which the second data model inherits the definition of the first data model. As a result, the inheritance setting of the data model can be set with the time zone data model 1410 as the parent and the product data model 1420 as the child.

また、商品データモデル独自のデータ項目(1421及び1422)及び継承設定1423は変更可能に表示する。すなわち、図14の1421〜1423は、データモデルの定義の編集を受け付ける手段の一例である。 In addition, the data items (1421 and 1422) unique to the product data model and the inheritance setting 1423 are displayed so as to be changeable. That is, FIGS. 1421-1423 in FIG. 14 are examples of means for accepting editing of the definition of the data model.

なお、本実施形態においては、子データモデル定義画面において親データモデルを指定するとしたが、この方法に限定するものではなく、その他の親データモデルの指定方法、親データモデル定義画面において子データモデルを指定する方法、又は、親子(継承)関係を定義する画面において親データモデル及び子データモデルの両者を指定する方法等であってもよい。
In this embodiment, the parent data model is specified on the child data model definition screen, but the method is not limited to this method, and other methods for specifying the parent data model and the child data model on the parent data model definition screen. Or a method of specifying both the parent data model and the child data model on the screen for defining the parent-child (inheritance) relationship may be used.

図15は、継承関係を持つデータモデル定義画面1500の一例である。図14と異なる設定方法であるが、継承の設定内容は同じである。 FIG. 15 is an example of the data model definition screen 1500 having an inheritance relationship. Although the setting method is different from that in FIG. 14, the inheritance setting content is the same.

タイムゾーンデータモデル1410の設定画面は、図14と同じである。 The setting screen of the time zone data model 1410 is the same as that in FIG.

一方、商品データモデル1520の設定画面では、継承元となる親データモデルとしてタイムゾーンデータモデル1410の選択を受け付けた(図15の1541)場合、商品データモデル独自のデータ項目(1521及び1522)は変更可能に表示し、継承したタイムゾーンデータモデル1410のデータ項目は変更不可能に表示する(1523〜1530)。ここでは、変更不可能なデータ項目を網掛け1540で表示し、変更不可能であることを識別して表示している。 On the other hand, on the setting screen of the product data model 1520, when the selection of the time zone data model 1410 is accepted as the parent data model to be inherited (1541 in FIG. 15), the data items (1521 and 1522) unique to the product data model are displayed. It is displayed as mutable, and the data items of the inherited time zone data model 1410 are displayed as immutable (1523-1530). Here, the data items that cannot be changed are displayed by shading 1540, and the data items that cannot be changed are identified and displayed.

すなわち、図15の1521及び1522は、データモデルの定義の編集を受け付ける手段の一例である。また、図15の1540は、第2データモデルの定義の編集を受け付ける画面に表示された第1データモデルの定義の編集を抑止するよう制御する手段の一例である。また、図15の1540は、第2データモデルの定義の編集を受け付ける画面に第1データモデルの定義を識別して表示する手段の一例である。また、図15の1541は、第1データモデルの定義を第2データモデルが継承する設定を受け付ける手段の一例である。 That is, 1521 and 1522 in FIG. 15 are examples of means for accepting editing of the definition of the data model. Further, 1540 of FIG. 15 is an example of means for controlling so as to suppress editing of the definition of the first data model displayed on the screen for accepting editing of the definition of the second data model. Further, 1540 of FIG. 15 is an example of means for identifying and displaying the definition of the first data model on a screen that accepts editing of the definition of the second data model. Further, 1541 in FIG. 15 is an example of a means for accepting a setting in which the second data model inherits the definition of the first data model.

なお、本実施形態においては、変更不可能なデータ項目を網掛け1540で識別して表示するとしたが、この方法に限定するものではなく、グレー文字等の異なるフォントで表示したり、1540のように枠で囲んだり、変更可能なデータ項目と識別できる方法であれば他の方法であってもよい。 In the present embodiment, data items that cannot be changed are identified and displayed by shading 1540, but the method is not limited to this method, and data items that cannot be changed are displayed in different fonts such as gray characters, or like 1540. Any method may be used as long as it can be surrounded by a frame or identified as a changeable data item.

これにより、1523〜1530はデータモデルの継承であり、商品データモデル1420(子データモデル)がタイムゾーンデータモデル1410(親データモデル)を継承していることがわかる。
From this, it can be seen that 1523-1530 are inheritance of the data model, and the product data model 1420 (child data model) inherits the time zone data model 1410 (parent data model).

図16は、データモデル定義画面1400又は1500にて設定した、継承関係を持つタイムゾーンデータモデル(親データモデル)及び商品データモデル(子データモデル)のデータモデル定義XMLの一例を示す図である。 FIG. 16 is a diagram showing an example of a data model definition XML of a time zone data model (parent data model) and a product data model (child data model) having an inheritance relationship set on the data model definition screen 1400 or 1500. ..

親データモデル定義XML1610の記述は、図9の記述方法と同じだが、子データモデル定義XML1620の記述には、<parent−dm><dm−code>TIMEZONE_DM</dm−code></parent−dm>のように親データモデルを指定する記述を持つ。 The description of the parent data model definition XML1610 is the same as the description method of FIG. 9, but the description of the child data model definition XML1620 includes <partent-dm> <dm-code> TIMEZONE_DM </ dm-code> </ parent-dm. Has a description that specifies the parent data model as in>.

なお、本実施形態においては、子データモデル定義XML1620に<parent−dm>タグのような親データモデルを指定する記述を持つとしたが、この記述方法に限定するものではなく、その他のタグを用いる方法、親データモデル定義XML1610に子データモデルを指定する記述を持つ方法、又は、テーブルやファイル等に親子(継承)関係を記憶する方法等であってもよい。
In this embodiment, the child data model definition XML1620 has a description that specifies a parent data model such as a <parent-dm> tag, but the description method is not limited to this, and other tags may be used. It may be a method to be used, a method having a description specifying a child data model in the parent data model definition XML1610, a method of storing a parent-child (inheritance) relationship in a table, a file, or the like.

図16のようなデータモデル定義XMLにした場合、ステップS509にてSQL文を生成する際に、ステップS504にて取得したデータモデル定義404の継承関係に基づき、親データモデル定義のデータ項目を用いて、子データモデル定義を利用するSQL文を生成し、アプリケーションを構築する。すなわち、図14〜図16を用いたステップS508〜510は、第2データモデルを用いてデータの操作を行う場合には第1データモデルの定義に基づく定義を用いてデータの操作を行うアプリケーションを構築する処理の一例を示すステップである。 When the data model definition XML as shown in FIG. 16 is used, when the SQL statement is generated in step S509, the data items of the parent data model definition are used based on the inheritance relationship of the data model definition 404 acquired in step S504. Then, generate an SQL statement that uses the child data model definition and build an application. That is, in steps S508 to 510 using FIGS. 14 to 16, when the data is manipulated using the second data model, the application that manipulates the data using the definition based on the definition of the first data model is used. This is a step showing an example of the process to be constructed.

具体的には、ステップS601及びステップS602においてデータモデル定義404の加工式801を取得したり、ステップS603及びステップS604においてデータモデル定義404を用いたSQLを作成したりする際に、そのデータモデル定義404に親データモデル定義の設定が存在する場合は、親データモデル定義に設定されている加工式やデータ項目を参照してSQLを作成する。 Specifically, when the processing formula 801 of the data model definition 404 is acquired in step S601 and step S602, or when the SQL using the data model definition 404 is created in step S603 and step S604, the data model definition is defined. If the parent data model definition is set in 404, the SQL is created by referring to the processing formula and data items set in the parent data model definition.

また、アプリケーション構築ツールが、データモデル定義404に基づき、Java(登録商標)などのオブジェクト指向言語でアプリケーションプログラムを生成する場合(図5のステップS508)、親データモデル定義のプログラムを継承するようにして子データモデル定義のプログラムを生成してもよい。すなわち、ステップS508は、第2データモデルの定義の情報は、第1データモデルの定義の情報を継承することを示す情報を持たせる処理の一例を示すステップである。これにより、継承関係を持つデータモデル定義を、継承関係を維持したままプログラム化することができるため、プログラムの生成方法や管理方法が容易になる。
Further, when the application construction tool generates an application program in an object-oriented language such as Java (registered trademark) based on the data model definition 404 (step S508 in FIG. 5), the program of the parent data model definition is inherited. A program for defining a child data model may be generated. That is, step S508 is a step showing an example of a process of providing information indicating that the information of the definition of the second data model inherits the information of the definition of the first data model. As a result, the data model definition having an inheritance relationship can be programmed while maintaining the inheritance relationship, so that the program generation method and management method become easy.

以上により、証跡情報のような同じ項目を複数のデータモデル定義として設定する必要がなくなるため、同じ証跡情報項目を持つデータモデルをテーブルの数分設定し、それらのデータモデルを介して証跡情報の登録及び更新をしなければならないという問題を解決でき、データモデル定義を利用するアプリケーションを容易に構築することができるようになる。 As described above, it is not necessary to set the same item such as trail information as a plurality of data model definitions. Therefore, data models having the same trail information item are set for the number of tables, and the trail information is input through those data models. The problem of having to register and update can be solved, and an application that uses the data model definition can be easily built.

また、証跡情報のような同じ項目を複数のデータモデル定義として設定する必要がなくなるため、データモデルを定義する設定量も減り、アプリケーションの開発効率を上げることができる。 In addition, since it is not necessary to set the same item such as trail information as a plurality of data model definitions, the amount of settings for defining the data model can be reduced and the application development efficiency can be improved.

また、親データモデルに仕様変更が発生した場合であっても、親データモデルの定義のみを変更すればよいため、子データモデルに影響が及ばず、アプリケーションの開発効率を上げることができる。すなわち、図14〜図16を用いたステップS508〜510は、第1データモデルの定義の編集を受け付けた後に第2データモデルを用いてデータの操作を行う場合には編集に従って変更した第1データモデルの定義に基づく定義を用いてデータの操作を行うアプリケーションを構築する処理の一例を示すステップである。 Further, even if the specifications of the parent data model are changed, only the definition of the parent data model needs to be changed, so that the child data model is not affected and the application development efficiency can be improved. That is, in steps S508 to 510 using FIGS. 14 to 16, when the data is manipulated using the second data model after receiving the editing of the definition of the first data model, the first data changed according to the editing. This is a step showing an example of a process for constructing an application that manipulates data using a definition based on a model definition.

なお、本実施形態においては、データモデル間で継承する項目として証跡情報を例に挙げたが、証跡情報に限定するものではなく、例えば、「SEQ_NO」のようなデータ登録の通し番号項目、「DATA_STATUS」のようなデータ状態を表す項目、「DELETE_FLAG」のような論理削除を示すフラグ等、証跡情報以外の項目であってもよい。 In this embodiment, trail information is given as an example as an item to be inherited between data models, but the information is not limited to trail information. For example, a serial number item for data registration such as "SEQ_NO", "DATA_STATUS". It may be an item other than trail information, such as an item indicating a data state such as "DELETE_FLAG" and a flag indicating a logical deletion such as "DELETE_FLAG".

また、本実施形態においては、親データモデルのデータ項目をすべて子データモデルに継承するとしたが、この継承方法に限定するものではなく、例えば、親データモデルのデータ項目のうち、選択されたデータ項目のみを継承するような継承方法であってもよい。 Further, in the present embodiment, all the data items of the parent data model are inherited to the child data model, but the inheritance method is not limited to this. For example, selected data among the data items of the parent data model. It may be an inheritance method that inherits only items.

また、本実施形態においては、継承関係を親データモデル:子データモデル=1:多としたが、この関係に限定するものではなく、例えば、複数の親データモデルのデータ項目を継承するような親データモデル:子データモデル=多:多であってもよい。 Further, in the present embodiment, the inheritance relationship is set to parent data model: child data model = 1: many, but the inheritance relationship is not limited to this relationship, and for example, data items of a plurality of parent data models are inherited. Parent data model: Child data model = Many: Many may be used.

なお、データモデル定義画面1400又は1500にて継承関係を持つと設定した場合であっても、図16のような継承関係を記憶するデータモデル定義XMLではなく、図9のように継承関係を持たないデータモデル定義XMLとして記憶するとしてもよい。その場合は、ステップS601及びステップS602においてデータモデル定義404の加工式801を取得したり、ステップS603及びステップS604においてデータモデル定義404を用いたSQLを作成したりする際に、データモデルの継承関係を意識する必要はない。 Even if it is set to have an inheritance relationship on the data model definition screen 1400 or 1500, it has an inheritance relationship as shown in FIG. 9 instead of the data model definition XML that stores the inheritance relationship as shown in FIG. It may be stored as no data model definition XML. In that case, the inheritance relationship of the data model is obtained when the processing formula 801 of the data model definition 404 is acquired in step S601 and step S602, or when the SQL using the data model definition 404 is created in step S603 and step S604. There is no need to be aware of.

すなわち、図14、図15及び図9を用いたステップS508は、第1データモデルの定義に基づき、第2データモデルの定義を生成する処理の一例を示すステップである。また、図14、図15及び図9を用いたステップS508〜510は、第2データモデルの定義を用いてデータの操作を行うアプリケーションを構築する処理の一例を示すステップである。 That is, step S508 using FIGS. 14, 15 and 9 is a step showing an example of a process of generating the definition of the second data model based on the definition of the first data model. Further, steps S508 to 510 using FIGS. 14, 15 and 9 are steps showing an example of a process of constructing an application for manipulating data using the definition of the second data model.

ただし、図9のようなデータモデル定義XMLの場合、子データモデルの定義において、<dm−code>TIMEZONE_DM</dm−code>のように記述し、どの親データモデルから継承したデータ項目かわかるようにしておき、親データモデルに仕様変更が発生し、親データモデルの定義を変更した場合は、子データモデルにもその変更を反映する。 However, in the case of the data model definition XML as shown in FIG. 9, in the definition of the child data model, it is described as <dm-code> TIMEZONE_DM </ dm-code>, and the data item inherited from which parent data model can be known. If a specification change occurs in the parent data model and the definition of the parent data model is changed, the change will be reflected in the child data model as well.

すなわち、図14、図15及び図9を用いたステップS508は、編集に従って変更した第1データモデルの定義に基づき、設定を受け付けた第2データモデルの定義を生成する処理の一例を示すステップである。 That is, step S508 using FIGS. 14, 15 and 9 is a step showing an example of a process of generating the definition of the second data model that has received the setting based on the definition of the first data model changed according to editing. is there.

なお、本実施形態においては、親データモデルから継承した網掛け1540部分は変更不可能なデータ項目としたが、この方法に限定するものではなく、子データモデルを生成する際にのみ親データモデルのデータ項目を参照しコピーし、子データモデル生成後はコピーしたデータ項目を変更できるとしてもよい。この場合は、図9のように継承関係を持たないデータモデル定義XMLとして記憶した方が管理し易いため好ましい。
In the present embodiment, the shaded 1540 part inherited from the parent data model is an immutable data item, but the method is not limited to this method, and the parent data model is generated only when the child data model is generated. It may be possible to refer to and copy the data item of, and change the copied data item after the child data model is generated. In this case, it is preferable to store the data as a data model definition XML having no inheritance relationship as shown in FIG. 9 because it is easier to manage.

以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(又はCPUやMPU)が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。 As described above, a recording medium on which a program for realizing the functions of the above-described embodiment is recorded is supplied to the system or device, and the computer (or CPU or MPU) of the system or device stores the program in the recording medium. Needless to say, the object of the present invention can be achieved by reading and executing.

この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。 In this case, the program itself read from the recording medium realizes the novel function of the present invention, and the recording medium on which the program is recorded constitutes the present invention.

プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク等を用いることが出来る。 Recording media for supplying programs include, for example, flexible disks, hard disks, optical disks, magneto-optical disks, CD-ROMs, CD-Rs, DVD-ROMs, magnetic tapes, non-volatile memory cards, ROMs, EEPROMs, and silicon. A disk or the like can be used.

また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Further, by executing the program read by the computer, not only the function of the above-described embodiment is realized, but also the OS (operating system) or the like running on the computer is actually operated based on the instruction of the program. Needless to say, there is a case where a part or all of the processing is performed and the function of the above-described embodiment is realized by the processing.

さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Further, the program read from the recording medium is written to the memory provided in the function expansion board inserted in the computer or the function expansion unit connected to the computer, and then the function expansion board is based on the instruction of the program code. It goes without saying that there is a case where the CPU or the like provided in the function expansion unit performs a part or all of the actual processing, and the function of the above-described embodiment is realized by the processing.

また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。 Further, the present invention may be applied to a system composed of a plurality of devices or a device composed of one device. It goes without saying that the present invention can also be applied when it is achieved by supplying a program to a system or device. In this case, by reading the recording medium in which the program for achieving the present invention is stored into the system or device, the system or device can enjoy the effect of the present invention.

上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、OS(オペレーティングシステム)に供給されるスクリプトデータ等の形態から成ってもよい。 The form of the program may consist of object code, program code executed by an interpreter, script data supplied to an OS (operating system), and the like.

さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
Further, by downloading and reading a program for achieving the present invention from a server, database, or the like on the network by a communication program, the system or device can enjoy the effect of the present invention. It should be noted that all the configurations in which the above-described embodiments and modifications thereof are combined are also included in the present invention.

101 情報処理装置
102 プログラム生成サーバ
103 データベースサーバ
104 アプリケーションクライアント
105 アプリケーションサーバ
106 ネットワーク
101 Information processing device 102 Program generation server 103 Database server 104 Application client 105 Application server 106 Network

Claims (11)

データベースのデータの操作に用いるデータモデルの定義を記憶するデータモデル記憶手段を備え、前記データベースに接続するアプリケーションを構築する情報処理装置であって、
前記構築するアプリケーションで用いる第2データモデルの定義に任意の定義の設定を受け付ける定義受付手段と、
前記定義受付手段により受け付けた定義と組み合わせる、前記データモデル記憶手段に記憶されている第1データモデルの定義を、前記アプリケーションで用いる第2データモデルの定義の一部として設定を受け付ける設定受付手段と、
前記定義受付手段により設定を受け付けた定義と前記設定受付手段により設定を受け付けた前記第1データモデルの定義を用いて第2データモデルに対応するアプリケーションを構築するアプリケーション構築手段と
を備えることを特徴とする情報処理装置。
An information processing device that has a data model storage means for storing data model definitions used for manipulating data in a database and constructs an application that connects to the database.
A definition receiving means that accepts the setting of an arbitrary definition in the definition of the second data model used in the application to be constructed.
A setting receiving means that accepts a setting of the definition of the first data model stored in the data model storage means as a part of the definition of the second data model used in the application, which is combined with the definition received by the definition receiving means. ,
It is characterized by including an application construction means for constructing an application corresponding to the second data model by using the definition for which the setting is accepted by the definition receiving means and the definition of the first data model for which the setting is accepted by the setting receiving means. Information processing device.
前記アプリケーション構築手段は、
前記設定受付手段により設定を受け付けた第2データモデルの前記データの操作を行う場合には前記設定受付手段により設定を受け付けた第1データモデルの定義に基づく定義を用いて前記データの操作を行うアプリケーションを構築すること
を特徴とする請求項1に記載の情報処理装置。
The application construction means
When the data of the second data model whose setting is accepted by the setting receiving means is operated, the data is operated by using the definition based on the definition of the first data model whose setting is accepted by the setting receiving means. The information processing apparatus according to claim 1, wherein an application is constructed.
前記データモデルの定義の編集を受け付けるデータモデル編集受付手段を更に備え、
前記データモデル編集受付手段は、
前記第2データモデルの定義の編集を受け付ける画面に表示された前記第1データモデルの定義の編集を抑止するよう制御すること
を特徴とする請求項1又は2に記載の情報処理装置。
Further provided with a data model editing receiving means for accepting editing of the data model definition,
The data model editing receiving means is
The information processing apparatus according to claim 1 or 2, wherein the information processing apparatus is controlled so as to suppress the editing of the definition of the first data model displayed on the screen for accepting the editing of the definition of the second data model.
データベースのデータの操作に用いるデータモデルの定義記憶するデータモデル記憶手段を備え、前記データベースに接続するアプリケーションを構築する情報処理装置であって、
前記構築するアプリケーションで用いる第2データモデルの定義に任意の定義の設定を受け付ける定義受付手段と、
前記定義受付手段により受け付けた定義と組み合わせる、前記データモデル記憶手段に記憶されている第1データモデルの定義を、前記アプリケーションで用いる第2データモデルの定義の一部として設定を受け付ける設定受付手段と、
前記第1データモデルの定義に基づき、前記第2データモデルの定義を生成するデータモデル生成手段と、
前記データモデル生成手段により生成された第2データモデルの定義を用いてプリケーションを構築するアプリケーション構築手段と
を備えることを特徴とする情報処理装置。
A data model storage means for storing definitions of data model used in the operation of the database data, an information processing apparatus for building applications that connect to the database,
A definition receiving means that accepts the setting of an arbitrary definition in the definition of the second data model used in the application to be constructed.
A setting receiving means that accepts a setting of the definition of the first data model stored in the data model storage means as a part of the definition of the second data model used in the application, which is combined with the definition received by the definition receiving means. ,
A data model generating means for generating the definition of the second data model based on the definition of the first data model, and
The information processing apparatus characterized in that it comprises an application constructing means for constructing an application using the definition of the second data model generated by the data model generating unit.
前記データモデルの定義の編集を受け付けるデータモデル編集受付手段を更に備え、
前記データモデル生成手段は、
前記データモデル編集受付手段により受け付けた編集に従って変更した第1データモデルの定義に基づき、前記設定受付手段により設定を受け付けた第2データモデルの定義を生成すること
を特徴とする請求項4に記載の情報処理装置。
Further provided with a data model editing receiving means for accepting editing of the data model definition,
The data model generation means
The fourth aspect of claim 4, wherein the definition of the second data model whose setting is accepted by the setting receiving means is generated based on the definition of the first data model changed according to the editing received by the data model editing receiving means. Information processing equipment.
前記データモデル編集受付手段は、
前記第2データモデルの定義の編集を受け付ける画面に前記第1データモデルの定義を識別して表示すること
を特徴とする請求項5に記載の情報処理装置。
The data model editing receiving means is
The information processing apparatus according to claim 5, wherein the definition of the first data model is identified and displayed on a screen that accepts editing of the definition of the second data model.
データベースのデータの操作に用いるデータモデルの定義は、前記アプリケーションの実行時にデータの操作に用いるクエリを動的に生成するための条件を含む定義であって、
前記アプリケーション構築手段は、前記第2データモデルの定義を用いて前記データの操作を行うクエリを動的に生成するアプリケーションを構築することを特徴とする請求項1乃至6に記載の情報処理装置。
The definition of the data model used for manipulating the data in the database is a definition including the conditions for dynamically generating the query used for manipulating the data when the application is executed.
The information processing apparatus according to claim 1 to 6, wherein the application construction means constructs an application that dynamically generates a query for manipulating the data using the definition of the second data model.
データベースのデータの操作に用いるデータモデルの定義を記憶するデータモデル記憶手段を備え、前記データベースに接続するアプリケーションを構築する情報処理装置における処理方法であって、
前記情報処理装置が、
前記構築するアプリケーションで用いる第2データモデルの定義に任意の定義の設定を受け付ける定義受付ステップと、
前記定義受付ステップにより受け付けた定義と組み合わせる、前記データモデル記憶手段に記憶されている第1データモデルの定義を、前記アプリケーションで用いる第2データモデルの定義の一部として設定を受け付ける設定受付ステップと、
前記定義受付ステップにより設定を受け付けた定義と前記設定受付ステップにより設定を受け付けた前記第1データモデルの定義を用いて第2データモデルに対応するアプリケーションを構築するアプリケーション構築ステップ
を実行することを特徴とする処理方法。
It is a processing method in an information processing apparatus that includes a data model storage means for storing a data model definition used for manipulating data in a database and constructs an application connected to the database.
The information processing device
A definition acceptance step that accepts the setting of an arbitrary definition in the definition of the second data model used in the application to be constructed, and
With the setting reception step that accepts the setting of the definition of the first data model stored in the data model storage means as a part of the definition of the second data model used in the application, which is combined with the definition received by the definition reception step. ,
It is characterized by executing an application construction step of constructing an application corresponding to the second data model by using the definition whose setting is accepted by the definition acceptance step and the definition of the first data model whose setting is accepted by the setting acceptance step. Processing method.
データベースのデータの操作に用いるデータモデルの定義を記憶するデータモデル記憶手段を備え、前記データベースに接続するアプリケーションを構築する情報処理装置における処理方法であって、
前記情報処理装置が、
前記構築するアプリケーションで用いる第2データモデルの定義に任意の定義の設定を受け付ける定義受付ステップと、
前記定義受付ステップにより受け付けた定義と組み合わせる、前記データモデル記憶手段に記憶されている第1データモデルの定義を、前記アプリケーションで用いる第2データモデルの定義の一部として設定を受け付ける設定受付ステップと、
前記第1データモデルの定義に基づき、前記第2データモデルの定義を生成するデータモデル生成ステップと、
前記データモデル生成ステップにより生成された第2データモデルの定義を用いてプリケーションを構築するアプリケーション構築ステップ
を実行することを特徴とする処理方法。
It is a processing method in an information processing apparatus that includes a data model storage means for storing a data model definition used for manipulating data in a database and constructs an application connected to the database.
The information processing device
A definition acceptance step that accepts the setting of an arbitrary definition in the definition of the second data model used in the application to be constructed, and
With the setting reception step that accepts the setting of the definition of the first data model stored in the data model storage means as a part of the definition of the second data model used in the application, which is combined with the definition received by the definition reception step. ,
A data model generation step that generates the definition of the second data model based on the definition of the first data model, and
Processing method characterized by executing an application construction step for constructing an application using the definition of the second data model generated by the data model generating step.
データベースのデータの操作に用いるデータモデルの定義を記憶するデータモデル記憶手段を備え、前記データベースに接続するアプリケーションを構築する情報処理装置で実行可能なプログラムであって、
前記情報処理装置を、
前記構築するアプリケーションで用いる第2データモデルの定義に任意の定義の設定を受け付ける定義受付手段と
前記定義受付手段により受け付けた定義と組み合わせる、前記データモデル記憶手段に記憶されている第1データモデルの定義を、前記アプリケーションで用いる第2データモデルの定義の一部として設定を受け付ける設定受付手段と、
前記定義受付手段により設定を受け付けた定義と前記設定受付手段により設定を受け付けた前記第1データモデルの定義を用いて第2データモデルに対応するアプリケーションを構築するアプリケーション構築手段
として機能させるためのプログラム。
A program that is equipped with a data model storage means for storing the definition of a data model used for manipulating data in a database and can be executed by an information processing device that constructs an application connected to the database.
The information processing device
A definition receiving means that accepts the setting of an arbitrary definition in the definition of the second data model used in the application to be constructed, and a first data model stored in the data model storage means that is combined with the definition received by the definition receiving means. A setting receiving means that accepts the definition as a part of the definition of the second data model used in the application, and
A program for functioning as an application construction means for constructing an application corresponding to the second data model by using the definition for which the setting is accepted by the definition receiving means and the definition of the first data model for which the setting is accepted by the setting receiving means. ..
データベースのデータの操作に用いるデータモデルの定義を記憶するデータモデル記憶手段を備え、前記データベースに接続するアプリケーションを構築する情報処理装置で実行可能なプログラムであって、
前記情報処理装置を、
前記構築するアプリケーションで用いる第2データモデルの定義に任意の定義の設定を受け付ける定義受付手段と、
前記定義受付手段により受け付けた定義と組み合わせる、前記データモデル記憶手段に記憶されている第1データモデルの定義を、前記アプリケーションで用いる第2データモデルの定義の一部として設定を受け付ける設定受付手段と、
前記第1データモデルの定義に基づき、前記第2データモデルの定義を生成するデータモデル生成手段と、
前記データモデル生成手段により生成された第2データモデルの定義を用いてプリケーションを構築するアプリケーション構築手段として機能させるためのプログラム。
A program that is equipped with a data model storage means for storing the definition of a data model used for manipulating data in a database and can be executed by an information processing device that constructs an application connected to the database.
The information processing device
A definition receiving means that accepts the setting of an arbitrary definition in the definition of the second data model used in the application to be constructed.
A setting receiving means that accepts a setting of the definition of the first data model stored in the data model storage means as a part of the definition of the second data model used in the application, which is combined with the definition received by the definition receiving means. ,
A data model generating means for generating the definition of the second data model based on the definition of the first data model, and
Program for functioning as an application constructing means for constructing an application using the definition of the second data model generated by the data model generating unit.
JP2017254613A 2017-12-28 2017-12-28 Information processing device and its processing method and program Active JP6836077B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017254613A JP6836077B2 (en) 2017-12-28 2017-12-28 Information processing device and its processing method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017254613A JP6836077B2 (en) 2017-12-28 2017-12-28 Information processing device and its processing method and program

Publications (2)

Publication Number Publication Date
JP2019121087A JP2019121087A (en) 2019-07-22
JP6836077B2 true JP6836077B2 (en) 2021-02-24

Family

ID=67306452

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017254613A Active JP6836077B2 (en) 2017-12-28 2017-12-28 Information processing device and its processing method and program

Country Status (1)

Country Link
JP (1) JP6836077B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102482526B1 (en) * 2021-01-21 2022-12-28 엘에스일렉트릭(주) Method for Providing of User Interface for Designing of Data Model

Also Published As

Publication number Publication date
JP2019121087A (en) 2019-07-22

Similar Documents

Publication Publication Date Title
WO2014028324A2 (en) Enterprise application development tool
US20150278190A1 (en) Web server system, dictionary system, dictionary call method, screen control display method, and demonstration application generation method
JP6002302B2 (en) Web application generation system, Web application generation system control method, Web application generation system program, Web application generation device, Web application generation device control method, and Web application generation device program
JP6836077B2 (en) Information processing device and its processing method and program
US20180144038A1 (en) Propagating Computable Dependencies within Synchronized Content Items Between First and Third-Party Applications
JP7014960B2 (en) Information processing equipment, servers, their processing methods and programs
JP6795767B2 (en) Information processing device and its processing method and program
JP2020004423A (en) Server, information processing device, processing method and program
JP2012133567A (en) Information processor, control method thereof, and program
CN106227713A (en) The processing method and processing device of document
CN112256257A (en) Interface construction method, readable storage medium and electronic device
JP7053983B2 (en) Information processing equipment and its processing method and program
JP2008191993A (en) Gui component display device and gui component display method
JP7315817B2 (en) Information processing device, its control method, and program
JP7048912B2 (en) Information processing equipment and its processing method and program
JP7210093B2 (en) Information processing device, its processing method and program
JP7421137B2 (en) Information processing device, information processing method and program
JP7231823B2 (en) Program, information processing system and its control method
JP6705993B2 (en) Information processing apparatus, information processing apparatus control method, and program
JP7381900B2 (en) Information processing system, its control method and program
JP2022178985A (en) Information processing device, control method, and program
JP6700559B2 (en) Information processing apparatus, processing method thereof, and program
JP7227468B2 (en) Program, information processing system and its control method device and program processing method
JP6756967B2 (en) Information processing device and its processing method and program
JP2021170199A (en) Information processing device, information processing system, control method thereof, and program

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20180703

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20181031

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181221

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191024

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200623

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200818

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: 20210105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210118

R151 Written notification of patent or utility model registration

Ref document number: 6836077

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250