JP3288798B2 - ラベル印刷及びデータ収集プログラム発生器 - Google Patents

ラベル印刷及びデータ収集プログラム発生器

Info

Publication number
JP3288798B2
JP3288798B2 JP08857993A JP8857993A JP3288798B2 JP 3288798 B2 JP3288798 B2 JP 3288798B2 JP 08857993 A JP08857993 A JP 08857993A JP 8857993 A JP8857993 A JP 8857993A JP 3288798 B2 JP3288798 B2 JP 3288798B2
Authority
JP
Japan
Prior art keywords
command
block
microprocessor
file
field
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
JP08857993A
Other languages
English (en)
Other versions
JPH06297780A (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.)
Avery Dennison Retail Information Services LLC
Original Assignee
Monarch Marking Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Monarch Marking Systems Inc filed Critical Monarch Marking Systems Inc
Publication of JPH06297780A publication Critical patent/JPH06297780A/ja
Application granted granted Critical
Publication of JP3288798B2 publication Critical patent/JP3288798B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Labeling Devices (AREA)
  • Record Information Processing For Printing (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はラベル印刷とデータ収集
プログラム発生器に関し、更に詳しくは、離れた場所に
あるラベラーの印刷及びデータ収集動作を制御するため
に、このラベラーが実行することのできるソフトウェア
・プログラムをユーザが作成することを可能にするプロ
グラム発生器に関し、このソフトウェア・プログラム
は、ラベル印刷データの収集とデータ処理動作を制御す
る1組の所定のコマンドから選択されたコマンドのシー
ケンスから形成する。
【0002】
【従来の技術】プログラム発生器は、ユーザが特定のア
プリケーション用のソフトウェア・プログラムを作成す
るのを支援するものとして知られている。周知のプログ
ラム発生器では、ユーザはデータ収集システム用のプロ
グラムを作成することができる。更に詳しくは、この発
生器によって、ユーザは種々のデータ収集用のアプリケ
ーションにとって特定の異なったプログラムを発生する
ことができる。
【0003】
【発明が解決しようとする課題】しかし、このプログラ
ム発生器は使用するのが面倒である。これは、エディッ
トとコンパイルを組み合わせており、その結果、エディ
ットすべき所定のラインに先行するプログラムの各ライ
ンは所定のラインをエディットすることができる前にコ
ンパイルしなければならない。更に、このプログラム発
生器は、ラベラーの選択的な印刷動作とデータ収集動作
を制御するプログラムを発生する能力を有していない。
【0004】
【課題を解決するための手段】本発明によれば、上で論
じたような従来のプログラム発生器の欠点を解消するこ
とができる。本発明のプログラム発生器によって、ラベ
ラーの印刷及びデータ収集動作を制御するために、この
ラベラーによって実行することのできるソフトウェア・
プログラムをユーザが作成することができる。
【0005】更に詳しくは、本発明のプログラム発生器
は、処理システムと共に使用する。この処理システムに
は、表示装置、ユーザが操作して情報をこの処理システ
ムに入力する入力装置、情報を記憶するメモリ、と入力
装置、表示装置及びメモリに接続されたプロセッサが含
まれ、このプロセッサはプログラム発生器に従って動作
する。プログラム発生器には、上記のプロセッサによっ
て実行された場合、ラベル印刷、データ収集及びデータ
処理動作を制御する1組のコマンドから選択してユーザ
が入力したコマンドのシーケンスを記憶する手段が含ま
れる。この記憶したコマンドのシーケンスはプログラム
発生器に従ってプロセッサによって妥当性を検査される
が、このために、プロセッサは各コマンドを許容可能な
コマンドの組と比較してこのコマンドが有効であるかど
うかを検査する。コマンドのシーケンスを検査した後、
プログラム発生器はこのコマンドのシーケンスを変換し
てアプリケーション・プログラムを形成し、離れた場所
にあるラベラーはこのアプリケーション・プログラムを
実行して、ラベル印刷動作、データ収集動作またはデー
タ処理動作の少なくとも1つを制御することができる。
【0006】許容可能な組の各コマンドは、ユーザがこ
のコマンドと関連して1つ以上のパラメータを入力する
ことを要求することができる。コマンドを検査する場
合、プログラム発生器はこのコマンドと関連して入力さ
れたパラメータの数をカウントし、この数が許容可能で
あるかどうかを判定する。プログラム発生器は、これら
の入力されたパラメータが許容可能な印刷、データ収集
またはデータ処理動作を定義しているかどうかをまた判
定する。もしコマンドが妥当でなければ、プログラム発
生器はコマンドとエラーを識別するエラー・メッセージ
を発生する。
【0007】ユーザは、アプリケーション・プログラム
の作成を支援するため、プログラム発生器に対して命令
を与える1つ以上のコマンドをまた入力することができ
る。このような1つの命令コマンドによって、多数の異
なったファイル、即ち、プログラムを別個に作成し、ラ
イブラリに記憶し、選択的に繋ぎ合わせて新しいプログ
ラムを作成することが可能になる。更に詳しくは、プロ
グラム発生器はこのコマンドに応答し、発生中のプログ
ラムにこの命令コマンドで指定したプログラム・ファイ
ルを挿入する。プログラム発生器に対して命令を与える
他のコマンドによって多数の選択可能な印刷フォーマッ
トを有している印刷フォーマットのファイルをデータ収
集プログラムに付加し、またはこのデータ収集プログラ
ムと関連させることが可能になる。更に詳しくは、プロ
グラム発生器はこのコマンドの命令に応答して、このプ
ログラムと関連するラベラーのコンフィギュレーション
・ファイルに指定された印刷フォーマットのファイルの
内容を挿入する。
【0008】本発明のプログラム発生器は、発生中のプ
ログラムがルックアップ・ファイルを要求しているかど
うかをまた自動的に判定する。もし要求していれば、プ
ログラム発生器はユーザをプロンプトして、処理システ
ムのデータベースに記憶されている多数のデータ・ファ
イルからデータのフィールドを選択させると共にデータ
の記録のためにフィールドを検索する範囲を選択させ、
このプログラム発生器は、ユーザの選択したデータのフ
ィールドと指定された範囲の値から必要なルックアップ
・ファイルを自動的に作成する。このルックアップ・フ
ァイルの作成の元になるデータ・ファイルは実際にはラ
ベラーから供給してもよいことに留意すること。即ち、
データベースはラベラーが収集し、処理システムにアッ
プロードされたデータから形成することができる。これ
によって、1つのラベラーの収集したデータをデータベ
ースとして処理システムで使用することが可能であり、
このデータベースから処理システムに接続されている他
のラベラーまたはプリンタのためにルックアップ・テー
ブルを作成することが可能である。
【0009】本発明によれば、プログラム発生器には、
コンパイラとは別個のエディタが含まれ、その結果、プ
ログラムの各ラインは、全プログラムをコンパイルする
ことを要求することなく、選択的に編集することができ
る。本発明のこれら及び他の目的、利点及び新規な特徴
並びに本発明の図示した実施例の詳細は、以下の説明と
図面からより完全に理解することができる。
【0010】
【実施例】本発明のプログラム発生器10によって、ユ
ーザは、処理システム14を使用してラベラー12が種
々のデータ収集、データ処理及びラベル印刷動作を実行
することを可能にする離れた場所にあるこのラベラー1
2用のアプリケーション・プログラムを作成することが
できる。
【0011】アプリケーション・プログラムを発生する
対象であるラベラー12は、「プログラム可能ハンドラ
ベラー」という名称の1992年3月27日に出願され
た米国特許出願番号第07/858,703号で開示さ
れている種類のハンドラベラーであり、この出願は、本
発明の譲受人に譲渡され、ここに参考として含まれてい
る。このラベラー12は、ウェブ上で搬送されているラ
ベル27のような記録部材上に英数字情報21とバーコ
ード情報を印刷する。ラベラー12は、いずれの組み合
わせの複数の入力ソースからもこのラベラーに入力され
たデータをまた収集することができる。更に詳しくは、
ラベラー12は、キーボード13とこのラベラー12に
データを入力するためのバーコード情報を走査すること
のできるスキャナ15を有している。ラベラー12は、
処理システム14と通信を行ってラベラーがこのシステ
ムからデータを受信することを可能にするRS232通
信ポートをまた有している。ラベラー12は、RS23
2通信ポートを介してこのラベラーに対して処理システ
ム14からダウンロードされたアプリケーション・プロ
グラムを受信することができ、このアプリケーション・
プログラムはこのラベラーのランダム・アクセス・メモ
リに記憶される。ラベラーの実行することのできるアプ
リケーション・プログラムはコマンドのシーケンスの形
態であり、これはラベラー12の行うデータの収集、デ
ータの処理及びラベル印刷動作を制御する。アプリケー
ション・プログラム内の各コマンドは、ラベラー12内
の読み取専用のメモリに記憶されているコマンド・ルー
チンと連動する。ラベラーのプロセッサは、このラベラ
ーのリード・オンリ・メモリに記憶されている関連した
コマンド・ルーチンを実行することによって、このラベ
ラーのランダム・アクセス・メモリに記憶されているア
プリケーション・プログラムのコマンドを実行する。
【0012】ラベラー12は、このラベラーの複数の入
力ソースのいずれかを介して入力されたデータを関連さ
せ、関連するデータを選択的に印刷し、または関連する
データを処理システム14に選択的にアップロードする
ために、データ処理動作を行うことができる。このデー
タ処理動作は、ラベラーのランダム・アクセス・メモリ
内の種々の作業バッファを使用してこのラベラー12に
よって実行される。これらの作業バッファは、アプリケ
ーション・プログラムと共に処理システム14からダウ
ンロードされるコンフィギュレーション・レコードに従
ってラベラー12によって動的に構築される。これらの
コンフィギュレーション・レコードは、以下で説明する
ようにアプリケーション・プログラムを実行するのに必
要な作業バッファを定義する。ラベラー12のこれらの
作業バッッファには、一時作業バッファ、ルックアップ
・テーブルの作業バッファ、ヘッダ作業バッファ、印刷
作業バッファ、データ収集作業バッファ及びASCII
文字列テーブルが含まれる。ラベラーは、またそのRA
M内にルックアップ・テーブル・ファイルとデータ収集
ファイルを有ている。ルックアップ・テーブル・ファイ
ルは処理システム14からラベラー12にダウンロード
されたルックアップ・テーブルを記憶し、一方このデー
タ収集ファイルには、処理システム14にアップロード
するために収集されたデータが記憶されている。ラベラ
ー12は、このラベラー12の受け取った全てのデータ
を一時的に記憶する入力バッファとラベルを印刷する場
合に使用する多数の印刷フォーマットを記憶する印刷フ
ォーマット・バッファをまた有する。このような印刷フ
ォーマットには、UPCフォーマット、Code39フ
ォーマト等を含むことができる。
【0013】ラベラー12の作業バッファは、以下のよ
うに種々の種類のデータを記憶するために使用する。即
ち、一時作業バッファを使用して演算またはその他の中
間的なデータ処理動作を実行するためのデータを記憶す
る。文字列テーブルは、プロンプトのようなメッセージ
をユーザに表示するために、例えば、表示装置33に出
力する英文字列、数字文字列または英数字文字列を記憶
する。印刷バッファは、ラベルに印刷すべきデータの画
像を記憶する。ヘッダ作業バッファは、たまにしか使用
せず、データ収集作業バッファに記憶されている個々の
データ・ラインのアイテムのグループと関連する、また
はこれらのアイテムのグループと連動することのできる
データを記憶する。ヘッダ作業バッファ内のヘッダ・デ
ータとデータ収集作業バッファに記憶されている個々の
データ・ラインのアイテムは、データ収集ファイル内で
結合される。ルックアップ・テーブルのファイルに記憶
されている各ルックアップ・テーブルの記録は多数のフ
ィールドを有している。このルックアップ・テーブルは
種々のフィールド内のデータの記録を関連させ、その結
果、1つのフィールドのデータは関連するフィールド内
のデータによってアクセスすることができる。処理シス
テム14からダウンロードされ、ルックアップ・テーブ
ルのファイルに記憶されているルックアップ・テーブル
はラベラーの収集したデータによって変更を加えること
ができる。この変更されたルックアップ・テーブルは、
次に処理システムにアップロードして戻すことができ
る。図1に示すように、アプリケーション・プログラム
の発生器10を実行する処理システム14には、パーソ
ナルコンピュータ、P.C.17等が含まれる。ラベラ
ー12は、RS232インターフェース29を介して
P.C.17に接続する。または、パーソナル・コンピ
ュータ17は、もしラベラー12に高周波のインターフ
ェースが含まれていれば、このインターフェースを介し
てラベラー12と通信を行うことができる。P.C.1
7は、ラベラー12用のプログラムを作成するための情
報をシステム14に入力するキーボード16を有してい
る。図示していないが、マウスまたはその他の適当な入
力装置をまた使用することができる。P.C.17は、
ユーザに情報を入力するようにプロンプトし、システム
の動作に関してユーザにフィードバックを行うための表
示装置18を有している。P.C.17はマイクロプロ
セッサ19を有し、このマイクロプロセッサ19は、メ
モリ20に記憶されているソフトウェアに従って、特に
アプリケーション・プログラム発生器10に従って動作
してラベラー12の実行することのできるラベル印刷及
びデータ収集プログラムを発生する。マイクロプロセッ
サ19は、ジョブ転送アプリケーション31に従ってま
た動作し、ラベラー12に対する情報のダウンロードと
ホスト・コンピュータ39との通信を制御する。このホ
スト・コンピュータ39と同時に通信を行うため、2台
以上のラベラー12をP.C.17に接続することがで
きることに留意すること。更に、P.C.17はプリン
タ11のような1台以上の卓上型プリンタに接続するこ
とが可能であり、このプリンタはウェブ上で搬送される
記録部材上にバーコード情報を含む情報を印刷すること
ができる。例えば、32台のプリンタ及び(または)ラ
ベラーを実際にP.C.17に接続することができる。
アプリケーション・プログラム発生器10によって作成
したアプリケーション・プログラムをプリントアウトす
るように、P.C.17をまた従来のテキスト・プリン
タ(図示せず)に接続することもできる。
【0014】マイクロプロセッサ19はアプリケーショ
ン・プログラム発生器10に従って動作し、1組のデー
タ収集、データ処理、ラベル印刷及び命令コマンドから
選択したコマンドのシーケンスを入力するようにユーザ
をプロンプトする。命令コマンドは、アプリケーション
・プログラムの作成を支援するため、アプリケーション
・プログラム発生器に種々の動作を行うように命令する
が、このアプリケーション・プログラムはデータ収集、
データ処理、及びラベル印刷コマンドから形成される。
この命令コマンドには、DEFINEコマンド、FIN
CLUDEコマンド、INCLUDEコマンド、MAC
ROコマンド、およびUPLOADDEFコマンドが含
まれる。DEFINEコマンドを使用して作成中のアプ
リケーション・プログラムに必要な種々の作業バッファ
のフィールドを定義する。DEFINEコマンドにはD
EFINEという語が含まれ、これにバッファ・フィー
ルドの種類、即ち、ヘッダ・バッファのフィールド、一
時的バッファのフィールド、データ収集バッファのフィ
ールド、印刷バッファのフィールドまたはルックアップ
・テーブルのバッファのフィールドを識別する情報が続
く。この情報には、フィールドの論理名とフィールドの
長さが続く。DEFINEコマンドは、フィールドが英
数字フィールドであるか数字のみのフィールドであるか
をまた指定することができる。もしフィールドのデータ
の種類が指定されていなければ、アプリケーション・プ
ログラム発生器10は、自動的にこのデータの種類に対
するディフォルト値を仮定し、このディフォルト値は英
数字データの種類である。印刷バッファのフィールドに
対して只1つ許容されたデータの種類の値は英数字であ
ることを更に留意すること。更に、フィールドの長さは
DEFINEコマンド内で1ないし64バイトに指定す
ることができる。
【0015】FINCLUDEコマンドを使用してアプ
リケーション・プログラム発生器10のコンパイラに信
号を送り、指定されたフォーマット・ファイルの内容を
アプリケーション・プログラムのために発生されたコン
フィギョレーション・ファイルに挿入する。複数のFI
NCLUDEコマンドを使用することが可能である。F
INCLUDEコマンドで指定されたフォーマット・フ
ァイルはアプリケーション・プログラム用の作業バッフ
ァの定義を有するコンフィギュレーション・ファイルの
端部に挿入される。
【0016】INCLUDEコマンドによって多数の異
なったスクリプト・ファイルを別個に作成し、選択的に
繋ぎ合わせて種々の新しいアプリケーション・プログラ
ムを作成することが可能になる。更に詳しくは、INC
LUDEステートメントによって、ユーザはメモリ20
内にスクリプト・ファイルのライブラリを作成すること
ができ、この場合、各スクリプト・ファイルには異なっ
た機能を実行するためのコマンドが含まれている。この
特徴によって、ユーザは大きな柔軟性を得ることがで
き、アプリケーション・プログラムの作成が容易にな
る。アプリケーション発生器10のコンパイラはINC
LUDEコマンドに応答し、このINCLUDEコマン
ド内で識別されたファイル内に位置するソース・ステー
トメントを現在作成中のアプリケーション・プログラム
に挿入する。入れ子形のINCLUDEコマンドは許容
されないことに留意すること。
【0017】MACROコマンドは単一のコマンドであ
るが、スクリプトの変換中に複数のコマンドに拡張する
ことができる。MACROコマンドが現れる毎にこのマ
クロと関連するコマンドを発生中のアプリケーション・
プログラムに挿入することができる。AUTOSTAR
Tコマンドを使用すると、ラベラー12は、アプリケー
ション・プログラムがこのラベラー12にロードされる
や否や自動的にこのアプリケーション・プログラムの実
行を開始することができる。
【0018】UPLOADDEFコマンドは、P.C.
17に情報をアップロードするために、このP.C.1
7と通信するのにラベラー12が必要とする情報を定義
する。UPLOADDEFコマンドにはP.C.にアッ
プロードすべきパケットの種類を識別する情報が含ま
れ、このパケットはジョブ・パケットまたは連続したフ
ァイル・パケットのいずれかである。UPLOADDE
Fコマンドには、またアップロード中のファイルの種類
を識別する情報が含まれ、このファイルはデータ収集フ
ァイルまたはルックアップ・ファイルのいずれかであ
る。連続したファイル・パケットの場合、UPLOAD
DEFコマンドには、ラベラー12からアップロードさ
れた情報を記憶すべきメモリ20内のファイルを識別す
る情報とコマンドがジョブ・コンフィギュレーション・
ファイルの名前を指定するジョブ・パケット・ファイル
の情報が含まれている。Mode情報がまたこのUPL
OADDEFコマンドに含まれるが、このモードはファ
イルを書き込むためのWriteモードまたはもしこの
ファイルが既に存在する場合にはこのファイルに対して
オーバライトを行うためのモードのいずれかである。ま
たは、このモードはアップローダされた情報をファイル
に追加するためのAppendモードでもよい。ジョブ
・パケットの場合、このコマンドにはまたソース・キー
の指定が含まれ、この場合、このソース・キーはヘッダ
の記録とラベラー12のデータ収集ファイルに記憶され
ているデータ収集記録またはライン・アイテム記録を共
に繋ぎ合わせるヘッダの作業バッファ内の記録の論理的
フィールド名である。
【0019】ラベラー12用のアプリケーション・プロ
グラムを形成するために使用するデータ収集及びラベル
印刷コマンドにはラベラー12内のデータの処理を制御
する種々の命令が含まれ、その結果、ラベラー12の種
々の入力ソースから入力されて選択したデータは選択的
に関連ずけられ、関連したデータを共に印刷したり、処
理システム14に共にアップロードすることができる。
許容可能なコマンドの中には多数の入力/出力コマンド
が含まれ、これらのコマンドを使用してデータ収集、通
信及び印刷のようなラベラー12の動作を制御する。こ
れらのルーチンには、Getルーチン、Scanner
Initializationルーチン、Locat
eルーチン、Downloadルーチン、Upload
ルーチン、Printルーチン、Beepルーチン、S
ystem Setルーチン及びSystem Che
ckルーチンが含まれている。
【0020】Getコマンドによって、ラベラー12は
キーボード13、スキャナ15または通信ポートからこ
のラベラー12に入力されたデータを受信できる。Ge
tコマンドには、入力すべきデータが英数字であるか数
字であるかを識別する情報が含まれている。Getコマ
ンドには、また入力データのソース、すなわちラベラー
12のスキャナ15、キーボード13及び(または)通
信ポートを識別する情報が含まれ、更にこのコマンド
は、データの有効な入力を可能にする最小の文字数と最
大の文字数を指定する。Scanner Initia
lizationコマンドによって、ラベラー12はス
キャナを初期化して所望のバーコードの符号を読み取る
ことができる。このScanner Initiali
zationコマンドには、ラベラー12と共に使用さ
れているスキャナ15の種類と走査すべきバーコードの
種類、即ち、例えばこのバーコードはUPCバーコー
ド、Code39のバーコード等であるかどうかを識別
する情報が含まれている。Locateコマンドを使用
することによって、カーソルをラベラー12の表示装置
33上でこのLocateコマンドで指定されたこの表
示装置の行と列に位置させる。Downloadコマン
ドを使用し、処理システムの通信ポートとラベラーを介
してこの処理システム14からラベラー12に新しいル
ックアップ・テーブルをロードする。Uploadコマ
ンドを使用し、ラベラー12から処理システム14にデ
ータ収集ファイルまたはルックアップ・テーブル・ファ
イルのいずれかをアップロードする。このUpload
コマンドには、データ収集ファイルまたはルックアップ
・ファイルを識別する情報が含まれている。Print
コマンドを使用し、ラベラー12の印刷バッファの内容
を印刷命令で指定したフォーマットで印刷する。更に詳
しくは、印刷コマンドには、ヌル・フィールド、即ち、
ミッシング・データをプロンプトするかどうかを指示す
る情報並びにラベラー12の印刷バッファ内の情報を印
刷する場合に準拠すべきフォーマットを識別する情報が
含まれている。Beepコマンドを使用してラベラー1
2の警報器を0.5秒間鳴らす。
【0021】System Setコマンドを使用し
て、ラベラー12の種々のシステム・パラメータを設定
する。System Setコマンドには、設定すべき
特定のパラメータを識別する情報が含まれ、このパラメ
ータは、スキャナ、自動トリガ、自動入力、データ長、
複数のラベル、ラベル片、通貨の符号または外国のプロ
ンプトである。このSystem Setコマンドがス
キャナのパラメータを識別する場合、このコマンドに
は、またラベラー12と共に使用されているスキャナの
種類及び走査すべきバーコードの種類、即ち、例えば、
このバーコードはUPCバーコード、Code39のバ
ーコード等であるかどうかを識別する情報が含まれてい
る。System Setコマンドを使用して、Sca
nner Initializeコマンドを使用するの
と同様の方法でスキャナ15を初期化することができ
る。System Setコマンドが自動トリガのパラ
メータを識別する場合、このコマンドには、また自動ト
リガのオプションがイネーブルされたかディスエーブル
されたかを示す情報が含まれている。もし自動トリガの
オプションがイネーブルされれば、ラベルの画像がラベ
ラー12の印刷バッファ内に構築されるのと同時に、ラ
ベラーのトリガ37の作動を要求することなく、ラベル
に対して印刷が行われる。同様に、System Se
tコマンドが自動入力のパラメータを識別する場合、こ
のコマンドには、自動入力のオプションがディスエーブ
ルされているかイネーブルされているかを識別する情報
が含まれている。もし自動入力のオプションがディスエ
ーブルされていれば、情報がスキャナ15によって走査
された後、ユーザは入力キーを作動させなければならな
い。もし自動入力のオプションがイネーブルされていれ
ば、走査の後で入力キーを作動させる必要はない。Sy
stem Setコマンドがデータ長のパラメータを識
別する場合、このコマンドには、またラベラー12のシ
ステム・データの許容長が含まれている。System
Setコマンドが複数のラベルのパラメータを識別す
る場合、このコマンドには、またラベル上に示された連
続カウントをインクリメントする前に印刷すべき同一の
ラベルの数を識別する情報が含まれている。Syste
m Setコマンドがラベル片のパラメータを識別する
場合、このコマンドには、ラベラー12によって印刷さ
れるべき複写ラベルの数を識別する情報が含まれてい
る。System Setコマンドが通貨の符号のパラ
メータを識別する場合、このコマンドには、また使用す
べき特定の通貨の符号、即ち、米国ドルの符号、英国ポ
ンドの符号等を識別する符号が含まれている。Syst
em Setコマンドが外国のプロンプトのパラメータ
を識別する場合、このコマンドには、プロンプトに使用
すべき外国語を識別する情報が含まれている。英国のプ
ロンプト並びにスペイン、フランスまたはドイツのプロ
ンプトを使用することが可能である。System C
heckコマンドを使用し、このSystem Che
ckコマンドで指定されたラベラー12のバッテリまた
はランダム・アクセス・メモリの状態をチェックする。
【0022】許容可能なコマンドの組の中には、データ
の処理を行うコマンドがあり、このコマンドによって、
ラベラー12の作業バッファとファイルを使用してデー
タをソートし、このラベラー12のランダム・アクセス
・メモリに記憶されている他のデータとこのデータを関
連させることができる。幾つかのデータ処理コマンド
は、さらにデータに付いて数学的な演算を行う。ラベラ
ー12は他の処理コマンドを使用して、データ・ファイ
ルを管理し、またはアプリケーション・プログラム自身
の制御を行う。データ処理コマンドによって、ユーザ
は、ラベラー12のランダム・アクセス・メモリに記憶
されているデータを再構成する場合、大きな柔軟性を有
することが可能になり、その結果、ラベラー12の種々
の入力ソース、即ち、キーボード、スキャナ、及び(ま
たは)通信ポートから入力されたデータは、何時でも、
選択的に関連させることが可能であり、これによって、
収集したデータをP.C.17またはホスト・コンピュ
ータ39で処理する必要性を最小にするため、関連する
データを共に印刷したり、P.C.17に共にアップロ
ードしたりすることが可能になる。これらのコマンドに
含まれているのは、、Moveコマンド、Valida
teコマンド、Compareコマンド、Concat
enateコマンド、Right Stringコマン
ド、Left Stringコマンド、Mid Str
ingコマンド、Upper Caseコマンド、Fi
eld Lengthコマンド、Right Stri
pコマンド、Left Stripコマンド、Addコ
マンド、Subtractコマンド、Incremen
tコマンド、Decrementコマンド、Divid
eコマンド、Multiplyコマンド、Clearコ
マンド、Readコマンド,Write Append
コマンド、Write Currentコマンド、Qu
eryコマンド、Seekコマンド、Exitコマン
ド、Callコマンド、Returnコマンド、Jum
pコマンド、及びDelayコマンドである。
【0023】Moveコマンドを使用して、ソース・フ
ィールドの内容に影響を及ぼすことなく、このソース・
フィールドからラベラーのRAMの指定フィールドにデ
ータをコピーする。Moveコマンドには、データのソ
ース・フィールドを識別する情報が含まれ、このソース
・フィールドはラベラーの入力バッファ、ASCII文
字列の番号、定数値、ラベラー12の一時バッファのフ
ィールド、データ収集作業バッファのフィールド、ルッ
クアップ・テーブルの作業バッファのフィールドまたは
ヘッダ作業バッファのフィールドである。Moveコマ
ンドにはまたデータの行き先を識別する情報が含まれ、
この行き先は、ラベラー12の入力バッファ、印刷バッ
ファのフィールド、一時作業バッファのフィールド、デ
ータ収集作業バッファのフィールド、ルックアップ・テ
ーブルの作業バッファのフィールド、ヘッダ作業バッフ
ァのフィールド、スキャナ15、通信ポートまたは表示
装置33である。Validateコマンドを使用し
て、ラベラー12のRAM内のデータのフィールドをこ
のフィールドのチェック・ディッジトを利用して検査す
る。Validateコマンドには、検査すべきフィー
ルドと使用するチェック・ディッジトの種類を識別する
情報が含まれている。Compareコマンドを使用し
て、ラベラー12のRAM内の第1フィールドの内容を
このラベラーのRAMの第2フィールドの内容と比較す
る。Compareコマンドには、実行すべき比較の種
類、即ち、同等比較、未満比較、超比較、以下比較また
は以上比較を示す情報が含まれる。Compareコマ
ンドで指定された第1及び第2フィールドは、それぞれ
ラベラー12の入力バッファ、ASCII文字列、数字
フィールド、一時作業バッファのフィールド、データ収
集作業バッファのフィールド、ルックアップ・テーブル
の作業バッファのフィールドまたはヘッダ作業バッファ
のフィールド内の特定のフィールドである。Conca
tenateコマンドを使用して、ソース・フィールド
のデータを行き先フィールドのデータに追加するが、こ
れは、ソース・フィールドの内容には影響を及ぼさな
い。Concatenateコマンドには、データのソ
ース・フィールドを識別する情報とデータの行き先フィ
ールドを識別する情報が含まれている。データのソース
・フィールドは、ラベラー12の一時作業バッファのフ
ィールド、データ収集作業バッファのフィールド、ルッ
クアップ・テーブルの作業バッファのフィールドまたは
ヘッダ作業バッファのフィールド、または入力バッフ
ァ、ASCII文字列の番号または定数値である。この
データの行き先フィールドは、ラベラー12の入力バッ
ファ、印刷バッファのフィールド、一時作業バッファの
フィールド、データ収集作業バッファのフィールド、ル
ックアップ・テーブルの作業バッファのフィールド、ま
たはヘッダ作業バッファのフィールドである。Righ
t Stringコマンドを使用して、ラベラーのRA
Mの指定された第1フィールドの文字列から指定された
数の最も右側の文字を取り出し、これらの取り出した文
字を指定された第2フィールドにコピーする。Righ
tStringコマンドには、取り出すべき最も右側の
文字の数を識別する情報並びにラベラー12の一時作業
バッファ、データ収集作業バッファ、ルックアップ・テ
ーブルの作業バッファ及びヘッダ作業バッファからのフ
ィールドである第1及び第2フィールドの一致を識別す
る情報が含まれている。第1フィールドは、またラベラ
ー12の入力バッファの1つのフィールドである。Le
ft Stringコマンドは、これを使用して指定さ
れた第1フィールドから指定された数の最も左側の文字
を取り出し、これらの文字を指定された第2フィールド
にコピーする点を除いて、Right Stringコ
マンドと同じである。第1及び第2フィールドは、Ri
ght Stringコマンドに関して上で論じたバッ
ファからのいずれのフィールドでもよい。Mid St
ringコマンドはRight Stringコマンド
及びLift Stringコマンドと同じであるが、
これを使用して、第1フィールドの指定された中間位置
にある文字を指定された第2フィールドに移動する。再
び、Mid Stringコマンドの第1及び第2フィ
ールドは、Right Stringコマンドに関して
上で論じたバッファからのいずれのフィールドでもよ
い。Upper Caseコマンドを使用して、小文字
を大文字に変換するが、この場合、このコマンドは変換
すべきフィールドを識別する。Upper Caseコ
マンドで変換するものとして識別されたフィールドは、
入力バッファ、一時作業バッファ、データ収集作業バッ
ファ、ルックアップ・テーブルの作業バッファまたはヘ
ッダ作業バッファのフィールドである。Field L
engthコマンドを使用して、指定されたソース・フ
ィールドの内容の長さを指定された行き先フィールドに
載置する。Field Lengthコマンドで識別さ
れたソース・フィールドは、ラベラ12の一時作業バッ
ファ、データ収集作業バッファ、ルックアップ・テーブ
ルの作業バッファまたはヘッダ作業バッファのフィール
ドである。Field Lengthコマンドで指定さ
れた行き先フィールドは、ラベラー12の一時作業バッ
ファ、データ収集作業バッファ、ルックアップ・テーブ
ルの作業バッファ、ヘッダ作業バッファまたは印刷作業
バッファからのフィールドである。Right Str
ipコマンドを使用して、第1フィールドの右側からこ
のコマンドで指定された数の文字を切り離し、この第1
フィールドの残りの文字を第2フィールドに記憶する。
しかし、第1フィールドのデータには影響が及ばない。
RightStripコマンドには、切り離すべき文字
の数を識別する情報が含まれ、この数は1から64迄の
いずれの数でもよい。Right Stripコマンド
で指定された第1フィールドは、ラベラー12の入力バ
ッファ、一時作業バッファまたはヘッダ作業バッファの
フィールドである。第2フィールドは、ラベラー12の
一時作業バッファ、データ収集作業バッファ、ルックア
ップ・テーブルの作業バッファまたはヘッダ作業バッフ
ァのフィールドである。Left Stripコマンド
を使用して第1フィールドの左側から一定の数の文字を
切り離し、この第1フィールドの残りの文字を第2フィ
ールドに記憶する点を除いて、LeftStripコマ
ンドは、Right Stripコマンドと同じであ
る。
【0024】以下のコマンドを使用して、データに対し
て数学演算を実行する。更に詳しくは、Addコマンド
を使用して、いずれもAddコマンドで識別された第1
フィールドと第2フィールドからの数値を加算する。こ
れらの第1及び第2フィールドは、ラベラー12の一時
作業バッファ、データ収集作業バッファ、ルックアップ
・テーブルの作業バッファまたはヘッダ作業バッファの
いずれかのフィールドである。更に、Addコマンドで
指定された第1フィールドは一定値でもよい。加算演算
の結果は、指定された第2フィールドにセーブする。S
ubtractコマンドを使用して、指定された第1フ
ィールドの内容を指定された第2フィールドの内容から
差引き、この結果を第2フィールドに記憶する。Sub
tractコマンドで指定された第1及び第2フィール
ドは、Addコマンドに関して上で論じたのと同じラベ
ラーのバッファから選択することができ、第1フィール
ドはまた指定された一定値でもよい。Incremen
tコマンドはAddコマンドと同じであるが、これを使
用して指定された数字フィールドに対して1をインクリ
メントする。Incrementコマンドにはインクリ
メントすべきフィールドの識別が含まれ、このフィール
ドは、ラベラー12の一時作業バッファ、データ収集作
業バッファ、ルックアップ・テーブルの作業バッファま
たはヘッダ作業バッファからのフィールドである。同様
に、Decrementコマンドを使用して、指定され
た数字フィールドから1をデクリメントする。Decr
ementコマンドにはデクリメントすべきフィールド
の識別が含まれ、このフィールドは、ラベラー12の一
時作業バッファ、ルックアップ・テーブルの作業バッフ
ァ、データ収集作業バッファまたはヘッダ作業バッファ
のフィールドである。Divideコマンドを使用し
て、指定された第1フィールドの内容を指定された第2
フィールドの内容で除算する。これは整数の除算演算で
あり、この演算の結果は、剰余を無視して指定された第
2フィールドに記憶する。この第1フィールドは、ラベ
ラー12の一時作業バッファ、データ収集作業バッフ
ァ、ルックアップ・テーブルの作業バッファまたはヘッ
ダ作業バッファからのフィールドである。この第1フィ
ールドは、また指定された数値でもよい。第2フィール
ドは、ラベラー12の一時作業バッファ、データ収集作
業バッファ、ルックアップ・テーブルの作業バッファま
たはヘッダ作業バッファの指定されたフィールドであ
る。Multiplyコマンドを使用して、指定された
第1フィールドの内容を指定された第2フィールドの内
容で乗算し、その結果を指定された第2フィールドにセ
ーブする。第1フィールドは、ラベラー12の一時作業
バッファ、データ収集作業バッファ、ルックアップ・テ
ーブルの作業バッファまたはヘッダ作業バッファからの
フィールドである。この第1フィールドは、また指定さ
れた数値でもよい。第2フィールドは、ラベラー12の
一時作業バッファ、データ収集作業バッファ、ルックア
ップ・テーブルの作業バッファまたはヘッダ作業バッフ
ァからのフィールドである。以下の処理コマンドを使用
して、種々のデータ・フィールドを管理する。Clea
rコマンドを使用して、ラベラー12の作業バッファま
たはファイルまたはこれらの中の指定されたフィールド
をクリアし、またはラベラー12の表示装置をクリアす
る。Clearコマンドには、ラベラー12の印刷バッ
ファ、データ収集作業バッファ、全データ収集ファイ
ル、ルックアップ・テーブルの作業バッファ、全ルック
アップ・テーブルのファイル、一時作業バッファ、ヘッ
ダ作業バッファ、入力バッファ、表示装置、または一時
作業バッファ、データ収集作業バッファ、ルックアップ
・テーブルの作業バッファ、ヘッダ作業バッファまたは
印刷バッファの指定されたフィールドのようなクリアす
べきラベラーの要素の識別が含まれている。Readコ
マンドを使用して、データ収集ファイルまたはルックア
ップ・テーブルのファイルのいずれかからの記録を適当
な作業バッファに移動する。Readコマンドには、デ
ータ収集ファイルの読み取り、ヘッダファイルの読み取
りまたはルックアップ・テーブルのファイルの読み取り
を実行すべきかどうかを識別する情報が含まれている。
Write Appendコマンドを使用して、指定さ
れた作業バッファの内容をラベラー12のデータ収集フ
ァイルにセーブする。Write Appendコマン
ドには、ヘッダ・バッファまたはデータ収集バッファの
内容をデータ収集ファイルにセーブすべきかどうかを識
別する情報が含まれている。Write Curren
tコマンドを使用して、指定された作業バッファをラベ
ラー12のデータ収集ファイルまたはルックアップ・テ
ーブルのファイルのいずれかの現在のポインタの位置に
セーブする。このコマンドによって、エディット型の機
能を行うことができる。Write Currentコ
マンドには、ルックアップ・テーブルの作業バッファ、
データ収集作業バッファまたはヘッダ作業バッファのよ
うなセーブすべき作業バッファを識別する情報が含まれ
ている。Queryコマンドを使用して、ラベラー12
のデータ収集ファイルまたはルックアップ・ファイルを
検索し、特定の値を有する記録を見つける。このコマン
ドを使用して、キーボード、スキャナまたは通信ポート
のようなラベラー12の入力ソースのいずれかから入力
されたデータを検査する。Queryコマンドには、照
会の種類と第1及び第2フィールドを識別する情報が含
まれている。第2フィールドは入力バッファから取り出
されてもよく、またはこれは、ASCII文字列または
数字の文字列、またはラベラー12の一時作業バッフ
ァ、データ収集作業バッファ、ヘッダ作業バッファまた
はルックアップ・テーブルの作業バッファからの特定の
フィールドでもよい。Queryコマンドで指定された
第1フィールドは、検索すべきフィールドである。第1
フィールドは、ルックアップ・テーブルのファイル、デ
ータ収集ファイルまたはヘッダ作業バッファの特定のフ
ィールドでもよい。照会の種類は、指定された第2フィ
ールドの内容が指定された第1フィールドの内容と等し
い第1記録の位置を探す等価照会、指定された第2フィ
ールドの内容が指定された第1フィールドの内容未満で
ある第1記録の位置を探す未満照会、指定された第2フ
ィールドの内容が指定された第1フィールドの内容を超
える第1記録の位置を探す超照会、指定された第2フィ
ールドの内容が指定された第1フィールドの内容以下で
ある第1記録の位置を探す以下照会、または指定された
第2フィールドの内容が指定された第1フィールドの内
容以上である第1記録の位置を探す以上照会である。S
eekコマンドを使用して、ポインタを指定されたファ
イル内に位置させる。Seekコマンドには、データ収
集ファイルまたはルックアップ・テーブルのファイルの
いずれかを識別する情報と、ファイルの始点、ファイル
の終点、現在のポインタの位置を基準にしてファイルの
次の記録またはファイルの前の記録にポインタを位置さ
せるかどうかを識別する情報が含まれている。
【0025】下記のコマンドはアプリケーション・プロ
グラム自身を制御する。更に詳しくは、Exitコマン
ドを使用して、アプリケーション・プログラムの実行を
抜ける。Suspendコマンドをまた使用して、アプ
リケーション・プログラムの実行を抜けるが、これによ
って、アプリケーションに再び入ると、Suspend
コマンドに続いて直ちにコマンド・ラインでアプリケー
ション・プログラムの実行を再開することが可能にな
る。これは、プログラムに再び入ると、アプリケーショ
ンの第1ラインでExitコマンドに続いてプログラム
の実行が再開されるExitコマンドと対称的である。
Callコマンドを使用して、コードの1本のラインを
サブルーチンとして呼び出す。Returnコマンドを
使用して、サブルーチンの終了に到達する前にこのサブ
ルーチンを抜けることを可能にする。このサブルーチン
に対する呼び出しに続いて、次のコマンドで制御を再開
する。Jumpコマンドによって、プログラムを指定さ
れたライン番号にジャンプさせる方法が提供される。D
elayコマンドを使用して、このDelayコマンド
で指定された期間の間アプリケーションの実行を遅ら
せ、この遅延時間は0.1秒乃至9.9秒である。許容
可能なコマンドには、またラベラー12の1つ以上のプ
ログラム可能キーをプログラムするコマンドが含まれて
いる。更に詳しくは、ホットキー・コマンドは、もし指
定されたキーがキーボードの入力中に操作されれば、ア
プリケーションのルーチンを呼び出すために使用すべき
キーを定義する。これらのプログラム可能キー即ちホッ
トキーは、アプリケーション・プログラムのいずれの場
所でも定義可能であり、大域的に定義される。ホットキ
ー・コマンドにはいずれの1つまたは複数のキーがホッ
トキーであるかを識別する情報が含まれている。更に詳
しくは、リコール・キー、スペース・キー、ロードキ
ー、左向きの矢印キーまたは右向きの矢印キーをそれぞ
れホットキーとして指定してもよい。ホットキー・コマ
ンドは、またこのホットキーを操作した場合呼び出すべ
き機能またはサブルーチンを識別する。Disable
ホットキー・コマンドを使用して、このDisable
コマンドで指定された1つ以上のホットキーをディスエ
ーブルする。同様に、Enableホットキー・コマン
ドを使用してこのEnableホットキー・コマンドで
指定された1つ以上のホットキーをイネエーブルする。
【0026】図2に示すように、ブロック60でアプリ
ケーション・プログラム発生器10を初期化すると、マ
イクロプロセッサ19はユーザをプロンプトして、アプ
リケーション・プログラムの発生を開始するため、ファ
イル、エディット、テンプレート、コンパイルのような
メッセージまたは標準メッセージを入力させる。ブロッ
ク62で、マイクロプロセッサはキーボード16または
マウスを介してユーザの入力したメッセージを取得し、
ブロック64に進んでこのメッセージが標準メッセージ
か否かを判定する。もしこのメッセージがプロセッサの
動作システムのための標準メッセージであれば、プロセ
ッサ19はブロック66に進んでこの標準メッセージを
処理する。もしマイクロプロセッサ19がブロック64
で入力されたメッセージは標準メッセージ以外であると
判定すれば、このマイクロプロセッサはブロック68に
進み、図3、4に示すルーチンに従ってこのメッセージ
を処理する。その後、ブロック70で、マイクロプロセ
ッサはQuitメッセージを受け取ったかどうかを判定
し、もし受け取っていれば、マイクロプロセッサ19は
アプリケーション・プログラム発生器のルーチンを抜け
る。これ以外の場合には、マイクロプロセッサはブロッ
ク70からブロック62に進んで他のメッセージを処理
する。
【0027】図3、4に示すように、最初にこれらのメ
ッセージを処理しているマイクロプロセッサ19は、ブ
ロック72でこのメッセージがOpen、Close、
SaveまたはSave Asのようなファイル・メニ
ュー・メッセージであるかどうかを判定する。もしこの
メッセージがファイル・メニューから選択されたメッセ
ージの1つであれば、マイクロプロセッサ19は、ブロ
ック74に進んでこのファイル・メニュー・メッセージ
を処理する。もしマイクロプロセッサ19が、ブロック
72でこのメッセージはファイル・メニュー・メッセー
ジでなかったと判定すれば、ブロック76に進んでこの
メッセージはEditメニュー・メッセージであるかど
うかを判定する。もしEditメニュー・メッセージで
あれば、マイクロプロセッサはブロック78に進んで、
図12と13に関して以下で論じるようにこのエディッ
ト・メッセージを処理する。ブロック80でマイクロプ
ロセッサ19は、このメッセージがTemplateメ
ニュー・メッセージであるかどうかを判定する。もしT
emplateメニュー・メッセージであれば、マイク
ロプロセッサ19は、図14に示すフローチャトに従っ
てこのテンプレート・メッセージを処理する。ブロック
84で、マイクロプロセッサ19は、このメッセージは
Compileメッセージであるかどうかを判定し、も
しCompileメッセージであれば、マイクロプロセ
ッサ19は、ブロック86でこのCompileメッセ
ージを図15‐19及び図27‐39に示すフローチャ
ートに従って処理する。マイクロプロセッサ19がCo
mpileルーチンに従ってスクリプト・ファイル内に
エラーを検出すると、表示装置18にエラー記録ウイン
ドを作り、エラーを有する各コマンドとエラーの種類を
リストアップする。ユーザはエラー・ウインドのメッセ
ージを使用してエラー記録ウインドに記録したエラーを
訂正することができる。ブロック88で、マイクロプロ
セッサ19は、エラー・ウインドのメッセージが受け取
られたかどうかを判定し、もし受け取られれば、マイク
ロプロセッサはブロック90でこのメッセージを処理
し、ユーザがこのエラーを訂正し、エラー記録ウインド
に戻って存在する可能性のある他のエラーを見つけるこ
とを可能にする。ブロック92で、マイクロプロセッサ
19は、メッセージがDownloadメニューから受
け取られているかどうかを判定し、もし受け取られてい
れば、マイクロプロセッサはブロック94でこのダウン
ロード・メッセージを処理する。ダウンロード・メッセ
ージによって、ユーザはアプリケーション・プログラム
をラベラーにダウンロードする場合にこれを経由させる
P.C.17の通信ポートを選択することが可能にな
り、その結果、このアプリケーションはシステム14に
接続された多くのラベラーの1つにダウンロードするこ
とができる。ブロック94で、マイクロプロセッサ19
は、指定されたアプリケーション・プログラムのために
ルックアップ・テーブルが要求されているかどうかをま
た判定し、もし要求されていれば、マイクロプロセッサ
19はアプリケーション・プログラムと共にダウンロー
ドすべきルックアップ・テーブルを作成する。ルックア
ップ・テーブルはまたアプリケーション・プログラムと
は関係なくまたラベラー12にダウンロードすることが
できることに留意すること。ブロック96で、マイクロ
プロセッサは、印刷メニュー・メッセージが受け取られ
たかどうかを判定し、もし受け取られたなら、ブロック
98に進んでメモリ20に記憶されているファイルを
P.C.17のテキスト・プリンタに印刷する。
【0028】マイクロプロセッサ19がユーザはファイ
ル・メニューからオプションを選択したと判定するとこ
のマイクロプロセッサは図5、6に示すフローチャート
に従って動作し、選択されたファイル・メニューのメッ
セージを処理する。更に詳しくは、ブロック100で、
マイクロプロセッサ19は、このメッセージが新しいス
クリプト・メッセージであるかどうかを判定し、もし新
しいスクリプト・メッセージであれば、このマイクロプ
ロセッサはブロック102に進んで図7に示すフローチ
ャートに従ってこの新しいスクリプト・メッセージを処
理する。ここで使用するスクリプトは、処理システム1
4に入力されたコマンドのシーケンスのことであり、こ
のシーケンスには、ラベラー12の実行すべきコマンド
とラベラー12用のアプリケーション・プログラムを発
生する場合にマイクロプロセッサ19の実行すべき命令
コマンドが含まれている。図7に示すように、マイクロ
プロセッサはブロック104で先ずスクリプト・ライブ
ラリをセットアップし、ブロック106でユーザのため
に表示装置18にデフォルト・スクリプト・ファイルを
表示する。このデフォルト・スクリプト・ファイルに
は、ユーザがアプリケーションの名称、製作者及び日付
を入力することができる3本のコメント・ラインが含ま
れている。これらのコメントのラインには3本のライン
が続き、第1ラインは「FUNCTION STAR
T」を示し、第2ラインは「BEGIN」を示し、第3
ラインは「END」を示す。ユーザに表示されたデフォ
ルト・スクリプト・ファイルの第1ラインの「STAR
T」機能は、発生すべきアプリケーション・プログラム
を実行するための開始点として機能する。語「BEGI
N」と「END」は、この機能の境界を定義する。「S
TART」機能は、プログラム・アプリケーション内の
他の機能に対する命令を支持することによってプログラ
ム・アプリケーションの実行を一般的に制御する。ここ
で使用する機能は、特定のタスクを実行するように設計
されたコマンドの独立したシーケンスのことである。機
能の名称は特別の機能を識別するものであり、一方この
機能の本体はこの機能の特別のタスクを定義するコマン
ドのシーケンスのことである。キーワード「END」ま
たは「RETURN」コマンドを実行すると、機能は、
例えば「START」機能を呼び出し者に戻す。従っ
て、新しいスクリプト・メッセージを処理する場合、マ
イクロプロセッサはブロック102で新しいスクリプト
・アプリケーションのために開始テンプレートの種類を
表示する。
【0029】もしマイクロプロセッサ19が図5、6に
示すブロック108でオープン・スクリプト・メッセー
ジがファイル・メニューから選択されていると判定すれ
ば、マイクロプロセッサはブロック110に進んで図8
に示すフローチャートに従ってこのオープン・スクリプ
ト・メッセージを処理し、ここでマイクロプロセッサ1
9はユーザを開かれるべきスクリプト・ファイルの名称
に対してプロンプトする。更に詳しくは、図8に示すよ
うに、マイクロプロセッサ19はブロック112で先ず
スクリプト・ライブラリをセットアップし、ブロック1
14でスクリプト・ファイルの名称に対してユーザをプ
ロンプトする。マイクロプロセッサ19は、既に名称の
付いているスクリプト・ファイルのリストと種々のディ
レクトリを表示することによって、スクリプト・ファイ
ルの名称に対してユーザをプロンプトする。マイクロプ
ロセッサは、また「オープン・ファイルの名称:」と記
されたボックスを示してユーザがスクリプト・ファイル
の名称内にタイプを行うことを可能にする。スクリプト
・ファイルを選択すると、マイクロプロセッサは、ブロ
ック116で選択されたスクリプト・ファイルをロード
して表示する。
【0030】もしマイクロプロセッサがブロック118
でクローズ・スクリプト・メッセージがファイル・メニ
ューから選択されていると判定すれば、マイクロプロセ
ッサ19はブロック120に進んで図9に示すフローチ
ャートに従ってこのクローズ・スクリプト・メッセージ
を処理する。ここに示すように、クローズ・スクリプト
・メッセージを処理するため、マイクロプロセッサ19
は、ブロック122で先ずスクリプトが変更されたかど
うかを判定し、もし変更が行われていれば、マイクロプ
ロセッサ19はユーザをプロンプトし、もしユーザが希
望すれば、ファイルを閉じる前に、このファイルをセー
ブする。もしユーザがファイルのセーブを選択すれば、
マイクロプロセッサは、ブロック124に進んでスクリ
プト・ファイルをディスクに書き込む。その後、ブロッ
ク126で、マイクロプロセッサ19は表示装置18に
表示されているスクリプトのウインドを閉じ、ブロック
128でこのマイクロプロセッサ19が作業していたス
クリプト・ライブラリをP.C.のメモリ20のスクラ
ッチ・パッド領域から除去する。
【0031】もしマイクロプロセッサ19がブロック1
30でセーブ・スクリプト・メッセージがファイル・メ
ニューからユーザによって選択されたと判定すれば、マ
イクロプロセッサは、ブロック132に進んで図10に
示すフローチャートに従ってこのセーブ・スクリプト・
メッセージを処理する。ここに示すように、マイクロプ
ロセッサ19は、ブロック134で先ずスクリプトがフ
ァイル名を有するどうかを判定し、もし有さなければ、
マイクロプロセッサはブロック136に進んで図11に
示すようにメッセージとしてセーブを処理する。もしマ
イクロプロセッサがブロック134でこのスクリプトは
ファイル名を有していると判定すれば、ブロック138
でこのスクリプト・ファイルをこのスクリプトが作成さ
れた名称でセーブする。もしマイクロプロセッサがブロ
ック142でスクリプト・メッセージとしてセーブが選
択されたと判定すれば、マイクロプロセッサは、ブロッ
ク144に進んで図11に示すフローチャートに従って
このメッセージとしてセーブを処理する。ここに示すよ
うに、マイクロプロセッサはブロック146で先ず「・
・・としてセーブ」のスクリーンを表示し、このスクリ
ーンはユーザをプロンプトし、データ入力ボックスの近
くに「・・・としてファイルをセーブ:」の語を表示す
ることによって、このファイルを別のファイル名でセー
ブさせる。マイクロプロセッサ19は、また表示装置1
8を制御して種々のディレクトリをリストアップする。
その後、マイクロプロセッサは、ブロック148に進ん
でスクリプト・ファイル名が選択されたかどうかを判定
し、もし選択されれば、マイクロプロセッサはブロック
150に進んでこのスクリプト・ファイル名をセーブす
る。もしユーザが既に存在しているファイル名を入力し
たなら、マイクロプロセッサ19は表示装置18を制御
し、ユーザに対して既存のファイルにオーバライトする
許可を求めることに留意すること。このファイルの名称
が付け変えられると、このスクリプトをディスクに書き
込む。
【0032】マイクロプロセッサ19がエディット動作
が選択されたと判定すると、マイクロプロセッサは、以
下のオプション、即ち、取消、カット、複写、ペースト
及び削除のエディット・メニューを表示することによっ
て、図12に示すルーチンに従って動作を行う。もしマ
イクロプロセッサ19が、ブロック152で取消、カッ
ト、複写、または削除の機能のいずれかをユーザがエデ
ィット・メニューから選択したと判定すれば、マイクロ
プロセッサは、ブロック154に進んでエディット・メ
ッセージをWindows動作システムに引き渡すが、
これらのエディットのオプションはWindows動作
システムの標準エディット制御機能である。しかし、も
しマイクロプロセッサがペースト編集オプションが選択
されたと判定すれば、ブロック156に進んで図13に
示すフローチャートに従ってペースト・ファイル機能を
処理する。更に詳しくは、ブロック158で、マイクロ
プロセッサ19はユーザをプロンプトしてペーストすべ
きファイル名を入力させる。その後、ブロック160で
マイクロプロセッサ19はユーザがファイル名を入力し
たかどうかを判定し、もし入力していれば、ブロック1
62に進んで入力されたペースト・ファイルを読み取
り、これを表示装置18に表示されたカーソルの現在位
置の現在のスクリプトに入力する。従って、ペースト・
ファイル編集によって、ユーザは、表示装置18のカー
ソルの示す所定の位置にある現在のスクリプトに加える
べきペースト・ファイルを選択することができる。
【0033】マイクロプロセッサ19がユーザはテンプ
レート・オプションを選択したと判定すれば、図14に
示すフローチャートに従って動作する。テンプレート・
メッセージを使用して、種々の予め決定したコマンドの
レイアウトをスクリプトに挿入するのを可能にすること
によって、スクリプトの作成を促進させる。更に詳しく
は、図14に示すように、マイクロプロセッサは、ブロ
ック164で先ずユーザをプロンプトしてメニューに含
まれている以下のテンプレートのリストから定義された
テンプレートを選択させる。これらのテンプレートは、
Function、Macro、Data Colle
ct Define、Header Define、T
emporary Define、Printer D
efine、Look Up Define、及びIn
cludeである。ユーザがテンプレート・メニューか
らテンプレートを選択した後、マイクロプロセッサは、
ブロック166に進んで選択されたテンプレート・ファ
イルを読み出し、これを現在のスクリプトのウインドに
挿入する。例えば、もし「Function」のテンプ
レートが選択されれば、マイクロプロセッサ19はテキ
ストの3本のラインをカーソルの位置の現在のスクリプ
トに挿入するが、このテキストの第1ラインは「FUN
CTION<Functionの名称>」であり、この
テキストの第2ラインは「BEGIN」であり、このテ
キストの第3ラインは「END」である。
【0034】マイクロプロセッサ19がユーザはコンパ
イル・オプションを選択したと判定すれば、図15‐1
7に示すようにブロック168に進み、ユーザをプロン
プトし、コンパイル・ルーチンに従って構築すべき実行
可能なアプリケーション・プログラム用の出力ファイル
の名称を入力させる。その後、マイクロプロセッサ19
は、ブロック170でユーザが出力ファイルの名称を入
力したかどうかを判定し、もし入力していれば、ブロッ
ク172に進んで図27に示すコンパイラ開始ルーチン
を実行する。
【0035】図27に示すように、コンパイラ開始ルー
チンを入力すると、マイクロプロセッサ19は、ブロッ
ク174で先ず指定されたスクリプト・ファイルを開
く。その後、ブロック176で、コンフィギュレーショ
ン情報をセーブする。ブロック178で、マイクロプロ
セッサ19は、コンパイラ・ルーチンの間に必要な種々
の内部テーブルを初期化する。図15‐17に戻って、
ブロック172でコンパイラを初期化した後、マイクロ
プロセッサ19は、一時ファイルを使用する4つのパス
の内の第1パスの変換器を開始するが、この変換器は一
時ファイルを使用して異なったパス間の通信を行うと共
に大域メモリを使用してこれらの異なったパスの必要と
する発生されたテーブルを記憶する。
【0036】更に詳しくは、ブロック182で、マイク
ロプロセッサ19は図28‐30に従って変換器のパス
0を実行する。パス0の間、ユーザの発生させたアプリ
ケーション・スクリプトに現れた全てのInclude
ステートメントを拡張することによって、3つの一時フ
ァイルの内の第1ファイルを発生する。このパスの期間
中、マイクロプロセッサ19はまたFINCLUDEス
テートメントをチェックし、もし見つかれば、そのステ
ートメントと関連するファイル名をセーブする。更に詳
しくは、図28のブロック184に示すように、マイク
ロプロセッサはパス0の開始時点で先ず入力のためにス
クリプト・ファイルを再び開く。その後、ブロック18
6で、マイクロプロセッサ19は、出力のために第1一
時ファイルを開く。ブロック188で、マイクロプロセ
ッサ19は、図29、30に示すパス0の処理を実行す
る。図29、30に示すように、マイクロプロセッサ1
9は、ブロック190で先ずスクリプト・ファイルの1
本のラインを取り出し、ブロック192でこれがファイ
ル・ステートメントの終了かどうかを判定する。もし終
了でなければ、マイクロプロセッサはブロック194に
進んで、スクリプト・ファイルのラインを解析する。ブ
ロック196で、マイクロプロセッサ19は、INCL
UDEコマンドがスクリプトのラインにあるかどうかを
判定し、もしあれば、ブロック198に進み、INCL
UDEコマンドで指定されたファイルを第1一時ファイ
ルに書き込む。もしマイクロプロセッサ19がスクリプ
トのラインはその中にINCLUDEコマンドを有して
いないと判定すれば、ブロック200に進み、このスク
リプトのラインはFINCLUDEコマンドを有してい
るかどうかを判定する。もしこれを有していれば、マイ
クロプロセッサはブロック202に進み、FINCLU
DEコマンドで指定されたフォーマットの名称をセーブ
する。もしマイクロプロセッサ19が、ブロック200
でこのラインはFINCLUDEコマンドを有していな
いと判定すれば、ブロック204に進み、スクリップト
のラインを第1一時ファイルに書き込み、その後ブロッ
ク190に戻る。
【0037】図15‐図17に戻って、ブロック182
でパス0を実行した後、マイクロプロセッサ19はブロ
ック206に進み、Compilerルーチンからいず
れかのエラーが戻されたかどうかを判定し、もし戻され
ていれば、マイクロプロセッサ19は、このコンパイラ
のエラーをブロック208で処理する。もしパス0を実
行することからコンパイラのエラーが戻されていなけれ
ば、マイクロプロセッサ19は、ブロック210に進
み、図31‐33に示すように、パス1を実行する。マ
イクロプロセッサ19は、パス1の期間、パス0の期間
中にマイクロプロセッサによって発生された第1一時フ
ァイルを使用する。パス1の期間中、このスクリプト内
で発見された全てのアップロード定義コマンドが位置を
決めて記憶される。更に、スクリプト内の全ての定義コ
マンドからのバッファ・フィールド・テーブルが構築さ
れる。パス1の期間中、第2一時ファイルが発生され、
このファイルはパス2と3の期間中に使用される。この
一時ファイルは拡張されたINCLUDEステートメン
トと切り離されたDEFINEステートメントを有す
る。 更に詳しくは、図31に示すように、パス1の開
始時に、マイクロプロセッサ19は、ブロック212で
入力のために第1一時ファイルを開き、ブロック214
で入力のために第2一時ファイルを開く。その後、マイ
クロプロセッサ19は、ブロック216で図32、33
に示すパス1のルーチンを処理する。図32、33に示
すように、マイクロプロセッサ19は、ブロック218
で第1一時ファイルから一本のラインを取り出し、この
ラインはこのファイルの終了かどうかをブロック220
で判定する。もし終了なら、マイクロプロセッサはブロ
ック222に進み、発見された全てのアップロードの定
義を検査する。もしマイクロプロセッサ19が、ブロッ
ク218で取り出したラインがファイルの終了でないと
ブロック220で判定したなら、マイクロプロセッサは
ブロック224に進み、取り出したラインを解析する。
その後、マイクロプロセッサは、このラインがDefi
neコマンドを有するかどうかをブロック226で判定
し、もし有するなら、マイクロプロセッサはブロック2
28に進み、Defineコマンドを構成要素に分解す
ることによってDefineステートメントを処理し、
これらの構成要素はセーブして後で利用する。もしマイ
クロプロセッサが、取り出したラインはUpload定
義コマンドを有しているとブロック230で判定したな
ら、マイクロプロセッサ19は、コマンド内で指定され
たこのアップロード定義をブロック232でセーブして
後で利用する。もしマイクロプロセッサがブロック23
4で取り出したラインはMacroコマンドを含んでい
ると判定すれば、マイクロプロセッサ19はブロック2
36に進んでこのmakuroを一時マクロ・ファイル
にセーブする。もしマイクロプロセッサ19が、マクロ
呼び出しが発生したとブロック238で判定したなら、
マイクロプロセッサ19はブロック240に進み、この
マクロと関連するコマンドのシーケンスを第2一時ファ
イルに書き込む。もしマイクロプロセッサが取り出した
したラインはDefinitionコマンド、Uplo
ad定義コマンド、Macroコマンドまたはマクロ呼
び出しを含まないと判定したなら、マイクロプロセッサ
は、取り出したラインを第2一時ファイルにブロック2
42で書き込み、その後ブロック218に戻る。
【0038】図15‐図17に戻って、パス1をブロッ
ク210で実行した後、マイクロプロセッサ19は、パ
ス1からのいづれかのエラーが戻されたかどうかをブロ
ック224で判定し、もし戻されたなら、マイクロプロ
セッサはブロック245に進み、コンパイラのエラーを
処理する。しかし、もしパス1からコンパイラのエラー
が戻されていなければ、マイクロプロセッサはブロック
246に進み、図34と35に示すフロー・チャートに
従って、パス2を実行する。第2パスの期間中、パス1
によって構築された第2一時ファイルを読み込み、ファ
イル内の各コマンドを検査する。パス3で使用するラベ
ルと機能テーブルはまたパス2の期間中に構築され、定
義されていないバッファ・ファイルをチェックする。
【0039】更に詳しくは、図34に示すように、パス
2の開始時に、マイクロプロセッサ19は、入力のため
に第2一時ファイルをブロック248で開き、図35に
示すフローチャートに従ってブロック250でパス2を
実行する。図35に示すように、マイクロプロセッサ
は、語「FUNCTION」を検索することによって、
各機能のヘッダをブロック252で処理し、この機能の
名前をスクリプト内の関連する番号と共にテーブル内に
記憶する。その後、ブロック254で、マイクロプロセ
ッサ19は、第2一時ファイルからのラインを取り出
し、スクリプトの取り出したラインで指定されたコマン
ドをブロック256で検査する。5個のコマンドに対す
る検査ルーチンの例を、図40‐49に示し、以下で論
じる。当業者が理解するように、残りのコマンドに対す
る検査ルーチンは、図示のものと大変類似している。従
って、この検査ルーチンは詳しく説明しない。マイクロ
プロセッサがブロック258で判定するように、パス2
の期間中、Endステートメントが発生する迄、スクリ
プトの各コマンドはロック254と256で取り出して
検査される。
【0040】再び図15‐17を参照して、パス2の実
行を終了すると、マイクロプロセッサ19はブロック2
60に進み、パス2の実行からいづれかのエラーが戻さ
れたどうかを判定し、もしエラーが戻されたなら、マイ
クロプロセッサは、ブロック262に進みコンパイラの
エラーを処理する。もしパス2の実行からコンパイラの
エラーが戻されなければ、マイクロプロセッサは、ブロ
ック260からブロック264進んでパス3を実行す
る。パス3の期間中、マイクロプロセッサ19は、パス
1の期間中に構築した第2一時ファイルを読み込み、こ
の第2一時ファイルをアップリケーション・ファイル・
パケットに変換し、このパケットを第3一時ファイルに
記憶する。マイクロプロセッサ19は、パス3の期間中
に機能とラベルを検査し、更にASCII文字列と番号
テーブルを構築する。
【0041】更に詳しくは、図36と37に示すよう
に、マイクロプロセッサ19は、パス3の開始時、先ず
入力のために第2一時ファイルをブロック266で開
く。その後、マイクロプロセッサ19は、出力のために
第3一時ファイルをブロック268で開き、ブロック2
70に進んで、図37に示すフローチャートに従って、
パス3を実行する。図37に示すように、マイクロプロ
セッサは機能ヘッダをブロック272で処理し、第2一
時ファイルからのラインをブロック274で取り出す。
その後、マイクロプロセッサ19は、この取り出したラ
インをラベラー12で実行できるコマンド記録にブロッ
ク276で変換し、変換したラインを第3一時ファイル
に書き込む。ある種のコマンドがブロック276で組み
合わされること留意すること。例えば、Right S
tripコマンドまたはLeft Stripコマンド
が1個のStripコマンドに変換され、このコマンド
は文字が右から切り離されるか左から切り離されるかを
示す情報を有する。更に、SuspendコマンドはE
xitコマンドに変換され、中断オプションがこのEx
itコマンド内に指示されている。マイクロプロセッサ
は、ブロック274、276と278に従って、第2一
時ファイルの各ラインをEndステートメントが発生す
る迄変換する。
【0042】図15‐17に戻って、マイクロプロセッ
サは、パス3からいづれかのエラーが戻されたかどうか
ブロック280で判定し、もしエラーが戻されたなら、
マイクロプロセッサ19は、コンパイラのエラーをブロ
ック282で処理する。もしパス3の実行からコンパイ
ラのエラーが戻されなければ、マイクロプロセッサはブ
ロック284に進み、図38に示すように、Compi
ler Finishルーチンを実行する。Compi
ler Finishルーチンの実行中、マイクロプロ
セッサ19は、パス3の期間中に発生した第3一時ファ
イルとパス1、2及び3の期間中発生したテーブルから
コンフィギュレーション・ファイルを構築する。先ず、
バッファ定義パケットをこのコンフィギュレーション・
ファイルに書き込み、続いて、ASCII文字列と番号
パケットに書き込む。その後、コンフィギュレーション
・ファイルにUpload定義を書き込み、続いてアッ
プリケーション・ファイル・パケットを保持する一時フ
ァイルに書き込む。もしコンフィギュレーション・ファ
イルの構築中にエラーが発生したなら、このファイルは
削除する。もしエラーが発生しなければ、いづれかのF
INCLUDEコマンドで指定されたこのファイルはコ
ンフィギュレーション・ファイルの末尾に付加する。
【0043】更に詳しくは、図38に示すように、マイ
クロプロセッサは、出力のためにコンフィギュレーショ
ン・ファイルをブロック286で開く。その後、マイク
ロプロセッサ19は、ブロック288で警告メッセージ
のチェックをする。ブロック290で、マイクロプロセ
ッサは、作業バッファの定義からコンフィギュレーショ
ン・ファイルを構築する。その後、ブロック292で、
マイクロプロセッサはアップリケーション・ファイルを
付加し、ブロック294で、いづれかのFINCLUD
Eコマンドで指定されたフォーマット・ファイルを付加
する。
【0044】再び図15‐17に戻って、マイクロプロ
セッサ19は、CompilerFinishルーチン
からいづれかのエラーが戻されたかどうかをブロック2
96で判定し、もしエラーが戻されたなら、マイクロプ
ロセッサ19は、ブロック298に進み、コンパイラの
エラーを処理する。もしCompiler Finis
hルーチンからエラーが戻されなければ、マイクロプロ
セッサはブロック300に進み、図39に示すComp
ilerClean Upルーチンを実行する。更に詳
しくは、図39に示すように、マイクロプロセッサ19
は、内部テーブルをブロック302で解放し、アップロ
ード定義空間をブロック304で解放する。次にマイク
ロプロセッサは、コンパイラの実行中に発生した一時フ
ァイルをブロック306で削除し、マクロ・ファイルを
ブロック308で削除する。その後、マイクロプロセッ
サは、エラーの取扱いをブロック310で終了する。
【0045】マイクロプロセッサ19は、上で論じたた
ように、コンパイラの実行中にユーザが発生したスクリ
プトの各コマンドを検査する。更に詳しくは、マイクロ
プロセッサ19は、図40、41に示すルーチンに従っ
て、以下のようにAddコマンドを検査する。ブロック
312で、マイクロプロセッサは、Addコマンドで指
定されたパラメータをカウントする。ブロック314
で、マイクロプロセッサは、存在するパラメータが少な
過ぎるかどうかをで判定し、少な過ぎるなら、マイクロ
プロセッサ19は、エラー・メッセージをブロック31
6で記録する。マイクロプロセッサ19は、Addコマ
ンド内で指定されたパラメータが多過ぎるかどうかをブ
ロック318でまたチェックし、もし多過ぎるなら、マ
イクロプロセッサは、ブロック320に進んでエラー・
メッセージを記録する。もしAddコマンドで指定され
たパラメータの数が有効な数なら、マイクロプロセッサ
19はブロック322に進み、Addコマンドから第1
フィールドを取得する。その後、マイクロプロセッサ
は、この第1フィールドは番号であるかどうかブロック
324で判定し、もし番号なら、ブロック332に進
む。もしマイクロプロセッサが、第1フィールドは番号
でないとブロック324で判定したなら、ブロック32
6に進み、第1フィールドが有効なバッファの定義を表
すかどうかを判定する。もし有効なバッファの定義を表
わさなければ、マイクロプロセッサはブロック330に
進み、エラー・メッセージを記録する。もしマイクロプ
ロセッサが、第1フィールドは有効なバッファの定義を
指定するとブロック326で判定し、更に指定されたこ
のバッファのフィールドが英数字フィールドではないと
ブロック328でまた判定するなら、マイクロプロセッ
サはブロック332に進む。これ以外の場合は、マイク
ロプロセッサは、エラー・メッセージをブロック330
で記録する。ブロック332で、マイクロプロセッサ
は、Addコマンドの第2フィールドを取り出す。その
後、マイクロプロセッサは、第2フィールドが有効なバ
ッファの定義を有するかどうかをブロック334で判定
し、この指定されたバッファ・フィールドが英数字フィ
ールドであるかどうかをブロック366で判定する。も
し第2フィールドが有効なバッファを指定しないか、ま
たはこのフィールドが英数字フィールドであれば、マイ
クロプロセッサはブロック338に進んでエラー・メッ
セージを記録する。これ以外の場合には、Addコマン
ドを検査する。マイクロプロセッサ19がエラー・メッ
セージを記録した場合、マイクロプロセッサは、エラー
の種類を識別するメッセージとエラーが発生したスクリ
プトのライン番号を発生し、その結果、ユーザは容易に
スクリプトを編集してその中にある全てのエラーを訂正
できることに留意する。Compareコマンドに対す
る検査ルーチンを図42、43に示す。Validat
e Compareコマンを入力すると、マイクロプロ
セッサは、Compareコマンド内のパラメータをブ
ロック342でカウントする。ブロック344と348
で、マイクロプロセッサは、存在するパラメータが少な
過ぎるか多過ぎるかをそれぞれ判定し、もし少な過ぎる
かまたは多過ぎれば、マイクロプロセッサは、適当なエ
ラー・メッセージをそれぞれブロック346と350で
記録する。もしCompareコマンド内で指定された
パラメータの数を検査したなら、マイクロプロセッサ
は、ブロック352に進み、Compareコマンドか
ら第1フィールドを取り出す。その後、マイクロプロセ
ッサは、この第1フィールドが入力バッファを指定して
いるかどうかブロック354で判定し、もし指定してい
るなら、マイクロプロセッサは、ブロック368に進
み、Compareコマンド内で指定された第2フィー
ルドをチェックする。もし、マイクロプロセッサが、入
力バッファが第1フィールド内で指定されていなかった
とブロック354で判定したなら、マイクロプロセッサ
は、文字列が指定されたかどうかをブロック356で判
定し、もしこれが指定されていたなら、ブロック358
に進み、この文字列が有効かどうかを判定する。もしこ
の文字列が有効であると判定されたなら、マイクロプロ
セッサはブロック368に進み、これ以外の場合には、
マイクロプロセッサは、ブロック360に進んでエラー
・メッセージを記録する。もしマイクロプロセッサが、
ブロック356で第1フィールドは文字列でなかったと
判定したなら、マイクロプロセッサはブロック362に
進み、第1フィールドが番号を指定しているかどうかを
判定し、もし番号を指定しているなら、マイクロプロセ
ッサは、ブロック368に進む。これ以外の場合には、
マイクロプロセッサはブロック364に進み、第1フィ
ールドが有効なバッファの定義を指定しているかどうか
を判定する。もし指定していなければ、マイクロプロセ
ッサはブロック366に進み、エラー・メッセージを記
録する。もし、マイクロプロセッサが、第2フィールド
がチェックされていないとブロック368で判定したな
ら、ブロック370に進み、第2フィールドを取り出し
てブロック354に戻り、第1フィールドに関して上で
説明したように第2フィールドを検査する。
【0046】図44、45に示すように、マイクロプロ
セッサは、プログラム可能なキー、即ち、ホット・キー
に対するDisableコマンドを以下のように検査す
る。マイクロプロセッサ19は、先ずDisableコ
マンド内のパラメータの数をブロック372でカウント
する。その後、各ブロック374と378で、マイクロ
プロセッサは、Disableコマンド内に存在するパ
ラメータが少な過ぎるかまたは多過ぎるかを判定し、も
し過少または過大あれば、マイクロプロセッサは、各ブ
ロック376と380に進み、エラー・メッセージを記
録する。もしDisableコマンド内のパラメータの
数が妥当なら、マイクロプロセッサはブロック382に
進み、Disableコマンド内で指定されたキーを取
得する。その後、ブロック384で、マイクロプロセッ
サはこのキーが1よりも長いかどうかを判定し、もし長
ければ、マイクロプロセッサ19はブロック386に進
み、エラー・メッセージを記録する。これ以外の場合に
は、マイクロプロセッサ19はブロック388に進み、
Disableコマンド内でいづれかの複製キーが指定
されているかどうかを判定する。もし複製キーが指定さ
れているなら、マイクロプロセッサ19はブロック39
0に進み、エラー・メッセージを記録する。最後に、ブ
ロック329で、マイクロプロセッサは、指定されたキ
ーがプログラム可能な有効キー、即ちホットキーかどう
かを判定する。もしホットキーでなければ、マイクロプ
ロセッサ19はブロック394に進み、エラー・メッセ
ージを記録する。
【0047】マイクロプロセッサは、図46、47に示
すフローチャートに従ってMoveコマンドを検査す
る。更に詳しくは、マイクロプロセッサは、Moveコ
マンド内のパラメータの数をブロック396でカウント
する。その後、マイクロプロセッサは、存在するパラメ
ータが少な過ぎるか多過ぎるかを各ブロック398と4
02で判定し、もし過少または過多であれば、各ブロッ
ク400と404に進み、適当なエラー・メッセージを
記録する。もしMoveコマンド内のパラメータの数が
妥当であれば、マイクロプロセッサはブロック406に
進み、Moveコマンドで指定されたソース・フィール
ドを取り出す。次に、マイクロプロセッサは、このソー
ス・フィールドは入力バッファであるかどうかをブロッ
ク408で判定し、もし入力バッファであれば、マイク
ロプロセッサはブロック422に進み、行き先フィール
ドを取り出す。もしソース・フィールドが入力バッファ
を指定していなければ、マイクロプロセッサはブロック
410に進み、ソース・フィールドが文字列かどうかを
判定する。もしソース・フィールドが文字列なら、マイ
クロプロセッサはブロック412に進み、この文字列が
有効であるかどうかを判定し、もし有効であれば、マイ
クロプロセッサはブロック422に進む。もしこの文字
列が有効でなければ、マイクロプロセッサ19は、ブロ
ック414でエラー・メッセージを記録する。もしマイ
クロプロセッサが、ソース・フィールドは文字列ではな
いと判定したが、このソース・フィールドは番号である
とブロック416で判定したなら、マイクロプロセッサ
はブロック422に進む。これ以外の場合には、マイク
ロプロセッサはブロック418に進み、ソース・フィー
ルドが有効バッファ内のフィールドを表すかどうかを判
定する。もし有効バッファ内のフィールドを表さなけれ
ば、マイクロプロセッサはブロック420に進んでエラ
ー・メッセージを記録する。ソース・フィールドを検査
した後、マイクロプロセッサはブロック422に進み、
行き先フィールドを取り出す。その後、ブロック424
で、マイクロプロセッサはこの行き先フィールドが入力
バッファであるかどうかを判定し、もし入力バッファで
あれば、マイクロプロセッサはブロック436に進む。
これ以外の場合には、マイクロプロセッサはブロック4
26に進み、行き先フィールドがラベラー12の表示装
置33を指定するかどうかを判定する。もしこれを指定
しなければ、マイクロプロセッサは各ブロック428と
430に進み、この行き先フィールドがラベラー12の
スキャナ15または通信ポートを指定しているかどうか
を判定する。その後、マイクロプロセッサはブロック4
32に進み、第2フィールドが有効に定義されたバッフ
ァ内のフィールドを指定するかどうかを判定する。もし
これを指定しなければ、マイクロプロセッサはブロック
434に進み、エラーを記録する。行き先フィールドを
各ブロック424、426、428、430または43
2で検査した後、マイクロプロセッサはブロック436
に進み、指定されたソース・フィールドと行き先フィー
ルドに互換性があるかどうかを判定する。更に詳しく
は、マイクロプロセッサは、ソース・フィールドが英数
字フィールドであるかどうかと行き先フィールドが数字
フィールドであるかどうかを判定する。もしソース・フ
ィールドが英数字フィールドであり、行き先フィールド
が数字フィールドであれば、マイクロプロセッサはブロ
ック438に進み、エラー・メッセージを記録する。
【0048】マイクロプロセッサは、図48、49に示
すように、Queryコマンドを検査する。更に詳しく
は、ブロック440で、マイクロプロセッサはQuer
yコマンドで指定されたパラメータの数をカウントす
る。その後、マイクロプロセッサ19は、各ブロック4
42または446でQueryコマンドの指定したパラ
メータが多過ぎるか少な過ぎるかを判定し、もしそうで
あれば、マイクロプロセッサ19は各ブロック444ま
たは448に進み、エラー・メッセージを記録する。も
しQueryコマンドで指定されたパラメータの数が妥
当であれば、マイクロプロセッサ19はブロック450
に進んで、Queryコマンドで指定された第1フィー
ルドを得る。その後、マイクロプロセッサは、ブロック
452で第1フィールドに有効なバッファの定義が含ま
れているかどうかを判定し、もし含まれていなければ、
ブロック454に進んでエラー・メッセージを記録す
る。もし第1フィールドがブロック452でマイクロプ
ロセッサの判定したように妥当であれば、マイクロプロ
セッサ19はブロック456に進んで、Queryコマ
ンドから第2フィールドを取り出す。その後、マイクロ
プロセッサ19は、第2フィールドが入力バッファを指
定しているかどうかを判定し、もし指定していれば、ブ
ロック472に進む。これ以外の場合には、マイクロプ
ロセッサはブロック460に進んで、第2フィールドが
文字列を指定しているかどうかを判定する。その後、マ
イクロプロセッサはブロック462に進んで、この文字
列が有効であるかどうかを判定し、もし有効であれば、
ブロック472に進む。これ以外の場合には、マイクロ
プロセッサはブロック464に進んで、エラー・メッセ
ージを記録する。もしマイクロプロセッサ19がこの第
2フィールドは入力バッファまたは文字列を指定してい
ないと判定すれば、ブロック466に進んでこの第2フ
ィールドは番号であるかどうかを判定し、もし番号であ
れば、マイクロプロセッサはブロック472に進む。こ
れ以外の場合には、マイクロプロセッサはブロック46
8に進んで、この第2フィールドに有効なバッファの定
義が含まれているかどうかを判定する。もし含まれてい
なければ、マイクロプロセッサはブロック470でエラ
ー・メッセージを記録する。ブロック472で、マイク
ロプロセッサはQueryコマンドから変更子を取り出
し、ブロック474に進んで、この変更子が同等の照会
を指定するかどうかを判定する。もしそうであれば、マ
イクロプロセッサはValidate Queryコマ
ンド・ルーチンを抜ける。もしこの変更子が同等の照会
を指定していなければ、マイクロプロセッサはブロック
476、478、480及び482に進み、この照会が
未満照会であるか、以下照会であるか、超照会である
か、または以上照会であるかをそれぞれ判定する。もし
この変更子が許容可能な変更子でなければ、マイクロプ
ロセッサはエラー・メッセージをブロック484で記録
する。
【0049】マイクロプロセッサ19はメイン・メニュ
ーから選択されたダウンロード・セッセージに応答し
て、図18に示すフローチャートに従って動作する。更
に詳しくは、マイクロプロセッサ19は、ブロック49
0でこのメッセージがダウンロード・セットアップ・メ
ッセージであるかどうかを判定し、もしそうであれば、
ブロック492に進んで、図19、20に示すダウンロ
ード指定セットアップ・ルーチン3を処理する。もしマ
イクロプロセッサがこのメッセージはダウンロード・セ
ットアップ・メッセージでなかったと判定すれば、ブロ
ック494に進み、このメッセージはダウンロード・ア
プリケーション・メッセージであるかどうかを判定す
る。もしこのメッセージがダウンロード・アプリケーシ
ョン・メッセージであれば、マイクロプロセッサはブロ
ック496に進んで、図21‐24に示すフローチャー
トに従って指定されたアプリケーションをダウンロード
する。もしマイクロプロセッサがブロック498でこの
メッセージはダウンロード・ルックアップ・ファイルの
みのメッセージであると判定すれば、ブロック500に
進み、図25、26に示すフローチャートに従ってこの
ルックアップ・ファイルのみのメッセージをラベラー1
2にダウンロードする。
【0050】マイクロプロセッサ19は、ブロック50
2で表示装置18に情報を表示することによって、図1
9、20に示すようにダウンロード・セットアップ・メ
ッセージを処理し、ユーザをプロンプトしてこのダウン
ロード・セットアップ・メッセージの所望の行き先に対
する特定の通信ポートを選択させる、即ち、このポート
の論理名を入力することによって特定のラベラー12を
選択させ、このラベラー12の複数の通信ポートの複数
の名称が表示装置18に表示される。その後、ブロック
504で、マイクロプロセッサ19はジョブ転送アプリ
ケーション31を呼び出して、複数のアクティブ・セッ
ションを得るが、1つのセッションはこのジョブ転送ア
プリケーションのポート監視プロセスである。ブロック
506で、マイクロプロセッサ19は表示装置18にこ
れらのアクティブ・セッションを表示し、ブロック50
8に進んで、ユーザが既に1つのセッションを選択した
かどうかを判定する。もし選択したなら、マイクロプロ
セッサはブロック510に進んで、選択されたセッショ
ンを表示装置18上に強調表示する。ブロック512
で、マイクロプロセッサ19はユーザが新しいアクティ
ブ・セッションを選択したかどうかを判定し、もしこれ
を判定していたなら、ブロック514に進み、この新し
く選択されたセッションをブロック508と510で上
で述べたデフォルト・セッションとしてセーブする。
【0051】アプリケーション・ファイルがコンパイル
されると、ユーザは、ダウロード・メニューからダウン
ロード・アプリケーションの項目を選択することによっ
て、RS232通信ポートを介してラベラー12このア
プリケーション・ファイルをダウンロードすることがで
きる。これに応答して、マイクロプロセッサ19は、発
生された全ての完成したアプリケーション・ファイルの
リストを表示する。ユーザをプロンプトしてダウンロー
ドすべき特定のアプリケーション・ファイルを選択させ
るため、図21、22に示すように、マイクロプロセッ
サ19はブロック516でユーザの選択したアプリケー
ション・ファイルの名称を取得し、その後、ブロック5
18に進む。ブロック518で判定したアプリケーショ
ン・ファイルの選択に応答して、マイクロプロセッサは
ブロック520に進んで、このプリケーション・ファイ
ルに対してルックアップ・テーブルが要求されるかどう
かを判定する。もしルックアップ・テーブルがコンパイ
ラの発生したコンフィギュレーション記録内で定義され
ていれば、マイクロプロセッサはルックアップ・テーブ
ルが要求されていると判定し、ブロック522に進ん
で、図23、24に関して以下で詳細に論ずるようにこ
のルックアップ・ファイルを作成する。図23、24に
示すフローチャートを実行した後、マイクロプロセッサ
はブロック526に進み、ルックアップ・ファイルの作
成は成功したかどうかを判定する。もし成功すれば、マ
イクロプロセッサは、ブロック528でダウンロード・
ファイルを作成し、ブロック530でこのアプリケーシ
ョン・ファイルをダウンロード・ファイルに書き込む。
その後、ブロック532で、マイクロプロセッサ19は
ブロック522で作成したルックアップ・ファイルをま
たダウンロード・ファイルに書き込む。次に、マイクロ
プロセッサはブロック536に進み、このダウンロード
・ファイルをジョブ転送アプリケーション31に転送し
てラベラー12にダウンロードする。もしマイクロプロ
セッサがブロック520でルックアップ・テーブルはダ
ウンロードすべきアプリケーション・ファイルに対して
要求されていないと判定すれば、ブロック524に進
み、アプリケーション・ファイルのみのためにこのダウ
ンロード・ファイルを作成する。更に詳しくは、マイク
ロプロセッサはブロック524からブロック534に進
んでアプリケーション・ファイルをダウンロード・ファ
イルに書き込み、ブロック536でこのダウンロード・
ファイルをジョブ転送アプリケーション31に転送して
ラベラー12にダウンロードする。
【0052】ルックアップ・テーブルは、図23、24
に示すフローチャートに従ってマイクロプロセッサ19
によって作成する。更に詳しくは、マイクロプロセッサ
19は、ブロック540で先ずルックアップ・ファイル
をデータベース・ソースから作成すべきかどうかを判定
する。もし作成すべきでなければ、マイクロプロセッサ
19は表示装置18を制御して前に作成したASCII
ファイルを表示し、その結果、ユーザはルックアップ・
テーブルを取り出したファイルを選択することができ
る。ブロック544で、マイクロプロセッサは特定のテ
キスト・ファイルをユーザが選択したかどうかを判定
し、もし選択していれば、ブロック546に進み、指定
されたテキスト・ファイルからルックアップ・ファイル
を取り出す。その後、マイクロプロセッサ19はブロッ
ク548に進み、ルックアップ・ファイルをルックアッ
プ・テーブルの定義と比較してこれが一致しているかど
うかを知ることによって、このルックアップ・ファイル
の取り出しに成功したかどうかを判定する。もしルック
アップ・ファイルの取り出しに成功しなければ、マイク
ロプロセッサはブロック549に進んで、エラー・メッ
セージを表示する。もしマイクロプロセッサが、ブロッ
ク540でルックアップ・ファイルをデータベースから
選択されたフィールドから作成すべきであると判定すれ
ば、このマイクロプロセッサはブロック540から55
0に進む。ブロック550で、マイクロプロセッサ19
は表示装置18を制御し、ユーザがフィールドを選択す
ることのできる使用可能なデータベース・ファイルを表
示してルックアップ・テーブルを形成する。ブロック5
52で、マイクロプロセッサ19はユーザが特定のデー
タベース・ファイルを選択したかどうかを判定し、もし
選択していれば、マイクロプロセッサはブロック554
に進む。ブロック554で、マイクロプロセッサ19は
選択されたデータベース内の全てのフィールドを表示す
る。マイクロプロセッサ19はまたブロック554で表
示装置18を制御し、コンフィギュレーション・ファイ
ルからのルックアップ・テーブルの定義で指定されたル
ックアップ・テーブルのスクリプト・フィールドのリス
トを表示する。このルックアップ・テーブルのスクリプ
ト・フィールドはこのスクリプトを発生する場合にユー
ザの定義したのと同じ順序で表示される。この順序は、
またどのようにしてルックアップ・テーブルの定義の記
録をレイアウトするかを定義し、従って、どのようにし
てルックアップ・テーブルの記録に順序をつけるかを定
義する。データベースの使用可能なフィールドのリスト
とルックアップ・テーブルのスクリプト・フィールドの
リストの間には、ルックアップ・フィールドという名称
の最初は空のボックスがある。ユーザがデータベースの
フィールドを各スクリプトのフィールドに割り当てるの
に従って、このルックアップ・フィールドのボックスは
この情報によって更新され、その結果、ユーザは特定の
データベースのフィールドを各スクリプ・フィールドに
容易に相関させて割り当てることができる。入力された
各データベースのフィールドに対して、データベースの
フィールドを選択した後、ユーザは、ルックアップ・テ
ーブルに含めるために選択したデータベースのファイル
から記録を取り出すのに使用する検索基準を定義するた
め、データベースの範囲を選択する。例えば、ユーザ
は、マイクロプロセッサ19に命令し、特定の値を超え
るまたはこの特定の値以上の及び(または)特定の値未
満またはこの特定の値以下の選択したデータベースのフ
ィールドの全ての記録を検索させることができる。検索
の範囲を選択すると、マイクロプロセッサはブロック5
58に進み、この検索基準に従って、選択したデータベ
ースのフィールドからこの選択したデータベースのフィ
ールドに対する記録を取り出し、これによってルックア
ップ・テーブルを作成する。その後、マイクロプロセッ
サはブロック560に進み、ルックアップ・ファイルの
取り出しに成功したかどうかを判定し、もし成功しなけ
れば、ブロック561に進んでエラー・メッセージを表
示する。
【0053】マイクロプロセッサ19はダウンロード・
ルックアップ・ファイルのみのメッセージに応答し、図
25、26に示すフローチャートに従って動作する。更
に詳しくは、マイクロプロセッサ19はブロック562
でコンパイルされたアプリケーション・ファイルの名称
のリストを表示し、ブロック564に進んで、ダウンロ
ードされるべきルックアップ・ファイルを関連させるべ
き特定のアプリケーション・ファイルの名称をユーザが
選択したかどうかを判定する。ユーザがアプリケーショ
ン・ファイルの名称を選択すると、マイクロプロセッサ
19はブロック566に進み、選択したアプリケーショ
ン・ファイルに対してルックアップ・テーブルが要求さ
れているかどかを判定する。もし要求されていれば、マ
イクロプロセッサはブロック568に進み、図23、2
4に関して上で論じたようにルックアップ・ファイルを
作成する。その後、マイクロプロセッサはブロック57
0でルックアップ・ファイルの作成に成功したかどうか
を判定し、もし成功すれば、マイクロプロセッサ19は
ブロック572に進んで、ルックアップ・ファイルのみ
をジョブ転送アプリケーション31に転送する。
【0054】付録Aにコメントを付けてスクリプト・プ
ログラムのサンプルを示す。このサンプルのスクリプト
・プログラムは種々のコマンドの内の選択したコマンド
をどのように使用してユーザの入力したスクリプト・プ
ログラムを形成するかを示す。上で論じたように、マイ
クロプロセッサ19はこのようなスクリプト・プログラ
ムの入力に応答して、このスクリプト・プログラムに含
まれている各コマンドを検査し、このプログラムをラベ
ラー12の種々の作業バッファの定義によってコンパイ
ルし、ラベラー12にダウンロードし、これによって実
行することのできるアプリケーション・ファイルを発生
し、ラベル印刷、データ収集及びデータ処理の動作を制
御する。
【0055】上記の教示に照らして、本発明の種々の変
更と変形が可能である。従って、本発明は、上記の請求
項の範囲内で、上で説明したものとは異なった態様で実
行することができることを理解しなければならない。
【図面の簡単な説明】
【図1】ここに示すラベラー用のラベル印刷及び(また
は)データ収集プログラムを発生する本発明のプログラ
ム発生器を示すブロック図である。
【図2】本発明のMain Program Gene
ratorルーチンを示すフローチャトである。
【図3】プログラム発生器のProcess Mess
ageルーチンを示すフローチャトである。
【図4】プログラム発生器のProcess Mess
ageルーチンを示すフローチャトである。
【図5】プログラム発生器のProcess File
Menu Messageルーチンを示すフローチャ
トである。
【図6】プログラム発生器のProcess File
Menu Messageルーチンを示すフローチャ
トである。
【図7】プログラム発生器のProcess New
Script Messageルーチンを示すフローチ
ャトである。
【図8】プログラム発生器のProcess Open
Script Messageルーチンを示すフロー
チャトである。
【図9】プログラム発生器のProcess Clos
e Script Messageルーチンを示すフロ
ーチャトである。
【図10】プログラム発生器のProcess Sav
e Script Messageルーチンを示すフロ
ーチャトである。
【図11】プログラム発生器のProcess Sav
e As Messageルーチンを示すフローチャト
である。
【図12】プログラム発生器のProcess Edi
t Messageルーチンを示すフローチャトであ
る。
【図13】プログラム発生器のProcess Pas
te Fileルーチンを示すフローチャトである。
【図14】プログラム発生器のProcess Tem
plate Messageルーチンを示すフローチャ
トである。
【図15】本発明のプログラム発生器のProcess
Compile Messageルーチンを形成す
る。
【図16】本発明のプログラム発生器のProcess
Compile Messageルーチンを形成す
る。
【図17】本発明のプログラム発生器のProcess
Compile Messageルーチンを形成す
る。
【図18】プログラム発生器のProcess Dow
nload Messageルーチンを示すフローチャ
トである。
【図19】プログラム発生器のDownload De
stination Set Upルーチンを示すフロ
ーチャトである。
【図20】プログラム発生器のDownload De
stination Set Upルーチンを示すフロ
ーチャトである。
【図21】プログラム発生器のDownload Ap
plicationルーチンを示すフローチャトであ
る。
【図22】プログラム発生器のDownload Ap
plicationルーチンを示すフローチャトであ
る。
【図23】プログラム発生器のCreate Look
Up Fileルーチンを示すフローチャトである。
【図24】プログラム発生器のCreate Look
Up Fileルーチンを示すフローチャトである。
【図25】プログラム発生器のDownload Lo
ok Up File Onlyルーチンを示すフロー
チャトである。
【図26】プログラム発生器のDownload Lo
ok Up File Onlyルーチンを示すフロー
チャトである。
【図27】プログラム発生器のCompiler St
artルーチンを示すフローチャトである。
【図28】コンパイラのPass0のルーチンを示す。
【図29】コンパイラのPass0の処理ルーチンを示
すフローチャトである。
【図30】コンパイラのPass0の処理ルーチンを示
すフローチャトである。
【図31】コンパイラのPass1のルーチンを示すフ
ローチャトである。
【図32】Pass1のルーチンの処理を示すフローチ
ャトである。
【図33】Pass1のルーチンの処理を示すフローチ
ャトである。
【図34】コンパイラのPass2のルーチンを示すフ
ローチャトである。
【図35】Pass2のルーチンの処理を示すフローチ
ャトである。
【図36】コンパイラのPass3のルーチンを示すフ
ローチャトである。
【図37】Pass3のルーチンの処理を示すフローチ
ャトである。
【図38】Compiler Finishルーチンを
示すフローチャトである。
【図39】Compiler Clean Upルーチ
ンを示すフローチャトである。
【図40】プログラム発生器のValidate Ad
dコマンド・ルーチンを示すフローチャトである。
【図41】プログラム発生器のValidate Ad
dコマンド・ルーチンを示すフローチャトである。
【図42】プログラム発生器のValidate Co
mpareコマンド・ルーチンを示すフローチャトであ
る。
【図43】プログラム発生器のValidate Co
mpareコマンド・ルーチンを示すフローチャトであ
る。
【図44】プログラム発生器のValidate Di
sableコマンド・ルーチンを示すフローチャトであ
る。
【図45】プログラム発生器のValidate Di
sableコマンド・ルーチンを示すフローチャトであ
る。
【図46】プログラム発生器のValidate Mo
veコマンド・ルーチンを示すフローチャトである。
【図47】プログラム発生器のValidate Mo
veコマンド・ルーチンを示すフローチャトである。
【図48】プログラム発生器のValidate Qu
eryコマンド・ルーチンを示すフローチャトである。
【図49】プログラム発生器のValidate Qu
eryコマンド・ルーチンを示すフローチャトである。
【符号の説明】
10 アプリケーション・プログラム発生器 12 ラベラー 14 処理システム 16 キーボード 17 パーソナル・コンピュータ(P.C.) 18 表示装置 19 マイクロプロセッサ 20 メモリ 39 通信ポート(インターフェース) 31 ジョブ転送アプリケーション 39 ホスト・コンピュータ
フロントページの続き (72)発明者 ドナルド エイ モーリソン アメリカ合衆国 オハイオ州 45415 デイトン リンクメアー ドライヴ 4336 (72)発明者 リチャード イー シュワーブ アメリカ合衆国 オハイオ州 45458 デイトン ヴァージニア アベニュー 324 (72)発明者 レイモンド ディー タヴェナー アメリカ合衆国 オハイオ州 45420 ケッタリング ブロンムリー プレイス 3101 アパートメント 22 (72)発明者 レックス ディー ワトキンズ アメリカ合衆国 オハイオ州 45005 フランクリン ケイ ドライヴ 7679 (56)参考文献 特開 平3−151263(JP,A) 特開 昭59−101379(JP,A) 特開 平4−77833(JP,A) 特開 平4−52866(JP,A) 特開 平3−231875(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 3/12 B41J 5/30 B65C 11/02 G09F 3/00 G06F 9/06

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 表示装置と、ユーザが操作して情報を入
    力する入力装置と、情報を記憶するメモリと、前記入力
    装置と前記表示装置と前記メモリとに接続されたプロセ
    ッサとを有する処理システムで使用するための、ラベル
    印刷及びデータ収集プログラム発生器であって、前記プ
    ロセッサがラベラーのためのソフトウェアを発生するよ
    うに前記プログラム発生器に従って動作している、ラベ
    ル印刷及びデータ収集プログラム発生器において、 記ラベラーのラベル印刷とデータ収集とデータ処理動
    作とを制御するのに使用することが許容可能な1組のコ
    マンドから選択された、ユーザが入力したシーケンスで
    成るコマンド前記プロセッサに指示を与えるコマンド
    とを記憶する手段と; 記ユーザの入力したシーケンスのコマンドを検査する
    手段であって、前記シーケンスにあるラベル印刷、デー
    タ収集またはデータ処理コマンドの各々を前記許容可能
    なコマンドの組を表すデータと比較するように前記プロ
    セッサを制御して、前記コマンドが有効であるかどうか
    を判定する検査手段と;ラベル印刷動作、データ収集動作またはデータ処理動作
    の少なくとも1つを制御するために、前 記ラベル印刷及
    びデータ収集コマンドのシーケンスを、前記ラベラーが
    実行することのできるアプリケーション・プログラムを
    形成するように変換する変換手段と; から成ることを特徴とするラベル印刷及びデータ収集プ
    ログラム発生器。
JP08857993A 1992-04-15 1993-04-15 ラベル印刷及びデータ収集プログラム発生器 Expired - Fee Related JP3288798B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/869,253 US5467433A (en) 1992-04-15 1992-04-15 Label printing and data collection program generator
US07/869253 1992-04-15

Publications (2)

Publication Number Publication Date
JPH06297780A JPH06297780A (ja) 1994-10-25
JP3288798B2 true JP3288798B2 (ja) 2002-06-04

Family

ID=25353203

Family Applications (1)

Application Number Title Priority Date Filing Date
JP08857993A Expired - Fee Related JP3288798B2 (ja) 1992-04-15 1993-04-15 ラベル印刷及びデータ収集プログラム発生器

Country Status (5)

Country Link
US (1) US5467433A (ja)
EP (1) EP0573751B1 (ja)
JP (1) JP3288798B2 (ja)
CA (1) CA2093688C (ja)
DE (1) DE69327920T2 (ja)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9300715D0 (en) * 1993-01-14 1993-03-03 Esselte Dymo Nv Label printing apparatus
DE69530134T2 (de) * 1994-12-07 2003-11-06 King Jim Co Ltd Zeicheninformationsprozessor zum Drucken von Zeichen
GB9517440D0 (en) * 1995-08-25 1995-10-25 Esselte Dymo Nv Printing apparatus
JP3986588B2 (ja) * 1996-09-12 2007-10-03 ブラザー工業株式会社 イメージ画像形成システム及びスキャナ装置
WO1998040863A1 (en) 1997-03-14 1998-09-17 Tv Interactive Data Corporation A method of detachably attaching an insert to a remote control base and the resulting remote control
GB9903074D0 (en) * 1999-02-12 1999-03-31 Silver Fox Ltd Computer system for producing series of sequential images for labelling
EP1039367A3 (en) * 1999-03-25 2002-02-06 Seiko Epson Corporation Printer controller, printer control method, and data storage medium carrying computer program means
AU2919501A (en) * 1999-10-29 2001-05-08 Zih Corporation Printer programming tool and method
US6535931B1 (en) * 1999-12-13 2003-03-18 International Business Machines Corp. Extended keyboard support in a run time environment for keys not recognizable on standard or non-standard keyboards
US6895549B1 (en) * 2000-10-27 2005-05-17 International Business Machines Corporation Method and apparatus for generating a variable data file to be used to generate custom printed articles
US8693043B2 (en) * 2003-12-19 2014-04-08 Kofax, Inc. Automatic document separation
EP1645992A1 (en) 2004-10-08 2006-04-12 Philip Morris Products S.A. Methods and systems for marking, tracking and authentication of products
CN1801015B (zh) * 2004-12-31 2011-01-05 东方惠科防伪技术有限责任公司 生产线数据自动采集及对应系统和方法
US7757185B2 (en) * 2006-01-06 2010-07-13 Apple Inc. Enabling and disabling hotkeys
JP4747906B2 (ja) * 2006-03-29 2011-08-17 ブラザー工業株式会社 ラベル印刷装置及びラベル印刷プログラム
JP4742945B2 (ja) * 2006-03-30 2011-08-10 ブラザー工業株式会社 印刷装置及びフォーマット編集プログラム
JP5039414B2 (ja) * 2007-04-02 2012-10-03 キヤノン株式会社 制御装置、プログラム作成方法、及びプログラム
DE102008062907A1 (de) * 2008-12-23 2010-06-24 Giesecke & Devrient Gmbh Kennzeichnen eines Produktes
JP4923087B2 (ja) * 2009-09-08 2012-04-25 東芝テック株式会社 ラベル印刷装置およびラベル印刷方法
KR20110040108A (ko) * 2009-10-13 2011-04-20 삼성전자주식회사 화상형성장치 및 화상형성장치의 문서 관리방법
CN103269868B (zh) 2010-06-24 2016-08-17 艾利丹尼森公司 手持便携式打印机
EP2472451A1 (en) 2010-12-30 2012-07-04 Philip Morris Products S.A. Method and apparatus for marking manufactured items
US10744793B2 (en) 2013-09-06 2020-08-18 Avery Dennison Corporation Method, system, and apparatus for providing product data
EP3051469B1 (en) 2015-01-28 2024-05-22 Inexto Sa Method and apparatus for unit and container identification and tracking
EP3051372B1 (en) 2015-01-31 2019-03-06 Inexto Sa Secure product identification and verification
US20180205543A1 (en) 2015-08-13 2018-07-19 Inexto Sa Enhanced obfuscation or randomization for secure product identification and verification
CN108140076B (zh) 2015-08-25 2022-04-05 英艾克斯图股份有限公司 用于安全产品标识符的具有容错的验证
US10594494B2 (en) 2015-08-25 2020-03-17 Inexto Sa Multiple authorization modules for secure production and verification

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5058035A (en) * 1986-08-30 1991-10-15 Canon Kabushiki Kaisha Apparatus which records data on the basis of stored format information
US4939674A (en) * 1988-04-22 1990-07-03 Engineered Data Products, Inc. Label generation apparatus
AU612887B2 (en) * 1988-08-24 1991-07-18 Tokyo Electric Co. Ltd. Label printer
WO1990012362A1 (en) * 1989-04-10 1990-10-18 A.C. Nielsen Company Controller for a space management program
JPH0425487A (ja) * 1990-05-18 1992-01-29 Tokyo Electric Co Ltd ラベルプリンタの印字方法
US5268993A (en) * 1990-06-04 1993-12-07 Minolta Camera Kabushiki Kaisha Printer
US5287434A (en) * 1991-10-28 1994-02-15 Monarch Marking Systems, Inc. Barcode identification system spooler
US5239622A (en) * 1991-11-28 1993-08-24 Monarch Marking Systems, Inc. Barcode identification system format editor

Also Published As

Publication number Publication date
EP0573751B1 (en) 2000-03-01
EP0573751A3 (en) 1997-01-29
EP0573751A2 (en) 1993-12-15
JPH06297780A (ja) 1994-10-25
DE69327920D1 (de) 2000-04-06
CA2093688A1 (en) 1993-10-16
US5467433A (en) 1995-11-14
CA2093688C (en) 2001-10-09
DE69327920T2 (de) 2000-07-20

Similar Documents

Publication Publication Date Title
JP3288798B2 (ja) ラベル印刷及びデータ収集プログラム発生器
US5845119A (en) Software development tool for combining software components/modules
KR100650427B1 (ko) 자연어 인식 애플리케이션 구축을 위한 통합 개발 툴
US5982365A (en) System and methods for interactively generating and testing help systems
US6925600B2 (en) Information processing apparatus for storing processing hysteresis data, and method therefor
Chen et al. Index preparation and processing
US7523031B1 (en) Information processing apparatus and method capable of processing plurality type of input information
JP3737629B2 (ja) 文書編集システム、方法、及び記録媒体
JPH0660067A (ja) 文書処理装置
JP3712320B2 (ja) 可変文書作成システム、可変文書出力装置及び可変原稿作成装置
JP2005505807A (ja) コンピュータ・プログラム・コード用の保守環境を実現する方法とシステム
JPH10269066A (ja) 日本語によるシェル自動作成装置
Ryan Using Word Perfect macros to handle field notes I: Coding
JPH0232455A (ja) 項目抽出方式
JPH11110199A (ja) プログラム編集エディタ
JPH096586A (ja) グラフィカル・ユーザインタフェース操作装置
JPH07219962A (ja) キーワード作成装置
Watson et al. Going Command (o): Power (Shell) ing Through Your Workload
JPS6325765A (ja) 文書編集装置
JPH1011438A (ja) 単語チェッカ
Hadden Going Command (o): Power (Shell) ing Through Your Workload
JPH09198246A (ja) 関数呼出し状況の解析方法
JP2000172495A (ja) データ設定参照箇所出力装置およびデータ設定参照箇所の出力方法
JPH10254600A (ja) 付随情報処理装置
JPH0241558A (ja) 対話型エディタのテキスト解析編集処理方式

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080315

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090315

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees