JP2007034807A - 情報処理装置及びプログラム - Google Patents

情報処理装置及びプログラム Download PDF

Info

Publication number
JP2007034807A
JP2007034807A JP2005218913A JP2005218913A JP2007034807A JP 2007034807 A JP2007034807 A JP 2007034807A JP 2005218913 A JP2005218913 A JP 2005218913A JP 2005218913 A JP2005218913 A JP 2005218913A JP 2007034807 A JP2007034807 A JP 2007034807A
Authority
JP
Japan
Prior art keywords
business
processing
information
item
input
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.)
Pending
Application number
JP2005218913A
Other languages
English (en)
Other versions
JP2007034807A5 (ja
Inventor
Satoshi Yoshida
聡 吉田
Osamu Onodera
修 小野寺
Masaharu Meki
正治 目木
Yoshiaki Yuyama
好章 湯山
Kazuyasu Haraguchi
和泰 原口
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2005218913A priority Critical patent/JP2007034807A/ja
Publication of JP2007034807A publication Critical patent/JP2007034807A/ja
Publication of JP2007034807A5 publication Critical patent/JP2007034807A5/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】業務処理を行う業務処理用プログラムの冗長なソースコードを取り除いて設計を容易にする情報処理装置及びプログラムを提供する。
【解決手段】情報処理装置1は、業務スケルトンテンプレート122、項目テンプレート123、印刷テンプレート124、DB処理テンプレート125及び業務処理テンプレート126を元に業務処理を行う実行定義を作成し、その作成した実行定義に対し、編集画面を表示装置13に表示し、入力装置14からの操作入力を受け付けることで作成した実行定義のユーザ定義部分の編集を行い(ステップS1)、ソースコード生成処理を行って(ステップS2)、実行定義を作成する。
【選択図】図2

Description

本発明は、本発明は、定義された業務プログラム部品に基づいて業務処理を行う情報処理装置及びプログラムに関する。
コンピュータプログラムの作成に際してプログラムの高い生産性と高い信頼性を確保するために、プログラムを部品化し再利用する開発手法が知られている。例えば、プログラムの全体構成を3層の「フレームワーク」でモデル化して組み立てる方法がある。
この「フレームワーク」は、ある特定の業務分野のデータ処理をモデル化し、アプリケーションプログラムを支配して調整する上位層、実際に顧客管理、伝票管理又は請求書処理等のビジネスロジックを展開する中間層及びその分野に共通な詳細仕様を実現する下位層の3つの層から構成される。このうち、上位層と下位層とを共通部品としてライブラリ化しておき、新たなアプリケーションを作成する場合は、中間層のモジュールを作成するという手法である。
例えば、3層のシステム構成を採用した技術としては特許文献1がある。ここでは、予め業務処理要素と制御対象要素のインターフェースを規定しておき、規定にあった業務処理部品プログラムと制御対象部品プログラムとを作成し、これら部品が差し込まれる空き部分を有するインターフェースフレームワークを用意しておいて、そのフレームワーク内に各部品の制御処理を一括して行う制御処理プログラムを自動生成するとしている。
特開2002−342081号公報
上述した特許文献1に開示された3層のシステム構成は、分散処理型、単一処理型、監視型などのコンピュータ処理の形態によって制御処理が分類されており、業種や業態によって処理形態が異なる取引管理や約定入力などの様々な業務の処理内容は、それぞれ業務にあった業務処理部品プログラムを作成することになる。すなわち、規定されたインターフェースにあわせて業務処理部品プログラムを個別に設計するようになる。
この3層のシステム構成における業務処理部品プログラムは、様々な業務処理に活用できるように多数の機能が関数や定義としてソースコードに設けられている。しかし、業務処理に合わせて3層のシステム構成で構築する際に、利用されることのない無駄なソースコードが紛れる虞がありソースコードを見づらくするため、開発効率を低下させる問題があった。
本発明は、このような課題に鑑みてなされたものであり、その目的とするところは、業務処理を行う業務処理用プログラムの冗長なソースコードを取り除いて設計を容易にする情報処理装置及びプログラムを提供することである。
上記課題を解決するため、請求項1に記載の発明は、業務処理に関するプログラム部品の雛形であり業務処理の内容を定義する業務スケルトン情報及び業務処理における項目毎の処理内容を定義する項目テンプレート情報を記憶する記憶手段と、前記定義される処理のいずれかを選択する選択手段と、前記記憶手段に記憶された業務スケルトン情報と項目テンプレート情報とを集約して業務処理に関するプログラムのソースコードを生成する際に前記選択手段における選択に基づいてソースコードを生成するソースコード生成手段と、を備えたことを特徴とする。
請求項2に記載の発明は、請求項1に記載の発明において、前記選択手段は、前記項目テンプレート情報で定義される処理のいずれかを選択することを特徴とする。
請求項3に記載の発明は、業務処理に関するプログラム部品の雛形であり業務処理の内容を定義する業務スケルトン情報及び業務処理における項目毎の処理内容を定義する項目テンプレート情報を記憶する記憶手段と、前記項目テンプレート情報における項目が前記業務スケルトン情報で定義される業務処理における項目に含まれるか否かを判定する判定手段と、前記記憶手段に記憶された業務スケルトン情報と項目テンプレート情報とを集約して業務処理に関するプログラムのソースコードを生成する際に前記判定手段の判定結果に基づいてソースコードを生成するソースコード生成手段と、を備えたことを特徴とする。
請求項4に記載の発明は、業務処理に関するプログラム部品の雛形であり業務処理の内容を定義する業務スケルトン情報、業務処理における項目毎の処理内容を定義する項目テンプレート情報及び業務処理に関する情報の入出力処理を定義する入出力テンプレート情報を記憶する記憶手段と、前記業務スケルトン情報及び/又は項目テンプレート情報で定義される業務処理における情報の入出力に基づいて前記入出力テンプレート情報において定義される入出力処理を特定する入出力処理特定手段と、前記記憶手段に記憶された業務スケルトン情報と項目テンプレート情報とを集約して業務処理に関するプログラムのソースコードを生成する際に前記入出力処理特定手段で特定された入出力処理に基づいてソースコードを生成するソースコード生成手段と、を備えたことを特徴とする。
請求項5〜7に記載の発明は、請求項1、3、4に記載の発明に示した主要な機能を実現させるためのプログラムを提供する。
請求項1、5に記載の発明によれば、記憶された業務処理に関するプログラム部品の雛形であり業務処理の内容を定義する業務スケルトン情報及び業務処理における項目毎の処理内容を定義する項目テンプレート情報から、定義される処理のいずれかを選択し、その選択に基づいて当該業務スケルトン情報と項目テンプレート情報とを集約して業務処理に関するプログラムのソースコードを生成する構成であるため、冗長なソースコードを取り除いて設計を容易にすることができる。
請求項3、6に記載の発明によれば、記憶された業務処理に関するプログラム部品の雛形であり業務処理の内容を定義する業務スケルトン情報及び業務処理における項目毎の処理内容を定義する項目テンプレート情報から、当該項目テンプレート情報における項目が前記業務スケルトン情報で定義される業務処理における項目に含まれるか否かを判定し、その判定結果に基づいて当該業務スケルトン情報と項目テンプレート情報とを集約して業務処理に関するプログラムのソースコードを生成する構成であるため、冗長なソースコードを取り除いて設計を容易にすることができる。
請求項4、7に記載の発明によれば、記憶された業務処理に関するプログラム部品の雛形であり業務処理の内容を定義する業務スケルトン情報、業務処理における項目毎の処理内容を定義する項目テンプレート情報及び業務処理に関する情報の入出力処理を定義する入出力テンプレート情報から、業務スケルトン情報及び/又は項目テンプレート情報で定義される業務処理における情報の入出力に基づいて入出力テンプレート情報において定義される入出力処理を特定し、その特定された入出力処理に基づいて業務スケルトン情報と項目テンプレート情報とを集約して業務処理に関するプログラムのソースコードを生成する構成であるため、冗長なソースコードを取り除いて設計を容易にすることができる。
以下、図を参照して本発明の実施形態について詳細に説明するが、この発明は、この実施の形態に限定されない。また、この発明の実施の形態は発明の最も好ましい形態を示すものであり、発明の用途をこれに限定しない。
先ず、本発明である情報処理装置1の構成について図1を参照して説明する。図1は、情報処理装置1の機能的構成を模式的に示した図である。
図1に示すように、情報処理装置1は、制御装置11、記憶装置12、表示装置13、入力装置14、通信装置15及び印刷装置16を備え、各部はバス17により互いに電気的に接続されてなる。情報処理装置1は、具体的には上記構成を含むPC(Personal Computer)などの情報機器である。
制御装置11は、特に図示しないCPU(Central Processing Unit)やRAM(Random Access Memory)、ROM(Read Only Memory)などを備え、CPUにおいてRAMの所定領域を作業領域とし、ROMや記憶装置12に格納された制御プログラムやアプリケーションプログラムを読み込んで順次実行することで、情報処理装置1の動作を統括制御する。具体的には、制御装置11は、実行定義生成プログラム129を実行して作成した実行定義(ソースコード)を、業務プログラムファイル121を実行することでインタプリタとして機能する実行エンジン111で解釈して実行することで各種業務処理を行う。記憶装置12は、HDD(Hard Disk Drive)、不揮発性メモリ又は光学/磁気的な記憶媒体とそれに対して読み書きが可能な装置であり、制御装置11からの指示によりデータの格納や読み出したデータの制御装置11への出力を行う。具体的には、記憶装置12は、業務プログラムファイル121、業務スケルトンテンプレート122、項目テンプレート123、印刷テンプレート124、DB処理テンプレート125、業務処理テンプレート126、設定ファイル127、業務DB128及び実行定義生成プログラム129を格納する。
業務プログラムファイル121は、制御装置11で実行することで、実行定義生成プログラム129により作成された実行定義を実行するインタプリタである実行エンジン111としての機能を提供して業務処理を行うアプリケーションプログラムである。
業務スケルトンテンプレート122は、売上伝票入力処理、請求書処理、顧客情報管理処理などの事務処理業務における処理の雛形が実行エンジン111で実行可能な文法で記載したファイルである。実行定義を作成する際には、この業務スケルトンテンプレート122に他のテンプレートを挿入して作成する。
また、業務スケルトンテンプレート122は、下記表1に示すように、機能毎に入力型、更新型、印刷型、照会型に分類することができる。例えば、売上伝票入力処理は更新型のスケルトンタイプが伝票入力(明細型/鑑型)のタイプであり、請求書処理は印刷型のタイプであり、顧客情報管理処理は更新型のタイプである。
Figure 2007034807
項目テンプレート123は、業務スケルトンテンプレート122における各処理の雛形において、各項目における入力や表示を行うための制御や処理に関する部分の情報を記載したファイルである。ここにおける項目とは、例えば販売管理に関する業務における売上伝票や受注伝票をユニークに扱う伝票番号、取引先や得意先を示す得意先コード、商品を示す商品コード、当該商品コードに対応する商品名・単価などである。
印刷テンプレート124は、業務スケルトンテンプレート122における各処理の雛形において、業務処理における伝票や帳票などの印刷を行うための書式情報や印字制御を行う部分の情報を印刷する項目単位に定義し、基本的な印刷制御機能を含めて部品化したファイルである。
DB処理テンプレート125は、業務処理における顧客情報、商品情報、売買記録などの業務情報を格納する業務DB128に対してデータの更新、登録又は抽出など、当該業務DB128への整合性の取れたデータアクセスを行う処理を部品化したファイルである。具体的には、DB処理テンプレート125は、複数のファイルに対する更新や検索処理を安全に行うために、物理的なファイル上のフィールドに対するアクセスを許さず、伝票やマスタと行った論理的な単位での更新検索インターフェースを提供する。
業務処理テンプレート126は、入力可能な項目をリスト表示し、選択することでデータ入力の補助を行う処理、伝票入力などのトランザクション処理の途中で新たにデータベースに対してレコードを追加する処理、各テンプレートで共通な処理又は問い合わせ・確認のダイアログを表示する処理など、上述したテンプレートで呼び出されて使用されるサブルーチン的な処理を格納するファイルである。
設定ファイル127は、アプリケーションプログラムを作成する際に必要な補助的な情報を管理するためのファイルである。業務DB128は、業務情報を格納するデータベースである。
実行定義生成プログラム129は、制御装置11で実行することで、実行エンジン111が実行するソースコード(実行定義)を作成する機能を有するアプリケーションプログラムである。このアプリケーションプログラムにより作成された実行定義は、当該アプリケーションプログラムにて何度でも修正が可能である。また、アプリケーションプログラムでは、各テンプレート間のインターフェース情報などの不足している部分をテンプレート内に格納されている情報を元に自動生成することができる。
表示装置13は、LCD(Liquid Crystal Display)やCRT(Cathode Ray Tube)などのディスプレイであり、画面上に制御装置11からの画像信号に応じた画像、つまり、業務処理時における業務画面を表示する。入力装置14は、無線通信回路及びアンテナや、有線で通信を行うための通信インターフェースを備えた回路部であり、特に図示しない無線/有線LAN、インターネットなどの通信ネットワークと接続し、当該通信ネットワークと接続する他の情報機器との間で制御装置11の指示に応じたデータの送受信を行う。印刷装置16は、電子写真方式やインクジェット方式などにより紙などの記録媒体に制御装置11からの指示に応じた画像を形成するプリンタである。
次に、業務スケルトンテンプレート122、項目テンプレート123、印刷テンプレート124、DB処理テンプレート125及び業務処理テンプレート126を元に業務処理を定義し、その定義に基づいて業務処理を実行する構成を図2〜図11を参照して説明する。
図2は、情報処理装置1における各テンプレートから業務処理を実行する構成を模式的に示した図であり、図3(a)は、実行エンジン111と業務スケルトンテンプレート122の構成を模式的に示した図であり、図3(b)は、項目テンプレート123の構成を模式的に示した図であり、図4は、業務スケルトンテンプレート122に項目テンプレート123を挿入することで実行エンジン111で実行する実行定義を作成する概略を示す図であり、図5は、項目テンプレート123におけるプロパティの設定を例示する図であり、図6は、制御装置11が行うソースコード生成処理を示すフローチャートであり、図7は、項目テンプレート123のプロパティで設定されたマクロに基づいたソースコードの生成を例示する図であり、図8は、項目テンプレート123で定義された項目に基づいたソースコードの生成を例示する図であり、図9は、使用しているDB処理テンプレート125の定義に基づいたソースコードの生成を例示する図であり、図10は、制御装置11が行う実行定義に基づいた業務処理を例示するフローチャートであり、図11は、制御装置11が行う実行定義に基づいた項目への入力処理を例示するフローチャートである。
図2に示すように、制御装置11は、実行定義生成プログラム129を実行することで、業務スケルトンテンプレート122、項目テンプレート123、印刷テンプレート124、DB処理テンプレート125及び業務処理テンプレート126を元に業務処理を行う実行定義を作成し、その作成した実行定義に基づいた編集画面を表示装置13に表示し、入力装置14からの操作入力を受け付けることで作成した実行定義にユーザ定義部分を編集したユーザ実行定義を作成して(ステップS1)、後述するソースコード生成処理を行い(ステップS2)、実行エンジン111で解釈して業務処理を実行する(ステップS3)。
そして、制御装置11は、業務プログラムファイル121を実行することで、ステップS3までの処理により生成された実行定義を実行エンジン111で解釈して実行し、業務画面の表示装置13への表示、入力装置14からの操作入力を受け付け、業務DB128に格納された業務情報を利用した業務処理又は印刷装置16による処理結果の出力などを行い、売上/受注処理、帳票の作成又は顧客情報の登録など、一般的な業務処理を行う。
制御装置11が業務プログラムファイル121を実行して機能する実行エンジン111の構造は、図3(a)に示すように、起動から終了までのアプリケーションの流れを制御する全体制御1111、当該全体制御1111における起動時、入力受け付け時、終了時、集計時など、イベントごとの処理を制御する処理制御1112、業務処理画面上の入力領域やそこにおけるカーソル表示、入力/選択ボタン表示とそれを選択する入力ポインタ表示など、表示装置13における表示画面の制御を行う画面制御1113、及び入力装置14からの操作入力の受け付けや業務DB128からのデータの入出力、指定されたデータに対して所定の演算を行うなどのデータ処理を行うデータ制御1114からなる。
業務スケルトンテンプレート122の構成は、図3(a)に示すように、実行エンジン111の処理制御1112、画面制御1113及びデータ制御1114に対応するイベント処理定義1221、画面制御定義1222、入力項目定義1223、初期化/代入式定義1224及び入出力インターフェース定義1225と、それらに対して利用者が自らの業務形態に合わせた調整を定義するユーザ関数定義1226とを備える構成である。
イベント処理定義1221は、処理制御1112が呼び出す業務処理におけるイベントごとの処理に関する定義である。画面制御定義1222は、画面制御1113が呼び出す業務処理画面の構成などの入力画面や当該画面上のカーソル移動など入力コントロールの定義である。入力項目定義1223は、データ制御1114が呼び出す業務処理における標準の入力項目に関する定義である。初期化/代入式定義1224はデータ制御1114が呼び出す業務処理における初期化や代入式などの演算定義である。入出力インターフェース定義1225は、データ制御1114が呼び出す業務DB128などからの業務情報の入出力に関する定義である。
イベント処理定義1221で定義される業務処理におけるイベントごとの処理は、例えば業務処理が売上伝票などに対する入力である場合、同図に示すように、日付取得や業務DB128との接続など起動時の処理である起動時処理I1、入力開始時に売上処理に関して予め設定されたパラメータなどを読み出すなどの処理である入力開始時処理I2、売上伝票のヘッダ部の開始時や終了時における処理であるヘッダ部開始時処理I3・ヘッダ部終了時処理I4、同様に売上伝票の明細部分における処理である明細部開始時処理I5・明細部終了時処理I6、同様に売上伝票の集計部における処理である集計部開始時処理I7・集計部終了時処理I8、入力終了時にデータの更新などの処理をおこなう入力終了時処理I9及び業務DB128との切断など終了時の処理をおこなう終了時処理I10がある。
ユーザ関数定義1226は、例えば日付を西暦で取得するなど起動時処理I1の処理におけるユーザ定義を記述する起動時イベント制御U1、同様に入力開始時処理I2におけるパラメータをユーザが定義する固有パラメータ設定U2や、ヘッダ部開始時処理I3、明細部開始時処理I5、集計部開始時処理I7におけるプロパティをユーザが定義するヘッダ部プロパティU3、明細部プロパティU4、集計部プロパティU5、また同様に入力終了時処理I9における処理の詳細をユーザが定義する入力終了時検索前制御処理U6、入力終了時検索後制御U7、入力終了時更新前制御U8及び入力終了時更新後制御U9、業務画面上の入力領域に対するフォーカス取得時の処理をユーザが定義する入力区分フォーカス取得時制御U10及び入力項目定義1223における処理をユーザが定義する入力区分値変化時制御U11を備える構成である。
上述したとおり、業務スケルトンテンプレート122は、実行エンジン111に対してアプリケーションの全体の流れを制御しているものであり、ステップS1においてユーザ関数定義1226を編集することにより、メーカなどから提供される機能以外の機能の追加や調整を行うことができる。また、ユーザ関数定義1226のみを編集の対象とすることで、実行エンジン111に近い部分の処理を隠蔽し、システムの整合性を保つことができる。
項目テンプレート123は、図3(b)に示すように、項目を細かく制御するための処理を業務スケルトンテンプレート122のどの関数に挿入するかを定義する処理挿入定義1237、項目に関する入力コントロールの制御を定義する入力コントロール制御定義1232、項目に対するイベントとして、フォーカス時の処理を定義する入力コントロールイベント制御定義1231a及び入力による値変化やエラー発生時の処理を定義する項目イベント制御定義1231b、項目に対するユーザの定義をおこなうXXXフォーカス取得時制御U12やXXX値変化時制御U13を含むユーザ関数定義1236、入力項目や訂正前項目など項目に関するデータの管理を定義する入力項目データ定義1233、項目に対してどのように初期化を行うかや他の項目のデータをどのように演算して代入するかを定義する初期化/代入式定義1234、項目に関するデータを業務DB128からどのように受け取るか又は出力するかなどを定義する入出力インターフェース定義1235及び項目に関する動作を変更するためのプロパティ(動作属性)を定義する項目テンプレートプロパティ1238を備える構成である。
ステップS1における業務スケルトンテンプレート122への項目テンプレート123の挿入は、図4に示すように、項目テンプレート123における定義が業務スケルトンテンプレート122の該当する部分へ行われる。具体的には、入力コントロールに関する入力コントロール制御定義1232、入力コントロールイベント制御定義1231aが画面制御定義1222へ、入力項目に関する入力項目データ定義1233、項目イベント制御定義1231bが入力項目定義1223へ、演算定義に関する初期化/代入式定義1234が初期化/代入式定義1224へ、業務上の入出力などに関する入出力インターフェース定義1235が入出力インターフェース定義1225へ、それぞれ挿入される。また、設定ファイル127における項目テンプレート管理テーブル1271へは、挿入された項目テンプレートの名称が追加される。また、処理挿入定義1237の挿入は、挿入先である業務スケルトンテンプレート122の挿入先関数名称に対して行われる。具体的には、同図に示すように、ユーザ関数定義1226の所定部分に対して行われる。なお、業務スケルトンテンプレート122への印刷テンプレート124、DB処理テンプレート125又は業務処理テンプレート126の挿入については、項目テンプレート123の挿入と同様に行うため、説明を省略する。
ステップS1においては、例えば図5(a)に示すようなGUIを用いた設定画面により、項目テンプレート内にあらかじめ用意されているプロパティの設定内容の変更をチェックボックスやラジオボタンなどで選択したりテキストで入力して行う。
このようにして入力されたプロパティの内容は、内部的には図5(b)で示されるように、マクロ名称とその内容をペアにしたマクロ管理テーブルとして項目テンプレートプロパティ1238内に格納される。
ここで、ステップS1におけるソースコード生成処理について詳細に説明する。
制御装置11は、図6に示すように、ステップS1の後のソースを1行づつ取得してステップS12〜S21までの各処理を全てのソースコードの行に対して行う(ステップS11、S22)。
ステップS11の後、その行の文字列が「#IF」で始まっているか否かが判定され(ステップS12)、始まっていない場合は次のソースコードの次の行に移行する(ステップS22、S11)。なお、この「#IF」は、工場出荷時などに各種テンプレートに対して予め定められたものである。
ステップS12において、「#IF」で始まっている場合は、条件式はマクロ比較か否かの判定(ステップS13)、条件式に項目テンプレート存在関数が記述されているか否かの判定(ステップS14)が順次行われる。
ステップS13においてマクロ比較である場合は、そのマクロを項目テンプレートプロパティ1238のマクロ管理テーブルより取得して条件が評価され(ステップS15)、条件式の真偽判定に応じ、「FALSE」の場合は「#ELSE」が存在する場合のみ「#ELSE」から「#ENDIF」までのソースコードが展開され(ステップS19)、ステップS22に移行される。また「TRUE」の場合は論理演算子で接続された条件式を全て処理した場合(ステップS20)に「#ELSE」または「#ENDIF」までのソースコードが展開され(ステップS21)、ステップS22に移行される。
具体的には、マクロ比較である場合は、図7に示すように、ソースコードC1における「#IF」以降の条件式を満たす場合は、設定に応じた処理を行うための定義(ソースコードC2)が展開され、満たさない場合は、ソースの展開が行われないため、ソースコードC1の部分が削除された状態で生成される。
ステップS14において項目テンプレート存在関数が記述されている場合は、項目テンプレート管理テーブル1271を検索して対象の項目テンプレート123が存在するか否かが確認され(ステップS16)、前述のステップS18〜S21と同様に条件分岐に応じてソースコードの展開が行われる。
具体的には、図8に示すように、ソースコードC3において項目テンプレート存在関数が記述されており、項目に「掛率」が存在する場合は、項目テンプレート管理テーブル1271に「掛率」が登録されているため「TRUE」と判定され、金額の演算において掛率を含む方のソースコードが展開される。項目に「掛率」が存在しない場合は、項目テンプレート管理テーブル1271に「掛率」が登録されていないため「FALSE」と判定され、金額の演算において掛率を含まない方のソースコードが展開される。つまり、項目の存在に応じて、業務処理に不要なソースコードは選択されず、必要なソースコードのみが選択される構成である。
ステップS14において項目テンプレート存在関数が記述されていない場合は、使用しているDB処理テンプレート125の定義の名称、つまりどの入出力インターフェース定義を使用しているかが取り出されて、前述のステップS18〜S21と同様に条件のチェックが行われる(ステップS17)。
具体的には、図9に示すように、ソースコードC4では定義の名称が「売上伝票」の場合、ソースコードC5では定義の名称が「受注伝票」に「#ENDIF」までに記載された処理の定義部分が展開される構成である。例えば、「売上伝票」が成立する場合は、その部分に関する処理のソースコードが展開され(ソースコードC6)、受注伝票処理に関するソースコードは展開されない(削除される)。
情報処理装置1は、上述したステップS1〜S4までの処理により、特に業務DB128における業務情報の入出力の定義に煩わされることなく、機能ごとに分類して定義された業務スケルトンテンプレート122を元に各テンプレートを挿入した実行定義を生成することができる。
そして、上述したソースコード生成処理により、定義の設定、項目の設定、又は使用するDB処理テンプレート125の定義に応じたソースコードを生成する構成であるため、業務処理に関係しない冗長なソースコードを含まない実行定義を生成することができる。このため、実行定義をチェックする際に、余分な部分をトレースする必要がなく、開発効率を向上させることができる。
ここで、上述したステップS1〜S3までの処理による売上伝票入力に関する実行定義に基づいた実行エンジン111の処理について、詳細に説明する。
図10に示すように、業務スケルトンテンプレート122における起動時処理の定義や画面表示に関する定義が読み込まれて入力画面の生成処理が行われ(ステップS31)、同様に売上伝票のヘッダ部に関する定義が読み込まれてヘッダ部の処理が行われる(ステップS32)。次いで、業務スケルトンテンプレート122における明細部に関する定義が読み込まれて明細部の処理が全ての明細に対して行われ(ステップS33、S34)、同様に集計部に関する定義が読み込まれて集計部の処理が行われ(ステップS35)、終了時処理の定義などに基づいた処理として、次のヘッダの有無に応じてステップS32に戻るか終了するかの判定が行われる(ステップS36)。
また、上記処理の中でヘッダ部の項目に対して入力が行われた場合は、業務スケルトンテンプレート122に挿入された項目テンプレートの定義に基づいて(図4参照)、図11に示すように、起動時イベント制御関数による処理、ヘッダ部プロパティ制御関数による処理、初期化定義による処理が行われ(ステップS41〜S43)、入力コントロールとしてフォーカス取得時処理定義による処理とフォーカス取得時制御関数による処理が行われる(ステップS44、S45)。
次いで、入力が正常であるか否かが判定され(ステップS46)、正常である場合は画面制御として値変化時処理定義とその関数による処理が行われ(ステップS47、S48)、データ制御として代入定義による処理が行われ(ステップS49)、フォーカス喪失時処理による処理が行われて(ステップS51)、終了する。また、入力が正常でない場合は画面制御としてエラー発生時処理定義による処理が行われて終了する(ステップS50)。
ただし、エラー発生時の処理定義において、再度入力を促すような動作を記述した場合は、該当する項目の入力制御から移行することなく再度入力を行うような制御も可能である。
情報処理装置1は、例えば、売上伝票入力に関する実行定義を作成し、その実行定義を元に実行エンジン111で処理することで売上伝票入力に関する業務処理を行うことができる。この際の実行定義は、余分なソースコードを含まないため、実行する際の処理速度を向上させることができる。なお、上述した処理は売上伝票入力に関する実行定義を元にした処理であるが、他の機能における業務スケルトンテンプレート122と各テンプレートとを元にした実行定義においても、その定義に従った処理が行われることは言うまでもない。
なお、本実施の形態では、情報処理装置1は、PCなどの情報機器として説明したが、本発明をシステムに適用した場合を例示する図12に示すように、LAN(Local Area Network)やインターネットなどである通信ネットワークNに接続するサーバ2と端末3とによる情報処理システム101であってもよい。この場合は、上述した制御装置11と同等の処理を記憶装置12を備えるサーバ2で行い、表示装置13、入力装置14及び印刷装置16を備える端末3で、業務処理に関する操作や出力を行う。なお、実行エンジン111はサーバ2、端末3のどちらで実行しても良い。また、端末3は、クライアント端末3a、3b、3cの複数の端末で構成してもよい。
また、本実施の形態では、インタプリタで業務処理を行う形式で説明したが、オブジェクトコードを生成して制御装置11は当該オブジェクトコードを実行して業務処理を行う形式であってもよい。具体的には、オブジェクトコードを実行して業務処理を行う形式を例示する図13に示すように、制御装置11は、前述した実行定義の作成(ステップS4)の後、実行エンジン111の代わりにコンパイラを実行して、実行定義に基づいたプログラム生成によりプログラムソースの作成を行い(ステップS4)、当該プログラムソースをコンパイルして業務プログラムを生成し(ステップS5)、その業務プログラムで業務処理を行う(ステップS6)。この場合は、前述したソースコード生成処理により、コンパイルするソースコードが短くなるため、処理速度の向上の他に、生成されるオブジェクトコードをコンパクトにすることができる。
なお、本実施の形態における記述は、本発明の一例を示すものであり、これに限定しない。本発明における情報処理装置1の細部構成及び細部動作に関しては、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。例えば、記憶装置12に記憶されるデータを読み書き可能な記憶媒体に格納して他の情報機器で実行する構成であっても良い。
また、例示したソースコードは一例であり、図示例に限定するものではない。つまり、条件分岐文は「IF」以外のものであって良い。更に対象となる「#」は、他のリテラルなどでよく、特に限定しない。
本発明である情報処理装置1の機能的構成を模式的に示した図である。 情報処理装置1における各テンプレートから業務処理を実行する構成を模式的に示した図である。 (a)は、実行エンジン111と業務スケルトンテンプレート122の構成を模式的に示した図であり、(b)は、項目テンプレート123の構成を模式的に示した図である。 業務スケルトンテンプレート122に項目テンプレート123を挿入することで実行エンジン111で実行する実行定義を作成する概略を示す図である。 項目テンプレート123におけるプロパティの設定を例示する図である。 制御装置11が行うソースコード生成処理を示すフローチャートである。 項目テンプレート123のプロパティで設定されたマクロに基づいたソースコードの生成を例示する図である。 項目テンプレート123で定義された項目に基づいたソースコードの生成を例示する図である。 使用しているDB処理テンプレート125の定義に基づいたソースコードの生成を例示する図である。 制御装置11が行う実行定義に基づいた業務処理を例示するフローチャートである。 制御装置11が行う実行定義に基づいた項目への入力処理を例示するフローチャートである。 本発明を情報処理システム101に適用した場合を例示する構成図である。 オブジェクトコードを実行して業務処理を行う形式を例示する図である。
符号の説明
1 情報処理装置
101 情報処理システム
2 サーバ
3 端末
3a、3b、3c クライアント端末
N 通信ネットワーク
11 制御装置(ソースコード生成手段、判定手段、入出力処理特定手段)
111 実行エンジン
1111 全体制御
1112 処理制御
1113 画面制御
1114 データ制御
12 記憶装置(記憶手段)
121 業務プログラムファイル
122 業務スケルトンテンプレート
1221 イベント処理定義
1222 画面制御定義
1223 入力項目定義
1224 初期化/代入式定義
1225 入出力インターフェース定義
1226 ユーザ関数定義
123 項目テンプレート
1231a 入力コントロールイベント制御定義
1231b 項目イベント制御定義
1232 入力コントロール制御定義
1233 入力項目データ定義
1234 初期化/代入式定義
1235 入出力インターフェース定義
1236 ユーザ関数定義
1237 処理挿入定義
1238 項目テンプレートプロパティ
124 印刷テンプレート
125 DB処理テンプレート
126 業務処理テンプレート
127 設定ファイル
1271 項目テンプレート管理テーブル
128 業務DB
129 実行定義生成プログラム
13 表示装置(選択手段)
14 入力装置(選択手段)
15 通信装置
16 印刷装置
17 バス
C1〜C6 ソースコード
G1 ヘッダ部
G2 明細部
G3 集計部
I1 起動時処理
I2 入力開始時処理
I3 ヘッダ部開始時処理
I4 ヘッダ部終了時処理
I5 明細部開始時処理
I6 明細部終了時処理
I7 集計部開始時処理
I8 集計部終了時処理
I9 入力終了時処理
I10 終了時処理
K1 伝票番号項目
K2 得意先コード項目
K3 得意先名
K4 明細項目
K5 集計項目
U1 起動時イベント制御
U2 固有パラメータ設定
U3 ヘッダ部プロパティ
U4 明細部プロパティ
U5 集計部プロパティ
U6 入力終了時検索前制御処理
U7 入力終了時検索後制御
U8 入力終了時更新前制御
U9 入力終了時更新後制御
U10 入力区分フォーカス取得時制御
U11 入力区分値変化時制御
U12 XXXフォーカス取得時制御
U13 XXX値変化時制御

Claims (7)

  1. 業務処理に関するプログラム部品の雛形であり業務処理の内容を定義する業務スケルトン情報及び業務処理における項目毎の処理内容を定義する項目テンプレート情報を記憶する記憶手段と、
    前記定義される処理のいずれかを選択する選択手段と、
    前記記憶手段に記憶された業務スケルトン情報と項目テンプレート情報とを集約して業務処理に関するプログラムのソースコードを生成する際に前記選択手段における選択に基づいてソースコードを生成するソースコード生成手段と、
    を備えたことを特徴とする情報処理装置。
  2. 前記選択手段は、前記項目テンプレート情報で定義される処理のいずれかを選択することを特徴とする請求項1に記載の情報処理装置。
  3. 業務処理に関するプログラム部品の雛形であり業務処理の内容を定義する業務スケルトン情報及び業務処理における項目毎の処理内容を定義する項目テンプレート情報を記憶する記憶手段と、
    前記項目テンプレート情報における項目が前記業務スケルトン情報で定義される業務処理における項目に含まれるか否かを判定する判定手段と、
    前記記憶手段に記憶された業務スケルトン情報と項目テンプレート情報とを集約して業務処理に関するプログラムのソースコードを生成する際に前記判定手段の判定結果に基づいてソースコードを生成するソースコード生成手段と、
    を備えたことを特徴とする情報処理装置。
  4. 業務処理に関するプログラム部品の雛形であり業務処理の内容を定義する業務スケルトン情報、業務処理における項目毎の処理内容を定義する項目テンプレート情報及び業務処理に関する情報の入出力処理を定義する入出力テンプレート情報を記憶する記憶手段と、
    前記業務スケルトン情報及び/又は項目テンプレート情報で定義される業務処理における情報の入出力に基づいて前記入出力テンプレート情報において定義される入出力処理を特定する入出力処理特定手段と、
    前記記憶手段に記憶された業務スケルトン情報と項目テンプレート情報とを集約して業務処理に関するプログラムのソースコードを生成する際に前記入出力処理特定手段で特定された入出力処理に基づいてソースコードを生成するソースコード生成手段と、
    を備えたことを特徴とする情報処理装置。
  5. 業務処理に関するプログラム部品の雛形であり業務処理の内容を定義する業務スケルトン情報及び業務処理における項目毎の処理内容を定義する項目テンプレート情報を記憶するコンピュータに、
    前記定義される処理のいずれかを選択する選択手段と、
    前記記憶された業務スケルトン情報と項目テンプレート情報とを集約して業務処理に関するプログラムのソースコードを生成する際に前記選択手段における選択に基づいてソースコードを生成するソースコード生成手段と、
    を実現させることを特徴とするプログラム。
  6. 業務処理に関するプログラム部品の雛形であり業務処理の内容を定義する業務スケルトン情報及び業務処理における項目毎の処理内容を定義する項目テンプレート情報を記憶するコンピュータに、
    前記項目テンプレート情報における項目が前記業務スケルトン情報で定義される業務処理における項目に含まれるか否かを判定する判定手段と、
    前記記憶手段に記憶された業務スケルトン情報と項目テンプレート情報とを集約して業務処理に関するプログラムのソースコードを生成する際に前記判定手段の判定結果に基づいてソースコードを生成するソースコード生成手段と、
    を実現させることを特徴とするプログラム。
  7. 業務処理に関するプログラム部品の雛形であり業務処理の内容を定義する業務スケルトン情報、業務処理における項目毎の処理内容を定義する項目テンプレート情報及び業務処理に関する情報の入出力処理を定義する入出力テンプレート情報を記憶するコンピュータに、
    前記業務スケルトン情報及び/又は項目テンプレート情報で定義される業務処理における情報の入出力に基づいて前記入出力テンプレート情報において定義される入出力処理を特定する入出力処理特定手段と、
    前記記憶された業務スケルトン情報と項目テンプレート情報とを集約して業務処理に関するプログラムのソースコードを生成する際に前記入出力処理特定手段で特定された入出力処理に基づいてソースコードを生成するソースコード生成手段と、
    を実現させることを特徴とするプログラム。
JP2005218913A 2005-07-28 2005-07-28 情報処理装置及びプログラム Pending JP2007034807A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005218913A JP2007034807A (ja) 2005-07-28 2005-07-28 情報処理装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005218913A JP2007034807A (ja) 2005-07-28 2005-07-28 情報処理装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2007034807A true JP2007034807A (ja) 2007-02-08
JP2007034807A5 JP2007034807A5 (ja) 2008-08-07

Family

ID=37793976

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005218913A Pending JP2007034807A (ja) 2005-07-28 2005-07-28 情報処理装置及びプログラム

Country Status (1)

Country Link
JP (1) JP2007034807A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009181437A (ja) * 2008-01-31 2009-08-13 Casio Comput Co Ltd データ処理装置及びプログラム
JP2013137838A (ja) * 2013-04-11 2013-07-11 Casio Comput Co Ltd データ処理装置及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009181437A (ja) * 2008-01-31 2009-08-13 Casio Comput Co Ltd データ処理装置及びプログラム
JP2013137838A (ja) * 2013-04-11 2013-07-11 Casio Comput Co Ltd データ処理装置及びプログラム

Similar Documents

Publication Publication Date Title
CA2875309C (en) Defining and mapping application interface semantics
CN108762743B (zh) 一种数据表操作代码生成方法及装置
US20140136958A1 (en) Relating to distributed access infrastructure for a database
US11120200B1 (en) Capturing unstructured information in application pages
RU2461058C2 (ru) Определяемый помощник по приложениям
JP2010015458A (ja) プログラム修正支援システム、プログラム修正支援方法、およびプログラム修正支援プログラム
JPH1125126A (ja) システム設計ツール及びデータウエアハウス設計システム及び方法
JP2016192223A (ja) 会計情報読取りシステム及びプログラム
JP4959501B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP2007034807A (ja) 情報処理装置及びプログラム
JP4867229B2 (ja) 情報処理装置及びプログラム
JP2007034806A (ja) 情報処理装置及びプログラム
JP6336922B2 (ja) 業務バリエーションに基づく業務影響箇所抽出方法および業務影響箇所抽出装置
JP4906424B2 (ja) Webサービス設計方法及び装置
JP6097231B2 (ja) プログラム生成装置および方法
JP6552162B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP2008165497A (ja) 情報処理装置及びプログラム
JP5336906B2 (ja) 設計工程管理装置
JP5504212B2 (ja) テストケース自動生成システム、テストケース自動生成方法、およびテストケース自動生成プログラム
JP2009163566A (ja) ジョブ解析支援装置
JP2001043076A (ja) Gui画面生成装置、gui画面生成方法及びgui画面生成プログラムを記録した記録媒体
JP2006285473A (ja) 製造工程管理システム
JP2020009169A (ja) 注釈の付与を支援するための情報処理システム及びプログラム
Rodríguez et al. Model‐based assisted migration of oracle forms applications: The overall process in an industrial setting
EP4261678A1 (en) Generation of a technical instruction

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080625

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080625

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110426

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110510

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110628

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110628

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110726

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20111122