JPH0383153A - メツセージ処理システム及び方法 - Google Patents

メツセージ処理システム及び方法

Info

Publication number
JPH0383153A
JPH0383153A JP2210580A JP21058090A JPH0383153A JP H0383153 A JPH0383153 A JP H0383153A JP 2210580 A JP2210580 A JP 2210580A JP 21058090 A JP21058090 A JP 21058090A JP H0383153 A JPH0383153 A JP H0383153A
Authority
JP
Japan
Prior art keywords
message
file
variable
field
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2210580A
Other languages
English (en)
Inventor
Michael A Enescu
マイケル・エー・エネスクー
James Lum
ジエームズ・ラム
Ronald L Obermarck
ロナルド・エル・オバーマーク
Kurt A Shoens
カート・エー・シヨーンズ
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH0383153A publication Critical patent/JPH0383153A/ja
Pending legal-status Critical Current

Links

Classifications

    • 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/451Execution arrangements for user interfaces
    • G06F9/454Multi-language systems; Localisation; Internationalisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 A、!!業上の利用分野 本発明は、一般にディジタル・コンピュータ・システム
に関し、より具体的には、通知(infor厘atfv
e)メツセージを処理し、それをコンピュータ・システ
ムのユーザに表示するためのシステムに関する。
B、従来の技術 ]ンピュータ・システム上で走行しているプログラムは
、そのシステムのユーザ及び他のプログラムに情報を送
らなければならない。オペレーティング・システムや適
用業務プロダクトなどの大型プログラムは、多数の通知
メツセージをもち、それを随時、システム・オペレータ
またはユーザに送らなければならない。
これらのメツセージのあるものは、ある動作が完了した
こと、あるいは資源がいま利用できることをユーザに通
知する場合のように、単なる通知メツセージである。ま
た別のメツセージは、ファイルが期待したフォーマット
でないなど期待通りでないものがあることをユーザに通
知する、警告メツセージと考えることのできるものであ
る。危機メツセージまたはエラー・メッセージは、存在
しないファイルを開こうとした試みなど、ある試みられ
た動作が失敗したことをユーザに通知するメツセージと
考えることができる。オペレーティング・システムなど
の大型適用業務プログラム内のかなりの量のコードは、
このような通知メツセージの処理専用になっている。
ユーザまたはオペレータが読み取るべきメッセージは、
その人物が理解できる言語で提示しなければならない。
これらの言語は、しばしば、プログラミング言語と区別
するために「国語」と呼ばれている。メツセージ生成コ
ードは、エンド・ユーザの国語を知った上で書かなけれ
ばならない。変更及び更新には、通常は、適用業務全体
の再コンパイルが必要である。
各国語のシンタクスは、大幅に異なることがあるので(
たとえば、ある国語では右から左へ読むが、別の国語で
は左から右へ読み、文法も国語ごとに変わる)、場合に
よっては、翻訳は時間のかかる作業となる。さらに、メ
ツセージ処理サブシステムのためのソース・コードに、
重大な変更が導入されることがある。様々な国語を使用
する多数の国で利用されるプロダクトの保守及びサポー
トは、各国司に異なるソース・コードを使ってそのプロ
ダクトを生成した場合、ずっと困難になる。
ある国語のバージロンで見つかったエラーが、他のバー
ジロンでは必ずしも見つからず、その適用業務全体に対
する更新及び変更は、より困難になる。
したがって、各変更ごとに再コンパイルまたは再連係編
集する必要のない、大型適用業務用のメツセージ処理シ
ステムを提供することが望まれる。
また、そのようなメツセージ処理システムが、いくつも
の異なるソース・コード・バージロンを導入しないで、
各国語をスマートにかつフレキシブルに扱うことができ
ることも望ましい。
C1発明が解決しようとする課題 本発明の目的は、メツセージの表示に使用する国語に依
存しない、コンピュータ適用業務とともに使用するため
のメツセージ処理システムを提供することである。
本発明の別の目的は、システムで支援されるメツセージ
に変更が加えられたときに、再コンパイルまたは再連係
(リンク)する必要のない、メツセージ処理システムを
提供することである。
本発明の別の目的は、異なるプログラミング8語で書か
れた各種の適用業務に対して修正なしで使用できる、そ
のようなメツセージ処理システムを提供することである
01課題を解決するための手段 本発明によれば、通知メツセージを生成するために、標
準化されたメツセージ処理手順が適用業務プログラムに
よって呼び出される。メッセージ・プロセッサにアクセ
ス可能なファイル内に、メツセージ保管庫が設けられる
。サポートされる各国語ごとに別々の保管庫が設けられ
る。適用業務は、メッセージ・プロセッサを呼び出し、
メツセージに含める変数情報を渡す。メッセージ・プロ
セッサは、適切な保管庫からメッセージ・シンタクス及
び固定フィールドを取り出し、その保管庫からの情報及
び呼出し適用業務が提供する情報を使ってメツセージを
アセンブルし、生成する。プレプロセッサを使用して、
保管庫ファイル、及び適用業務ソース・ファイルに含め
るのに適したメッセージ・プロセッサ・システムを呼び
出すためのマクロを生成することができ、文書を生成す
ることができる。プレプロセッサは、入力として単一の
標準メツセージ記述ファイルを使って、これらの機能を
実行する。
E、実施例 ここで、適用業務プログラムと一緒に使用する状況での
、本発明によるメッセージ・プロセッサの使用について
説明する。当業者なら理解するように、このようなメツ
セージ処理システムは、オペレーティング・システムを
含めて異なる多数のタイプの適用業務で使用できる。
第1図を参照すると、適用業務プログラム10は、当技
術分野で周知のように汎用ディジタル・コンピュータ上
で実行する。使用するコンピュータのタイプは、本発明
にとっては重要ではなく、たとえばメインフレーム・コ
ンピューターシステム、デスクトップ・パーソナル・コ
ンピュータ、またはパーソナル・ワークステージロンで
よい。
適用業務プログラム10の詳細も本発明にとっては重要
ではない。適用業務プログラム10は、たとえば、ネッ
トワークに接続されたグラフィックス・ワークステージ
ロンをサポートする、実時間マルチユーザ・オペレーテ
ィング・システムでも、デスクトップ・パーソナル・コ
ンピュータ上で走行するシングル・ユーザ適用業務でも
よい。
メッセージ・プロセッサ12は、コンピュータ・システ
ム上で走行する呼出し可能な手順である。
メッセージ・プロセッサ12は、動作中、メツセージ保
管庫(repository) 14の内容を読み取る
この保管庫は、以下でより詳細に説明するが、ファイル
内に含まれる情報から構成されている。さらに別のメツ
セージ保管庫16.18を設けることもできる。
各メツセージ保管庫14.16.18は、各国語用のメ
ッセージ・シンタクス及び固定フィールドを記述する情
報を含んでいる。各メツセージ保管庫14.1B、18
は、それぞれ1つの国語に対応している。メッセージ・
プロセッサ12は、メツセージ保管庫14から固定フィ
ールド及びシンタクス情報を入手し、それを適用業務プ
ログラム10から得た変数情報と組み合わせて、定様式
(f’orvatted)  メツセージ20を定義す
る出力文字列を生成する。
定様式メツセージ20を生成する際にメッセージ・プロ
セッサ12が利用するデータを、第2図に示す。適用業
務10からメツセージ・ブロセ、。
す12に渡される情報は、ブロック22に示されている
。メツセージ保管庫14内のエントリから得られた情報
は、ブロック24に示されている。
ブロック22及び24内にリストされた情報は一例にす
ぎず、様々な適用業務及びシステム要件に適合するよう
に変更することができる。
メッセージ・プロセッサ12を呼び出す際、適用業務プ
ログラム10は、ボックス22内の情報をデータ構造に
入れてメッセージ・プロセッサ12に渡す。データ構造
全体のコピーを渡すことも可能であるが、適用業務10
がデータ構造を指すポインタのみを渡すことが好ましく
、そうすることによってメッセージ・プロセッサ12は
その情報にアクセスすることができる。データ構造内の
第1の項目はメツセージ識別子であり、これは生成され
るメツセージを識別する英数字文字列であることが好ま
しい。
メッセージ・プロセッサ12に渡される第2項目は、こ
のメツセージが使用する変数のカウントVARC0UN
Tである。一連の変数フィールド記述子DBSC1、・
・・、DBSCNが、各変数フィールドに対するフィー
ルド・タイプ及びフィールド名を記述する。対応する数
の変数フィールドVAR1、・・・、VARNが、実際
の変数情報を含んでいる。
メッセージ・プロセッサ12が呼び出されると、メッセ
ージ・プロセッサ12は、メツセージ識別子を抽出し、
その情報を使ってメツセージ保管庫14内を探す。その
識別子に対応するエントリが保管庫14で見つかると、
そのエントリは読み込まれ、メッセージ・プロセッサ1
2によってそのメツセージをフォーマットするために使
用される。
ボックス24内に示した情報は、保管庫14から抽出さ
れる1つのエントリの例である。
メツセージ保管庫14内の各エントリは、識別子を含ん
でおり、それが適用業務プログラム10から供給される
識別子と突き合わされる。このエントリは次に、一連の
固定フィールド文字列及び変数フィールド記述子を出力
メツセージ20で望ましい順序で供給する。この保管庫
エントリから供給された固定フィールドは、単に定様式
メツセージ20を表す出力文字列にコピーされ、各変数
フィールド記述子に対応する変数が、メッセージ・プロ
セッサ12の呼出し中に渡されたデータ構造から抽出さ
れ、必要ならフォーマットされ、出力文字列にコピーさ
れる。第2図に示した出力文字列は、固定フィールドと
変数フィールドを交互にもつが、固定フィールド及び変
数フィールドを同じタイプの他のフィールドの隣りに置
くことも可能である。一般に、2つの隣り合った固定フ
ィールドは組み合わされて、より長い単一の固定フィー
ルドになる。
したがって、出力文字列20は、保管庫14内のエント
リで定義されるフォーマットをもち、保管庫14から供
給される固定フィールド、及びメッセージ・プロセッサ
12の呼出しによって適用業務10から供給される変数
フィールドの値を含む。
このシステムを各国語で使用するには、メッセージ・プ
ロセッサ12によって使用されるメツセージ保管庫とし
て、それぞれ異なる保管庫16または18を定義するだ
けでよい。メッセージ・プロセッサ12は、次に、この
ような他のメツセージ保管庫内で対応するエントリを見
つけ、そのエントリを使って、定様式メツセージ20の
固定フィールドとフォーマットを提供する。異なるメツ
セージ保管l1f16.18が選択されるとき、一般に
そのメツセージ保管庫内の固定フィールドは異なり、別
の国語で書かれていると期待される。さらに、その別の
国語に応じた正しいシンタクスをもつ出力メツセージを
生成するため、変数フィールドが出力文字列に押入され
る順序も異なったものになることがある。
呼出し中に供給される変数記述子フィールド、及びメツ
セージ保管庫14内で見つかった変数記述子フィールド
は関連の変数フィールド名をもつので、メッセージ・プ
ロセッサが、ボックス22内で提供される変数を保管庫
エントリ内で定義された対応する位置と突き合わせるの
は、かなり簡単な処理である。たとえば、第2図で、第
1の変数フィールドはDESC2であり、DESC2は
、それに関連する一義的な名前をもっている。
メッセージ・プロセッサ12は、照合ができるまで、ボ
ックス22内の変数フィールド記述子内で見つかる名前
を走査するだけである。次に、対応する変数が出力文字
列にコピーされる。
第3図の流れ図は、定様式メツセージ20を作成する際
のメッセージ・プロセッサ12の動作を示している。最
初のステップで、メツセージ要求30を受は取る。メツ
セージを要求するには、メッセージ・プロセッサ12を
呼び出し、それに、上述のよつにメツセージ識別子及び
変数フィールドを含む構造を指すポインタを渡す。メッ
セージ・プロセッサ12は、メツセージ32をメツセー
ジ識別子によって識別し、入力34を解析する。同じ呼
出しが、このシステムによって生成されるすべてのメツ
セージに使用されるので、メッセージ・プロセッサ12
は、変数カウント・フィールド及び変数フィールド記述
子を使って各変数フィールドの内容を抽出しなければな
らない。
次に、メッセージ・プロセッサ12は、要求されたメツ
セージがメツセージ保管庫36内に含まれているかどう
か判定する。第1に、使用される国語保管庫を決定する
。これは、たとえば、この目的に使用される入城変数ま
たはシステム変数の値を検査することによって行なうこ
とができる。
次に、要求されたメツセージ識別子が、上述のように、
メツセージ保管庫ファイル内のメツセージ識別子と突き
合わされる。そのメツセージが保管庫内で定義されてい
ない場合は、エラー報告が戻され(ステップ38)、メ
ッセージ・プロセッサ12は、その呼出し側に戻る。ス
テップ38で戻されるエラー報告の実施態様は、システ
ム設計者の好み、及びこのシステムで与えられる既存の
制約によって決定される。1つの技法は、未知のエラー
・タイプがあると述べる、メッセージ・プロセッサ12
に渡されたすべての変数フィールドの内容を含む定様式
メツセージを生成することである。
要求されたメツセージが、メツセージ保管ファイル内で
見つかった場合、メツセージ識別子が出力文字列にコピ
ーされる(ステップ40)。次に、メッセージ・プロセ
ッサ12は、メツセージ保管ファイルから読み込まれた
エントリの走査を開始する。ステップ42で次のフィー
ルドが固定フィールドの場合は、メツセージ識別子が、
単にメツセージ保管エントリから出力文字列の現端部ヘ
コピーされる(ステップ44)。次のフィールドが変数
か検査が行なわれる(ステップ45)。Noの場合には
、エラー・メッセージが戻され(ステップ46)、この
プロセスは終了する。対応するフィールド記述子が保管
庫−←十今内にある場合、その変数は、メッセージ・プ
ロセッサ12に渡される構造内にあり、変換され(ステ
ップ47)、必要ならば、出力文字列の現端部に付加さ
れる(ステップ48)。保管庫エントリ内の各変数に対
する記述フィールドは、最大フィールド長、フィールド
内での位I!調整など、変換に使用される情報を含むこ
とが好ましい。数字変数は、ステップ48で出力文字列
に付加される前に、ステップ46で印字可能な文字列に
変換される。
メッセージ・プロセッサ12が、情報を所与のフィール
ドに対する出力文字列に書き終えると、保管庫エントリ
に記述されたフィールドが他にまだあるかどうか調べる
ために検査が行なわれる(ステップ150)。まだ他に
フィールドがある場合は、ステップ42に戻る。もうフ
ィールドがない場合には、出力文字列は完全に組み立て
られてわり、定様式メツセージが、メツセージ保管庫エ
ントリ内で定義された位置に送られる(ステップ52)
、、定様式メツセージは、たとえば、システム・エラー
・ストリームに、または直接ユーザに、あるいは事前選
択されたファイルに送ることができる。
したがって、1つまたは複数のメツセージ保管庫ファイ
ルに関して上述したようにメッセージ・プロセッサを使
用すると、標準化されたメツセージ処理機能の使用に大
きな柔軟性が得られることがわかる。新しい国語に対す
るサポートを提供するには、その国語用の新しい保管庫
ファイルを設けるだけでよい。そのメツセージ保管庫フ
ァイルを単に変更するだけで、メツセージの変更、追加
、あるいは削除が可能になる。適用業務プログラムに変
更を行なう場合、メッセージ・プロセッサ12を再コン
パイルする必要はない。メッセージ・プロセッサ12は
、標準形式を使用して呼び出される独立した手順なので
、このメッセージ・プロセッサを、様々なプログラミン
グ言語で書いた適用業務プログラムとともに使用するこ
とが可能である。
この好ましい実施例を使用して得られる別の利点は、こ
のシステムでサポートされるメツセージを定義する単一
ソース・ファイルの使用である。
このソース・ファイルをプレプロセッサが使用して、文
書を作成し、メツセージ保管庫ファイルを生成し、呼出
し側適用業務とメッセージ・プロセッサとの適切なイン
タフェースをとるために呼出し側適用業務に挿入するソ
ース・コードを生成することができる。
第4図に、メッセージ・プレプロセッサ60を使用して
文書ファイル、メツセージ保管ファイル、及び呼出し側
適用業務のソース・コード・ファイルに含めるソース・
コード・マクロを生成するシステムを示す。後で第6図
ないし第7図に関してさらに詳しく説明するが、メッセ
ージ・プレプロセッサ60は、メツセージ定義ファイル
68上でこれらの機能を実行する。このメツセージ定義
ファイル68は、単に、各メツセージのフォーマットを
定義するテキスト・ファイルである。このフォーマット
定義は、任意の都合のよい標準の形で行なってよい。
メツセージ定義ファイル68で定義された各メツセージ
ごとに、メツセージ識別子、及び各メツセージ・フィー
ルドのタイプを定義する情報が含まれる。各固定フィー
ルドに対しては、そのフィールドに対するテキスト文字
値が設定され、変数フィールドに対しては、変数のタイ
プ、及び印字フォーマットの指定が含まれる。
第5図に、メッセージ・プレプロセッサ6oが、メツセ
ージ定義ファイルe8から文書作成ファイル62を生成
するための好ましい方法を示す。まず、入出カファイル
が開かれる(ステップ80)。
テキスト・ファイルは、文書用ファイル62として出力
するために開いており、メツセージ定義ファイル68は
入力するために開いている。次に、ステップ82で始ま
る外側ループに入る。ステップ82で、メツセージ定義
ファイル68中に処理すべきメツセージがもう残ってい
ない場合には、この手順は終了する。
処理すべきメツセージが残っている場合には、ステップ
84〜92からなる内側ループに入る。
このループ内で、各フィールドがメツセージ定義ファイ
ル68から読み取られ(ステップ84)、そのフィール
ド・タイプが検査される(ステップ86)。それが固定
フィールドである場合には、その値が単に出力ファイル
にコピーされる(ステップ88)。フィールドが変数フ
ィールドである場合には、第2図に関して説明したよう
に、変数フィールド宣言内で見つかった変数名が、出力
ファイルにコピーされる(ステップ90)。それがこの
メツセージ内の最後のフィールドでない場合には(7,
テップ92)、ステップ84に戻る。メツセージ92の
最後のフィールドである場合には、ステップ82に戻る
第5図の手順によって作成された文書作成ファイルは、
メツセージ定義ファイル内の様々なメツセージの出力フ
ォーマットを示す一連のリストである。望ましい場合に
は、追加の記述コメントを、メツセージ定義ファイル6
8内の専用コメント・フィールドに含めることができ、
この記述コメントは文書作成ファイルθ2にコピーする
ことができる。
第6図に、メッセージ・プレプロセッサ60がメツセー
ジ保管庫ファイル64を生成する手順を示す。まず、メ
ツセージ定義ファイル68が入力するために開かれ、メ
ツセージ保管庫ファイル64が出力するために開かれる
(ステップ100)。
次に、外側ループに入り、メツセージ定義ファイル88
からの処理すべきメツセージがまだ残っているかどうか
調べるため検査が行なわれる(ステップ102)。メツ
セージが残っていない場合には、この手順は終了する。
メツセージが残っている場合には、保管庫ファイル64
内で新しいエントリがつくられ、メツセージ識別子がそ
のエントリに書き込まれる(ステップ104)。次に、
手順は内側ループに入り、メツセージ定義ファイル88
から次のフィールドが読み込まれる(ステップ106)
。フィールド・タイプが検査され(ステップ108)、
それが固定フィールドの場合には、識別用連続番号とそ
のフィールドの内容が保管庫ファイルに書き込まれる(
ステップ110)。フィールドが変数フィールドである
場合は、第2図に関して説明したように、識別用連続番
号及び変数フィールド記述子が保管庫ファイルに書き込
まれる(ステップ112)。ステップ112で書き込ま
れた変数フィールド記述子は、変数名、変数タイプ、及
びフォーマット化情報(しばしばピクチャとも言う)を
含むことが好ましい。
フィールドに対応する情報がメツセージ保管庫ファイル
64に書き込まれた後、この情報がメツセージの最後の
フィールドであるかどうか調べるため検査が行なわれる
(ステップ114)。NOの場合には、ステップ106
に戻る。それがメツセージの最後のフィールドである場
合には、ステップ102で外側ループの最上段に戻る。
第5図と第6図の流れ図を比べるとわかるように、文書
作成ファイル62及びメツセージ保管庫ファイル64を
生成する際に、多数の類似の操作ステップが実行される
。第7図に関して後で述べるように、メツセージ適用業
務ソース・コード・マクロ・ファイル6Bを生成する場
合にもそういえる。したがって、これらの3つのファイ
ル62.84、E36すべてを、望むなら単一のソース
入力から生成することが可能である。
第7図に、メッセージ・プレプロセッサeOが、呼出し
側適用業務のソース・コードに挿入するソース・コード
・マクロを生成するための手順を示す。
まず、メツセージ定義ファイル88が入力するために開
かれ、メツセージ・マクロ・ファイル66が出力するた
めに開かれる(ステップ120)。
通常、すべてのメツセージに必要なソース・コードは、
単一のメツセージ・マクロ・ファイル66に含まれ、こ
のメツセージ・マクロ・ファイルは、コンパイル中はオ
ペレーティング・システム10のソース内に含まれる。
次に、メッセージ・プレプロセッサ60は、目標(ター
ゲット)言語を決定する(ステップ122)。目標言語
とは、呼出し側適用業務を書くのに使用する言語である
。これは通常、メッセージ・プレプロセッサ60が呼び
出されるとき、コマンド行スイッチによって供給される
次に外側ループに入り、もう他にメツセージがないかど
うか調べるためにメツセージ定義ファイル68が検査さ
れる(ステップ124)。他にもうメツセージがない場
合は、手順は完了する。処理すべきメツセージがまだ他
にある場合、メツセージを渡すために呼出し側適用業務
が使用するデータ構造を定義する必要がある。したがっ
て、構造ヘッダが書き出される(ステップ126)。こ
の構造ヘッダは、データ構造を定義するためのコードな
らびにメツセージ識別子フィールドに対するフィールド
定義及び変数フィールド記述子を含んでいる。次に、こ
の手順は、内側ループに入り、メツセージ内の次のフィ
ールドを読み取る(ステップ128)。フィールド・タ
イプが検査され(ステップ130)、それが変数フィー
ルドの場合は、対応スるエントリがソース・コード・デ
ータ構造に書き込まれる(ステップ132)。固定フィ
ールドは単にスキップされ、ステップ134に移る。
これがメツセージの最終フィールドでない場合は(ステ
ップ134)、ステップ128に戻る。これがメツセー
ジの終わりである場合は(ステップ134)、ステップ
136に進む。
この時点で、ユーザ定義の構造化データ・タイプが、メ
ツセージ・マクロ・ファイル66内のソース・コード中
で定義済みである。渡される各変数は、記述子フィール
ド及び構造内で定義された値のフィールドをもつ。一般
に、呼出し側適用業務の作成者に、メッセージ・プロセ
ッサ112をパラメータを渡す細かいことにわずられせ
るより、コンパイル時に必要な命令に翻訳されるマクロ
を書くことが好ましい。そうすれば、メッセージ・プロ
セッサ12に渡されるメモリ・オブジェクトに対してス
ペースを割り振って、そのスペースに適切な値を置くこ
とができる。一般に、このようなマクロの使用は、当業
者には周知のことである。
したがって、次のステップで、メツセージ・マクロ・フ
ァイル66にコードを書き込んで、マクロ・パラメータ
を解析しくステップ138)、これらのマクロ・パラメ
ータを、データ構造内の対応する変数に割り当てる(ス
テップ138)。マクロ内の最後のステップとして、メ
ッセージ・プロセッサ12を呼び出し、それに割り振ら
れた構造を指すポインタを渡す。この構造は、ステップ
136またはステップ138でスペースが割り振られて
おり、ステップ126ないし134で定義されたタイプ
によって定義される。
当業者なら理解できるように、上述のシステムは、多数
の国語で使用するのに適したメツセージ生成機能の生成
と維持を大幅に単純化するものである。標準のメッセー
ジ・プロセッサ手順を異なる多数の適用業務で使用でき
る。このような手順は、既存適用業務が新しい国語をサ
ポートするようになるとき、再コンパイルあるいは再連
係する必要がない。なぜなら、すべての国語依存情報は
、メツセージ保管庫ファイル内に含まれているからであ
る。
メッセージ・プロセッサは、標準フォーマットのデータ
を受は入れるので、異なるプログラミング言語で書かれ
た適用業務とともに使用することができる。このメッセ
ージ・プロセッサは、単に連係時に適用業務プログラム
に連係される走行時モジュールとして提供することが好
ましい。メッセージ・プレプロセッサが、コンパイル時
に適用業務のソース・ファイル内に含めなければならな
いインタフェース・ソース・コードの生成を扱うので、
適用業務プログラマはこれらの細かいことにわずられさ
れることがない。単一のメツセージ記述ファイルをプレ
プロセッサが使用して、ソース・コード・マクロ、メツ
セージ保管庫ファイル、及び文書を生成することができ
る。
F0発明の効果 本発明によれば、メツセージの表示に使用する国語に依
存しない、適用業務とともに使用されるメツセージ処理
システム及び方法が提供される。
【図面の簡単な説明】
第1図は、メッセージ・プロセッサ・システムと適用業
務の関係を示す高レベルの構成図である。 第2図は、メツセージを生成するために、メッセージ・
プロセッサによって結合される固定フィールド情報と変
数フィールド情報を示す図である。 第3図は、メッセージ・プロセッサの動作を記述した流
れ図である。 第4図は、メッセージ・プレプロセッサによって実行さ
れる機能を示す高レベル構成図である。 第5図は、文書を生成するためのメッセージ・プレプロ
セッサの動作を記述した流れ図である。 第6図は、保管庫ファイルを生成するためのメッセージ
・プレプロセッサの動作を記述した流れ図である。 第7図は、適用業務ソース・ファイルに含めるソース・
コード・マクロを生成するためのメッセージ・プレプロ
セッサの動作を記述した流れ図である。 10・・・・適用業務プログラム、12・・・・メッセ
ージ・プロセッサ、18.18・・・・メツセージ保管
庫、20・・・・定様式メツセージ。

Claims (14)

    【特許請求の範囲】
  1. (1)実行中の適用業務から呼出し可能なメッセージ・
    プロセッサ、及び メッセージ・シンタクス及び固定フィールド内容情報を
    定義する、前記メッセージ・プロセッサからアクセス可
    能な第1のファイルを含み、前記メッセージ・プロセッ
    サが、所望のメッセージに対応する前記第1ファイルか
    らの情報を、実行中の適用業務から供給される情報と組
    み合わせてメッセージを生成する、 コンピュータ・システム上でメッセージを生成するため
    のシステム。
  2. (2)さらに、メッセージ・シンタクス及び固定フィー
    ルド内容を定義する複数の追加ファイルを含み、前記追
    加ファイル及び前記第1ファイルの各々が異なる外国語
    に対応しており、それにより、前記メッセージ・プロセ
    ッサにより使用するために選択された前記ファイルの1
    つに対応する国語でメッセージが生成される、請求項1
    に記載のシステム。
  3. (3)前記メッセージ・プロセッサが、実行中の適用業
    務を書くのに使用するプログラミング言語とは独立の標
    準フォーマットを使って呼び出される、請求項1に記載
    のシステム。
  4. (4)実行中の適用業務から供給される情報がメッセー
    ジ識別子を含む、請求項1に記載のシステム。
  5. (5)実行中の適用業務から供給される情報が、さらに
    少なくとも1つの変数及び関連する変数フィールド記述
    子を含む、請求項4に記載のシステム。
  6. (6)前記第1ファイルに含まれるメッセージ・シンタ
    クス情報が、変数位置情報とフィールド名を含む関連す
    る変数フィールド記述子とを含み、実行中の適用業務か
    ら供給される変数フィールド記述子もフィールド名を含
    み、実行中の適用業務から供給される変数が、その関連
    するフィールド名を前記第1ファイル情報に含まれるフ
    ィールド名と比較し、かつその変数を対応する位置に置
    くことにより、生成されたメッセージ内で位置決めされ
    る、請求項4に記載のシステム。
  7. (7)さらに、メッセージ・シンタクスを定義するメッ
    セージ記述ファイルから前記第1ファイルを生成するた
    めのメッセージ・プレプロセッサを含む、請求項1に記
    載のシステム。
  8. (8)前記メッセージ・プレプロセッサがまた、メッセ
    ージ記述ファイルから、コンパイル時に実行中の適用業
    務についてのソース・コード内に挿入されるプログラム
    ・ソース・コードを生成し、このような挿入されたソー
    ス・コードが、実行中の適用業務と前記メッセージ・プ
    ロセッサのインタフェースをとる、請求項7に記載のシ
    ステム。
  9. (9)メッセージ識別子をメッセージ・プロセッサに渡
    すステップ、 メッセージ識別子に対応して、保管庫ファイルから、メ
    ッセージ・シンタクス及び固定フィールド値を得るステ
    ップ、及び 保管庫ファイルから得られたシンタクスに従って、固定
    フィールド値を含む出力メッセージを生成するステップ
    、 を含む、適用業務プログラムの実行中にメッセージを処
    理するための方法。
  10. (10)さらに、変数フィールド値をメッセージ・プロ
    セッサに渡すステップを含み、 前記生成ステップが、固定フィールド値の他に変数フィ
    ールド値をも含む出力メッセージを生成する、請求項9
    に記載の方法。
  11. (11)変数フィールド値に関連する変数フィールド記
    述子もメッセージ・プロセッサに渡され、メッセージ・
    シンタクスが変数フィールド記述子を含み、渡された変
    数フィールド記述子が、メッセージ・シンタクス内に含
    まれる変数フィールド記述子と比較されて、出力メッセ
    ージ内の関連する変数フィールド値の位置が決定される
    、請求項10に記載の方法。
  12. (12)さらに、メッセージ・プロセッサに渡された任
    意の変数が、保管庫ファイル内に対応する変数フィール
    ド記述子をもたない場合に、エラー・メッセージを生成
    するステップを含む、請求項11に記載の方法。
  13. (13)さらに、メッセージ識別子に対応するメッセー
    ジ・シンタクス及び固定フィールド値が保管庫ファイル
    に含まれていない場合に、エラー・メッセージを生成す
    るステップを含む、請求項9に記載の方法。
  14. (14)さらに、メッセージ記述ファイルから保管庫フ
    ァイルを生成するステップを含む、請求項9に記載の方
    法。
JP2210580A 1989-08-14 1990-08-10 メツセージ処理システム及び方法 Pending JPH0383153A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/393,133 US5287444A (en) 1989-08-14 1989-08-14 Message processing system
US393133 1999-09-10

Publications (1)

Publication Number Publication Date
JPH0383153A true JPH0383153A (ja) 1991-04-09

Family

ID=23553411

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2210580A Pending JPH0383153A (ja) 1989-08-14 1990-08-10 メツセージ処理システム及び方法

Country Status (3)

Country Link
US (1) US5287444A (ja)
EP (1) EP0413486A3 (ja)
JP (1) JPH0383153A (ja)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5579467A (en) * 1992-05-27 1996-11-26 Apple Computer, Inc. Method and apparatus for formatting a communication
DE4325096C2 (de) * 1993-07-27 1998-12-17 Computervision Corp Ein Datenverarbeitungssystem, welches einen Benutzer-Dialog in mehreren natürlichen Sprachen ermöglicht
FI106764B (fi) * 1994-02-14 2001-03-30 Nokia Networks Oy Tietoliikennekeskuksen monikielinen käytönohjausliitäntä
US5729665A (en) * 1995-01-18 1998-03-17 Varis Corporation Method of utilizing variable data fields with a page description language
US6243172B1 (en) * 1995-01-18 2001-06-05 Varis Corporation Method and system for merging variable text and images into bitmaps defined by a page description language
US5872640A (en) * 1995-11-28 1999-02-16 Cable & Wireless, Inc. Facsimile form generation system
JPH10171701A (ja) * 1996-12-10 1998-06-26 Fuji Xerox Co Ltd 手続実行装置及び方法
US6119079A (en) * 1997-04-24 2000-09-12 Hewlett-Packard Company Method and structure for tokenized message logging system
US6487568B1 (en) * 1997-07-18 2002-11-26 Tesseron, Ltd. Method and system for flowing data to an arbitrary path defined by a page description language
FR2766642B1 (fr) * 1997-07-22 1999-11-19 Sextant Avionique Procede et dispositif de reception de messages numeriques assurant un pretraitement de ces messages configurable dynamiquement
US7028304B1 (en) * 1998-05-26 2006-04-11 Rockwell Collins Virtual line replaceable unit for a passenger entertainment system, method and article of manufacture
US7797625B1 (en) 1999-12-23 2010-09-14 International Business Machines Corporation Message composition computer, memory media and method
US20020129335A1 (en) * 2000-12-18 2002-09-12 Philips Electronics North America Corp. Robust logging system for embedded systems for software compilers
KR20040028257A (ko) * 2002-09-30 2004-04-03 삼성전자주식회사 네트워크에 접근가능한 장치, 그 보안 방법 및 정보저장매체
US7231342B2 (en) * 2003-01-09 2007-06-12 International Business Machines Corporation Method, system, and computer program product in a logically partitioned data processing system for displaying messages in a management console's native language
CA2427185A1 (en) 2003-04-29 2004-10-29 Cognos Incorporated Automated database query generation
CA2427159A1 (en) 2003-04-29 2004-10-29 Cognos Incorporated Simplified metadata modelling for reporting
CA2427226A1 (en) 2003-04-29 2004-10-29 Cognos Incorporated Dynamic generation of dimensional metadata
CA2427182A1 (en) 2003-04-29 2004-10-29 Cognos Incorporated Security filters in metadata modelling for reporting
US7155443B2 (en) 2003-05-30 2006-12-26 Computer Associates Think, Inc. System and method for application text localization
US7478364B2 (en) * 2003-10-09 2009-01-13 International Business Machines Corporation Computer-implemented method, system and program product for determining a message quantity for program code
US7546320B2 (en) * 2003-10-09 2009-06-09 International Business Machines Corporation Computer implemented method, system and program product for reviewing a message associated with computer program code
US7464371B2 (en) * 2003-10-15 2008-12-09 International Business Machines Corporation Computer-implemented method, system and program product for analyzing messages associated with computer program code
US8086671B2 (en) * 2004-02-11 2011-12-27 Microsoft Corporation Systems and methods that facilitate in-order serial processing of related messages
US7500221B2 (en) 2004-04-08 2009-03-03 Sap Ag Filter-based comments in source code
EP1585026B1 (en) * 2004-04-08 2009-09-23 Sap Ag Filter-based comments in source code
US7099753B2 (en) * 2004-04-27 2006-08-29 The Boeing Company Automatic generation of telemetry flight software, accompanying specifications, and decode files
JP4508745B2 (ja) * 2004-06-29 2010-07-21 キヤノン株式会社 情報処理装置及び画像編集装置並びにそれらの制御方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
GB0421297D0 (en) * 2004-09-24 2004-10-27 Univ Abertay Dundee Computer games localisation
KR101389928B1 (ko) * 2007-01-30 2014-04-30 삼성전자주식회사 상호 배제 기능을 수행하기 위한 방법 및 이를 이용한drm 디바이스
US8201156B1 (en) * 2007-06-08 2012-06-12 Emc Corporation Automatic generation of message IDS
US9178981B2 (en) * 2010-12-22 2015-11-03 Lg Electronics Inc. Mobile terminal and method of sharing information therein

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59195724A (ja) * 1983-03-30 1984-11-06 インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン データ処理システム使用方法
JPS62251914A (ja) * 1986-04-25 1987-11-02 Canon Inc メツセ−ジ出力方式

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3161763A (en) * 1959-01-26 1964-12-15 Burroughs Corp Electronic digital computer with word field selection
US4748589A (en) * 1979-09-06 1988-05-31 Sharp Kabushiki Kaisha Electronic translator
US4365315A (en) * 1980-09-08 1982-12-21 Kearney & Trecker Corporation System for multilingual communication of computer-specified aural or visual control messages in an operator-designated language
EP0121071B1 (en) * 1983-03-30 1990-08-22 International Business Machines Corporation Concurrent multi-lingual use in data processing systems
US4731735A (en) * 1985-09-30 1988-03-15 International Business Machines Corporation Multilingual processing for screen image build and command decode in a word processor, with full command, message and help support
US4853875A (en) * 1988-01-19 1989-08-01 Eastman Kodak Company Image-capable interprocessor link communications protocol

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59195724A (ja) * 1983-03-30 1984-11-06 インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン データ処理システム使用方法
JPS62251914A (ja) * 1986-04-25 1987-11-02 Canon Inc メツセ−ジ出力方式

Also Published As

Publication number Publication date
EP0413486A3 (en) 1992-02-26
US5287444A (en) 1994-02-15
EP0413486A2 (en) 1991-02-20

Similar Documents

Publication Publication Date Title
US5287444A (en) Message processing system
US5680622A (en) System and methods for quickly detecting shareability of symbol and type information in header files
US9086931B2 (en) System for translating diverse programming languages
US9965259B2 (en) System for translating diverse programming languages
JP3041222B2 (ja) ソース・コード作成システム及び方法
US9182962B2 (en) Method for translating a cobol source program into readable and maintainable program code in an object oriented second programming language
US6901579B1 (en) Generation of source code from classes and maintaining the comment that indicates the role of the class in the generated source code
US20040199516A1 (en) Source information adapter and method for use in generating a computer memory-resident hierarchical structure for original source information
JPH08202545A (ja) ターゲット言語コードを生成するためのオブジェクト指向システム及びその方法
US20080007779A1 (en) Method and system for generating executable code for formatting and printing complex data structures
JPH10326255A (ja) 言語から独立したメッセージの操作方法
WO1996013784A2 (en) Method and apparatus for tree data structure manipulation and translating source code from one high-level computer language to another
Brandl Sphinx documentation
JPH1083289A (ja) プログラミング・エイド
JPH05224949A (ja) 高水準形態抽象構文を中間形態へ変換する方法及び装置
Syme et al. The F# 2.0 language specification
Hume Mk: a successor to make
Koskimies et al. The design of a language processor generator
JP7059757B2 (ja) Api処理方法、端末、api処理プログラム
JPH07182179A (ja) オブジェクト指向データベース管理装置
US20040046793A1 (en) Program generation method
EP0202007A2 (en) A generator of program generators
Syme et al. The F# 3.1 Language Specification
Zhou et al. Generating Bindings in MPICH
Libes et al. An Object-Oriented Tcl/Tk Binding for Interpreted Control of the NIST EXPRESS Toolkit in the NIST STEP Application Protocol Development Environment