説明

アプリケーションソフトウェア生成装置、プログラム及びアプリケーションソフトウェア生成システム

【課題】データ収集装置で実行するアプリケーションソフトウェアを容易に作成する。
【解決手段】バーコードを読み取るスキャナ41を有するハンディターミナル5がバーコードに基づくデータの収集を行うための業務アプリケーション72を生成するデータ処理装置1は、任意の項目を定義する表データ81を生成する表計算ソフト61と、表データ81に定義された項目に基づいてデータを収集するためにハンディターミナル5が実行する業務アプリケーション72が起動時に読み込む業務アプリケーション定義83を生成するアプリケーション生成モジュール62と、業務アプリケーション72及び業務アプリケーション定義83をハンディターミナル5に転送する通信モジュール63及び通信装置36と、表計算ソフト61、アプリケーション生成モジュール62及び通信モジュール63を実行するCPU11と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、アプリケーションソフトウェア生成装置、プログラム及びアプリケーションソフトウェア生成システムに関する。
【背景技術】
【0002】
棚卸等、資材の数量等の各種情報を把握して管理するため、各資材に付された識別子(例えばバーコードやRFID等)を読み取ってデータとして取り込むデータ収集装置(例えばバーコードリーダやRFIDリーダ等)が知られている。
このようなデータ収集装置として、多数の資材を収めた施設内で各資材に付された識別子を読み取る作業における所持、持ち運び及び取り回し等を考慮し、ハンディターミナル等の形態をとるものがある。以下、データ収集装置の一例として、バーコードを読み取るハンディターミナルを取り上げた説明を行う。
【0003】
ハンディターミナルで収集するデータの種類は一種類とは限らず、用途に応じて多岐にわたる。このため、収集するデータに応じて実行するアプリケーションソフトウェアを使い分けることが可能なハンディターミナルがある。このようなハンディターミナルを用いる場合、収集したいデータに応じたアプリケーションを外部のコンピュータ等からハンディターミナルに転送した上で、ハンディターミナルが有する制御部に実行させる。以下の記載において、「アプリケーション」の記載はアプリケーションソフトウェアを指す。
【0004】
収集するデータに応じて実行するアプリケーションを使い分けられるハンディターミナルを用いる場合、収集するデータに応じたアプリケーションの作成により任意のデータを収集することができる。しかしながら、アプリケーションを作成するには専門的な知識を有することから、収集したい項目に応じてアプリケーションを作成することは難しく、またコストがかかる。そこで、ハンディターミナルで実行するアプリケーションの作成を支援する専用のプログラムツールを利用してアプリケーションの作成処理を効率的に行うためのアプリケーション生成方法及びシステムが公開されている(例えば特許文献1及び特許文献2)。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2005−031816号公報
【特許文献2】特開2005−031815号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1及び特許文献2に記載のプログラムツールを利用する場合、当該プログラムツールを活用するための専門知識が必要となる。このため、当該プログラムツールの利用方法を知らない又はその経験が浅い者は、プログラムツールを利用することが難しい作業となってしまう。つまり、プログラムツールを利用したとしても、アプリケーションの作成に不慣れな者にとっては結果としてアプリケーションの作成が難しい作業であることに変わりはない。このため、アプリケーションの作成に不慣れな者が収集したい項目に応じたアプリケーションを任意に作成することは不可能に等しい。
【0007】
上記の問題は、バーコードを読み取るハンディターミナルに限らず、アプリケーションを実行可能なデータ収集装置ならば該当しうる問題である。
【0008】
本発明の課題は、データ収集装置で実行するアプリケーションソフトウェアを容易に作成することである。
【課題を解決するための手段】
【0009】
上記課題を解決するため、請求項1記載の発明によるアプリケーションソフトウェア生成装置は、識別情報の読取手段を有するデータ収集装置が前記識別情報に基づくデータの収集を行うためのアプリケーションソフトウェアを生成するアプリケーションソフトウェア生成装置であって、任意の項目を定義する表データを生成する表データ生成手段と、前記表データに定義された項目に基づいて前記データを収集するために前記データ収集装置が実行するアプリケーションソフトウェアを生成するアプリケーションソフトウェア生成手段と、前記生成されたアプリケーションソフトウェアを前記データ収集装置に転送する転送手段と、を備えることを特徴とする。
【0010】
請求項2に記載の発明は、請求項1に記載のアプリケーションソフトウェア生成装置において、前記識別情報に基づき収集するデータに対応する項目を指定する指定手段を備えることを特徴とする。
【0011】
請求項3に記載の発明は、請求項2に記載のアプリケーションソフトウェア生成装置において、前記指定手段は、前記表データに定義された項目のうち前記識別情報に基づき収集するデータに対応する項目と他の項目とを視覚的に判別可能とすることを特徴とする。
【0012】
請求項4に記載の発明は、請求項3に記載のアプリケーションソフトウェア生成装置において、前記アプリケーションソフトウェアは、前記表データに定義された複数の項目に対して前記データ収集装置によるデータの入力を行うための画面を当該データ収集装置の表示装置に表示させる機能と、前記画面上においてフォーカスの当たった項目に対して入力を可能とする機能と、予め定められたルールに基づきフォーカスを移動させる機能と、を有し、前記アプリケーションソフトウェア生成手段は、前記表データに定義された項目のうち前記識別情報に基づき収集するデータに対応する項目が最初に入力する項目でない場合に、前記識別情報に基づき収集するデータに対応する項目よりも前に入力する項目に対する入力終了後に前記フォーカスを移動させる機能によりフォーカスを移動させる場合には前記識別情報に基づき収集するデータに対応する項目にフォーカスを移動させる前記ルールを生成することを特徴とする。
【0013】
請求項5に記載の発明は、請求項1から4のいずれか一項に記載のアプリケーションソフトウェア生成装置において、前記表データに定義された項目に対応する項目を有する空の表データを生成する空データ生成手段と、前記アプリケーションソフトウェアを実行した前記データ収集装置によって収集されたデータを取り込む取込手段と、前記取込手段によって取り込まれたデータを前記空の表データに格納する格納手段と、を備えることを特徴とする。
【0014】
請求項6に記載の発明は、請求項1から5のいずれか一項に記載のアプリケーションソフトウェア生成装置において、前記表データ生成手段は、前記表データを複数生成することができ、前記アプリケーションソフトウェア生成手段は、複数の前記表データにそれぞれ対応する複数のアプリケーションソフトウェアを生成することを特徴とする。
【0015】
請求項7に記載の発明は、請求項6に記載のアプリケーションソフトウェア生成装置において、前記アプリケーションソフトウェア生成手段は、複数の前記表データにそれぞれ対応する複数のアプリケーションソフトウェアを生成すると共に生成された複数のアプリケーションソフトウェアのうちいずれか一つを選択して用いるためのメニューを生成し、前記転送手段は、前記複数のアプリケーションソフトウェア及び前記メニューを前記データ収集装置に転送することを特徴とする。
【0016】
請求項8に記載のプログラムは、識別情報の読取手段を有するデータ収集装置が前記識別情報に基づくデータの収集を行うためのアプリケーションソフトウェアをコンピュータに生成させるためのプログラムであって、前記コンピュータを、任意の項目を定義する表データを生成する表データ生成手段、前記表データに定義された項目に基づいて前記データを収集するために前記データ収集装置が実行するアプリケーションソフトウェアを生成するアプリケーションソフトウェア生成手段、前記生成されたアプリケーションソフトウェアを前記データ収集装置に転送する転送手段、として機能させることを特徴とする。
【0017】
請求項9に記載のアプリケーションソフトウェア生成システムは、識別情報の読取手段を有するデータ収集装置と、前記データ収集装置が前記識別情報に基づくデータの収集を行うためのアプリケーションソフトウェアを生成するアプリケーションソフトウェア生成装置と、を有するアプリケーションソフトウェア生成システムであって、前記アプリケーションソフトウェア生成装置は、任意の項目を定義する表データを生成する表データ生成手段と、前記表データに定義された項目に基づいて前記データを収集するために前記データ収集装置が実行するアプリケーションソフトウェアを生成するアプリケーションソフトウェア生成手段と、前記生成されたアプリケーションソフトウェアを前記データ収集装置に転送する転送手段と、を備えることを特徴とする。
【発明の効果】
【0018】
本発明によれば、データ収集装置で実行するアプリケーションソフトウェアを容易に作成することができる。
【図面の簡単な説明】
【0019】
【図1】アプリケーション生成装置として機能するデータ処理装置を含むアプリケーション生成システムの構成を示す図である。
【図2】アプリケーション生成システムの各構成のブロック図である。
【図3】アプリケーション生成システムのソフトウェア及びデータの構成と各を示す図である。
【図4】アプリケーション生成システムの処理内容の概要を示す説明図である。
【図5】表データの一例を示す図である。図5(a)は、表データの「棚卸」シートにフォーカスが当たっている状態を示し、図5(b)は、表データの「フロア棚卸」シートにフォーカスが当たっている状態を示し、図5(c)は、表データの「エリア棚卸」シートにフォーカスが当たっている状態を示す。
【図6】アプリケーション生成モジュールの操作画面の表示例である。
【図7】業務アプリケーションを実行中のハンディターミナルの表示装置の表示内容の一例を示す図である。図7(a)は、「棚卸」の業務アプリケーション定義に対応した表示内容を示し、図7(b)は、「フロア棚卸」の業務アプリケーション定義に対応した表示内容を示し、図7(c)は、「エリア棚卸」の業務アプリケーション定義に対応した表示内容を示す。
【図8】業務アプリケーションの実行時の表示画面におけるフォーカス位置の一例を示す図である。図8(a)は棚卸日及び担当者の入力前の一例を示し、図8(b)は棚卸日及び担当者の入力後の一例を示す。図8(a)、(b)に示す図は、図7(a)に示す「棚卸」の業務アプリケーション定義に対応した表示内容である。
【図9】業務メニューを実行中のハンディターミナル5の表示装置38の表示内容の一例を示す図である。
【図10】メニューシートの一例を示す図である。図10(a)は、表データの末尾シートとして生成されたメニューシートの表示例を示し、図10(b)は印刷されたメニューシートの一例を示す。
【図11】登録用表データの表示例を示す図である、図11(a)は、登録データを格納する前の登録用表データの表示例を示し、図11(b)は、登録データを格納した後の登録用表データの表示例を示す。
【図12】表データの各セルに定義される項目及び設定されるデータと、メニューシート及び登録用表データに定義される項目と、の関係を示す模式図である。
【図13】バーコードの一例を示す図である。図13(a)は「BS1」のバーコードの一例を示し、図13(b)は「BE1」のバーコードの一例を示す。
【図14】業務メニュー定義の内容の一例を示す図である。
【図15】メニュー画面の表示内容の一例を示す模式図である。図15(a)は、メインメニューの表示内容を示し、図15(b)は、環境設定メニューの表示内容を示す。
【図16】業務アプリケーション定義の内容の一例を示す図である。
【図17】業務アプリケーション実行時の表示内容の一例を示す模式図である。図17(a)は各部の符号を示し、図17(b)はレイアウトに関する変数が示す位置を示す。
【図18】各テキストボックスへの入力が行われた状態の業務アプリケーションの表示内容の一例を示す。
【図19】登録データの内容の一例を示す。
【図20】登録データのデータを格納した後の登録用表データの内容の一例を示す模式図である。
【図21】アプリケーション生成処理の内容を示すフローチャートである。
【図22】ステップS1に示す業務メニュー定義の生成処理の内容を示すサブフローである。
【図23】ステップS12に示すメイン業務メニュー定義出力処理の内容を示すサブフローである。
【図24】ステップS13に示す環境設定業務メニュー定義出力処理の内容を示すサブフローである。
【図25】ステップS2に示す全てのアプリケーション定義の生成処理の内容を示すサブフローである。
【図26】ステップS42に示す各アプリケーション定義の出力処理の内容を示すサブフローである。
【図27】ステップS52に示す[CTRL_BASE]出力処理の内容を示すサブフローである。
【図28】ステップS53に示す[CTRL]出力処理の内容を示すサブフローである。
【図29】ステップS62に示すLABEL出力処理の内容を示すサブフローである。
【図30】ステップS63に示すEDIT出力処理の内容を示すサブフローである。
【図31】ステップS54に示す[FOCUS]出力処理の内容を示すサブフローである。
【図32】ステップS55に示す[SCAN]出力処理の内容を示すサブフローである。
【図33】ステップS56に示す[ENTRY]出力処理の内容を示すサブフローである。
【図34】ステップS123に示すFIELDS出力処理の内容を示すサブフローである。
【図35】ステップS124に示すVALUES出力処理の内容を示すサブフローである。
【図36】ステップS3に示す登録用表データの生成処理の内容を示すサブフローである。
【図37】ステップS155に示す登録用表データのシート生成処理の内容を示すサブフローである。
【図38】ステップS4に示すメニューシート生成処理の内容を示すサブフローである。
【図39】ステップS177に示すメインメニューラベル生成処理の内容を示すサブフローである。
【図40】ステップS179に示す環境設定メニューラベル生成処理の内容を示すサブフローである。
【図41】クレードルの監視処理の内容を示すフローチャートである。
【図42】ステップS242に示す登録データの格納処理の内容を示すサブフローである。
【図43】業務メニューの起動処理の内容を示すフローチャートである。
【図44】ステップS273に示すメインメニュー表示処理の内容を示すサブフローである。
【図45】設定ボタン操作時の処理内容を示すフローチャートである。
【図46】ステップS291に示す環境設定表示処理の内容を示すサブフローである。
【図47】戻るボタン操作時の処理内容を示すフローチャートである。
【図48】メインメニュー画面におけるメニューボタン操作時の処理内容を示すフローチャートである。
【図49】メインメニュー画面における番号キー操作時の処理内容を示すフローチャートである。
【図50】業務アプリケーションの起動処理の内容を示すサブフローである。
【図51】環境設定メニュー画面におけるメニューボタン操作時の処理内容を示すフローチャートである。
【図52】環境設定メニュー画面における番号キー操作時の処理内容を示すフローチャートである。
【図53】環境設定アプリケーションの起動処理の内容を示すサブフローである。
【図54】メニューシートのスキャン処理の内容を示すフローチャートである。
【図55】業務アプリケーションの起動時に行われる処理内容を示すフローチャートである。
【図56】EDITフォーカスイン処理の内容を示すフローチャートである。
【図57】EDITフォーカスアウト処理の内容を示すフローチャートである。
【図58】業務アプリケーション実行時のスキャン処理の内容を示すフローチャートである。
【図59】フォーカス移動時の処理内容を示すフローチャートである。
【図60】登録ボタン及び入力装置のリターンキー操作時の処理内容を示すフローチャートである。
【図61】ステップS434及びステップS441に示す登録データ保存処理の内容を示すサブフローである。
【図62】ステップS435及びステップS442に示すテキストボックスのクリア処理の内容を示すサブフローである。
【図63】バーコードラベルを作成する際の表示装置の表示内容の一例を示す。
【図64】生成されたバーコードラベルの印刷データの一例を示す。
【発明を実施するための形態】
【0020】
以下、図を参照して本発明の実施形態について詳細に説明する。
【0021】
図1は、アプリケーション生成装置として機能するデータ処理装置1を含むアプリケーション生成システム100の構成を示す図である。
アプリケーション生成システム100は、データ処理装置1、クレードル2、ラベルプリンタ3、プリンタ4及びハンディターミナル5を有する。データ処理装置1と他の各機器は、ケーブル6を介して接続されている。
【0022】
データ処理装置1は、ハンディターミナル5が実行するアプリケーションを生成する機能、生成したアプリケーションをハンディターミナルに転送する機能、ハンディターミナル5が記憶したデータを取り込んで格納する機能、ラベルプリンタ3又はプリンタ4による印刷の制御を行う機能及びその他のアプリケーション生成システム1の各種動作を制御する機能を有するコンピュータである。
【0023】
クレードル2は、ハンディターミナル5とデータ処理装置1とを接続するためのインターフェースとして機能する。
【0024】
ラベルプリンタ3は、ハンディターミナル5が有するスキャナ41(後述)によって読み取り可能なバーコード等のラベルを印刷する機能を有する。
【0025】
プリンタ4は、ハンディターミナル5が実行するアプリケーションを選択するためのメニューシートの印刷を含む各種の印刷を行う機能を有する。
【0026】
ハンディターミナル5は、データ処理装置1から転送されたアプリケーションを実行し、スキャナ41(後述)によってバーコードを読み取って各種データを収集して記憶する機能及び入力装置37(後述)による入力操作によって入力されたデータを記憶する機能を有する。ハンディターミナル5が収集、記憶するデータの定義はアプリケーションに基づく。
【0027】
図2は、アプリケーション生成システム100の各構成のブロック図である。
データ処理装置1は、CPU11、RAM12、ROM13、HDD14、通信装置16、入力装置17、表示装置18及びインターフェース19(以下の記載及び図においてI/F19とする)を有し、これらの各構成はバス20によって接続されている。
【0028】
CPU11は、ROM13、HDD14から処理内容に応じたプログラム、データ等を読み込み、実行処理することでデータ処理装置1及びアプリケーション生成システム100の動作に関する各種処理を行う。CPU11が行う処理において読み込むプログラム、データ及び一時的に生じるパラメータ等はRAM12に格納される。
【0029】
ROM13は、CPU11が読み込む各種のプログラム、データ等を書き換え不可能に記憶する。HDD14は、CPU11が読み込む各種のプログラム、データ等を書き換え可能に記憶すると共に、CPU11の処理結果として生じた各種のデータやハンディターミナル5から取り込まれたデータ等を記憶する記憶領域としても機能する。
【0030】
通信装置16は、他の機器と通信を行う機能を有する。通信装置16は例えばイーサネット(Ethernet)(登録商標)接続のためのネットワーク・インターフェース・カード(Network Interface Card、NIC)や無線LAN機器及びBluetoothによる通信のための機器等であり、用途に応じて使い分けることが可能である。
【0031】
入力装置17は、データ処理装置1が行う各種処理内容に関する外部からの入力を行う。入力装置17は、例えばキーボードやマウス等であり、その他のヒューマンインターフェースも用いることができる。
【0032】
表示装置18は、データ処理装置1が行う画面出力の内容を表示する。表示装置18は、例えば液晶ディスプレイやブラウン管、有機EL(Electro-Luminescence)ディスプレイ等であり、その他の画面表示デバイスも用いることができる。
【0033】
I/F19は、データ処理装置1と他の機器とを接続するためのインターフェースである。I/F19は、例えばUSB(Universal Serial Bus)やIEEE1394、その他のシリアルポート又はパラレルポート等であり、用途に応じて使い分けることが可能である。本実施形態では、データ処理装置1とクレードル2、ラベルプリンタ3及びプリンタ4はUSBを介して接続されており、ケーブル6はUSBケーブルである。
【0034】
ハンディターミナル5は、CPU31、RAM32、ROM33、フラッシュメモリ34、通信装置36、入力装置37、表示装置38、インターフェース39(以下の記載及び図においてI/F39とする)、スキャナ41及びトリガーキー42を有し、これらの各構成はバス40によって接続されている。
【0035】
CPU31は、ROM33、フラッシュメモリ34から処理内容に応じたプログラム、データ等を読み込み、実行処理することでハンディターミナル5の動作に関する各種処理を行う。CPU31が行う処理において読み込むプログラム、データ及び一時的に生じるパラメータ等はRAM32に格納される。
【0036】
ROM33は、CPU31が読み込む各種のプログラム、データ等を書き換え不可能に記憶する。フラッシュメモリ34は、CPU31が読み込む各種のプログラム、データ等を書き換え可能に記憶すると共に、CPU31の処理結果として生じた各種のデータやデータ処理装置1から転送されたアプリケーション等を記憶する記憶領域としても機能する。
【0037】
通信装置36は、他の機器と通信を行う機能を有する。通信装置36は例えばイーサネット(Ethernet)接続のためのネットワーク・インターフェース・カード(Network Interface Card、NIC)や無線LAN機器及びBluetoothによる通信のための機器等であり、用途に応じて使い分けることが可能である。
【0038】
入力装置37は、ハンディターミナル5が行う各種処理内容に関する外部からの入力を行う。入力装置37は、例えばハンディターミナル5と一体で設けられたボタン、キー等であり、その他のヒューマンインターフェース、例えば外付けのキーボード等も用いることができる。
【0039】
表示装置38は、ハンディターミナル5の画面出力内容を表示する。表示装置38は、例えば液晶ディスプレイや有機EL(Electro-Luminescence)ディスプレイ等であり、その他の画面表示デバイスも用いることができる。
【0040】
I/F39は、ハンディターミナル5と他の機器とを接続するためのインターフェースである。I/F19は、例えばUSB(Universal Serial Bus)やIEEE1394、その他のシリアルポート又はパラレルポート等であり、用途に応じて使い分けることが可能である。本実施形態では、ハンディターミナル5とクレードル2とはUSBを介して接続されており、クレードル2にはインターフェース51(I/F51)として、データ処理装置1と接続するためのUSBポートとハンディターミナル5と接続するためのUSBポートとが別個に存在する。
【0041】
スキャナ41は、バーコードを読み取る。具体的には、スキャナ41の動作中にスキャナ41の読取部をバーコードにかざすと、バーコードが示す情報を読み取る。スキャナ41が読み取った情報はデータとしてCPU31に入力される。
トリガーキー42は、スキャナ41の動作のON/OFFを切り替えるキーであり、トリガーキー42の操作によりスキャナ41をONにすると、スキャナ41によるバーコードの読み取りを行うことができる。
【0042】
図3は、アプリケーション生成システム100のソフトウェア及びデータの構成と各を示す図である。
データ処理装置1は、表計算ソフト61、アプリケーション生成モジュール62、通信モジュール63、表データ登録モジュール64及びバーコードラベル作成モジュール65の各種ソフトウェアを有し、これらはHDD14に記憶されている。また、HDD14には業務メニュー71、業務アプリケーション72、環境設定アプリケーション73、環境設定定義74及びマスタデータ75が記憶されている。
ハンディターミナルは、通信モジュール66を有する。通信モジュール66は、フラッシュメモリ34に記憶されている。
【0043】
表計算ソフト61は、行と列とを有するテーブル形式の表データ81を生成することができるソフトウェアであり、データ処理装置1を操作するユーザは、入力装置17に対する入力操作によって表データ81の各列に任意の項目を定義することができる。
【0044】
アプリケーション生成モジュール62は、表データ81に基づき業務メニュー定義82、業務アプリケーション定義83、メニューシート84及び登録用表データ85を生成するプログラムである。業務メニュー定義82は業務メニュー71の表示内容に対応するデータ、業務アプリケーション定義83は業務アプリケーション72の項目に対応するデータ、メニューシート84はハンディターミナル5で実行する業務アプリケーションを選択するために用いるシートのデータ、登録用表データ85はハンディターミナル5で収集、記録したデータを格納するためのデータである。
【0045】
通信モジュール63は、クレードル2を介して行われるデータ処理装置1とハンディターミナル5との間の通信及び転送処理を通信モジュール66と協働で行うプログラムである。通信モジュール63、66による通信及び転送により、データ処理装置1は、業務メニュー71、業務アプリケーション72、環境設定アプリケーション73、環境設定定義74、業務メニュー定義82及び業務アプリケーション定義83を含むアプリケーションセット80をハンディターミナル5に転送する。一方、ハンディターミナル5は、業務アプリケーション72を実行してスキャナ41又は入力装置37を介して収集、記憶したデータである登録データ86をデータ処理装置1に転送する。
本実施形態では、通信モジュール63、66間の転送はクレードル2を介した接続によって行われるが、通信装置16、36間の通信を介して行ってもよい。
【0046】
表データ登録モジュール64は、登録データ86に基づき登録用表データ85にデータを格納するプログラムである。表データ登録モジュール64の動作の詳細は後述する。
バーコードラベル作成モジュール65は、マスタデータ75に基づきバーコードシート87を生成するプログラムである。
【0047】
図4は、アプリケーション生成システム100の処理内容の概要を示す説明図である。
まず、データ処理装置1の表計算ソフト61を用いて表データ81を生成し、表データ81に任意の項目を定義する。その後、アプリケーション生成モジュール62を用いて表データ81から業務メニュー定義82、業務アプリケーション定義83、メニューシート84及び登録用表データ85を生成する。このうち業務アプリケーション定義83により、ハンディターミナル5が業務アプリケーション72を実行して収集するデータの項目が決定する。業務アプリケーション定義83の内容は、表データ81で定義された項目に対応する。
【0048】
データ処理装置1は、業務メニュー定義82及び業務アプリケーション定義83を含むアプリケーションセット80をハンディターミナル5に転送する。ハンディターミナル5は、業務アプリケーション72を実行してデータを収集する。実行する業務アプリケーションの選択は、業務メニュー71から選択する他、メニューシート84を用いて行うことができる。業務メニュー71の表示項目は業務メニュー定義82により決定する。また、環境設定アプリケーション73により、ハンディターミナル5の各種設定を変更、確認することもできる。
【0049】
ハンディターミナル5を用いて収集、記録されたデータは登録データ86としてハンディターミナル5のフラッシュメモリ34に記憶される。登録データ86は、ハンディターミナル5からデータ処理装置1に転送される。データ処理装置1は、表データ登録モジュール64により、登録データ86に基づくデータを登録用表データ85に格納する。以上のようにデータ収集が行われる。
【0050】
次に、アプリケーション生成システム100が行う各処理について詳細に説明する。
まず、表計算ソフト61を用いた表データ81の生成について説明する。
図5は、表データ81の一例を示す図である。図5(a)は、表データ81の「棚卸」シートにフォーカスが当たっている状態を示し、図5(b)は、表データ81の「フロア棚卸」シートにフォーカスが当たっている状態を示し、図5(c)は、表データ81の「エリア棚卸」シートにフォーカスが当たっている状態を示す。以下、表データ81の縦方向の並びを行、横方向の並びを列とする。
【0051】
図5(a)〜(c)に示すように、表データ81は一又は複数のシートを定義することが可能な表形式のデータである。各シートの1行目の各列には項目が定義される。項目の内容及び項目の数はユーザの任意である。
項目の定義において、ハンディターミナル5のスキャナ41でバーコードをスキャナした際に読み取る情報に対応する項目を指定することができる。本実施形態では、図5(a)、(b)の「商品コード」の項目B1や、図5(c)の「商品」の項目B2のように、ユーザは任意の項目に対して他の項目に比して太字で表示される装飾を加える(ボールド指定の属性を設定する)ことで、その項目をスキャナ41で読み取る情報に対応する項目として指定することができる。無論、スキャナ41により読み取る情報に対応する項目の指定方法は他の方法によってもよい。例えば、フォントの色を変更する方法や、特定の識別子を項目に付する等の方法が挙げられる。このとき、本実施形態のようにフォントを太字にする方法等、スキャナ41により読み取る情報に対応する項目と他の項目と視覚的に判別可能とすることが望ましい。
各シートにおいてスキャナ41で読み取る情報に対応する項目として指定できる項目の数に制限はなく、一つでも複数でもよいし、一つも指定しなくてもよい。本実施形態において、各シートにおいてスキャナ41で読み取る情報に対応する項目として指定された項目がない場合、CPU11は各シートの最左方にある項目をスキャナ41で読み取る情報に対応する項目とみなして処理する。
【0052】
各シートの2行目には、1行目に定義された各項目に対応するデータの一例が入力される。2行目に入力されたデータの一例によって、各項目のデータの属性(例えば入力されるデータの文字種類や桁数等)が決定する。
【0053】
次に、アプリケーション生成モジュール62による表データ81から業務メニュー定義82、業務アプリケーション定義83、メニューシート84及び登録用表データ85の生成について説明する。
図6は、アプリケーション生成モジュール62の操作画面の表示例である。
【0054】
図6に示すように、アプリケーション生成モジュール62は、アプリ生成ボタン91を有し、アプリ生成ボタン91をクリックすることで表データ81の各シートの内容に応じた業務メニュー定義82、業務アプリケーション定義83、メニューシート84及び登録用表データ85が生成される。
【0055】
本実施形態は、表データ81を含む表形式のデータファイルの先頭のシートに設けられたアプリ生成ボタン91を操作することでアプリケーション生成モジュール62を起動する。言い換えれば、アプリ生成ボタン91を有するシートを含んだ表形式のデータファイルに、表データ81となるシートを追加作成し、項目を定義することができる。無論、表データ81とアプリケーション生成モジュール62及びその起動のためのインターフェースは別個のファイルとしてもよく、本実施形態に示す方法に限定されることはない。
【0056】
次に、業務アプリケーション72について説明する。
図7は、業務アプリケーション72を実行中のハンディターミナル5の表示装置38の表示内容の一例を示す図である。図7(a)は、「棚卸」の業務アプリケーション定義83に対応した表示内容を示し、図7(b)は、「フロア棚卸」の業務アプリケーション定義83に対応した表示内容を示し、図7(c)は、「エリア棚卸」の業務アプリケーション定義83に対応した表示内容を示す。
【0057】
業務アプリケーション72の画面表示に表示されるデータとして収集可能な項目は、業務アプリケーション定義83の内容に対応する。そして、業務アプリケーション定義83の内容は、表データ81に定義された項目に対応する。つまり、業務アプリケーション72を実行して収集することができるデータは、表データ81に定義された項目に対応する。さらに、業務アプリケーション定義83は表データ81において項目を定義した各シートに対して個別に生成される。即ち、表データ81において項目を定義したシートが一である場合には一の業務アプリケーション定義83が生成され、シートが複数である場合には複数の業務アプリケーション定義83が生成される。本実施形態においては、「棚卸」、「フロア棚卸」及び「エリア棚卸」の三つのシートに基づく例を記載する。
図7(a)に示す「棚卸」の業務アプリケーション定義83に対応した表示内容は、図5(a)に示す「棚卸」シートに定義された各項目に対応し、図7(b)は、「フロア棚卸」の業務アプリケーション定義83に対応した表示内容は、図5(b)に示す「フロア棚卸」シートに定義された各項目に対応し、図7(c)に示す「エリア棚卸」の業務アプリケーション定義83に対応した表示内容は、図5(c)に示す「エリア棚卸」シートに定義された各項目に対応する。
【0058】
業務アプリケーション72は一つの実行ファイルであり、実行時に読み込む業務アプリケーション定義83を変更することで図7(a)〜(c)に示す各表示内容及びデータ収集項目の内容の切替を行うことができる。即ち、業務アプリケーション定義83は業務アプリケーション72の動作内容を定義する定義ファイルとして機能し、業務アプリケーション72と業務アプリケーション定義83はその組み合わせによりアプリケーションプログラムとして機能する。
【0059】
図8は、業務アプリケーション72の実行時の表示画面におけるフォーカス位置の一例を示す図である。図8(a)は棚卸日及び担当者の入力前の一例を示し、図8(b)は棚卸日及び担当者の入力後の一例を示す。図8(a)、(b)に示す図は、図7(a)に示す「棚卸」の業務アプリケーション定義83に対応した表示内容である。
業務アプリケーション72の起動直後、各項目の右側に設けられた各項目の入力を行うためのテキストボックスは全て空の状態である。図8(a)、(b)に示された項目のうち、スキャナ41で読み取る情報に対応する項目として指定された項目は「商品コード」であり、「商品コード」の前には「棚卸日」及び「担当者」の項目がある。
【0060】
業務アプリケーション72の起動直後、最初の項目である「棚卸日」のテキストボックスにフォーカスが当たっており、入力装置38による入力を行うと当該テキストボックスに入力が行われる。その後、入力装置38が有する入力の完了を指示するキー(例えばリターンキー等。図示略)を操作すると、次の項目である「担当者」のテキストボックスにフォーカスが移動する。以後、入力と入力の完了の指示を繰り返す毎に、逐次下の項目へとフォーカスが移動する。
【0061】
スキャナ41で読み取る情報に対応する項目として指定された項目である「商品コード」にフォーカスが当たっている場合、スキャナ41によるバーコードの読取操作が可能となる。このとき、スキャナ41でバーコードを読み取ると、バーコードが示す情報に対応する文字列が「商品コード」のテキストボックスに設定されると共に、次の項目である「数量」のテキストボックスにフォーカスが移動する。
【0062】
「棚卸」の業務アプリケーション定義83を読み込んだ業務アプリケーション72における最後の項目である「数量」のテキストボックスに入力を行った状態で、画面右下に表示された「登録」ボタン又は入力装置38が有するリターンキー(図示略)を操作すると、それまで入力された「棚卸日」、「担当者」、「商品コード」及び「数量」のテキストボックス内の文字列がひとつのレコードとして登録データ85に記憶される。そして、「商品コード」及び「数量」のテキストボックスが自動的にクリアされ、空になると共に「商品コード」のテキストボックスにフォーカスが移動する。このとき、「棚卸日」及び「担当者」のテキストボックスはクリアされず、過去に入力された文字列を保持した状態となる。そして、「商品コード」にフォーカスが当たった状態であるので、ハンディターミナル5のユーザはすぐに次のバーコードをスキャナ41で読み込むことができる。
つまり、業務アプリケーション72の実行時に、CPU31は表データ81に定義された複数の項目のうちバーコードに基づき収集するデータに対応する項目が最初に入力する項目でない場合に、バーコードに基づき収集するデータに対応する項目よりも前に入力する項目の入力終了後に表示内容に含まれる「登録」ボタン又は入力装置38が有するリターンキーの操作によりフォーカスを移動させる場合にはバーコードに基づき収集するデータに対応する項目にフォーカスを移動させる。
【0063】
図9は業務メニュー71を実行中のハンディターミナル5の表示装置38の表示内容の一例を示す図である。
業務メニュー71の表示内容は、業務メニュー定義82の内容に対応する。即ち、業務メニュー定義82は業務メニュー71の動作内容を定義する定義ファイルとして機能し、業務メニュー71と業務メニュー定義82はその組み合わせによりアプリケーションプログラムとして機能する。
図9に示す業務メニュー71は「1.棚卸」、「2.フロア棚卸」及び「3.エリア棚卸」のメニューボタンを有し、その各メニューボタンは図7(a)〜(c)に示す業務アプリケーション72の実行時の内容と対応する。つまり、業務メニュー71の表示内容を決定する業務メニュー定義82の内容は、業務アプリケーション定義83の内容即ち表データ81の内容に応じる。アプリケーション生成モジュール62は、表データ81の各シートに対応した業務アプリケーション定義83を生成すると共に、その業務アプリケーション定義83の内容に対応した業務メニュー定義81を生成する。
【0064】
業務メニュー71は業務アプリケーション定義83に対応したメニューボタンの他、終了ボタンと設定ボタンとを有する。終了ボタンの操作時、CPU31は業務メニュー71の表示を終了する。設定ボタンの操作時、CPU31は環境設定アプリケーション73を実行する。
【0065】
図10は、メニューシート84の一例を示す図である。図10(a)は、表データ81の末尾シートとして生成されたメニューシート84の表示例を示し、図10(b)は印刷されたメニューシートの一例を示す。
アプリケーション生成モジュール62は、メニューシート84を生成する。メニューシートは[メインメニュー]項目と[環境設定]項目とを有する。[メインメニュー]項目は表データ81に生成された各シートに対応する項目名と、各項目名の右側に形成されたバーコードとを有する。各項目名の右側に形成されたバーコードを図10(b)に示すように紙等の印刷媒体に印刷し、ハンディターミナル5のスキャナ41により読み込むと、ハンディターミナル5のCPU31は、バーコードの左側に記載された項目名に対応する業務アプリケーション定義83を読み込んで業務アプリケーション71を実行する。つまり、印刷されたメニューシートをハンディターミナル5で読み込むことにより実行する業務アプリケーション71のデータ収集項目を選択することができる。
[環境設定]項目も[メインメニュー]項目と同様、ハンディターミナルの環境設定に関する項目名とその右側に形成されたバーコードとを有し、バーコードをスキャナ41で読み込むことでその環境設定の項目名に対応した環境設定定義74を読み込んだ環境設定アプリケーション73を実行することができる。本実施形態では、環境設定アプリケーション73が読み込む環境設定定義74は一つであり、図10(a)、(b)に示す[環境設定]項目の項目名は当該一つの環境設定定義74に応じたものである。
【0066】
生成されたメニューシート84のシート名は「!メニューシート」とされ、その一文字目として「!」(エクスクラメーションマーク)が付される。
【0067】
図11は、登録用表データ85の表示例を示す図である、図11(a)は、登録データ86を格納する前の登録用表データ85の表示例を示し、図11(b)は、登録データ86を格納した後の登録用表データ85の表示例を示す。
図11(a)、(b)に示すように、登録用表データ85は、生成された表データ81の各シートに対応するシートを有する。そして、図11(a)に示すように、アプリケーション生成モジュール62によって生成された直後の登録用表データ85の各シートの1行目の各列には表データ81の1行目の各列に定義された項目が設定され、2行目のデータは空である。言い換えれば、登録用表データ85は、表データ81の2行目のデータを削除した表形式のデータとして生成される。
【0068】
表データ登録モジュール64が登録データ86に基づき登録用表データ85にデータを格納すると、図11(b)に示すように、ハンディターミナル5を用いて収集、記憶された登録データ86が登録用表データ85の2行目以降に記録される。このとき、ハンディターミナル5が実行した業務アプリケーション72が読み込んだ業務アプリケーション定義83と、その業務アプリケーション定義83を読み込んだ業務アプリケーション72を実行して収集、記憶された登録データ86と、その登録データ86が格納される登録用表データ85のシートとはそれぞれ対応する。つまり、登録データ86及び登録用表データ85の各シートは、各業務アプリケーション定義83即ち表データ81のシート毎に管理される。
【0069】
以下、具体的な処理内容について説明する。
図12は、表データ81の各セルに定義される項目及び設定されるデータと、メニューシート84及び登録用表データ85に定義される項目と、の関係を示す模式図である。以下の記載及び図において、表データ81及び登録用表データ85の各シートをシートS1、シートS2…シートSiと記載する。
【0070】
図12に示すように、シートS1の1行目1列目には項目S1F1が定義される。同様に、シートS1の1行目2列目には項目S1F2が定義され、シートS1の1行目n1列目には項目S1Fn1が定義される。そして、シートS2の1行目1列目には項目S2F1が定義される。つまり、シートSiの1行目ni列目には、項目SiFniが定義される。
【0071】
また、シートS1の2行目1列目にはデータS1P1が設定される。同様に、シートS1の2行目2列目にはデータS1P2が設定され、シートS1の2行目n1列目にはデータS1Pn1が設定される。そして、シートS2の2行目1列目にはデータS2P1が定義される。つまり、シートSiの2行目ni列目には、データSiPniが設定される。
【0072】
表データ81の各シートを含む表形式のデータファイルの先頭シートの1行目1列目には「出力ブック名」項目が定義されており、その右側である1行目2列目には「DATA.XLS」が設定されている。「出力ブック名」項目は、登録用表データ85のファイル名を指定するための項目名であり、図12に示す例では「出力ブック名」項目の右側に設定された「DATA.XLS」が登録用表データ85のファイル名となる。
【0073】
表データ81の各シートを含む表形式のデータファイルの先頭シートの2行目1列目には「参照ブック名」及び「バーコードブック名」の項目が定義されており、その右側である2行目2列目には「MT.XLS」が設定されている。「参照ブック名」項目は、マスタデータ75のファイル名であり、図12に示す例では「参照ブック名」項目の右側に設定された「MT.XLS」がマスタデータ75のファイル名となる。「バーコードブック名」項目は、バーコードシート87のファイル名であり、図12に示す例では「参照ブック名」項目の右側に設定された「BC.XLS」がバーコードシート87のファイル名となる。
【0074】
アプリ生成ボタン91を操作すると、メニューシート84と登録用表データ85が生成される。前述の記載及び図12の登録用表データ85が示すように、登録用表データ85の各シートは、表データ81の各シートの2行目を空にした表形式のデータとして生成される。
【0075】
メニューシート84は、表データ81を含む表形式のデータファイルの末尾のシートとして作成され、そのシート名は「!メニューシート」である。
メニューシート84の2列目には、1行目に「メニューシート」の文字列が設定され、3行目に[メインメニュー]が設定される。そして、メニューシート84の2列目の4行目には「1.S1」に対応する文字列が設定される。「1.S1」に対応する文字列とは、表データ81のシートS1のシート名の文字列と、1番目であるという番号を示す「1.」とを組み合わせた文字列である。例えば、シートS1のシート名が「棚卸」である場合、メニューシート84の2列目の4行目には「1.棚卸」の文字列が設定される。同様に、メニューシート84の2列目の4行目には「2.S2」に対応する文字列が設定され、以降の行に表データ81の各シートに対応する「i.Si」に対応する文字列がi+3行目まで設定される。
【0076】
メニューシート84の2列目、i+5行目には[環境設定]の文字列が設定される。そして、メニューシート84の2列目のi+6(i+1+5)行目には「1.E1」に対応する文字列が設定される。「1.E1」に対応する文字列とは、環境設定定義74のファイル名のうち拡張子を除いた文字列の冒頭に番号を付したものである。例えば、一つ目の環境設定の名称が「端末情報.INI」である場合、メニューシート84の2列目のi+6行目には、「端末情報」の文字列と1番目であるという番号を示す「1.」とを組み合わせた「1.端末情報」の文字列が設定される。同様に、メニューシート84の2列目のi+7(i+2+5)行目には「2.E2」に対応する文字列が設定され、以降の行に表データ81の各シートに対応する「j.Ej」に対応する文字列がi+j+5行目まで設定される。各環境設定の名称は、それぞれ個別の環境設定定義74に対応付けられている。
【0077】
そして、メニューシート84の2列目に「1.S1」、「2.S2」…「i.Si」及び「1.E1」、「2.E2」…「j.Ej」が設定された各行の5列目には、2列目に設定された各項目に対応するバーコード「BS1」、「BS2」…「BSi」及び「BE1」、「BE2」…「BEj」が設定される。
図13は、バーコードの一例を示す図である。図13(a)は「BS1」のバーコードの一例を示し、図13(b)は「BE1」のバーコードの一例を示す。
メニューシート84の5列目に設定されるバーコードは、予め定められた番号及びバーコードパターンによって生成されたバーコードであり、それぞれバーコードの左側の項目に対応するものとして設定される。このとき、表データ81の各シート名は生成される業務アプリケーション定義83に対応する。つまり、メニューシート84を印刷し、「BS1」、「BS2」…「BSi」のいずれかのバーコードをハンディターミナル5のスキャナ41で読み込むと、そのバーコードに対応する業務アプリケーション定義83を読み込んだ業務アプリケーション72を実行することができる。同様に、「BE1」、「BE2」…「BEj」のいずれかのバーコードを読み込むと、その環境設定定義74を読み込んだ環境設定アプリケーション73の実行をすることができる。
本実施形態では、「BSi」及び「BEj」のバーコードは4桁の数字を示すバーコードとして生成される。そして、図13(a)に示すように、「BSi」のバーコードは、「BS1」のバーコードが0001の数字を示すバーコードから始まる連番のバーコードであり、図13(b)に示すように、「BEj」のバーコードは、「BE1」のバーコードが9001の数字を示すバーコードから始まる連番のバーコードである。
【0078】
図14は、業務メニュー定義82の内容の一例を示す図である。
業務メニュー定義82は、[メインメニュー]に関する設定と、[環境設定]に関する設定と、を有している。[メインメニュー]に関する設定は、”i=Si,Si.INI,0000+i”の形式で記述される。iは1を初期値とする純増の数値でありメインメニューのメニュー番号として機能する。Siは表データ81の対応するシート名、Si.INIはSiが示すシート名に対応する業務アプリケーション定義83のファイル名、0000+iはスキャンコードと照合するための番号(スキャンコード番号)であり、初期値0の四桁の数値にiを加算した数値で表され、メニューシート84においてSi.INIが示す業務アプリケーション定義83の項目名と対応付けられたバーコードBSiの番号と同値となる。例えば、メニューシート84における「1.棚卸」の業務アプリケーションに対応するメインメニューの設定は、”1=棚卸,棚卸.INI,0001”となる。図14に示すように、[メインメニュー]に関する設定は、業務アプリケーション定義83の数即ち表データ81で生成されたシートS1〜Siの数だけ設けられ、順次記載される。
同様に、[環境設定]に関する設定は、”j=Ej,Ej.INI,9000+j”の形式で記述され、jは1を初期値とする純増の数値であり環境設定のメニュー番号として機能する。
【0079】
図15は、メニュー画面71の表示内容の一例を示す模式図である。図15(a)は、メインメニューの表示内容を示し、図15(b)は、環境設定メニューの表示内容を示す。
メインメニュー及び環境設定メニューは、ハンディターミナル5の表示装置38によって表示される。図15(a)に示すように、メインメニュー画面は、「1.S1」、「2.S2」…「i.Si」のメニューボタンと、終了ボタンと、設定ボタンと、を有する。メニューボタンの「i.Si」の内容は、業務メニュー定義82の”i=Si,Si.INI,0000+I”の形式で記述されたデータのi及びSiの内容に対応する。例えば、”1=棚卸,棚卸.INI,0001”のデータに対応するメニューボタンは、「1.棚卸」となる。メインメニュー画面におけるメニューボタンはCPU31からBTN_S1、BTN_S2、…、BTN_Siのように指定され、各メニューボタンの表示名が個別に制御される。
メニュー画面において登録ボタンが操作されると、CPU31はその登録ボタンの記載内容に対応した業務アプリケーション定義83を読み込んで業務アプリケーション72を起動する。例えば、「1.棚卸」の登録ボタンが操作されると、CPU31は”1=棚卸,棚卸.INI,0001”の記述で指定された「棚卸.INT」の業務アプリケーション定義83を読み込んで業務アプリケーション72を起動する。
【0080】
設定ボタンを操作すると、図15(b)に示す環境設定メニューが表示される。環境設定メニューは、「1.E1」、「2.E2」…「j.Ej」のメニューボタンと、戻るボタンとを有する。メニューボタンの「j.Ej」の内容は、業務メニュー定義82の”j=Ej,Ej.INI,9000+j”の形式で記述されたデータのj及びEjの内容に対応する。環境設定メニューにおけるメニューボタンはCPU31からBTN_E1、BTN_E2、…、BTN_Ejのように指定され、各メニューボタンの表示名が個別に制御される。
戻るボタンを操作すると、表示装置38の表示内容が図15(a)に示すメインメニューに戻る。
【0081】
図16は、業務アプリケーション定義83の内容の一例を示す図である。
図17は、業務アプリケーション72実行時の表示内容の一例を示す模式図である。図17(a)は各部の符号を示し、図17(b)はレイアウトに関する変数が示す位置を示す。
業務アプリケーション定義83は、表示画面のタイトル及び各ボタンの表示内容、項目及びテキストボックスに関する内容、テキストボックスのフォーカスに関する内容、スキャナ41で読み込む情報に関する内容ならびに登録データ86のファイル名、登録データ86に記録されたデータを登録用表データ85に格納する際の対象となるファイル名、シート名、項目名及びデータ源と対応するテキストボックスを示す情報に関する内容を含む。本実施形態では、図16に示すように、表示画面のタイトル及び各ボタンの表示内容を[CTRL_BASE]のデータとして有し、項目及びテキストボックスに関する内容を[CTRL]データとして有し、テキストボックスのフォーカスに関する内容を[FOCUS]データとして有し、スキャナ41で読み込む情報に関する内容を[SCAN]データとして有し、登録データ86のファイル名ならびに登録データ86に記録されたデータを登録用表データ85に格納する際の対象となるファイル名、シート名、項目名及びデータ源と対応するテキストボックスを示す情報に関する内容を[ENTRY]データとして有する。
【0082】
[CTRL_BASE]及び[CTRL]の各項目は、”(数値)=(変数名),(種別),(X方向の開始位置),(Y方向の開始位置),(幅),(高さ),(適用される文字列)”の形式で記述される。(数値)は1を初期値とする順増の数値、(変数名)は図17に示す各表示内容に付された符号に対応する内容、(種別)はその表示内容の種類、(X方向の開始位置)、(Y方向の開始位置)、(幅)及び(高さ)はその表示内容のレイアウト、(適用される文字列)はその表示内容に実際に反映される文字列の内容を示す。なお、[CTRL]において(数値)が偶数のものには(適用される文字列)のパラメータはない。
【0083】
図16及び図17(b)に示す、X方向のタイトル開始位置T1x、Y方向のタイトル開始位置T1y、タイトル幅T1w、タイトル高さT1j、X方向の終了ボタン開始位置B1x、Y方向の終了ボタン開始位置B1y、終了ボタン幅B1w、終了ボタン高さB1h、X方向の登録ボタン開始位置B2x、Y方向の登録ボタン開始位置B2y、登録ボタン幅B2w、登録ボタン高さB2h、ni番目の項目のX方向の開始位置Lnix、ni番目の項目のY方向の開始位置Lniy、ni番目の項目の幅Lniw、ni番目の項目の高さLnih、ni番目のテキストボックスのX方向の開始位置Enix、ni番目のテキストボックスのY方向の開始位置Eniy、ni番目のテキストボックスの幅Eniw及びni番目のテキストボックスの高さEnihに適用される数値は、以下の式(1)〜(20)によって求められる。以下の式(1)〜(20)で用いられる変数ax、ay、aw、ah、bw、bh、lx、ly、lh、ex、ey、eh、sh及びclenにはそれぞれ初期値が設定されており、本実施形態ではax=0、ay=0、aw=240、ah=300、bw=60、bh=40、lx=5、ly=30、lh=30、ex=135、ey=30、eh=30、sh=10、clen=10の初期値が設定されている。ハンディターミナル5のCPU31は、これらの初期値、表示装置38に表示する際の各数値が示す座標位置及び式(1)〜(20)に基づき各表示内容のレイアウトを決定する。
T1x=ax……(1)
T1y=ay……(2)
T1w=aw……(3)
T1h=20……(4)
B1x=ax……(5)
B1y=ay+ah−bh……(6)
B1w=bw……(7)
B1h=bh……(8)
B2x=ax+aw−bw……(9)
B2y==ay+ah−bh……(10)
B2w=bw……(11)
B2h=bh……(12)
Lnix=lx……(13)
Lniy=ly+(lh+sh)×(ni-1) ……(14)
Lniw=(SiFniの文字列byte数)×clen……(15)
Lnih=lh……(16)
Enix=ex……(17)
Eniy=ey+(eh+sh)×(ni-1) ……(18)
Eniw=(SiPniの文字列byte数)×clen……(19)
Enih=eh……(20)
【0084】
(適用される文字列) である[CTRL_BASE]のSi及び[CTRL]のSiF1、SiF2…SiFniは、それぞれ表データ81のSi、SiF1、SiF2…SiFniに対応する。
[CTRL_BASE]の各行は、(数値)が1のものが表示画面のタイトルを、2のものが終了ボタンに関するパラメータを、3のものが登録ボタンに関するパラメータを定める。
[CTRL]の(数値)が奇数のものはそれぞれ表データ81に定義された項目に関するパラメータを、偶数のものはそれぞれその直前の(数値)の項目のデータを入力するためのテキストボックスに関するパラメータを定める。式(15)の(SiFniの文字列byte数)は、表データ81に定義された項目SiFniの文字列のbyte数に対応し、式(19)の(SiPniの文字列byte数)は、表データ81に設定されたデータSiPniの文字列のbyte数に対応する。
【0085】
[FOCUS]の各行はそれぞれ、フォーカスが移動する順番、業務アプリケーション72の起動時にフォーカスが当たるテキストボックス及びデータ登録後にフォーカスが当たるテキストボックスを示す。
図16に示す“ORDER=EDIT1,EDIT2,…,EDITni”は、フォーカスが移動する順番を示し、この場合のフォーカス移動はEDIT1、EDIT2、…、EDITniの順に行われる。図16に示す“FIRST=EDIT1”は、業務アプリケーション72の起動時にフォーカスが当たるテキストボックスを示し、この場合はEDIT1にフォーカスが当たった状態となる。図16に示す”SECOND=EDIT2”は、データ登録後にフォーカスが当たるテキストボックスを示し、この場合はEDIT2にフォーカスが当たる。例えば、EDIT1のテキストボックスにデータを入力し、入力装置37のリターンキー(図示略)を押すと、ORDERの記述に従い、EDIT2のテキストボックスへとフォーカスが移動する。その後、登録ボタンまたは登録キー(図示略)を操作すると、各テキストボックスに入力されたデータが登録データ86に書き出されて保存され、EDIT2のテキストボックスにフォーカスが移動する。このとき、ORDERにおいて、SECONDとして設定されたテキストボックス以降にフォーカスが当たるテキストボックス、この場合はEDIT2以降のテキストボックスの内容はクリアされる。
【0086】
[SCAN]の各行はそれぞれ、EDIT1、EDIT2、…、EDITniのテキストボックスの入力にスキャナ41で読み取った情報を用いることが可能か否かを示す。[SCAN]の各行は、”ni=(ALL又はNONのいずれか一方)”の形式で記述される。[SCAN]の各行の冒頭のniは、EDITniの設定を示すという意味の番号である。ALLはスキャナ41によって読み取った情報による入力を許可する旨を示し、NONはスキャナ41による入力を許可しない旨を示す。つまり、ALLが設定されている番号に対応するテキストボックスにフォーカスがある場合のみ、トリガー42の操作によるスキャナ41のONが可能となり、スキャナ41で読み取った情報を当該テキストボックスに入力することができる。ALL又はNONの決定は、元となった表データ81においてそのテキストボックスに対応する項目がスキャナした際に読み取る情報に対応する項目として指定されているか否かに基づく。
【0087】
[ENTRY]の各行はそれぞれ、登録データ86のファイル名と、登録データ86に記録されたデータを登録用表データ85に格納する際の対象となるファイル名、シート名、項目名及びデータ源と対応するテキストボックスを示す情報を含む。
FILENAMEは、登録データ86のファイル名を示す。CONNECTは登録用表データ85のファイル名を示す。TABLEは、FILENAMEで指定された登録データ86の内容が格納されるCONNECTで指定された登録用表データ85のシート名を示す。FIELDSは、TABLEで指定されたシートに定義された項目のうち、FILENAMEで指定された登録データ86から読み出して格納するデータの項目を示す。VALUESは、FIELDSで指定された項目に対応するデータが入力されるテキストボックスを示し、その記述順はFIELDSに記載された項目の順番と対応している。
【0088】
業務アプリケーション72の表示内容のうち、登録ボタンを押すと各テキストボックスの入力内容がFILENAMEで指定された登録データ86のファイルに記録、保存される。業務アプリケーション72の表示内容のうち、終了ボタンが操作されると、CPU31は業務アプリケーション72を終了する。
【0089】
図18は、各テキストボックスへの入力が行われた状態の業務アプリケーション72の表示内容の一例を示す。
図19は、登録データ86の内容の一例を示す。
図18に示すように、業務アプリケーション72の実行時に、各テキストボックスへの入力が行われた状態で登録ボタン又は入力装置37の登録キー(図示略)を操作すると、図19に示すように、CPU31は各テキストボックスの入力内容を登録データ86へ記録、保存する。
【0090】
図19に示すように、登録データ86は、格納する登録用表データ85のファイル名及びシート名を指定するエントリーと、登録用表データ85に格納するデータの項目を指定するエントリーと、登録用表データ85に格納するデータの内容を示すエントリーと、を含む。
図19に示す登録データ86の1行目は、格納する登録用表データ85のファイル名及びシート名を指定するエントリーであり、その内容はその登録データ86の入力元となる業務アプリケーション72が読み込んでいる業務アプリケーション定義83のCONNECTの指定内容及びTABLEの指定内容と同一である。図19に示す登録データ86の2行目は、登録用表データ85に格納するデータの項目を指定するエントリーであり、その内容はその登録データ86の入力元となる業務アプリケーション72が読み込んでいる業務アプリケーション定義83のFIELDSの内容と同一である。図19に示す登録データ86の3行目以降は、登録用表データ85に格納するデータの内容を示すエントリーであり、その内容はその登録データ86の入力元となる業務アプリケーション72が読み込んでいる業務アプリケーション定義83のVALUESで指定されたテキストボックスに対して業務アプリケーション72の実行中の表示画面内において入力された各データと対応する。図19に示す例では、登録データ86の最後の行が図18に示す各テキストボックスの入力内容に対応している。登録用表データ85に格納するデータの内容を示すエントリーは、登録データ86の3行目以降に逐次追加記録、保存される。
【0091】
図20は、登録データ86のデータを格納した後の登録用表データ85の内容の一例を示す模式図である。
図12及び前述の記載に示すように、登録用表データ85の各シートは、元となる表データ81の各シートの2行目を空にした状態で生成される。その後、データ処理装置1のCPU11が表データ登録モジュール64を実行し、登録データ86に基づき登録用表データ85にデータを格納すると、図20に示すように登録データ86の内容が登録用表データ85に反映される。具体的には、登録データ86の3行目以降に記録、保存された登録用表データ85に格納するデータの内容を示すエントリーが登録用表データ85の2行目以降に逐次格納される。登録用表データ85に格納された登録データ86は消去される。その後、新たに記録、保存された登録データ86に基づき登録用表データ85にデータを格納する場合、CPU11は、その登録データ86に含まれる登録用表データ85に格納するデータの内容を示すエントリーを登録用表データ85の2行目以降に存在する最初の空の行以降の行に対して格納する。
【0092】
次に、各処理内容をフローチャートに基づいて説明する。
図21は、アプリケーション生成処理の内容を示すフローチャートである。
CPU11は、業務メニュー定義82の生成処理(ステップS1)、全ての業務アプリケーション定義83の生成処理(ステップS2)、登録用表データ85の生成処理(ステップS3)、メニューシートの生成処理(ステップS4)を順次行う。その後、CPU11は、表データ登録モジュール64のショートカットを生成し(ステップS5)、ステップS5で生成したショートカットをスタートアップに登録し(ステップS6)、表データ登録モジュール64を起動する(ステップS7)。
【0093】
図22は、図21のステップS1に示す業務メニュー定義82の生成処理の内容を示すサブフローである。
CPU11は、業務メニュー定義82として生成される空のファイルを生成してオープンし(ステップS11)、メイン業務メニュー定義出力処理(ステップS12)、環境設定業務メニュー定義出力処理(ステップS13)を順次行う。その後、CPU11は、業務メニュー定義82のファイルをクローズする(ステップS14)。
【0094】
図23は、図22のステップS12に示すメイン業務メニュー定義出力処理の内容を示すサブフローである。
CPU11は、メインメニューセクション名である[メインメニュー]の文字列を出力する(ステップS21)。そして、CPU11は、カウンタqを初期値1で宣言し、表データ81に作成されたシートの数(シートSiのi)まで以下のステップS23、ステップS24を繰り返す処理を行う(ステップS22)。
CPU11は、メニュー番号、メニュー名及びスキャンコード番号に対応する変数の宣言を行い、メニュー番号=q、メニュー名=シートSqの名称、スキャンコード番号=(0000+q)とする処理を行う(ステップS23)。そして、”メニュー番号=メニュー名,メニュー名.INI,スキャンコード番号”に対応する文字列を出力する(ステップS24)。
【0095】
図24は、図22のステップS13に示す環境設定業務メニュー定義出力処理の内容を示すサブフローである。
CPU11は、環境設定セクション名である[環境設定]の文字列を出力する(ステップS31)。そして、CPU11は、カウンタrを初期値1で宣言し、環境設定定義74のファイル数(j)まで以下のステップS33、ステップS34を繰り返す処理を行う(ステップS32)。
CPU11は、メニュー番号、メニュー名及びスキャンコード番号に対応する変数の宣言を行い、メニュー番号=r、メニュー名=環境設定定義74のファイル名から拡張子を除いた文字列(Er名)、スキャンコード番号=(9000+q)とする処理を行う(ステップS33)。そして、”メニュー番号=メニュー名,メニュー名.INI,スキャンコード番号”の形式で、ステップS33で設定した値を反映した文字列を出力する(ステップS34)。
【0096】
図25は、図21のステップS2に示す全ての業務アプリケーション定義83の生成処理の内容を示すサブフローである。
CPU11は、カウンタqを初期値1で宣言し、表データ81に作成されたシートの数(シートSiのi)まで各業務アプリケーション定義83の出力処理(ステップS42)を繰り返す処理を行う(ステップS41)。
【0097】
図26は、図25のステップS42に示す各業務アプリケーション定義83の出力処理の内容を示すサブフローである。
CPU11は、Sq.INIとして生成される空のファイルを生成してオープンし(ステップS51)、[CTRL_BASE]出力処理(ステップS52)、[CTRL]出力処理(ステップS53)、[FOCUS]出力処理(ステップS54)、[SCAN]出力処理(ステップS55)及び[ENTRY]出力処理(ステップS56)を順次行う。その後、CPU11は、Sq.INIのファイルをクローズする(ステップS14)。
【0098】
図27は、図26のステップS52に示す[CTRL_BASE]出力処理の内容を示すサブフローである。
CPU11は、[CTRL_BASE]のセクション名の出力(ステップS61)、タイトル定義(図16の”1=TITLE1,…”の行の文字列)の出力(ステップS62)、終了ボタン定義(図16の”2=BTN_END,…”の行の文字列)の出力(ステップS63)、登録ボタン定義(図16の”3=BTN_ENTRY,…”の行の文字列)の出力(ステップS64)を順次行う。
【0099】
図28は、図26のステップS53に示す[CTRL]出力処理の内容を示すサブフローである。
CPU11は、[CTRL_BASE]のセクション名を出力する(ステップS71)。そして、CPU11は、カウンタmを初期値1で宣言し、シートSqに定義された項目数、即ち最後の項目SqFnqのnqの値までLABEL出力処理(ステップS73)、EDIT出力処理(ステップS74)を繰り返す処理を行う(ステップS72)。
【0100】
図29は、図28のステップS73に示すLABEL出力処理の内容を示すサブフローである。
CPU11は、定義された項目SqFmの値(文字列)をLABEL名として取得する(ステップS81)。そして、CPU11は、式(13)〜(16)に基づき、Lqmx、Lqmy、Lqmw及びLqmhを算出すると共に、キー番号とコントロールIDに対応する変数を宣言して、以下の式(21)、(22)を実行して各変数の値を設定する(ステップS82)。なお、LABELmは文字列LABELの末尾にカウンタmの値を付加したものである。
キー番号=m×2−1……(21)
コントロールID=LABELm……(22)
そして、CPU11は、”キー番号=コントロールID,LABEL,Lqmx,Lqmy,Lqmw,Lqmh,ラベル名”の形式で、ステップS81及びステップS82で設定した値を反映した文字列を出力する(ステップS83)。
【0101】
図30は、図28のステップS74に示すEDIT出力処理の内容を示すサブフローである。
CPU11は、定義された項目SqPmの値(文字列)を文字列byte数算出のための入力データサンプルとして取得する(ステップS86)。そして、CPU11は、式(17)〜(20)に基づき、Eqmx、Eqmy、Eqmw及びEqmhを算出すると共に、キー番号とコントロールIDに対応する変数を宣言して、以下の式(23)、(24)を実行して各変数の値を設定する(ステップS87)。なお、EDITmは文字列EDITの末尾にカウンタmの値を付加したものである。
キー番号=m×2……(23)
コントロールID=EDITm……(24)
そして、CPU11は、”キー番号=コントロールID,EDIT,Eqmx,Eqmy,Eqmw,Eqmh”の形式で、ステップS86及びステップS87で設定した値を反映した文字列を出力する(ステップS88)。
【0102】
図31は、図26のステップS54に示す[FOCUS]出力処理の内容を示すサブフローである。
CPU11は、[FOCUS]のセクション名の出力、(ステップS91)、フォーカス順(図16の”ORDER=…”の行の文字列)の出力(ステップS92)、初期起動時フォーカス位置の出力(図16の”FIRST=…”の行の文字列)の出力(ステップS93)を行う。そして、CPU11は、定義された項目SqF1〜SqFnqに対してスキャナした際に読み取る情報に対応する項目として指定する属性が設定されているか否かを判定する(ステップS94)。ステップS94においていずれの項目にも属性が設定されていない場合(ステップS94:NO)、CPU11は登録時フォーカス位置を示す行の文字列としてSECOND=EDIT1として出力する(ステップS95)。ステップS94においていずれかの項目に属性が設定されている場合(ステップS94:YES)、CPU11はカウンタmを初期値1で宣言し、シートSqに定義された項目数、即ち最後の項目SqFnqのnqの値まで以下のステップS97を繰り返す処理を行う(ステップS96)。
CPU11は、項目SqFmに属性が設定されているか否かを判定する(ステップS97)。ステップS97において、属性が設定されている場合(ステップS97:YES)、CPU11は登録時フォーカス位置を示す行をSECOND=EDITmとして出力し、ステップS96の繰り返し処理を抜ける(ステップS98)。ステップS97において、属性が設定されていない場合(ステップS97:NO)、ステップS96に戻る。
【0103】
図32は、図26のステップS55に示す[SCAN]出力処理の内容を示すサブフローである。
CPU11は、[SCAN]のセクション名を出力する(ステップS101)。そして、CPU11は、定義された項目SqF1〜SqFnqに対してスキャナした際に読み取る情報に対応する項目として指定する属性が設定されているか否かを判定する(ステップS102)。
ステップS102においていずれかの項目に属性が設定されている場合(ステップS102:YES)、CPU11はカウンタmを初期値1で宣言し、シートSqに定義された項目数、即ち最後の項目SqFnqのnqの値まで以下のステップS104〜ステップ108を繰り返す処理を行う(ステップS103)。
まず、CPU11はキー番号及びコントロールIDに対応する変数を宣言して、キー番号=m、コントロールID=EDITmを設定する(ステップS104)。そして、CPU11は、項目SqFmに属性が設定されているか否かを判定し(ステップS105)、属性が設定されている場合(ステップS105:YES)、スキャン種別をALLとして出力し(ステップS106)、属性が設定されていない場合(ステップS105:NO)、スキャン種別をNONとして出力する(ステップS107)。ステップS106又はステップS107の後、CPU11は、EDITmのスキャン情報としてステップS106又はステップS107で得た結果に基づき出力する(ステップS108)。
ステップS102においていずれの項目にも属性が設定されていない場合(ステップS102:NO)、CPU11はカウンタmを初期値1で宣言する。(ステップS109)。そして、CPU11は、キー番号及びコントロールIDに対応する変数を宣言して、キー番号=m、コントロールID=EDITmを設定すると共に、スキャン種別をALLとし(ステップS110)、ステップS110の内容に基づきEDITm即ちEDIT1のスキャン情報を出力する(ステップS111)。その後、CPU11は、カウンタmに1を加算してm=2とし、シートSqに定義された項目数、即ち最後の項目SqFnqのnqの値まで以下のステップS113、ステップ114を繰り返す処理を行う(ステップS112)。
CPU11は、キー番号=m、コントロールID=EDITmを設定すると共に、スキャン種別をNONとし(ステップS113)、ステップS113の内容に基づきEDITmのスキャン情報を出力する(ステップS114)。
【0104】
図33は、図26のステップS56に示す[ENTRY]出力処理の内容を示すサブフローである。
CPU11は、[ENTRY]のセクション名の出力(ステップS121)、登録属性出力(ステップS122)を順次行う。ステップS122の登録属性出力として、具体的には、”FILENAME=Sq.TXT”、”CONNECT=(登録用表データ85のファイル名)”、”TABLE=Sq”の各エントリーを出力する。その後、CPU11は、FIELDS出力処理(ステップS123)、VALUES出力処理(ステップS124)を順次行う。
【0105】
図34は、図33のステップS123に示すFIELDS出力処理の内容を示すサブフローである。
CPU11は、”FIELDS=”の文字列の出力(キー出力)を行い(ステップS131)、ステップS131の”FIELDS=”の文字列に続く文字列として、定義された項目SqF1〜SqFnqの値をコンマ区切りで出力(フィールド名出力)する(ステップS132)。
【0106】
図35は、図33のステップS124に示すVALUES出力処理の内容を示すサブフローである。
CPU11は、”VALUES=”の文字列の出力(キー出力)を行い(ステップS141)、ステップS131の”VALUES=”の文字列に続く文字列として、EDIT1〜EDITnqをコンマ区切りで出力(フィールド名出力)する(ステップS142)。
【0107】
図36は、図21のステップS3に示す登録用表データ85の生成処理の内容を示すサブフローである。
CPU11は、「出力ブック名」項目として設定されているファイル名を取得する(ステップS151)。そして、CPU11は、ステップS151で取得したファイル名の登録用表データ85がHDD14に存在するか否かを確認し(ステップS152)、存在しない場合(ステップS152:NO)、登録用表データ85をステップS151で取得したファイル名で生成する(ステップS153)。ステップS153の処理後又はステップS152においてファイルが存在する場合(ステップS152:YES)、CPU11は、登録用表データ85をオープンし(ステップS154)、登録用表データ85のシート生成処理を行い(ステップS155)、登録用表データ85をクローズする(ステップS156)。
【0108】
図37は、図36のステップS155に示す登録用表データ85のシート生成処理の内容を示すサブフローである。
CPU11は、カウンタqを初期値1で宣言し、表データ81に作成されたシートの数即ちシートS1〜Siのiが示す値まで以下のステップS162〜ステップS166を繰り返す処理を行う(ステップS161)。
CPU11は、登録用表データ85にシート名がSqのシートが存在するか否かを判定し(ステップS162)、存在する場合(ステップS162:YES)、CPU11は既に存在するシート名がSqのシートを別名に変更し(ステップS163)、シート名がSqであった既存のシートのシート名を変更した旨を通知するメッセージを表示装置18に表示させる(ステップS164)。ステップS164の処理後又はステップS162においてシート名がSqのシートが存在しない場合(ステップS123:NO)、CPU11は登録用表データ85に表データ81のシートSqをコピーし(ステップS165)、コピーした登録用表データ85のシートSqの1行目以外のデータをクリアする(ステップS166)。
【0109】
図38は、図21のステップS4に示すメニューシート生成処理の内容を示すサブフローである。
CPU11は、表データ81の既存のメニューシートを削除する処理(ステップS171)、表データ81に新規のメニューシートを作成する処理(ステップS172)を順次行う。そして、CPU11は、メニューシートの列番号を管理するための変数(列)及び行番号を管理するための変数(行)を宣言して列=2、行=1を設定し(ステップS173)、ステップS173に基づき指定されたセルに「メニューシート」のタイトル名を設定する(ステップS174)。そして、CPU11は、ステップS174でタイトルを設定した行の属性設定(例えばフォントや行高さ等)を行う(ステップS175)。
そして、CPU11は、行番号(行)に1を加算し(ステップS176)、メインメニューラベル生成処理を行う(ステップS177)。
そして、CPU11は、ステップS177のメインメニューラベル生成処理後の行番号(行)に1を加算し(ステップS178)、環境設定メニューラベル生成処理を行う(ステップS179)。
そして、CPU11は、メニューシートの列幅を設定する(ステップS180)。
なお、ステップS175のフォントや行高さ、ステップS180の列幅等の各種設定内容は予め定められた設定内容に基づく。当該設定内容は、例えば「参照ブック名」項目で指定されたファイルの内容に含まれる。後述するステップS193、ステップS200、ステップS213、ステップS220も同様である。
【0110】
図39は、図38のステップS177に示すメインメニューラベル生成処理の内容を示すサブフローである。
CPU11は、ステップS176の処理後の行番号(行)に1を加算し(ステップS191)、メインメニュー名の設定(ステップS192)、ステップS192でメインメニュー名を設定した行の属性設定(例えばフォントや行高さ等)の処理(ステップS193)を順次行う。
そして、CPU11は、カウンタqを初期値1で宣言し、表データ81に作成されたシートの数即ちシートS1〜Siのiが示す値まで以下のステップS195〜ステップS200を繰り返す処理を行う(ステップS194)。
CPU11は、ステップS191の処理後の行番号(行)に1を加算し(ステップS195)、0000+qの算出結果をバーコード番号として取得する(ステップS196)。そして、CPU11は、ステップS195の処理後の行番号(行)と列=2によって指定されるセルにq.Sqに対応する文字列を設定する(ステップS197)。ステップS197で設定される文字列のqはカウンタの数値、Sqは表データ81におけるq番目のシートのシート名である。そして、CPU11は、ステップS196で取得したバーコード番号に基づきバーコードイメージBSqを作成し(ステップS198)、ステップS195の処理後の行番号(行)と列=6によって指定されるセルにステップS198で作成したバーコードイメージBSqを貼り付ける(ステップS199)。そして、CPU11は、ステップS195で指定された行の属性設定(例えばフォント、行高さ及び罫線等)を行う(ステップS200)。
【0111】
図40は、図38のステップS179に示す環境設定メニューラベル生成処理の内容を示すサブフローである。
CPU11は、ステップS178の処理後の行番号(行)に1を加算し(ステップS211)、環境設定メニュー名の設定(ステップS212)、ステップS212で環境設定メニュー名を設定した行の属性設定(例えばフォントや行高さ等)の処理(ステップS213)を順次行う。
そして、CPU11は、カウンタrを初期値1で宣言し、環境設定定義74の数(j)が示す値まで以下のステップS215〜ステップS220を繰り返す処理を行う(ステップS214)。
CPU11は、ステップS211の処理後の行番号(行)に1を加算し(ステップS215)、9000+rの算出結果をバーコード番号として取得する(ステップS216)。そして、CPU11は、ステップS215の処理後の行番号(行)と列=2によって指定されるセルにr.Erに対応する文字列を設定する(ステップS217)。ステップS217で設定される文字列のrはカウンタの数値、Erはr番目の環境設定の名称である。そして、CPU11は、ステップS216で取得したバーコード番号に基づきバーコードイメージBErを作成し(ステップS218)、ステップS215の処理後の行番号(行)と列=6によって指定されるセルにステップS218で作成したバーコードイメージBErを貼り付ける(ステップS219)。そして、CPU11は、ステップS215で指定された行の属性設定(例えばフォント、行高さ及び罫線等)を行う(ステップS220)。
【0112】
図41は、クレードル2の監視処理の内容を示すフローチャートである。
CPU11は、表データ登録モジュール64を終了するまで以下のステップS232〜ステップS242を繰り返す処理を行う(ステップS231)。
CPU11は、クレードル2を介してハンディターミナル5が接続されるまで監視し(ステップS232:NO)、ハンディターミナル5が接続されると(ステップS232:YES)、ステップS233以降の処理を行う。
CPU11は、ハンディターミナル5のフラッシュメモリ34にアプリケーションセット80の各実行ファイル即ち業務メニュー71、業務アプリケーション72及び環境設定アプリケーション73があるか否かを確認し(ステップS233)、いずれか一つ以上がない場合(ステップS233:NO)、アプリケーションセット80の各実行ファイルをハンディターミナル5に転送する(ステップS234)。
ステップS234の処理後又はステップS233においてフラッシュメモリ34に業務アプリケーション72及び環境設定アプリケーション73が全てある場合(ステップS233:NO)、CPU11はフラッシュメモリ34に記憶されたアプリケーションセット80の各定義ファイル即ち業務メニュー定義82、業務アプリケーション定義83及び環境設定定義74の更新日時(ファイル作成日時又は更新日時)がHDD14に記憶されたアプリケーションセット80の各定義ファイルのファイル作成日時又は更新日時と同一か否かを確認し(ステップS235)、同一でないあるいは業務メニュー定義82、業務アプリケーション定義83、環境設定定義74のいずれか一つ以上がない場合(ステップS235:NO)、CPU11は、ハンディターミナル5のCPU31にハンディターミナル5で実行されているアプリケーションを全て終了させるよう制御し(ステップS236)、その後に業務メニュー定義82、業務アプリケーション定義83及び環境設定定義74をデータ処理装置1からハンディターミナル5に転送し(ステップS237)、その後にハンディターミナル5のCPU31に業務メニュー71を起動させる(ステップS238)。
ステップS238の処理後又はステップS235において業務メニュー定義82、業務アプリケーション定義83及び環境設定定義74のファイル作成日時又は更新日時が同一であった場合(ステップS235:YES)、CPU11はフラッシュメモリ5に登録データ86があるか否かを確認し(ステップS239)、登録データ86がある場合(ステップS239:YES)、CPU11は全ての登録データ86を取得し(ステップS240)、フラッシュメモリ34にある全ての登録データ86を削除し(ステップS241)、登録データ86の格納処理を行う(ステップS242)。
【0113】
図42は、図41のステップS242に示す登録データ86の格納処理の内容を示すサブフローである。
CPU11は、ステップS240で取得した全ての登録データの数に応じた回数だけ、以下のステップS252〜ステップS260を繰り返す処理を行う(ステップS251)。
CPU11は、登録データ86をオープンし(ステップS252)、データを格納する対象となる登録用表データ85のファイル名を取得する処理(ステップS253)、データを格納する対象となる登録用表データ85のシート名を取得する処理(ステップS254)、データを格納する対象となる登録用表データ85のフィールド名を取得する処理(ステップS255)を順次行う。登録用表データ85のフィールド名は、図19に示す登録データ86の2行目で指定される項目名である。その後ステップS253で取得したファイル名の登録用表データ85をオープンする(ステップS256)。そして、CPU11は、ステップS254で取得したシート名のシートに登録データ86の3行目以降のレコードを追加する処理(ステップS258)をレコード数に応じた回数だけ繰り返す処理を行う(ステップS257)。その後、CPU11は登録用表データ85をクローズし(ステップS259)、登録データ86をクローズする(ステップS260)。
【0114】
図43は、業務メニュー71の起動処理の内容を示すフローチャートである。
ハンディターミナル5のCPU31は、業務メニュー定義71を読み込み(ステップS271)、スキャナ41を読み込み動作可能とし(ステップS272)、メインメニュー表示処理を行う(ステップS273)。
【0115】
図44は、図43のステップS273に示すメインメニュー表示処理の内容を示すサブフローである。
CPU31は、業務メニュー定義71から[メインメニュー]に関する情報を取得する処理(ステップS281)、タイトルを[メインメニュー]とする処理(ステップS282)、メニュー画面のボタンを全て非表示とする処理(ステップS283)を順次行う。そして、CPU31は、カウンタqを初期値1で設定し、表データ81に作成されたシートの数即ちシートS1〜Siのiが示す値まで以下のステップS285、ステップS286を繰り返す処理を行う(ステップS284)。
CPU31は、BTN_Sqのボタン名をq.Sqにする処理を行い(ステップS285)、BTN_Sqを表示させる(ステップS286)。ステップS285で設定される文字列のqはカウンタの数値、Sqは表データ81におけるq番目のシートのシート名である。
その後、CPU31は、終了ボタンBTN_END、設定ボタンBTN_SETを表示させ、戻るボタンBTN_RETを非表示とする処理を行う(ステップS287)。
【0116】
図45は、設定ボタン操作時の処理内容を示すフローチャートである。
設定ボタンBTN_SETが操作されると、CPU31は、環境設定表示処理を行う(ステップS291)。
【0117】
図46は、図45のステップS291に示す環境設定表示処理の内容を示すサブフローである。
CPU31は、業務メニュー定義71から[環境設定]に関する情報を取得する処理(ステップS301)、タイトルを[環境設定]とする処理(ステップS302)、メニュー画面のボタンを全て非表示とする処理(ステップS303)を順次行う。そして、CPU31は、カウンタrを初期値1で設定し、環境設定定義74のファイル数(j)まで以下のステップS305、ステップS306を繰り返す処理を行う(ステップS304)。
CPU31は、BTN_Erのボタン名をr.Erにする処理を行い(ステップS305)、BTN_Erを表示させる(ステップS306)。ステップS305で設定される文字列のrはカウンタの数値、Erはr番目の環境設定の名称である。
その後、CPU31は、終了ボタンBTN_END、設定ボタンBTN_SETを非表示とし、戻るボタンBTN_RETを表示させる処理を行う(ステップS307)。
【0118】
図47は、戻るボタン操作時の処理内容を示すフローチャートである。
戻るボタンBTN_RETが操作されると、CPU31は、ステップS273と同様のメインメニュー表示処理を行う(ステップS311)。
【0119】
図48は、メインメニュー画面におけるメニューボタン操作時の処理内容を示すフローチャートである。
CPU31は、操作されたメニューボタンに対応するメニュー番号を付された業務アプリケーション定義83のファイル名を業務メニュー定義82から取得し(ステップS321)、業務アプリケーション72の起動処理を行う(ステップS322)。
【0120】
図49は、メインメニュー画面における番号キー操作時の処理内容を示すフローチャートである。
CPU31は、操作された番号キーに対応するメニュー番号が業務メニュー定義内に存在するか否か判定し(ステップS331)、存在しない場合(ステップS331:NO)処理を終了する。ステップS331において、操作された番号キーに対応するメニュー番号が業務メニュー定義内に存在する場合(ステップS331:YES)、CPU31は操作された番号キーに対応するメニュー番号を付された業務アプリケーション定義83のファイル名を業務メニュー定義82から取得し(ステップS332)、業務アプリケーション72の起動処理を行う(ステップS333)。
【0121】
図50は、業務アプリケーション72の起動処理の内容を示すサブフローである。
CPU31は、スキャナ41を読み込み不可能な状態とし(ステップS341)、ステップS321又はステップS332で取得した業務アプリケーション定義83のファイル名を引数として業務アプリケーション71を起動し(ステップS342)、その後スキャナ41を読み込み可能な状態とする(ステップS343)。
【0122】
図51は、環境設定メニュー画面におけるメニューボタン操作時の処理内容を示すフローチャートである。
CPU31は、操作されたメニューボタンに対応するメニュー番号を付された環境設定定義74のファイル名を業務メニュー定義82から取得し(ステップS351)、環境設定アプリケーション73の起動処理を行う(ステップS352)。
【0123】
図52は、環境設定メニュー画面における番号キー操作時の処理内容を示すフローチャートである。
CPU31は、操作された番号キーに対応するメニュー番号が業務メニュー定義内に存在するか否か判定し(ステップS361)、存在しない場合(ステップS361:NO)処理を終了する。ステップS361において、操作された番号キーに対応するメニュー番号が業務メニュー定義内に存在する場合(ステップS361:YES)、CPU31は操作された番号キーに対応するメニュー番号の環境設定定義74のファイル名を業務メニュー定義82から取得し(ステップS362)、環境設定アプリケーション73の起動処理を行う(ステップS363)。
【0124】
図53は、環境設定アプリケーション73の起動処理の内容を示すサブフローである。
CPU31は、スキャナ41を読み込み不可能な状態とし(ステップS371)、ステップS351又はステップS362で取得した環境設定定義74のファイル名を引数として環境設定アプリケーション74を起動し(ステップS372)、その後スキャナ41を読み込み可能な状態とする(ステップS373)。
【0125】
図54は、メニューシート84のスキャン処理の内容を示すフローチャートである。
CPU31は、スキャナ41でスキャンしたバーコードが示す文字列情報(スキャンコード)を取得し(ステップS381)、業務メニュー定義72の内容にステップS381で取得したスキャンコードに対応するスキャンコード番号が存在するか否か判定する(ステップS382)。ステップS382において業務メニュー定義72の内容に対応するスキャンコード番号が存在しない場合(ステップS382:NO)、CPU31は処理を終了し、業務メニュー定義72の内容に対応するスキャンコード番号が存在する場合(ステップS382:YES)、CPU31はスキャンコード番号の先頭2文字が「00」であるか否か判定する(ステップS383)。ステップS383においてスキャンコード番号の先頭2文字が「00」である場合(ステップS383:YES)、CPU31はスキャンコード番号に対応する業務アプリケーション定義83のファイル名を業務メニュー定義82から取得し(ステップS384)、業務アプリケーション72の起動処理を行う(ステップS385)。ステップS383においてスキャンコード番号の先頭2文字が「00」でない場合(ステップS383:NO)、CPU31はスキャンコード番号に対応する環境設定定義74のファイル名を業務メニュー定義82から取得し(ステップS386)、環境設定アプリケーション73の起動処理を行う(ステップS387)。
【0126】
図55は、業務アプリケーション72の起動時に行われる処理内容を示すフローチャートである。
CPU31は、起動時に引数として指定された業務アプリケーション定義83のファイルの読み込み(ステップS391)、読み込んだ業務アプリケーション定義83の[CTRL_BASE]の内容に基づく表示内容の作成(ステップS392)、読み込んだ業務アプリケーション定義83の[CTRL]の内容に基づく表示内容の作成(ステップS393)、読み込んだ業務アプリケーション定義83の[FOCUS]の”ORDER=…”によって定義された順番にフォーカス順を設定する処理(ステップS394)、読み込んだ業務アプリケーション定義83の[FOCUS]の”FIRST=…”によって定義されたテキストボックスにフォーカスを当てる処理(ステップS395)を順次行う。
【0127】
図56は、EDITフォーカスイン処理の内容を示すフローチャートである。EDITフォーカスインとは、テキストボックスにフォーカスが当たる際に行われるスキャン可/不可の切替処理である。
CPU31は、フォーカスが当たったテキストボックスのコントロールIDを取得し(ステップS401)、業務アプリケーション72の起動時に読み込んだ業務アプリケーション定義83の[SCAN]に定義されているコントロールIDのうち、ステップS401で取得したコントロールIDに対応するエントリーのスキャン種別(ALL又はNON)を取得する(ステップS402)。そして、CPU31は、ステップS402で取得したスキャン種別が「ALL」であるか否か判定し(ステップS403)、「ALL」である場合はスキャナ41によるスキャンを可能とし(ステップS404)、「ALL」でない場合は処理を終了する。
【0128】
図57は、EDITフォーカスアウト処理の内容を示すフローチャートである。EDITフォーカスアウトとは、テキストボックスからフォーカスが外れる際に行われるスキャン可/不可の切替処理である。
CPU31は、フォーカスアウト時にスキャナ41によるスキャンを不可能とする処理を行う(ステップS411)。
【0129】
図58は、業務アプリケーション72実行時のスキャン処理の内容を示すフローチャートである。
CPU31は、スキャンしたバーコードが示す文字列情報(スキャンコード)を取得し(ステップS421)、現在フォーカスのあるテキストボックスにスキャンコードを設定してリターンする(ステップS422)。ステップS422の「リターンする」とは、テキストボックス内の入力内容を確定して次のテキストボックスにフォーカスを移動する処理を行うことを示す。
【0130】
図59は、フォーカス移動時の処理内容を示すフローチャートである。
CPU31は、フォーカス移動前にフォーカスの当たっていたテキストボックスのコントロールIDを取得し(ステップS431)、ステップS431で得たコントロールIDが、業務アプリケーション72の起動時に読み込んだ業務アプリケーション定義83の[FOCUS]の”ORDER=…”において最後に記述されたテキストボックス(最終コントロール)であるか否か判定する(ステップS432)。ステップS432において、最終コントロールでない場合(ステップS432:NO)、CPU31は業務アプリケーション72の起動時に読み込んだ業務アプリケーション定義83の[FOCUS]の”ORDER=…”によってステップS431で得たコントロールIDの次に記述されたテキストボックスにフォーカスを移動させる(ステップS433)。ステップS432において、最終コントロールである場合(ステップS432:YES)、CPU31は、登録データ保存処理(ステップS434)、テキストボックスのクリア処理(ステップS435)を順次行い、業務アプリケーション72の起動時に読み込んだ業務アプリケーション定義83の[FOCUS]の”SECOND=…”によって指定されたテキストボックスにフォーカスを移動させる(ステップS436)。
【0131】
図60は、登録ボタン及び入力装置37のリターンキー操作時の処理内容を示すフローチャートである。
CPU31は、登録データ保存処理(ステップS441)、テキストボックスのクリア処理(ステップS442)を順次行い、業務アプリケーション72の起動時に読み込んだ業務アプリケーション定義83の[FOCUS]の”SECOND=…”によって指定されたテキストボックスにフォーカスを移動させる(ステップS443)。
【0132】
図61は、図59のステップS434及び図60のステップS441に示す登録データ保存処理の内容を示すサブフローである。
CPU31は、業務アプリケーション72の起動時に読み込んだ業務アプリケーション定義83の[ENTRY]のFILENAMEエントリーに設定されたファイル名を有するファイルがフラッシュメモリ34にあるか否か判定する(ステップS451)。ステップS451においてファイルがフラッシュメモリ34にない場合(ステップS451:NO)、CPU31は、[ENTRY]のFILENAMEエントリーに設定されたファイル名のファイルを作成し(ステップS452)、ステップS452で作成したファイルに対して、[ENTRY]のCONNECTの値の追加処理(ステップS453)、[ENTRY]のTABLEの値の追加処理(ステップS454)及び[ENTRY]のFIELDSの値の追加処理(ステップS455)を順次行う。
ステップS455の処理後又はステップS451においてファイルがフラッシュメモリ34にある場合(ステップS451:YES)、CPU31は[ENTRY]のVALUESによって指定されているテキストボックスを示す値を取得し(ステップ456)、ステップS456で取得したコントロールの値に基づき各テキストボックスの入力内容から登録データ86に記録するためのレコードデータを作成し(ステップS457)、[ENTRY]のFILENAMEエントリーに設定されたファイル名を有するファイルにステップS457で作成したレコードデータを追加記録する(ステップS458)。
【0133】
図62は、図59のステップS435及び図60のステップS442に示すテキストボックスのクリア処理の内容を示すサブフローである。
CPU31は、業務アプリケーション72の起動時に読み込んだ業務アプリケーション定義83の[FOCUS]の”SECOND=…”によって指定されたテキストボックスを示すコントロールIDを取得し(ステップS461)、[FOCUS]の”ORDER=…”においてステップS461で取得したコントロールID即ち[FOCUS]の”SECOND=…”によって指定されたテキストボックスを示すコントロールID以降に記述されたコントロールIDに対応するテキストボックスに入力された値をクリアする(ステップS462)。
【0134】
本実施形態によるアプリケーション生成システム100は、バーコードラベル作成モジュール65の機能により、バーコードを印字したラベル(バーコードラベル)を作成することもできる。
図63に、バーコードラベルを作成する際のデータ処理装置1の表示装置18の表示内容の一例を示す。
図64に、生成されたバーコードラベルの印刷データの一例を示す。
データ処理装置1は、マスタデータ75に基づき、バーコードラベルを作成することができる。マスタデータ75は、図63に示すように、少なくとも商品コード及び商品名の各レコードを対応付けるデータとして存在する。マスタデータ75は、商品コード及び商品名を対応付けるほか、これにさらに他の項目(例えば図63に示す「商品名よみ」等)を対応付けてもよい。マスタデータ75は表計算ソフト61で用いることができる表形式のデータである。
表計算ソフト61を用いてマスタデータ75を開き、バーコードラベルを作成したい商品コード及び商品名を選択した状態で右クリックメニューの「バーコードラベル作成」を選択すると、CPU11は選択された商品コード及び商品名に基づきバーコードラベル作成モジュール65を実行して図64に示すバーコードシート87を生成する。生成されたバーコードシート87は、ラベルプリンタ3を介して印刷されることでラベルシートに印字され、バーコードラベルとして印刷出力される。
【0135】
本実施形態のアプリケーション生成システム100によれば、表計算ソフト61を用いて任意の項目を定義した表データ81を生成し、ハンディターミナル5が実行する業務アプリケーション72によって表データ81に定義された項目のデータ収集、記録を行うための定義ファイルである業務アプリケーション定義83をアプリケーション生成モジュール62が表データ81に基づいて生成し、通信モジュー63,66によって業務アプリケーション72及び業務アプリケーション定義83がハンディターミナルに転送される。これによって、表データ81でユーザが定義した任意の項目のデータの収集、記録をハンディターミナル5で行うことができる。表データ81の生成及び任意の項目の定義のための作業は、表計算ソフト61を用いたデータの入力作業のみであり、アプリケーションの作成や専用のプログラムツールを利用したアプリケーションの作成に比して非常に容易である。つまり、ユーザは簡易な作業で任意の項目のデータの収集、記録をハンディターミナル5で行うためのアプリケーションを容易に作成することができる。
【0136】
さらに、表計算ソフト61の操作において任意の項目に対して属性を設定(例えばボールド指定等)することで、スキャナ41で読み取る情報に対応する項目として指定することができる。これによって、ユーザはバーコードから読み取るデータに対応する項目を表データ81の作成時に明示的に指定することができる。
【0137】
さらに、表計算ソフト61の操作において任意の項目に対して属性を設定(例えばボールド指定等)することで、スキャナ41で読み取る情報に対応する項目として指定された項目を他の項目と視覚的に判別可能とすることができる。これによって、ユーザはバーコードから読み取るデータに対応する項目を表データ81の作成時に明示的に指定することができることに加えて、スキャナ41で読み取る情報に対応する項目として指定された項目を視覚的に確認することができる。
【0138】
さらに、例えば図7(a)〜(c)に示すように、業務アプリケーション72の実行時に、CPU31は、業務アプリケーション定義83を読み込むことで表データ81に定義された複数の項目に対してハンディターミナル5の入力装置38によるデータの入力を可能とする画面を表示装置38に表示させ、当該画面上においてフォーカスの当たった項目のテキストボックスに対して入力を可能とし、図8(a)、(b)に示すように、表データ81に定義された複数の項目のうちバーコードに基づき収集するデータに対応する項目が最初に入力する項目でない場合に、バーコードに基づき収集するデータに対応する項目よりも前に入力する項目の入力終了後に表示内容に含まれる「登録」ボタン又は入力装置38が有するリターンキーの操作によりフォーカスを移動させる場合にはバーコードに基づき収集するデータに対応する項目にフォーカスを移動させる。これによって、スキャン作業の繰り返しによりデータの内容が変更される項目に対するフォーカスの移動をスムーズに行うことができ、スキャン作業をより円滑に行うことができるようになる。加えて、スキャン作業による入力内容の変更が行われないデータ、例えばスキャン作業時の日付やスキャン作業を行う担当者の氏名等のデータの入力については、その入力を一度行うのみでよく、以後はスキャン作業による入力内容の変更が行われないデータにフォーカスが移動しないので、誤ってこれらの入力内容を削除、変更等してしまうことがない上に手動でスキャン作業の項目までフォーカスを移動させる必要が生じないので、スキャン作業を一層円滑に行うことができるようになる。
【0139】
さらに、データ処理装置1は、アプリケーション生成モジュール62の実行時に登録用表データ85を生成し、表データ登録モジュール64の機能によりハンディターミナル5のフラッシュメモリ上に登録データ86がある場合に登録データ86をデータ処理装置1に取り込んで登録データ86に記録されたデータを登録用表データ85に格納する。これによって、ユーザはデータ収集、記録後のハンディターミナル5をクレードル2に接続するだけでハンディターミナル5を用いて行ったデータ収集、記録の結果をデータ処理装置1に取り込んで登録用表データ85に保存することができ、データ収集の効率がより向上する。
【0140】
さらに、表データ81の作成時に複数のシートを作成して各シートに個別の項目を定義することができ、アプリケーション生成モジュールは表データ81の各シートに対応した業務アプリケーション定義83を生成する。これによって、業務アプリケーション72の起動時に読み込む業務アプリケーション定義83を指定することで各シートに定義した項目のデータ収集、記録をハンディターミナル5により行うことができ、ユーザはより多彩、多目的なデータ収集を行うためのアプリケーションの作成を行うことができる。
【0141】
さらに、データ処理装置1は、アプリケーション生成モジュール62の実行時に、表データ81に生成された各シート即ち生成される各業務アプリケーション定義83に対応する業務メニュー定義82を生成し、業務メニュー71と共にハンディターミナル5へ転送する。これによって、ハンディターミナル5において業務メニュー71を実行することで業務アプリケーション72の起動時に読み込む業務アプリケーション定義83を選択して指定することができ、表データ81の各シートに定義された項目を使い分けることができるので、ユーザはより簡便に多彩、多目的なデータ収集を行うためのアプリケーションを利用することができる。
【0142】
前述の実施形態における記述は、本発明の一例を示すものであり、本発明の実施形態を限定するものではない。
【0143】
例えば、前述の実施形態では業務アプリケーション72と業務アプリケーション定義83とを個別に設けて業務アプリケーション72が起動時に業務アプリケーション定義83を読み込んでその処理内容を決定する仕組みを有し、アプリケーション生成モジュール62が業務アプリケーション定義83を生成することで業務アプリケーション72の動作内容を決定する方法をとっているが、他の方法によってもよい。例えば、業務アプリケーション72と業務アプリケーション定義83とを個別に設けることなく一つの実行ファイルとし、アプリケーション生成モジュール62がハンディターミナル等のデータ収集装置で実行可能なアプリケーションの実行ファイルを生成するようにしてもよい。
【0144】
前述の実施形態では、識別情報としてバーコードを、データ収集装置としてハンディターミナルを例としているが、他の識別情報やデータ収集装置でもよい。例えば、識別情報として二次元バーコードやRFIDその他の規格を用いてもよいし、ハンディターミナル以外のデータ収集装置としてカメラ付き端末やRFIDリーダ等を用いてもよい。
前述の実施形態で示した通信装置16及び通信装置36による通信は、その他の通信規格及び将来規格化される通信規格による通信のための装置を用いることを妨げない。
同様に、アプリケーション生成システム100を構成する各部は、それぞれを代替可能な既存の構成及び将来世に出る構成による置換を妨げない。
【0145】
前述の実施形態で例示している各種の変数、パラメータ、書式その他の形態はあくまで一例であり、適宜変更可能である。
【符号の説明】
【0146】
1 データ処理装置
2 クレードル
3 ラベルプリンタ
4 プリンタ
5 ハンディターミナル
11、31 CPU
12、32 RAM
13、33 ROM
14 HDD
16,36 通信装置
17、37 入力装置
18、38 表示装置
19、39 I/F
20、40 バス
34 フラッシュメモリ
41 スキャナ
42 トリガーキー
61 表計算ソフト
62 アプリケーション生成モジュール
63、66 通信モジュール
64 表データ登録モジュール
65 バーコードラベル作成モジュール
71 業務メニュー
72 業務アプリケーション
73 環境設定アプリケーション
74 環境設定定義
75 マスタデータ
81 表データ
82 業務メニュー定義
83 業務アプリケーション定義
84 メニューシート
85 登録用表データ
86 登録データ
91 アプリ生成ボタン

【特許請求の範囲】
【請求項1】
識別情報の読取手段を有するデータ収集装置が前記識別情報に基づくデータの収集を行うためのアプリケーションソフトウェアを生成するアプリケーションソフトウェア生成装置であって、
任意の項目を定義する表データを生成する表データ生成手段と、
前記表データに定義された項目に基づいて前記データを収集するために前記データ収集装置が実行するアプリケーションソフトウェアを生成するアプリケーションソフトウェア生成手段と、
前記生成されたアプリケーションソフトウェアを前記データ収集装置に転送する転送手段と、
を備えることを特徴とするアプリケーションソフトウェア生成装置。
【請求項2】
前記識別情報に基づき収集するデータに対応する項目を指定する指定手段を備えることを特徴とする請求項1に記載のアプリケーションソフトウェア生成装置。
【請求項3】
前記指定手段は、前記表データに定義された項目のうち前記識別情報に基づき収集するデータに対応する項目と他の項目とを視覚的に判別可能とすることを特徴とする請求項2に記載のアプリケーションソフトウェア生成装置。
【請求項4】
前記アプリケーションソフトウェアは、
前記表データに定義された複数の項目に対して前記データ収集装置によるデータの入力を行うための画面を当該データ収集装置の表示装置に表示させる機能と、
前記画面上においてフォーカスの当たった項目に対して入力を可能とする機能と、
予め定められたルールに基づきフォーカスを移動させる機能と、を有し、
前記アプリケーションソフトウェア生成手段は、
前記表データに定義された項目のうち前記識別情報に基づき収集するデータに対応する項目が最初に入力する項目でない場合に、前記識別情報に基づき収集するデータに対応する項目よりも前に入力する項目に対する入力終了後に前記フォーカスを移動させる機能によりフォーカスを移動させる場合には前記識別情報に基づき収集するデータに対応する項目にフォーカスを移動させる前記ルールを生成することを特徴とする請求項3に記載のアプリケーションソフトウェア生成装置。
【請求項5】
前記表データに定義された項目に対応する項目を有する空の表データを生成する空データ生成手段と、
前記アプリケーションソフトウェアを実行した前記データ収集装置によって収集されたデータを取り込む取込手段と、
前記取込手段によって取り込まれたデータを前記空の表データに格納する格納手段と、を備えることを特徴とする請求項1から4のいずれか一項に記載のアプリケーションソフトウェア生成装置。
【請求項6】
前記表データ生成手段は、前記表データを複数生成することができ、
前記アプリケーションソフトウェア生成手段は、複数の前記表データにそれぞれ対応する複数のアプリケーションソフトウェアを生成することを特徴とする請求項1から5のいずれか一項に記載のアプリケーションソフトウェア生成装置。
【請求項7】
前記アプリケーションソフトウェア生成手段は、複数の前記表データにそれぞれ対応する複数のアプリケーションソフトウェアを生成すると共に生成された複数のアプリケーションソフトウェアのうちいずれか一つを選択して用いるためのメニューを生成し、
前記転送手段は、前記複数のアプリケーションソフトウェア及び前記メニューを前記データ収集装置に転送することを特徴とする請求項6に記載のアプリケーションソフトウェア生成装置。
【請求項8】
識別情報の読取手段を有するデータ収集装置が前記識別情報に基づくデータの収集を行うためのアプリケーションソフトウェアをコンピュータに生成させるためのプログラムであって、
前記コンピュータを、
任意の項目を定義する表データを生成する表データ生成手段、
前記表データに定義された項目に基づいて前記データを収集するために前記データ収集装置が実行するアプリケーションソフトウェアを生成するアプリケーションソフトウェア生成手段、
前記生成されたアプリケーションソフトウェアを前記データ収集装置に転送する転送手段、
として機能させることを特徴とするプログラム。
【請求項9】
識別情報の読取手段を有するデータ収集装置と、前記データ収集装置が前記識別情報に基づくデータの収集を行うためのアプリケーションソフトウェアを生成するアプリケーションソフトウェア生成装置と、を有するアプリケーションソフトウェア生成システムであって、
前記アプリケーションソフトウェア生成装置は、
任意の項目を定義する表データを生成する表データ生成手段と、
前記表データに定義された項目に基づいて前記データを収集するために前記データ収集装置が実行するアプリケーションソフトウェアを生成するアプリケーションソフトウェア生成手段と、
前記生成されたアプリケーションソフトウェアを前記データ収集装置に転送する転送手段と、
を備えることを特徴とするアプリケーションソフトウェア生成システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate

【図40】
image rotate

【図41】
image rotate

【図42】
image rotate

【図43】
image rotate

【図44】
image rotate

【図45】
image rotate

【図46】
image rotate

【図47】
image rotate

【図48】
image rotate

【図49】
image rotate

【図50】
image rotate

【図51】
image rotate

【図52】
image rotate

【図53】
image rotate

【図54】
image rotate

【図55】
image rotate

【図56】
image rotate

【図57】
image rotate

【図58】
image rotate

【図59】
image rotate

【図60】
image rotate

【図61】
image rotate

【図62】
image rotate

【図63】
image rotate

【図64】
image rotate


【公開番号】特開2010−176557(P2010−176557A)
【公開日】平成22年8月12日(2010.8.12)
【国際特許分類】
【出願番号】特願2009−20567(P2009−20567)
【出願日】平成21年1月30日(2009.1.30)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Bluetooth
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】