JP5586076B2 - データ処理装置及びプログラム - Google Patents

データ処理装置及びプログラム Download PDF

Info

Publication number
JP5586076B2
JP5586076B2 JP2008021228A JP2008021228A JP5586076B2 JP 5586076 B2 JP5586076 B2 JP 5586076B2 JP 2008021228 A JP2008021228 A JP 2008021228A JP 2008021228 A JP2008021228 A JP 2008021228A JP 5586076 B2 JP5586076 B2 JP 5586076B2
Authority
JP
Japan
Prior art keywords
source code
item
compiling
unit
argument
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.)
Expired - Fee Related
Application number
JP2008021228A
Other languages
English (en)
Other versions
JP2009181437A (ja
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.)
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 JP2008021228A priority Critical patent/JP5586076B2/ja
Publication of JP2009181437A publication Critical patent/JP2009181437A/ja
Application granted granted Critical
Publication of JP5586076B2 publication Critical patent/JP5586076B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)

Description

本発明は、データ処理装置及びプログラムに関する。
従来から、WS(Work Station)やPC(Personal Computer)等の業務処理を行うデータ処理装置では、汎用的なプログラム言語を用いて作成されたアプリケーションプログラムにより、上記業務処理を行っている。具体的には、プログラム言語を用いて処理を記述したソースコードをCPU(Central Processing Unit)が実行可能なオブジェクトコードに変換するコンパイル処理を行うことで、業務処理に関するアプリケーションプログラムを作成する。データ処理装置は、上記コンパイル処理により作成されたアプリケーションプログラムとCPUとの協働により業務処理を実行する。
データ処理装置において、アプリケーションプログラムを作成する有用な技術としては、特許文献1〜3が知られている。この特許文献1〜3には、ソースコードをコンパイルしてアプリケーションプログラムを生成するアプリケーション生成装置、コンパイル装置等が開示されている。
特開2007−226358号公報 特開平10−133883号公報 特開平11−212802号公報
特に業務処理に関するアプリケーションプログラムの作成では、業務分野のデータ処理をモデル化し、各種業務処理ごとにプログラムを部品化して再利用する開発手法が知られている。例えば、伝票作成に関するアプリケーションプログラムを作成する場合は、伝票に記載する売上、数量などの項目に関するプログラム部品や、参照すべきデータベースへのアクセスに関するプログラム部品を組合せることでソースコードを作成し、コンパイルして、業務処理に関するアプリケーションプログラムを作成している。
また、業務処理における項目処理については、他の項目の値を使用して処理を行うものがある。このため、項目に関するプログラム部品を組み合わせてアプリケーションプログラムを作成する際には、各項目の存在をチェックするシステム関数を組み込む必要があった。
しかしながら、上記システム関数を組み込んだアプリケーションプログラムについては、実行時において各項目の存在をチェックする処理が行われるため、本来行うべき業務処理の処理速度に影響が生じる虞があった。
本発明は、プログラム部品を組み合わせて業務処理に関するアプリケーションプログラムを作成する際に、本来行うべき業務処理の処理速度への影響を低減させる技術を提供することである。
請求項1、4に記載の発明は、ソースコードをコンパイルしてオブジェクトコードに変換し、各種業務項目を処理する業務アプリケーションプログラムを作成するコンパイル手段と、
前記コンパイル手段のコンパイル時に、前記ソースコードに含まれる関数が、当該ソースコード上における特定の業務項目の有無をチェックして当該特定の業務項目への置き換えを行うシステム関数であるか否かを判別する関数判別手段と、
前記コンパイル手段のコンパイル時に、前記関数判別手段による判別結果が前記システム関数である場合、当該システム関数の引数を解析する解析手段と、
前記コンパイル手段のコンパイル時に、前記解析手段により解析された引数に含まれる前記特定の業務項目がソースコードに含まれるか否かを判別する判別手段と、
前記コンパイル手段のコンパイル時に、前記判別手段の判別結果に基づいて、前記ソースコードに含まれるシステム関数を前記解析手段により解析された引数に置き換える置換手段と、
を備える。
請求項2に記載の発明は、請求項1に記載の発明において、前記解析手段は、前記特定の業務項目を含む第1の引数、及び、当該特定の業務項目がソースコードに含まれない場合に置き換えるべき値を含む第2の引数を解析し、
前記置換手段は、前記判別手段の判別結果が前記特定の業務項目を含む場合、前記ソースコードに含まれるシステム関数を前記第1の引数に置き換える。
請求項3に記載の発明は、請求項1に記載の発明において、前記解析手段は、前記特定の業務項目を含む第1の引数、及び、当該特定の業務項目がソースコードに含まれない場合に置き換えるべき値を含む第2の引数を解析し、
前記置換手段は、前記判別手段の判別結果が前記特定の業務項目を含まない場合、前記ソースコードに含まれるシステム関数を前記第2の引数に置き換える。
本発明によれば、プログラム部品を組み合わせて業務処理に関するアプリケーションプログラムを作成する際に、本来行うべき業務処理の処理速度への影響を低減させる。
以下、本発明の実施の形態について図を参照して説明するが、この発明の範囲は以下の実施の形態に限定されない。
先ず、本実施の形態に係るデータ処理装置の構成について、図1を参照して説明する。図1は、データ処理装置1の機能的構成を模式的に示すブロック図である。
図1に示すように、データ処理装置1は、制御装置11、記憶装置12、表示装置13、入力装置14、通信装置15、印刷装置16を有する。上記データ処理装置1の各部はバス17により電気的に接続されている。データ処理装置1は、WSやPC等の情報機器などであってよい。
制御装置11は、CPU、RAM(Random Access Memory)、ROM(Read Only Memory)などを有しており(いずれも図示しない)、データ処理装置1の動作を中央制御する。具体的には、制御装置11は、RAMの作業領域に展開されたROMや記憶装置12に記憶されたプログラムデータとCPUとの協働により各部を統括制御する。
記憶装置12は、プログラムデータや各種設定データ等のデータを制御装置11から読み書き可能に記憶する。例えば、記憶装置12は、HDD(Hard Disk Drive)、半導体メモリであってよい。
上記記憶装置12が記憶するデータとしては、業務プログラムファイル121、業務スケルトンテンプレート122、項目部品123、印刷部品124、DB処理部品125、業務処理部品126、設定ファイル127、各種参照ファイル128及び業務アプリケーション生成プログラム129などがある。
業務プログラムファイル121は、業務処理に関するアプリケーションプログラムである。業務プログラムファイル121は、制御装置11のCPUとの協働により、データ処理装置1における業務アプリケーションの実行処理を実行させる。具体的には、業務プログラムファイル121は、制御装置11においてCPUが実行可能なオブジェクトコードであり、コンパイル処理によりソースコードから生成されたデータである。
業務スケルトンテンプレート122は、売上伝票入力処理、請求書処理、顧客情報管理処理などの事務処理業務における処理の雛形をソースコードで定義したファイルである。業務スケルトンテンプレート122は、コンパイル処理により業務プログラムファイル121を生成する際の元となるソースコードである。すなわち、業務プログラムファイル121は、処理の雛形である業務スケルトンテンプレート122に業務処理の詳細を部品化したソースコードである項目部品123、印刷部品124、DB処理部品125、業務処理部品126を挿入したソースコードをコンパイルして生成される。なお、業務スケルトンテンプレート122は、上述した各種処理ごとにソースコードが分割された、各種処理ごとのデータファイルであってよい。
項目部品123は、業務スケルトンテンプレート122における各処理の雛形において、各項目における入力や表示を行うための定義や処理に関するソースコードを含むデータファイルである。ここにおける項目とは、例えば販売管理に関する売上伝票や受注伝票をユニークに扱う伝票番号、取引先や得意先を示す得意先コード、商品を示す商品コード、当該商品コードに対応する商品名などである。項目部品123は、上述した各項目ごとに定義や処理に関するソースコードが分割された、各項目ごとのデータファイルであってよい。
印刷部品124は、業務スケルトンテンプレート122における各処理の雛形において、伝票や帳票などの印刷を行うための定義情報、書式情報、印字制御などに関するソースコードを含むデータファイルである。なお、印刷部品124については、印刷する項目単位に定義や処理に関するソースコードが分割された、各項目ごとのデータファイルであってよい。
DB処理部品125は、業務処理における顧客情報、商品情報、売買記録などの業務情報を格納するデータベースDBに対し、データの更新、登録又は抽出など、当該データベースDBへの整合性の取れたデータアクセスを行う処理内容や定義情報に関するソースコードを含むデータファイルである。
業務処理部品126は、上述した部品で呼び出させて使用されるサブルーチン的な処理に関するソースコードを含むデータファイルである。業務処理部品126におけるサブルーチン的な処理の例としては、入力可能な項目をリスト表示し、選択することでデータ入力の補助を行う処理、伝票入力などのトランザクション処理の途中で新たにデータベースに対してレコード追加する処理、各部品で共通な処理又は問い合わせ・確認のダイアログを表示する処理などがある。
設定ファイル127は、アプリケーションプログラムを作成する際に必要な補助的な情報を管理するためのファイルである。具体的には、設定ファイル127には、その業務アプリケーションプログラムの実行時に参照する各種参照ファイル128を、その実体が格納されたフォルダから実行時に参照可能なフォルダへコピーするためのデータなどが格納されている。
例えば、設定ファイル127は、ソースコード上で利用されるシステム関数の名目や、当該システム関数と、ライブラリデータとの対応関係などを示すシステム関数テーブルなどであってよい。データ処理装置1では、このシステム関数テーブルを参照することで、コンパイル時におけるシステム関数のチェックを行うことができる。また、データ処理装置1では、システム関数テーブルを参照することで、ソースコードをコンパイルする際に、ソースコードに含まれるシステム関数に対応するライブラリデータを、アプリケーションプログラムの実行時に参照可能なフォルダへコピーすることが可能となる。
各種参照ファイル128は、上述した業務スケルトンテンプレート122やプログラム部品で組み合わされた業務処理において、画面表示や演算等の処理で参照されるデータファイルである。具体的には、CPUが直接読み出して処理が可能なライブラリデータ(オブジェクトファイル)であり、ソースコードのシステム関数として予め用意されたライブラリデータ、業務処理時の処理に関する実行モジュール、JPEG(Joint Photographic Experts Group)等の業務処理時の表示画面に関するイメージデータ、制御内容や定義内容を含むテキストデータなどがある。
業務アプリケーション生成プログラム129は、ソースコードの作成や、ソースコードのコンパイル等の処理に関するアプリケーションプログラムである。業務アプリケーション生成プログラム129は、制御装置11のCPUとの協働により、データ処理装置1におけるソースコード作成処理を実行させる。また、業務アプリケーション生成プログラム129は、制御装置11のCPUとの協働により、データ処理装置1におけるコンパイル処理を実行させる。
表示装置13は、制御装置11から出力された表示制御信号に基づいた画像を表示画面に表示する。表示装置13は、LCD(Liquid Crystal Display)やCRT(Cathode Ray Tube)などのディスプレイであってよい。
入力装置14は、ユーザからの操作入力を受け付け、当該操作入力に応じた操作信号を制御装置11へ出力する。例えば、通信装置15は、文字入力キー、数字入力キー、その他各種機能に対応付けられたキーを備えたキーボード、マウス等のポインティングデバイスであってよい。
通信装置15は、制御装置11の制御の下、所定の通信プロトコルを用いて、互いに通信可能に接続する他の機器との間でデータ通信を行う。具体的には、通信装置15は、無線通信回路及びアンテナや、有線で通信を行うための通信インターフェイスを備えた通信回路であり、無線/有線LAN(Local Aria Network)、インターネットなどの通信ネットワークと接続し、当該通信ネットワークと接続する他の情報機器との間でデータ通信を行う。データ処理装置1は、この通信装置15を介したデータ通信により、業務データが格納されたデータベースDBへのアクセスを行う。
印刷装置16は、制御装置11の制御の下、用紙などに画像形成を行う。具体的には、印刷装置16は、電子写真方式やインクジェット方式などのプリンタなどである。
次に、データ処理装置1における業務アプリケーションの実行についての概要を図2、図3を参照して説明する。図2は、業務処理に関するソースコードの作成から業務実行までの処理を示す概念図である。図3は、データ処理装置1における業務アプリケーション処理の概要を示す概念図である。
図2に示すように、データ処理装置1では、業務スケルトンテンプレート122に項目部品123、印刷部品124、DB処理部品125、業務処理部品126を組み合わせてソースコードを作成するソースコード作成処理が行われ(ステップS1)、その作成されたソースコードをコンパイルするコンパイル処理が行われることで(ステップS2)、業務アプリケーションプログラムであるオブジェクトコード121aが生成される。上記ステップS1、S2は、前述したとおり、制御装置11のCPUと業務アプリケーション生成プログラム129との協働により、実行される処理である。
ステップS2により生成されるオブジェクトコード121aは、制御装置11のCPUとの協働により実行される業務アプリケーションプログラムである。この業務アプリケーションプログラムは、上述したステップS2、S3により、図3に示すように、業務処理における全体制御・画面制御・データ制御などの基本処理が定義された業務スケルトンテンプレート122に項目部品123、印刷部品124、DB処理部品125及び業務処理部品126を組み合わせて作成されている。
具体的には、制御装置11が実行する業務アプリケーションプログラムにおいて、表示装置13や入力装置14で表示又は入力されるデータ項目については、業務スケルトンテンプレート122と項目部品123とで定義される。また、データベースDBをSQL(Structured Query Language)などで検索、更新制御する場合の動作は、業務スケルトンテンプレート122とDB処理部品125とで定義される。さらに、データベースDBで検索した結果などのデータ出力を印刷装置16から印刷する場合の動作は印刷部品124で定義される。また、上述した各処理のサブルーチン的な処理については、業務処理部品126で定義される。例えば、業務処理部品126には、日付情報を業務スケルトンテンプレート122と項目部品123との定義に従って和暦で受け付けて、その和暦を元に西暦に変化する日付変換処理などが定義されている。
次いで、データ処理装置1では、ステップS2により作成されたオブジェクトコード121aを制御装置11のCPUが順次解析して実行することで、業務アプリケーションの実行処理が行われる(ステップS3)。このステップS3では、オブジェクトコード121aの元となるソースコードで定義されたシステム関数など、必要に応じてシステム用ライブラリデータ128aが参照される。
次に、ソースコード作成処理(ステップS1)の詳細について、図4〜図7を参照して説明する。図4は、データ処理装置1が実行するソースコード作成処理を示すフローチャートである。図5は、ソースコード作成処理における編集画面を例示する概念図である。図6は、項目値をチェックするシステム関数を例示する概念図である。図7は、ソースコードの記載内容を例示する概念図である。
図4に示すように、ソースコード作成処理が開始されると、入力装置14からの操作入力に基づいて、ソースコードを作成するアプリケーション名の設定が行われる(ステップS101)。
次いで、入力装置14からの操作により選択された業務処理の内容に基づいて、業務スケルトンテンプレート122の選択が行われる(ステップS102)。具体的には、このステップS102では、売上伝票入力処理、請求書処理、顧客情報管理処理などの業務スケルトンテンプレート122として用意された各種業務処理の中から、ユーザが作成を所望する処理が選択され、その選択された業務内容に関するデータファイルが選択される。
次いで、入力装置14からの操作入力に基づいて、ステップS102により選択された業務スケルトンのプロパティが設定される(ステップS103)。このステップS103で設定される業務スケルトンのプロパティとは、処理の定義などであってよい。例えば、プロパティによる設定としては、売上伝票入力処理における税率設定などがある。
次いで、入力装置14からの操作により選択された参照すべきデータベース名などに基づいて、DB処理部品125の選択が行われる(ステップS104)。例えば、ステップS104では、得意先情報が格納された得意先データベース、担当者情報が格納された担当者データベース、売上情報が格納された売上データベースなどの中から、ユーザが利用したいデータベースが選択され、その選択されたデータベースの利用に必要なDB処理部品125が選択される。
次いで、ステップS102により選択された業務スケルトンテンプレート122の定義内容に基づいて、表示装置13に実際の処理画面、印刷紙面を模した編集画面が表示され、項目や印刷レイアウトの編集を入力装置14からの操作入力に基づいて行う編集作業が開始される(ステップS105)。
例えば、ステップS105において、ステップS102により選択された業務スケルトンテンプレート122が売上伝票入力である場合は、図5に示すように、売上伝票入力を行う実際の画面や、売上伝票入力時の印刷紙面と同じレイアウトの編集画面が表示装置13に表示される。
この売上伝票入力に関する業務スケルトンテンプレート122には、入力項目としていくつかの項目テンプレートが予め用意されている。同様に、業務スケルトンテンプレート122には、印刷紙面や画面などの構成を示すいくつかの印刷テンプレートなど用意されている。編集開始時には、上記テンプレートの中から標準のテンプレートが使用される。例えば、図5の例では、標準の入力項目として、項目K1〜K9が使用されている。
次いで、編集作業が開始されると、入力装置14からの操作入力に基づいた編集作業内容の判定処理が行われる(ステップS106)。
ステップS106において、入力装置14からの操作指示が項目の削除であると判定された場合は、入力装置14からの操作入力に基づいて、削除すべき項目テンプレートの選択が受け付けられ(ステップS107)、削除選択された項目テンプレートに基づいた項目や、その項目に関してコントロールを行うボタンなどが編集画面上から削除される(ステップS108)。
ステップS106において、入力装置14からの操作指示が項目処理の編集であると判定された場合は、入力装置14からの操作指示に基づいて、編集すべき項目テンプレートの選択が受け付けられ(ステップS109)、選択された項目テンプレートの内容を変更するテンプレート編集が行われる(ステップS110)。このテンプレート編集では、例えば、項目のプロパティの変更、編集画面上における項目の配置位置の変更などが行われる。
ステップS106において、入力装置14からの操作指示が印刷処理の編集であると判定された場合は、入力装置14からの操作指示に基づいて、編集すべき印刷テンプレートの選択が受け付けられ(ステップS111)、選択された印刷テンプレートの内容を変更する印刷レイアウト編集が行われる(ステップS112)。この印刷レイアウト編集では、例えば、印刷領域の大きさやサイズ変更、印刷位置の調整などが行われる。
ステップS106において、入力装置14からの操作指示が編集作業の終了であると判定された場合は、上述したステップS107〜S112で変更した内容の定義ファイル(ソースコード)を保存するか否かが入力装置14からの保存実行指示の有無などに基づいて判定される(ステップS113)。
ステップS113の判定において、定義ファイルを保存すると判定された場合(YES)は、上述したステップS107〜S112で変更した内容に基づいて、業務スケルトンテンプレート122に項目部品123、印刷部品124、業務処理部品126を組み込んだ定義ファイルが保存される(ステップS114)。
具体的には、ステップS114において、上述した編集作業において項目の削除が行われた場合は、当該削除された項目に関する項目部品123が組み込まれることなく、削除された項目の処理や定義を含まないソースコードが作成される。また、編集作業において項目処理の編集が行われた場合は、編集対象となった項目に関する項目部品123の内容が編集内容に基づいて修正される。同様に、編集作業において印刷処理の編集が行われた場合は、編集対象となった印刷テンプレートに関する印刷部品124の内容が編集内容に基づいて修正される。
ソース生成処理により、項目の削除が行われた場合に生成されるソースコードでは、当該削除された項目に関する項目部品123が組み込まれることがなくなるため、削除された項目を利用する他の項目がある場合にエラーとなってしまう。そこで、業務スケルトンテンプレート122、項目部品123、印刷部品124、DB処理部品125、業務処理部品126などにおいて、項目を利用する処理については、図6に例示した項目値の有無をチェックするシステム関数が記載されている。
図6に示すように、項目値をチェックするシステム関数である「@項目値取得」は、引数1で指定された項目名が画面上(ソースコード上)に存在しない場合、引数2で指定された所定値を戻す処理を行う関数である。従って、上記システム関数を利用することで、処理に必要な項目が削除された場合であっても、引数2の所定値が代入されるために、正常に処理を実行することが可能となる。
具体的には、図7に示すように、業務スケルトンテンプレート122、項目部品123、印刷部品124、DB処理部品125、業務処理部品126などにおける雛形のソースコードでは、売上単価や売上金額の項目で利用される他の項目について「@項目値取得」の引数1で指定してチェックを行い、存在しない場合の値を引数2で指定している。例えば、売上単価の項目では、取引区分が商品割引である条件で利用される値引単価について、ソースコード上に存在しない場合は0を代入するように設定されている。
次に、コンパイル処理(ステップS2)の詳細について、図8、図9を参照して説明する。図8は、データ処理装置1が実行するコンパイル処理を示すフローチャートである。図9は、項目値を取得するシステム関数の置き換えを例示する概念図である。
図8に示すように、コンパイル処理が開始されると、コンパイル対象のソースコードが読み出され、当該ソースコード上の関数名が取得される(ステップS201)。
次いで、前述したシステム関数テーブルが読み出され、ステップS201で取得されたソースコード上の関数名と比較されることで、ソースコード上の各関数のチェックが行われ(ステップS202)、項目値を取得するシステム関数(「@項目値取得」など)であるか否かが判定される(ステップS203)。
ステップS203において、項目値を取得するシステム関数でないと判定された場合(NO)は、関数の引数が取得されて値を解析する解析処理が行われ(ステップS204)、解析した引数の情報がメモリ展開される(ステップS205)。
次いで、関数の処理自体について、該当するライブラリデータを用いるライブラリ関数を参照するように設定される(ステップS206)。このステップS206では、ステップS202によりチェックされた関数をどのように処理するかを設定する。システム関数は、予め用意されたシステム関数用のライブラリデータを参照して処理を行っている。ステップS206では、どのライブラリデータを参照して関数の処理を行うかを設定する。
次いで、引数の処理自体について、該当するライブラリデータを用いるライブラリ関数及び項目を参照するように設定される(ステップS207)。このステップS207では、引数内に設定している処理について、システム関数用のライブラリデータや項目値を参照して行うように設定される。
従って、ステップS202でチェックされた関数について、項目値を取得するシステム関数でないと判定された場合(NO)では、既存のコンパイル処理が行われることとなる。
ステップS203において、項目値を取得するシステム関数あると判定された場合(YES)は、当該システム関数の引数が解析され(ステップS208)、引数の値が取得される(ステップS209)。具体的には、前述した「@項目値取得」における引数1、引数2が取得される。
次いで、ステップS209において取得された引数1に該当する項目がソースコード上に存在するか否かがチェックされ(ステップS210)、そのチェック結果に基づいて引数1に該当する項目の存在の有無が判定される(ステップS211)。
ステップS211において、引数1に該当する項目がソースコード上に存在すると判定された場合(YES)は、本システム関数の処理が引数1で指定した項目に置き換えられる(ステップS212)。
具体的には、図9に示すように、項目値を取得するシステム関数として、引数1として値引単価、引数2として0が指定されており、ソースコード上に値引単価の項目が存在する場合は、引数1で指定した値引単価に置き換えられることとなる。
また、ステップS211において、引数1に該当する項目がソースコード上に存在しないと判定された場合(NO)は、引数2で指定された所定値に置き換えられる(ステップS213)。
具体的には、図9に示すように、項目値を取得するシステム関数として、引数1として値引単価、引数2として0が指定されており、ソースコード上に値引単価の項目が存在しない場合は、引数2で指定した値である0に置き換えられることとなる。
次いで、関数内の引数内の情報として、ステップS212、S213で置き換えられた情報がメモリに展開され(ステップS214)、引数の処理自体について、該当するライブラリデータを用いるライブラリ関数及び項目を参照するように設定される(ステップS215)。
従って、ステップS202でチェックされた関数について、項目値を取得するシステム関数であると判定された場合(YES)では、当該システム関数を実行した後にコンパイル処理が行われることとなる。
以上のように、データ処理装置1は、ソースコードをコンパイルしてオブジェクトコードに変換し、各種業務項目を処理する業務アプリケーションプログラムを作成するコンパイル手段(制御装置11、ステップS2)と、コンパイル手段のコンパイル時に、ソースコードに含まれる関数が、当該ソースコード上における特定の業務項目の有無をチェックして当該特定の業務項目への置き換えを行うシステム関数であるか否かを判別する関数判別手段(制御装置11、ステップS203)、コンパイル手段のコンパイル時に、関数判別手段による判別結果が上記システム関数である場合、当該システム関数の引数を解析する解析手段(制御装置11、ステップS208)と、コンパイル手段のコンパイル時に、解析手段により解析された引数に含まれる特定の業務項目がソースコードに含まれるか否かを判別する判別手段(制御装置11、ステップS210、S211)と、コンパイル手段のコンパイル時に、判別手段の判別結果に基づいて、ソースコードに含まれるシステム関数を解析手段により解析された引数に置き換える置換手段(制御装置11、ステップS212、S213)と、を備える。
従って、データ処理装置1は、ソースコード上において、特定の業務項目の有無をチェックして当該特定の業務項目への置き換えを行うシステム関数がある場合に、当該システム関数を実行した後にコンパイル手段によるコンパイルが行われることとなる。
このため、データ処理装置1では、コンパイル処理により作成されたオブジェクトコードを実行する際において(ステップS3)、上記システム関数の処理を実行する必要が無くなるため、本来行うべき業務処理の処理速度への影響を低減させることができる。
また、データ処理装置1では、図10に示すように、コンパイル処理により作成されたオブジェクトコードを実行する際に、上記システム関数の実行に必要なシステム用ライブラリデータ128aが不要となるため、ライブラリデータの読出時間を短縮することができる。従って、データ処理装置1では、コンパイル処理により作成されたオブジェクトコードの実行時における処理速度を向上させることができる。
また、データ処理装置1の解析手段は、特定の業務項目を含む第1の引数、及び、当該特定の業務項目がソースコードに含まれない場合に置き換えるべき値を含む第2の引数を解析する。また、データ処理装置1の置換手段は、判別手段の判別結果が特定の業務項目を含む場合、ソースコードに含まれるシステム関数を第1の引数に置き換える。また、データ処理装置1の置換手段は、判別手段の判別結果が特定の業務項目を含まない場合、ソースコードに含まれるシステム関数を第2の引数に置き換える。
従って、データ処理装置1では、特定の業務項目を含む第1の引数、及び、当該特定の業務項目がソースコードに含まれない場合に置き換えるべき値を含む第2の引数により、ソースコード上における特定の業務項目の有無をチェックして当該特定の業務項目への置き換えを行うシステム関数について、対応することが可能となる。
[変形例]
次に、業務処理に関するソースコードの作成から業務実行までの処理の変形例について、図11、図12を参照して説明する。図11は、業務処理に関するソースコードの作成から業務実行までの処理の変形例を示す概念図である。図12は、実行モード設定時の表示画面例を示す概念図である。
前述した実施の形態では、項目の存在をチェックするシステム関数の処理をコンパイル処理後のアプリケーションプログラム実行時に行うのではなく、オブジェクトコードを作成する時に行うようにしている。これに対し、変形例は、図11に示すように、前述した実施の形態の処理に実行モードを設定する処理(ステップS30)を追加したものである。
ステップS30における実行モードの設定では、前述したシステム関数「@項目値取得」の処理をどのように行うかについてが設定される。具体的には、ステップS30における実行モードの設定は、図12に示すような画面が表示装置13に表示され、入力装置14からの操作入力に基づいて設定される。例えば、図12の画面例は、システム関数「@項目値取得」で項目が存在しない場合にエラーとするか否かの設定を行う画面である。
ステップS30において設定された情報は、各種参照ファイル128と同種の制御情報128bとして保持される。従って、アプリケーションプログラム実行時には、制御情報128bも参照されることとなる。例えば、項目の非存在を許可しないようなアプリケーションプログラムを実行する場合、アプリケーションプログラムを修正することなく、ステップS30における実行モードの設定で動作を切り替えて使用することができる。
なお、上述した実施の形態における記述は、一例を示すものであり、これに限定するものではない。上述した実施の形態における構成及び動作に関しては、適宜変更が可能である。
例えば、以上の説明では、本発明に係るプログラムのコンピュータ読み取り可能な媒体としてROMを使用した例を開示したが、この例に限定されない。その他のコンピュータ読み取り可能な媒体として、フラッシュメモリ等の不揮発性メモリ、CD-ROM等の可搬型記録媒体を適用することが可能である。また、本発明に係るプログラムのデータを通信回線を介して提供する媒体として、キャリアウエーブ(搬送波)も本発明に適用される。
本実施の形態に係るデータ処理装置の機能的構成を模式的に示すブロック図である。 業務処理に関するソースコードの作成から業務実行までの処理を示す概念図である。 データ処理装置における業務アプリケーション処理の概要を示す概念図である。 データ処理装置が実行するソースコード作成処理を示すフローチャートである。 ソースコード作成処理における編集画面を例示する概念図である。 項目値をチェックするシステム関数を例示する概念図である。 ソースコードの記載内容を例示する概念図である。 データ処理装置が実行するコンパイル処理を示すフローチャートである。 項目値を取得するシステム関数の置き換えを例示する概念図である。 コンパイル処理により作成されたオブジェクトコードの実行を例示する概念図である。 業務処理に関するソースコードの作成から業務実行までの処理の変形例を示す概念図である。 実行モード設定時の表示画面例を示す概念図である。
符号の説明
1 データ処理装置
11 制御装置
12 記憶装置
13 表示装置
14 入力装置
15 通信装置
16 印刷装置
17 バス
121 業務プログラムファイル
121a オブジェクトコード
122 業務スケルトンテンプレート
123 項目部品
124 印刷部品
125 DB処理部品
126 業務処理部品
127 設定ファイル
127a システム関数テーブル
128 各種参照ファイル
128a システム用ライブラリデータ
128b 制御情報
129 業務アプリケーション生成プログラム
DB データベース
K1〜K9 項目

Claims (4)

  1. ソースコードをコンパイルしてオブジェクトコードに変換し、各種業務項目を処理する業務アプリケーションプログラムを作成するコンパイル手段と、
    前記コンパイル手段のコンパイル時に、前記ソースコードに含まれる関数が、当該ソースコード上における特定の業務項目の有無をチェックして当該特定の業務項目への置き換えを行うシステム関数であるか否かを判別する関数判別手段と、
    前記コンパイル手段のコンパイル時に、前記関数判別手段による判別結果が前記システム関数である場合、当該システム関数の引数を解析する解析手段と、
    前記コンパイル手段のコンパイル時に、前記解析手段により解析された引数に含まれる前記特定の業務項目がソースコードに含まれるか否かを判別する判別手段と、
    前記コンパイル手段のコンパイル時に、前記判別手段の判別結果に基づいて、前記ソースコードに含まれるシステム関数を前記解析手段により解析された引数に置き換える置換手段と、
    を備えるデータ処理装置。
  2. 前記解析手段は、前記特定の業務項目を含む第1の引数、及び、当該特定の業務項目がソースコードに含まれない場合に置き換えるべき値を含む第2の引数を解析し、
    前記置換手段は、前記判別手段の判別結果が前記特定の業務項目を含む場合、前記ソースコードに含まれるシステム関数を前記第1の引数に置き換える請求項1に記載のデータ処理装置。
  3. 前記解析手段は、前記特定の業務項目を含む第1の引数、及び、当該特定の業務項目がソースコードに含まれない場合に置き換えるべき値を含む第2の引数を解析し、
    前記置換手段は、前記判別手段の判別結果が前記特定の業務項目を含まない場合、前記ソースコードに含まれるシステム関数を前記第2の引数に置き換える請求項1に記載のデータ処理装置。
  4. コンピュータを、
    ソースコードをコンパイルしてオブジェクトコードに変換し、各種業務項目を処理する業務アプリケーションプログラムを作成するコンパイル手段、
    前記コンパイル手段のコンパイル時に、前記ソースコードに含まれる関数が、当該ソースコード上における特定の業務項目の有無をチェックして当該特定の業務項目への置き換えを行うシステム関数であるか否かを判別する関数判別手段、
    前記コンパイル手段のコンパイル時に、前記関数判別手段による判別結果が前記システム関数である場合、当該システム関数の引数を解析する解析手段、
    前記コンパイル手段のコンパイル時に、前記解析手段により解析された引数に含まれる前記特定の業務項目がソースコードに含まれるか否かを判別する判別手段、
    前記コンパイル手段のコンパイル時に、前記判別手段の判別結果に基づいて、前記ソースコードに含まれるシステム関数を前記解析手段により解析された引数に置き換える置換手段、
    として機能させるためのプログラム。
JP2008021228A 2008-01-31 2008-01-31 データ処理装置及びプログラム Expired - Fee Related JP5586076B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008021228A JP5586076B2 (ja) 2008-01-31 2008-01-31 データ処理装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008021228A JP5586076B2 (ja) 2008-01-31 2008-01-31 データ処理装置及びプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2013082574A Division JP5594393B2 (ja) 2013-04-11 2013-04-11 データ処理装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2009181437A JP2009181437A (ja) 2009-08-13
JP5586076B2 true JP5586076B2 (ja) 2014-09-10

Family

ID=41035355

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008021228A Expired - Fee Related JP5586076B2 (ja) 2008-01-31 2008-01-31 データ処理装置及びプログラム

Country Status (1)

Country Link
JP (1) JP5586076B2 (ja)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01259424A (ja) * 1988-04-08 1989-10-17 Matsushita Electric Ind Co Ltd ソフトウエア自動生成装置
JPH11237980A (ja) * 1998-02-20 1999-08-31 Hitachi Ltd オブジェクト指向最適化コード生成装置及び方法
JP2001022873A (ja) * 1999-07-12 2001-01-26 Casio Comput Co Ltd カスタマイズ処理装置およびそのプログラム記録媒体
JP2002229781A (ja) * 2001-01-30 2002-08-16 Denso Corp プログラム、電子制御装置、プログラムの製造方法
JP2007034807A (ja) * 2005-07-28 2007-02-08 Casio Comput Co Ltd 情報処理装置及びプログラム
JP2007034806A (ja) * 2005-07-28 2007-02-08 Casio Comput Co Ltd 情報処理装置及びプログラム
JP2007122187A (ja) * 2005-10-25 2007-05-17 Canon Inc プログラム・コード生成装置

Also Published As

Publication number Publication date
JP2009181437A (ja) 2009-08-13

Similar Documents

Publication Publication Date Title
US8904283B2 (en) Extendable meta-data support in final form presentation datastream print enterprises
CN108762743B (zh) 一种数据表操作代码生成方法及装置
JP4324060B2 (ja) 文書管理システム及びその方法と文書管理装置及び当該装置の制御方法
JP4917744B2 (ja) ランタイムおよび設計でのテキスト変換と多言語サポートをするラベルシステム
US11361035B2 (en) Batch generation of links to documents based on document name and page content matching
JP2007280230A (ja) 印刷装置
US20130124969A1 (en) Xml editor within a wysiwyg application
US8451467B2 (en) Printing apparatus, method for controlling print job, and computer program for pre-registering condition information relating to conditions for cancelling execution of a print job
JP2973913B2 (ja) 入力シートシステム
CN113760266B (zh) 一种功能模块文件的创建方法、创建装置和电子设备
JP2012098878A (ja) 帳票作成処理システムと帳票作成処理方法およびプログラム
JP4846030B2 (ja) 動作検証装置、動作検証方法および動作検証プログラム
JP5586076B2 (ja) データ処理装置及びプログラム
JP5594393B2 (ja) データ処理装置及びプログラム
JP4957043B2 (ja) 情報処理装置、プログラム及び業務アプリケーション導入方法
JP2011233104A (ja) 情報処理システム、情報処理装置、情報処理方法、プログラム、記録媒体
JP4867229B2 (ja) 情報処理装置及びプログラム
JP2008158885A (ja) 情報処理装置および文書印刷処理方法およびプログラムおよび記録媒体
JP2011043930A (ja) 帳票処理システム、帳票処理サーバ装置、帳票処理装置、帳票処理方法、およびプログラム
JP2007034806A (ja) 情報処理装置及びプログラム
JP2010152601A (ja) プリンタードライバー
JP2007034807A (ja) 情報処理装置及びプログラム
JP4054753B2 (ja) アプリケーション構築における仕様定義支援システムおよびプログラム
JP2010026589A (ja) 情報処理装置及びプログラム
JP2011175343A (ja) データ処理装置、データ処理方法、及びデータ処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101029

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20101029

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120827

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120911

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130115

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140718

R150 Certificate of patent or registration of utility model

Ref document number: 5586076

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees