(57)【要約】【課題】業務処理を行う業務処理用プログラムを容易に作成する情報処理装置及びプログラムを提供する。【解決手段】情報処理装置１は、業務スケルトンテンプレート１２２、項目テンプレート１２３、印刷テンプレート１２４、ＤＢ処理テンプレート１２５及び業務処理テンプレート１２６を元に業務処理を行う実行定義を作成し、その作成した実行定義に対し、編集画面を表示装置１３に表示し、入力装置１４からの操作入力を受け付けることで作成した実行定義のユーザ定義部分の編集を行い（ステップＳ１）、項目テンプレート１２３の処理挿入定義に基づいた挿入処理を行って（ステップＳ２、Ｓ３）、実行定義を作成する。【選択図】図２
2007034805.tif 000002
【特許請求の範囲】
【請求項１】
定義された業務プログラム部品に基づいて業務処理を行う情報処理装置において、
前記業務プログラム部品の雛形であり、業務処理の内容を定義する業務スケルトン情報と、業務処理における項目毎の処理内容を定義する項目テンプレート情報とを記憶する記憶手段と、
前記記憶手段に記憶された業務スケルトン情報と項目テンプレート情報とを集約して業務プログラム部品を定義する業務プログラム部品定義手段と、
を備えたことを特徴とする情報処理装置。
【請求項２】
前記記憶手段が記憶する項目テンプレート情報における項目毎の処理内容は、前記業務スケルトン情報における業務処理の内容に対応するものであり、
前記業務プログラム部品定義手段は、前記対応する項目毎の処理内容を前記業務スケルトン情報の業務処理の内容に集約することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記業務スケルトン情報及び／又は前記項目テンプレート情報における処理内容の変更を定義するユーザ定義手段を更に備えたことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記項目テンプレート情報は、前記業務スケルトン情報の業務処理の内容を変更する情報を含み、
前記業務プログラム部品定義手段は、前記変更する情報に基づいて前記業務スケルトン情報の業務処理の内容を変更することを特徴とする請求項１〜３のいずれか一項に記載の情報処理装置。
【請求項５】
前記業務スケルトン情報の業務処理の内容は、機能ごとに分類され、業務処理における業務情報の入力、更新、印刷、照会のいずれかであり、
前記業務プログラム部品定義手段は、前記いずれかの業務スケルトン情報と前記項目テンプレート情報とを集約して業務プログラム部品を定義することを特徴とする請求項１〜４のいずれか一項に記載の情報処理装置。
【請求項６】
定義された業務プログラム部品に基づいて業務処理を行う情報処理装置のコンピュータに、
予め記憶された業務処理の内容を定義する業務スケルトン情報と、予め記憶された業務処理における項目毎の処理内容を定義する項目テンプレート情報とを集約して業務プログラム部品を定義する機能を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、定義された業務プログラム部品に基づいて業務処理を行う情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
コンピュータプログラムの作成に際してプログラムの高い生産性と高い信頼性を確保するために、プログラムを部品化し再利用する開発手法が知られている。例えば、プログラムの全体構成を３層の「フレームワーク」でモデル化して組み立てる方法がある。
【０００３】
この「フレームワーク」は、ある特定の業務分野のデータ処理をモデル化し、アプリケーションプログラムを支配して調整する上位層、実際に顧客管理、伝票管理又は請求書処理等のビジネスロジックを展開する中間層及びその分野に共通な詳細仕様を実現する下位層の３つの層から構成される。このうち、上位層と下位層とを共通部品としてライブラリ化しておき、新たなアプリケーションを作成する場合は、中間層のモジュールを作成するという手法である。
【０００４】
例えば、３層のシステム構成を採用した技術としては特許文献１がある。ここでは、予め業務処理要素と制御対象要素のインターフェースを規定しておき、規定にあった業務処理部品プログラムと制御対象部品プログラムとを作成し、これら部品が差し込まれる空き部分を有するインターフェースフレームワークを用意しておいて、そのフレームワーク内に各部品の制御処理を一括して行う制御処理プログラムを自動生成するとしている。
【特許文献１】特開２００２−３４２０８１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述した特許文献１に開示された３層のシステム構成は、分散処理型、単一処理型、監視型などのコンピュータ処理の形態によって制御処理が分類されており、業種や業態によって処理形態が異なる取引管理や約定入力などの様々な業務の処理内容は、それぞれ業務にあった業務処理部品プログラムを作成することになる。すなわち、規定されたインターフェースにあわせて業務処理部品プログラムを個別に設計するようになる。
【０００６】
しかし、世の中の各企業においては様々な業務処理があり、例えば伝票一つを取ってみても多くの種類の伝票があり、伝票の種類に合わせて、特許文献１の業務処理部品プログラムに相当する伝票入力処理プログラムを作成する必要があるが、それぞれの伝票入力処理プログラムは個別に設計する必要があるので業務処理用のプログラムの生産性が良くないという問題があった。
【０００７】
本発明は、このような課題に鑑みてなされたものであり、その目的とするところは、業務処理を行う業務処理用プログラムを容易に作成する情報処理装置及びプログラムを提供することである。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、請求項１記載の発明は定義された業務プログラム部品に基づいて業務処理を行う情報処理装置において、前記業務プログラム部品の雛形であり、業務処理の内容を定義する業務スケルトン情報と、業務処理における項目毎の処理内容を定義する項目テンプレート情報とを記憶する記憶手段と、前記記憶手段に記憶された業務スケルトン情報と項目テンプレート情報とを集約して業務プログラム部品を定義する業務プログラム部品定義手段と、を備えたことを特徴とする。
【０００９】
請求項２に記載の発明は、請求項１に記載の発明において、前記記憶手段が記憶する項目テンプレート情報における項目毎の処理内容は、前記業務スケルトン情報における業務処理の内容に対応するものであり、前記業務プログラム部品定義手段は、前記対応する項目毎の処理内容を前記業務スケルトン情報の業務処理の内容に集約することを特徴とする。
【００１０】
請求項３に記載の発明は、請求項１又は２に記載の発明において、前記業務スケルトン情報及び／又は前記項目テンプレート情報における処理内容の変更を定義するユーザ定義手段を更に備えたことを特徴とする。
【００１１】
請求項４に記載の発明は、請求項１〜３のいずれか一項に記載の発明において、前記項目テンプレート情報は、前記業務スケルトン情報の業務処理の内容を変更する情報を含み、前記業務プログラム部品定義手段は、前記変更する情報に基づいて前記業務スケルトン情報の業務処理の内容を変更することを特徴とする。
【００１２】
請求項５に記載の発明は、請求項１〜４のいずれか一項に記載の発明において、前記業務スケルトン情報の業務処理の内容は、機能ごとに分類され、業務処理における業務情報の入力、更新、印刷、照会のいずれかであり、前記業務プログラム部品定義手段は、前記いずれかの業務スケルトン情報と前記項目テンプレート情報とを集約して業務プログラム部品を定義することを特徴とする。
【００１３】
請求項６に記載の発明は、請求項１に記載の発明に示した主要な機能を実現させるためのプログラムを提供する。
【発明の効果】
【００１４】
本発明によれば、業務プログラム部品の雛形であり、業務処理の内容を定義する業務スケルトン情報と、業務処理における項目毎の処理内容を定義する項目テンプレート情報とを集約して業務処理を行うための業務プログラム部品を定義する構成であるため、編集作業を行う時に項目に関する情報を一括して扱うことができ、業務処理を行う業務処理用プログラムを容易に作成することができる。
【発明を実施するための最良の形態】
【００１５】
以下、図を参照して本発明の実施形態について詳細に説明するが、この発明は、この実施の形態に限定されない。また、この発明の実施の形態は発明の最も好ましい形態を示すものであり、発明の用途をこれに限定しない。
【００１６】
先ず、本発明である情報処理装置１の構成について図１を参照して説明する。図１は、情報処理装置１の機能的構成を模式的に示した図である。
【００１７】
図１に示すように、情報処理装置１は、制御装置１１、記憶装置１２、表示装置１３、入力装置１４、通信装置１５及び印刷装置１６を備え、各部はバス１７により互いに電気的に接続されてなる。情報処理装置１は、具体的には上記構成を含むＰＣ（Personal  Computer）などの情報機器である。
【００１８】
制御装置１１は、特に図示しないＣＰＵ（Central  Processing  Unit）やＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）などを備え、ＣＰＵにおいてＲＡＭの所定領域を作業領域とし、ＲＯＭや記憶装置１２に格納された制御プログラムやアプリケーションプログラムを読み込んで順次実行することで、情報処理装置１の動作を統括制御する。具体的には、制御装置１１は、実行定義生成プログラム１２９を実行して作成した実行定義（ソースコード）を、業務プログラムファイル１２１を実行することでインタプリタとして機能する実行エンジン１１１で解釈して実行することで各種業務処理を行う。記憶装置１２は、ＨＤＤ（Hard  Disk  Drive）、不揮発性メモリ又は光学／磁気的な記憶媒体とそれに対して読み書きが可能な装置であり、制御装置１１からの指示によりデータの格納や読み出したデータの制御装置１１への出力を行う。具体的には、記憶装置１２は、業務プログラムファイル１２１、業務スケルトンテンプレート１２２、項目テンプレート１２３、印刷テンプレート１２４、ＤＢ処理テンプレート１２５、業務処理テンプレート１２６、設定ファイル１２７、業務ＤＢ１２８及び実行定義生成プログラム１２９を格納する。
【００１９】
業務プログラムファイル１２１は、制御装置１１で実行することで、実行定義生成プログラム１２９により作成された実行定義を実行するインタプリタである実行エンジン１１１としての機能を提供して業務処理を行うアプリケーションプログラムである。
【００２０】
業務スケルトンテンプレート１２２は、売上伝票入力処理、請求書処理、顧客情報管理処理などの事務処理業務における処理の雛形が実行エンジン１１１で実行可能な文法で記載したファイルである。実行定義を作成する際には、この業務スケルトンテンプレート１２２に他のテンプレートを挿入して作成する。
【００２１】
また、業務スケルトンテンプレート１２２は、下記表１に示すように、機能毎に入力型、更新型、印刷型、照会型に分類することができる。例えば、売上伝票入力処理は更新型のスケルトンタイプが伝票入力（明細型／鑑型）のタイプであり、請求書処理は印刷型のタイプであり、顧客情報管理処理は更新型のタイプである。
【００２２】
【表１】
2007034805.tif 000003
【００２３】
項目テンプレート１２３は、業務スケルトンテンプレート１２２における各処理の雛形において、各項目における入力や表示を行うための制御や処理に関する部分の情報を記載したファイルである。ここにおける項目とは、例えば販売管理に関する業務における売上伝票や受注伝票をユニークに扱う伝票番号、取引先や得意先を示す得意先コード、商品を示す商品コード、当該商品コードに対応する商品名・単価などである。
【００２４】
印刷テンプレート１２４は、業務スケルトンテンプレート１２２における各処理の雛形において、業務処理における伝票や帳票などの印刷を行うための書式情報や印字制御を行う部分の情報を印刷する項目単位に定義し、基本的な印刷制御機能を含めて部品化したファイルである。
【００２５】
ＤＢ処理テンプレート１２５は、業務処理における顧客情報、商品情報、売買記録などの業務情報を格納する業務ＤＢ１２８に対してデータの更新、登録又は抽出など、当該業務ＤＢ１２８への整合性の取れたデータアクセスを行う処理を部品化したファイルである。具体的には、ＤＢ処理テンプレート１２５は、複数のファイルに対する更新や検索処理を安全に行うために、物理的なファイル上のフィールドに対するアクセスを許さず、伝票やマスタと行った論理的な単位での更新検索インターフェースを提供する。
【００２６】
業務処理テンプレート１２６は、入力可能な項目をリスト表示し、選択することでデータ入力の補助を行う処理、伝票入力などのトランザクション処理の途中で新たにデータベースに対してレコードを追加する処理、各テンプレートで共通な処理又は問い合わせ・確認のダイアログを表示する処理など、上述したテンプレートで呼び出されて使用されるサブルーチン的な処理を格納するファイルである。
【００２７】
設定ファイル１２７は、アプリケーションプログラムを作成する際に必要な補助的な情報を管理するためのファイルである。業務ＤＢ１２８は、業務情報を格納するデータベースである。
【００２８】
実行定義生成プログラム１２９は、制御装置１１で実行することで、実行エンジン１１１が実行するソースコード（実行定義）を作成する機能を有するアプリケーションプログラムである。このアプリケーションプログラムにより作成された実行定義は、当該アプリケーションプログラムにて何度でも修正が可能である。また、アプリケーションプログラムでは、各テンプレート間のインターフェース情報などの不足している部分をテンプレート内に格納されている情報を元に自動生成することができる。
【００２９】
表示装置１３は、ＬＣＤ（Liquid  Crystal  Display）やＣＲＴ（Cathode  Ray  Tube）などのディスプレイであり、画面上に制御装置１１からの画像信号に応じた画像、つまり、業務処理時における業務画面を表示する。入力装置１４は、無線通信回路及びアンテナや、有線で通信を行うための通信インターフェースを備えた回路部であり、特に図示しない無線／有線ＬＡＮ、インターネットなどの通信ネットワークと接続し、当該通信ネットワークと接続する他の情報機器との間で制御装置１１の指示に応じたデータの送受信を行う。印刷装置１６は、電子写真方式やインクジェット方式などにより紙などの記録媒体に制御装置１１からの指示に応じた画像を形成するプリンタである。
【００３０】
次に、業務スケルトンテンプレート１２２、項目テンプレート１２３、印刷テンプレート１２４、ＤＢ処理テンプレート１２５及び業務処理テンプレート１２６を元に業務処理を定義し、その定義に基づいて業務処理を実行する構成を図２〜図１０を参照して説明する。
【００３１】
図２は、情報処理装置１における各テンプレートから業務処理を実行する構成を模式的に示した図であり、図３（ａ）は、実行エンジン１１１と業務スケルトンテンプレート１２２の構成を模式的に示した図であり、図３（ｂ）は、項目テンプレート１２３の構成を模式的に示した図であり、図４は、業務スケルトンテンプレート１２２に項目テンプレート１２３を挿入することで実行エンジン１１１で実行する実行定義を作成する概略を示す図であり、図５は、表示装置１３における売上伝票入力に関する業務画面を例示する図であり、図６は、得意先コードに関する項目テンプレートを例示する図であり、図７（ａ）は、処理挿入定義１２３７の構成を例示する図であり、図７（ｂ）は、処理挿入定義１２３７を元にした挿入処理により起動時イベント制御Ｕ１に処理が挿入された状態を例示する図であり、図８（ａ）は、処理挿入定義１２３７に基づく挿入処理を示すフローチャートであり、図８（ｂ）は、処理挿入定義１２３７に基づく削除処理を示すフローチャートであり、図９は、制御装置１１が行う実行定義に基づいた業務処理を例示するフローチャートであり、図１０は、制御装置１１が行う実行定義に基づいた項目への入力処理を例示するフローチャートである。
【００３２】
図２に示すように、制御装置１１は、実行定義生成プログラム１２９を実行することで、業務スケルトンテンプレート１２２、項目テンプレート１２３、印刷テンプレート１２４、ＤＢ処理テンプレート１２５及び業務処理テンプレート１２６を元に業務処理を行う実行定義を作成し、その作成した実行定義に基づいた編集画面を表示装置１３に表示し、入力装置１４からの操作入力を受け付けることで作成した実行定義にユーザ定義部分を編集したユーザ実行定義を作成して（ステップＳ1）、後述する項目テンプレート１２３の処理挿入定義に基づいた挿入処理を行い（ステップＳ２）、実行エンジン１１１で解釈して業務処理を実行する（ステップＳ３）。
【００３３】
そして、制御装置１１は、業務プログラムファイル１２１を実行することで、ステップＳ3までの処理により生成された実行定義を実行エンジン１１１で解釈して実行し、業務画面の表示装置１３への表示、入力装置１４からの操作入力を受け付け、業務ＤＢ１２８に格納された業務情報を利用した業務処理又は印刷装置１６による処理結果の出力などを行い、売上／受注処理、帳票の作成又は顧客情報の登録など、一般的な業務処理を行う。
【００３４】
制御装置１１が業務プログラムファイル１２１を実行して機能する実行エンジン１１１の構造は、図３（ａ）に示すように、起動から終了までのアプリケーションの流れを制御する全体制御１１１１、当該全体制御１１１１における起動時、入力受け付け時、終了時、集計時など、イベントごとの処理を制御する処理制御１１１２、業務処理画面上の入力領域やそこにおけるカーソル表示、入力／選択ボタン表示とそれを選択する入力ポインタ表示など、表示装置１３における表示画面の制御を行う画面制御１１１３、及び入力装置１４からの操作入力の受け付けや業務ＤＢ１２８からのデータの入出力、指定されたデータに対して所定の演算を行うなどのデータ処理を行うデータ制御１１１４からなる。
【００３５】
業務スケルトンテンプレート１２２の構成は、図３（ａ）に示すように、実行エンジン１１１の処理制御１１１２、画面制御１１１３及びデータ制御１１１４に対応するイベント処理定義１２２１、画面制御定義１２２２、入力項目定義１２２３、初期化／代入式定義１２２４及び入出力インターフェース定義１２２５と、それらに対して利用者が自らの業務形態に合わせた調整を定義するユーザ関数定義１２２６とを備える構成である。
【００３６】
イベント処理定義１２２１は、処理制御１１１２が呼び出す業務処理におけるイベントごとの処理に関する定義である。画面制御定義１２２２は、画面制御１１１３が呼び出す業務処理画面の構成などの入力画面や当該画面上のカーソル移動など入力コントロールの定義である。入力項目定義１２２３は、データ制御１１１４が呼び出す業務処理における標準の入力項目に関する定義である。初期化／代入式定義１２２４はデータ制御１１１４が呼び出す業務処理における初期化や代入式などの演算定義である。入出力インターフェース定義１２２５は、データ制御１１１４が呼び出す業務ＤＢ１２８などからの業務情報の入出力に関する定義である。
【００３７】
イベント処理定義１２２１で定義される業務処理におけるイベントごとの処理は、例えば業務処理が売上伝票などに対する入力である場合、同図に示すように、日付取得や業務ＤＢ１２８との接続など起動時の処理である起動時処理Ｉ１、入力開始時に売上処理に関して予め設定されたパラメータなどを読み出すなどの処理である入力開始時処理Ｉ２、売上伝票のヘッダ部の開始時や終了時における処理であるヘッダ部開始時処理Ｉ３・ヘッダ部終了時処理Ｉ４、同様に売上伝票の明細部分における処理である明細部開始時処理Ｉ５・明細部終了時処理Ｉ６、同様に売上伝票の集計部における処理である集計部開始時処理Ｉ７・集計部終了時処理Ｉ８、入力終了時にデータの更新などの処理をおこなう入力終了時処理Ｉ９及び業務ＤＢ１２８との切断など終了時の処理をおこなう終了時処理Ｉ１０がある。
【００３８】
ユーザ関数定義１２２６は、例えば日付を西暦で取得するなど起動時処理Ｉ１の処理におけるユーザ定義を記述する起動時イベント制御Ｕ１、同様に入力開始時処理Ｉ２におけるパラメータをユーザが定義する固有パラメータ設定Ｕ２や、ヘッダ部開始時処理Ｉ３、明細部開始時処理Ｉ５、集計部開始時処理Ｉ７におけるプロパティをユーザが定義するヘッダ部プロパティＵ３、明細部プロパティＵ４、集計部プロパティＵ５、また同様に入力終了時処理Ｉ９における処理の詳細をユーザが定義する入力終了時検索前制御処理Ｕ６、入力終了時検索後制御Ｕ７、入力終了時更新前制御Ｕ８及び入力終了時更新後制御Ｕ９、業務画面上の入力領域に対するフォーカス取得時の処理をユーザが定義する入力区分フォーカス取得時制御Ｕ１０及び入力項目定義１２２３における処理をユーザが定義する入力区分値変化時制御Ｕ１１を備える構成である。
【００３９】
上述したとおり、業務スケルトンテンプレート１２２は、実行エンジン１１１に対してアプリケーションの全体の流れを制御しているものであり、ステップＳ１においてユーザ関数定義１２２６を編集することにより、メーカなどから提供される機能以外の機能の追加や調整を行うことができる。また、ユーザ関数定義１２２６のみを編集の対象とすることで、実行エンジン１１１に近い部分の処理を隠蔽し、システムの整合性を保つことができる。特に、業務スケルトンテンプレート１２２の編集時において、ユーザ関数定義１２２６以外の部分の暗号化、バイナリ化又は中間言語展開を行い、不可視化する構成でも良い。
【００４０】
項目テンプレート１２３は、図３（ｂ）に示すように、項目を細かく制御するための処理を業務スケルトンテンプレート１２２のどの関数に挿入するかを定義する処理挿入定義１２３７、項目に関する入力コントロールの制御を定義する入力コントロール制御定義１２３２、項目に対するイベントとして、フォーカス時の処理を定義する入力コントロールイベント制御定義１２３１ａ及び入力による値変化やエラー発生時の処理を定義する項目イベント制御定義１２３１ｂ、項目に対するユーザの定義をおこなうＸＸＸフォーカス取得時制御Ｕ１２やＸＸＸ値変化時制御Ｕ１３を含むユーザ関数定義１２３６、入力項目や訂正前項目など項目に関するデータの管理を定義する入力項目データ定義１２３３、項目に対してどのように初期化を行うかや他の項目のデータをどのように演算して代入するかを定義する初期化／代入式定義１２３４、項目に関するデータを業務ＤＢ１２８からどのように受け取るか又は出力するかなどを定義する入出力インターフェース定義１２３５及び項目に関する動作を変更するためのプロパティ（動作属性）を定義する項目テンプレートプロパティ１２３８を備える構成である。
【００４１】
処理挿入定義１２３７は、図７（ａ）に示すように、挿入先である業務スケルトンテンプレート１２２の挿入先関数名称と、そこに挿入する挿入処理内容から構成される。例えば、同図に示すように、ユーザ関数定義１２２６などにおける起動時イベント制御Ｕ１に対し、その処理内容として得意先コードの桁数及び区分と旧得意先コードの桁数及び区分とを定義する内容である。なお、処理内容は、リテラルで定義する構成、設定ファイルなどを参照して定義する構成、条件式などを用いる構成であってよい。
【００４２】
ステップＳ１における業務スケルトンテンプレート１２２への項目テンプレート１２３の挿入は、図４に示すように、項目テンプレート１２３における定義が業務スケルトンテンプレート１２２の該当する部分へ行われる。具体的には、入力コントロールに関する入力コントロール制御定義１２３２、入力コントロールイベント制御定義１２３１ａが画面制御定義１２２２へ、入力項目に関する入力項目データ定義１２３３、項目イベント制御定義１２３１ｂが入力項目定義１２２３へ、演算定義に関する初期化／代入式定義１２３４が初期化／代入式定義１２２４へ、業務上の入出力などに関する入出力インターフェース定義１２３５が入出力インターフェース定義１２２５へ、それぞれ挿入される。また、設定ファイル１２７における項目テンプレート管理テーブル１２７１へは、挿入された項目テンプレートの名称が追加される。また、ステップＳ２における処理挿入定義１２３７の挿入は、同図に示すように、ユーザ関数定義１２２６の所定部分に対して行われる。なお、業務スケルトンテンプレート１２２への印刷テンプレート１２４、ＤＢ処理テンプレート１２５又は業務処理テンプレート１２６の挿入については、項目テンプレート１２３の挿入と同様に行うため、説明を省略する。
【００４３】
ここで、業務スケルトンテンプレート１２２へ項目テンプレート１２３を挿入するときに処理挿入定義１２３７に基づいてユーザ関数定義１２２６の所定部分に定義を挿入する挿入処理（ステップＳ2）について、詳細に説明する。
【００４４】
図８（ａ）に示すように、制御装置１１は、業務スケルトンテンプレート１２２に挿入する項目テンプレート１２３内に処理挿入定義１２３７が存在するか否かを判定し、存在しない場合、つまり、変則的に項目テンプレート１２３の定義を業務スケルトンテンプレート１２２に挿入することなく、業務スケルトンテンプレート１２２で予め設けられた定義に項目テンプレート１２３の定義をそのまま挿入する場合は下記に示す処理を行うことなく終了する。
【００４５】
ステップＳ１１で処理挿入定義１２３７が存在すると判定された場合は、当該処理挿入定義１２３７より挿入先の業務スケルトンテンプレート１２２における定義名称である挿入先関数名称が取り出され（ステップＳ１２）、ユーザ関数定義１２２６内にその挿入先関数名称と一致する関数が存在するか否かが判定され（ステップＳ１３）、存在しない場合は挿入先関数が存在しないことを示すエラーコードの出力などのエラー処理が行われてステップＳ１２に戻り（ステップＳ１４）、次の挿入先関数名称に対する処理が行われる。
【００４６】
ステップＳ１３において一致する関数が存在する場合は、その一致したユーザ関数に対して挿入開始を示すマーク、例えば、「／／＃＃ＩＮＳＥＲＴ  ＳＴＡＲＴ  項目テンプレート名」を関数の記述前の先頭部分に追加され（ステップＳ１５）、当該マークの直後に処理挿入定義１２３７の挿入処理内容の記載が追加され（ステップＳ１６）、その挿入処理内容の記載の直後に挿入終了を示すマーク、例えば、「／／＃＃ＩＮＳＥＲＴ  ＥＮＤ  項目テンプレート名」が追加され（ステップＳ１７）、処理挿入定義１２３７に記載の全ての処理挿入定義に対して処理が行われたか否かが判定され（ステップＳ１８）、行われていない場合はステップＳ１２に戻り次の挿入先関数名称に対する処理が行われる。また、ステップＳ１８で行われたと判定された場合はそのまま終了する。
【００４７】
次に、上述した処理とは逆に、業務スケルトンテンプレート１２２に項目テンプレート１２３が挿入された状態から当該項目テンプレート１２３を削除する際に処理挿入定義１２３７に基づいてユーザ関数定義１２２６の所定部分の定義を削除する処理について、詳細に説明する。
【００４８】
図８（ｂ）に示すように、制御装置１１は、削除する項目テンプレート１２３内に処理挿入定義１２３７が存在するか否かを判定し（ステップＳ２１）、存在しない場合、つまり変則的に項目テンプレート１２３の定義を業務スケルトンテンプレート１２２に挿入しておらず、業務スケルトンテンプレート１２２で予め設けられた定義に項目テンプレート１２３の定義がそのまま挿入されている場合は下記に示す処理を行うことなく終了する。
【００４９】
ステップＳ２１で処理挿入定義１２３７が存在すると判定された場合は、当該処理挿入定義１２３７より挿入先関数名称が取り出され（ステップＳ２２）、ユーザ関数定義１２２６内にその挿入先関数名称と一致する関数が存在するか否かが判定され（ステップＳ２３）、存在しない場合は挿入した関数が見つからないことを示すエラーコードの出力などのエラー処理が行われてステップＳ２２に戻り（ステップＳ２４）、次の挿入先関数名称に対する処理が行われる。
【００５０】
ステップＳ２３において一致する関数が存在する場合は、前述した挿入開始を示すマークと挿入終了を示すマークが存在するか否かが順次判定され（ステップＳ２５、Ｓ２６）、存在しない場合はユーザ関数定義１２２６への挿入情報が不整合であることを示すエラーコードの出力などのエラー処理が行われて（ステップＳ２７）、上述のステップＳ２４と同様にしてステップＳ２２に戻る。
【００５１】
ステップＳ２５、Ｓ２６で存在すると判定された場合はその挿入開始マークから挿入終了マークまで（上述の例における「／／＃＃ＩＮＳＥＲＴ  ＳＴＡＲＴ  項目テンプレート名」から「／／＃＃ＩＮＳＥＲＴ  ＥＮＤ  項目テンプレート名」まで）の行が削除され（ステップＳ２８）、処理挿入定義１２３７に記載の全ての処理挿入定義に対して処理が行われたか否かが判定され（ステップＳ２９）、行われていない場合はステップＳ１２に戻り次の挿入先関数名称に対する処理が行われ、行われた場合は終了する。
【００５２】
上述した挿入処理又は削除処理により、項目テンプレート１２３を業務スケルトンテンプレート１２２に挿入する際に処理挿入定義１２３７を用いることで、図７（ｂ）に示すように、項目を細かく制御するための処理をどの関数に挿入するかあるいは削除するかを定義して挿入することができ、特に詳細な機能設定を実現することができる。なお、印刷テンプレート１２４、ＤＢ処理テンプレート１２５、業務処理テンプレート１２６においても同様にできることは言うまでもない。
【００５３】
情報処理装置１は、上述したステップＳ１〜Ｓ３までの処理により、機能ごとに分類して定義された業務スケルトンテンプレート１２２を元に各テンプレートを挿入した実行定義を生成することができる。例えば、図５に示すように、売上伝票入力に関する業務スケルトンテンプレート１２２に項目テンプレート１２３やＤＢ処理テンプレート１２５を挿入した売上伝票入力に関する業務画面を表示装置１３に表示することができる。この売上伝票入力は、業務スケルトンテンプレート１２２においてヘッダ部Ｇ１、明細部Ｇ２、集計部Ｇ３の枠組みと伝票番号項目Ｋ１、得意先コード項目Ｋ２、得意先名Ｋ３、明細項目Ｋ４及び集計項目Ｋ５が定義される。各項目については、項目テンプレート１２３で定義され、例えば得意先コード項目Ｋ２は、図６に示すように、得意先コード／旧得意先コードが入力された場合の処理が定義される。
【００５４】
ここで、上述した売上伝票入力に関する実行定義に基づいて行う実行エンジン１１１の処理について、詳細に説明する。
【００５５】
図９に示すように、業務スケルトンテンプレート１２２における起動時処理の定義や画面表示に関する定義が読み込まれて入力画面の生成処理が行われ（ステップＳ３１）、同様に売上伝票のヘッダ部に関する定義が読み込まれてヘッダ部の処理が行われる（ステップＳ３２）。次いで、業務スケルトンテンプレート１２２における明細部に関する定義が読み込まれて明細部の処理が全ての明細に対して行われ（ステップＳ３３、Ｓ３４）、同様に集計部に関する定義が読み込まれて集計部の処理が行われ（ステップＳ３５）、終了時処理の定義などに基づいた処理として、次のヘッダの有無に応じてステップＳ３２に戻るか終了するかの判定が行われる（ステップＳ３６）。
【００５６】
また、上記処理の中でヘッダ部の項目に対して入力が行われた場合は、業務スケルトンテンプレート１２２に挿入された項目テンプレートの定義に基づいて（図４参照）、図１０に示すように、起動時イベント制御関数による処理、ヘッダ部プロパティ制御関数による処理、初期化定義による処理が行われ（ステップＳ４１〜Ｓ４３）、入力コントロールとしてフォーカス取得時処理定義による処理とフォーカス取得時制御関数による処理が行われる（ステップＳ４４、Ｓ４５）。
【００５７】
次いで、入力が正常であるか否かが判定され（ステップＳ４６）、正常である場合は画面制御として値変化時処理定義とその関数による処理が行われ（ステップＳ４７、Ｓ４８）、データ制御として代入定義による処理が行われ（ステップＳ４９）、フォーカス喪失時処理による処理が行われて（ステップＳ５１）、終了する。また、入力が正常でない場合は画面制御としてエラー発生時処理定義による処理が行われて終了する（ステップＳ５０）。
ただし、エラー発生時の処理定義において、再度入力を促すような動作を記述した場合は、該当する項目の入力制御から移行することなく再度入力を行うような制御も可能である。
【００５８】
情報処理装置１は、例えば、売上伝票入力に関する実行定義を作成し、その実行定義を元に実行エンジン１１１で処理することで売上伝票入力に関する業務処理を行うことができる。なお、上述した処理は売上伝票入力に関する実行定義を元にした処理であるが、他の機能における業務スケルトンテンプレート１２２と各テンプレートとを元にした実行定義においても、その定義に従った処理が行われることは言うまでもない。
【００５９】
なお、本実施の形態では、情報処理装置１は、ＰＣなどの情報機器として説明したが、本発明をシステムに適用した場合を例示する図１１に示すように、ＬＡＮ（Local  Area  Network）やインターネットなどである通信ネットワークＮに接続するサーバ２と端末３とによる情報処理システム１０１であってもよい。この場合は、上述した制御装置１１と同等の処理を記憶装置１２を備えるサーバ２で行い、表示装置１３、入力装置１４及び印刷装置１６を備える端末３で、業務処理に関する操作や出力を行う。なお、実行エンジン１１１はサーバ２、端末３のどちらで実行しても良い。また、端末３は、クライアント端末３ａ、３ｂ、３ｃの複数の端末で構成してもよい。
【００６０】
また、本実施の形態では、インタプリタで業務処理を行う形式で説明したが、オブジェクトコードを生成して制御装置１１は当該オブジェクトコードを実行して業務処理を行う形式であってもよい。具体的には、オブジェクトコードを実行して業務処理を行う形式を例示する図１２に示すように、制御装置１１は、前述した実行定義の作成（ステップＳ３）の後、実行エンジン１１１の代わりにコンパイラを実行して、実行定義に基づいたプログラム生成によりプログラムソースの作成を行い（ステップＳ４）、当該プログラムソースをコンパイルして業務プログラムを生成し（ステップＳ５）、その業務プログラムで業務処理を行う（ステップＳ６）。
【００６１】
以上のように、情報処理装置１は、業務スケルトンテンプレート１２２と各テンプレートにより、業務処理が定義された実行定義を生成することができる。また、業務処理の機能ごとに業務スケルトンテンプレート１２２を用意し、それに入力項目に関するデータ内容やコントロール等に関する各種定義が集約された項目テンプレート１２３を挿入する構成であるため、項目に関する定義をグループ化して漏れなくすることができる。
【００６２】
また、一端登録した項目テンプレート１２３は、他の機能の業務スケルトンテンプレート１２２でも呼び出して利用することができるので、部分的な編集作業だけで済み、作業効率が良くなると共に定義の誤りも減少する。
【００６３】
また、項目テンプレート１２３は処理挿入定義１２３７に基づいた挿入処理を行うことで、入力項目に関するデータ内容やコントロール等に関する各種の定義について、後から微調整が可能であり、柔軟な業務処理を実現することができる。
【００６４】
なお、本実施の形態における記述は、本発明の一例を示すものであり、これに限定しない。本発明における情報処理装置１の細部構成及び細部動作に関しては、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。例えば、記憶装置１２に記憶されるデータを読み書き可能な記憶媒体に格納して他の情報機器で実行する構成であっても良い。
【図面の簡単な説明】
【００６５】
【図１】本発明である情報処理装置１の機能的構成を模式的に示した図である。
【図２】情報処理装置１における各テンプレートから業務処理を実行する構成を模式的に示した図である。
【図３】（ａ）は、実行エンジン１１１と業務スケルトンテンプレート１２２の構成を模式的に示した図であり、（ｂ）は、項目テンプレート１２３の構成を模式的に示した図である。
【図４】業務スケルトンテンプレート１２２に項目テンプレート１２３を挿入することで実行エンジン１１１で実行する実行定義を作成する概略を示す図である。
【図５】表示装置１３における売上伝票入力に関する業務画面を例示する図である。
【図６】得意先コードに関する項目テンプレートを例示する図である。
【図７】（ａ）は、処理挿入定義１２３７の構成を例示する図であり、（ｂ）は、処理挿入定義１２３７を元にした挿入処理により起動時イベント制御Ｕ１に処理が挿入された状態を例示する図である。
【図８】（ａ）は、処理挿入定義１２３７に基づく挿入処理を示すフローチャートであり、（ｂ）は、処理挿入定義１２３７に基づく削除処理を示すフローチャートである。
【図９】制御装置１１が行う実行定義に基づいた業務処理を例示するフローチャートである。
【図１０】制御装置１１が行う実行定義に基づいた項目への入力処理を例示するフローチャートである。
【図１１】本発明を情報処理システム１０１に適用した場合を例示する構成図である。
【図１２】オブジェクトコードを実行して業務処理を行う形式を例示する図である。
【符号の説明】
【００６６】
１  情報処理装置
１０１  情報処理システム
２  サーバ
３  端末
３ａ、３ｂ、３ｃ  クライアント端末
Ｎ  通信ネットワーク
１１  制御装置（業務プログラム部品定義手段、ユーザ定義手段）
１１１  実行エンジン
１１１１  全体制御
１１１２  処理制御
１１１３  画面制御
１１１４  データ制御
１２  記憶装置（記憶手段）
１２１  業務プログラムファイル
１２２  業務スケルトンテンプレート
１２２１  イベント処理定義
１２２２  画面制御定義
１２２３  入力項目定義
１２２４  初期化／代入式定義
１２２５  入出力インターフェース定義
１２２６  ユーザ関数定義（ユーザ定義手段）
１２３  項目テンプレート
１２３１ａ  入力コントロールイベント制御定義
１２３１ｂ  項目イベント制御定義
１２３２  入力コントロール制御定義
１２３３  入力項目データ定義
１２３４  初期化／代入式定義
１２３５  入出力インターフェース定義
１２３６  ユーザ関数定義（ユーザ定義手段）
１２３７  処理挿入定義
１２３８  項目テンプレートプロパティ
１２４  印刷テンプレート
１２５  ＤＢ処理テンプレート
１２６  業務処理テンプレート
１２７  設定ファイル
１２７１  項目テンプレート管理テーブル
１２８  業務ＤＢ
１２９  実行定義生成プログラム
１３  表示装置（ユーザ定義手段）
１４  入力装置（ユーザ定義手段）
１５  通信装置
１６  印刷装置
１７  バス
Ｇ１  ヘッダ部
Ｇ２  明細部
Ｇ３  集計部
Ｉ１  起動時処理
Ｉ２  入力開始時処理
Ｉ３  ヘッダ部開始時処理
Ｉ４  ヘッダ部終了時処理
Ｉ５  明細部開始時処理
Ｉ６  明細部終了時処理
Ｉ７  集計部開始時処理  
Ｉ８  集計部終了時処理
Ｉ９  入力終了時処理
Ｉ１０  終了時処理
Ｋ１  伝票番号項目
Ｋ２  得意先コード項目
Ｋ３  得意先名
Ｋ４  明細項目
Ｋ５  集計項目
Ｕ１  起動時イベント制御
Ｕ２  固有パラメータ設定
Ｕ３  ヘッダ部プロパティ
Ｕ４  明細部プロパティ
Ｕ５  集計部プロパティ
Ｕ６  入力終了時検索前制御処理
Ｕ７  入力終了時検索後制御
Ｕ８  入力終了時更新前制御
Ｕ９  入力終了時更新後制御
Ｕ１０  入力区分フォーカス取得時制御
Ｕ１１  入力区分値変化時制御
Ｕ１２  ＸＸＸフォーカス取得時制御
Ｕ１３  ＸＸＸ値変化時制御
【図１】
2007034805.tif 000004
【図２】
2007034805.tif 000005
【図３】
2007034805.tif 000006
【図４】
2007034805.tif 000007
【図５】
2007034805.tif 000008
【図６】
2007034805.tif 000009
【図７】
2007034805.tif 000010
【図８】
2007034805.tif 000011
【図９】
2007034805.tif 000012
【図１０】
2007034805.tif 000013
【図１１】
2007034805.tif 000014
【図１２】
2007034805.tif 000015