第4章

5250アクションの実行

 
Top of page

アクションについて

「アクション」は、プログラミングステートメントに類似しており、パラメータの形式で入力を受け付け、特定のタスクを実行します。『Composerユーザガイド』のアクションに関する章を参照してください。

5250コンポーネントエディタ内では、XMLドキュメントを処理したり、非XMLデータソースと通信したりするための一連の命令が、「アクションモデル」の一部として作成されます。アクションモデルは、AS/400とXMLドキュメント間でのすべてのデータマッピング、データ変換、データ転送、およびコンポーネントとサービス内でのデータ転送を実行します。

アクションモデルは、アクションのリストから構成されています。アクションモデル内のすべてのアクションは連携して機能します。たとえば、請求書のデータをディスクから読み取り、データをAS/400の在庫データベースから取得し、一時XMLドキュメントに結果をマップして変換し、変換されたデータを出力XMLドキュメントにマップするアクションモデルを構築できます。

このようなアクションモデルは、複数のアクションから構成されています。たとえば、次のようなアクションが含まれます。

 
Top of page

5250固有のアクションについて

5250 Connectには、exteNd Composer製品には含まれていない5250固有のアクションがあります。

表4-3

5250アクション

説明

画面のマップ

特定のトランザクション画面に関連したアクションを配置する、アクションモデル内の場所を示します。

複数行

このアクションでは、DOMと5250画面の間で、複数対複数のデータ関係のマップを指定することができます。

アテンションキーの送信

このアクションは、AIDキーを押すと、自動的に作成されます。このアクションを編集して、ホストに返信するキーを変更できます。

画面のマップ

画面のマップアクションは、特定のトランザクション画面が表示されるアクションモデル内の場所を示すだけでなく、エラーのチェックにも使用されます。画面が最初に記録されると、Composerにより、画面のフィールド数が保存されます。この数は後で、記録されたアクションが適切な情報を返すかどうかを確認するためのエラーチェックの実行中に比較されます。画面のマップアクションは、アクションモデル内で次のように表示されます。

複数行

複数行アクションは、XMLドキュメントのデータを5250画面に入力したり、5250画面のデータをXMLドキュメントに出力したりするために使用できます。基本的にこのアクションでは、あるドキュメントまたは画面から別のドキュメントまたは画面に複数のデータ行を自動的にマップする繰り返しループがアクションモデル内に作成されます。複数行アクションの詳細については、101ページの「5250複数行ウィザードについて」で説明しています。

アテンション キーの送信

ネイティブ環境ペインのツールバーに表示されるAIDキー 、またはそれに対応するキーボードキー、あるいはキー(26 ページの「5250キーボードサポートについて」 を参照)を選択するたびに、アクションモデル内でにアテンションキーの送信アクションがマップされます。

アクションモデルでアテンションキーの送信アクションをダブルクリックすると、キーを編集できるダイアログボックスが表示されます。ドロップダウンリストボックスから、値キーを選択します。カーソル位置を上書きするためのチェックボックスをオンにします。必要に応じて行とカラムを編集するか、式ビルダのアイコンをクリックして、計算を追加します。

3270AttentionDialog

 
Top of section

5250固有の式ビルダ拡張

TN5250 接続リソースには、[アクション式ビルダ]ダイアログボックスからアクセスできる、 ユーザIDおよび パスワードという2つの項目があります。これらは、接続が確立されたときにComposer画面に最初に表示される、[ユーザID]と[パスワード]というフィールドで使用されます。これらの変数を画面にマップすると、画面にマップアクションを配置するためにユーザIDとパスワードを入力する必要がなくなります。

たとえば、ソースの式を$5250/LOGIN/PASSWORD、ターゲットXpathを$SCREENDOC/FIELD(5)と指定したマップアクションを作成できます。

3270ExprBldr

 
Top of page

5250セッションの記録

5250コンポーネントは、すべてのUIコンポーネントと同様、アクションモデルの主な部分が自動的に作成されるという点で、他のコンポーネントとは異なります。アクションモデルの自動作成は、ネイティブ環境ペインにおいてホストで有効なセッションと通信している間、Composerでその操作内容が一連のアクションとしてアクションモデルに記録することによって行われます。他のコンポーネントでは、マップ、変換、およびタスクの転送を実行するためのアクションを手動でアクションモデルに作成する必要があります。 5250コンポーネントを作成する場合、基本的には、コンポーネントを作成するのに必要なキー入力と画面ナビゲーションを指定することによって、アクションモデルペインでアクションとして入力するAS/400への要求と応答、およびAS/400からの要求と応答を記録します。たとえば、5250のネイティブ環境ペインで[入力]ボタンを選択すると、次の図に示されているように、アクションモデルにアクションが記録されます。また、他のコンポーネントと同様に、アクションモデルにアクションを追加することもできます。

3270AttentionKeyEnter

注記:   5250コンポーネントを正しく作成するためには、5250のコマンドおよびXML統合プロジェクトで使用するアプリケーションを理解しておく必要があります。

Procedure 5250セッションを記録する

  1. 21 ページの「5250コンポーネントを作成する前に」 の指示に従って、5250コンポーネントを作成します。新しく作成した5250コンポーネントは、5250コンポーネントエディタウィンドウに表示されます。

    注記:   5250コンポーネントエディタには、XMLマップコンポーネントエディタのツールバーに表示されるボタンの他に、[記録]ボタンと[接続/接続解除]ボタンがあります(図を参照)。

  2. [記録]ボタンをクリックします。ネイティブ環境ペインに入力画面が表示され、アクションモデルペインに「画面のマップ」アクションが記録されます。

  3. [ユーザID]、[パスワード]、およびその他必要な情報を入力します。この例では、[ユーザID ]、[パスワード]、[プログラム/プロシージャ]、[現在のライブラリ]に入力する必要があります。

  4. キーボードの<Enter>キーを押すか、ツールバーが表示されている場合(表示するには[表示]、[キーパッドツールバー]の順にクリック)、[Enter]ボタンをクリックします。この例では、5250ペイン[ENTER PART]画面が表示されます。

    5250Record03

  5. 入力DOMから、5250の[ENTER PART]画面の[SKU]フィールドにSKUデータをドラッグします。このアクションは、アクションモデルペインに記録されてステータスバーに表示されます。

    注記:   マップアクションを使用して入力DOMのSKUを[ENTER PART]画面の[SKU]フィールドにマップすることもできますが、ドラッグアンドドロップの方がよりスピーディで簡単です。マップアクションの詳細については、『exteNd Composerユーザガイド』を参照してください。

  6. 5250のペインで[Enter]ボタンをクリックします。 5250の[ENTER PART]画面には、SKUに関連付けられたデータが表示されます。

    5250Record3270Pane03

  7. [ENTER PART]画面から出力DOMにSKU番号などの要素をドラッグアンドドロップします。ドラッグアンドドロップしたデータは出力DOMに赤で表示されます。

  8. [ENTER PART]画面から出力パートの目的のフィールドに必要なデータ要素をすべてドラッグアンドドロップするまで、操作を繰り返します。[ENTER PART]画面から出力パートに要素をドラッグするたびに、アクションモデルペインにアクションが記録されます。

  9. [保存]ボタンをクリックします。

 
Top of section

以前に記録したアクションモデルの編集

以前に記録したアクションモデルを編集する必要が生じる場合があります。他のコンポーネントを編集する場合とは異なり、5250コンポーネントの編集には、特別な注意が必要です。5250コンポーネントを実行すると、コンポーネントが正常に動作するように、特定の画面とデータを表示する一連のアクションが順に再生されます。そのため、コンポーネントを編集する際には、アクションモデルのシーケンスが以前に記録したホストトランザクションの実行シーケンスと矛盾しないように注意する必要があります。

一般的に、正しく編集を行うために次のことをお勧めします。

 
Top of section

既存のアクションの変更

次の手順では、以前に記録したセッションで既存のアクションを変更する方法を説明します。

Procedure 以前に記録したアクションモデルで既存のアクションを変更する

  1. 編集する対象となる、以前に記録されたアクションモデルを含むコンポーネントを開きます。5250コンポーネントエディタウィンドウにコンポーネントが表示されます。

    5250EditRecordedSession

  2. アクションモデルで、編集するアクションに移動して選択します。

    5250EditRecordedSession01

  3. [ブレークポイントの切り替え]ボタンをクリックします。選択したアクションが赤色になります。

  4. [アニメーションの開始]ボタンをクリックします。アニメーションツールが有効になります。

  5. [ブレークポイント/終了までのステップ]ボタンをクリックします。アクションモデルは、最初から手順3で設定したブレーポイントまでのすべてのアクションを実行します(次の図を参照)。

  6. アニメーションツールバーで、[一時停止]ボタンをクリックします。

  7. コンポーネントエディタのツールバーで、[記録]ボタンをクリックします。

  8. アクションモデルに追加するアクションを実行します。

  9. [ファイル]、[保存]の順に選択するか、コンポーネントエディタのツールバーで[保存]ボタンをクリックします。

  10. 51 ページの「アニメーションツールの使用」 の指示に従って、コンポーネントをテストします。

アテンションキーの編集

セッションの記録中に、キーボードで<Enter>キーを押すか、5250ネイティブ環境ペインのアテンションキーの1つをクリックすると、アクションモデルにアクションが記録されます。例は次のとおりです。

3270AttentionKeyEnter

これらのアクションは、他のアクションと同様に、削除、移動、またはコピーすることができますが、メニュー操作などを伴うため、コンポーネントの実行に影響を及ぼすことに注意してください。または、アテンションキーアクションをダブルクリックして、ダイアログボックスから編集することもできます。

3270AttentionDialog

 
Top of section

新しいアクションの追加

次の手順では、以前に記録したセッションで新しいアクションを追加する方法を説明します。

Procedure 以前記録したアクションモデルにアクションを追加する

  1. アクションを追加する、記録済みのアクションモデルを含むコンポーネントを開きます。5250コンポーネントエディタウィンドウにコンポーネントが表示されます。

    5250EditRecordedSession

  2. アクションモデルで、追加するアクションに移動してハイライトします。

    5250EditRecordedSession01

  3. [ブレークポイントの切り替え]ボタンをクリックします。選択したアクションが赤色になります。

  4. [アニメーションの開始]ボタンをクリックします。アニメーションツールが有効になります。

  5. [ブレークポイント/終了までの実行]ボタンをクリックします。アクションモデルは、最初から手順3で設定したブレーポイントまでのすべてのアクションを実行します(次の図を参照)。

  6. アニメーションツールバーで、[一時停止]ボタンをクリックします。

  7. コンポーネントエディタのツールバーで、[記録]ボタンをクリックします。

  8. Composerのドラッグアンドドロップ機能を使用して、画面と動作する新しいマップアクションを追加します。選択した行のすぐ下に新しいアクションが追加されます。

  9. [ファイル]、[保存]の順に選択するか、コンポーネントエディタのツールバーで[保存]ボタンをクリックします。

  10. 51 ページの「アニメーションツールの使用」 の指示に従って、コンポーネントをテストします。

 
Top of section

エイリアスアクションの追加について

エイリアスを使用するループにマップアクションを追加する場合、次の操作を実行します。

Procedure 以前記録したアクションモデルにエイリアスアクションを追加する

  1. コンポーネントを開きます。

  2. [アクション]メニューから、[新規アクション]、[マップ]の順に選択します。[マップ]ダイアログボックスが表示されます。

    map

  3. [ソース]で[Xpath]を選択し、ドロップダウンリストから[Order_Lines]を選択します。

  4. 情報を入力するか、[式ビルダ]ボタンをクリックして新しい式を作成します。

  5. エイリアスによって表示するXPathを作成します。ドロップダウンリストからエイリアスをクリックします。

  6. [OK]をクリックします。

  7. 選択した行の下に新しいアクションが挿入されます(次の図では、挿入された新しい行がハイライト表示されています)。

    resultsmap

 
Top of section

アクションの削除

次の手順では、以前に記録したセッションでアクションを削除する方法を説明します。

Procedure 以前記録したアクションモデルでアクションを削除する

  1. 削除するアクションの行を選択します。

  2. マウスを右クリックして[削除]を選択します。行をハイライトして、キーボードの<Delete>キーを押すこともできます。

    delete

 
Top of page

5250コンポーネントの実行

Composerには、コンポーネントをテストできるアニメーションツールが含まれています。5250コンポーネントエディタのツールバーには、[実行]ボタンがあり、このボタンを使用するとアクションモデル全体を実行して、コンポーネントが意図したとおりに動作するか検証できます。

Procedure 5250コンポーネントを実行する

  1. 5250コンポーネントを開きます。5250コンポーネントエディタウィンドウが表示されます。

  2. [実行]ボタンを選択します。アクションモデルのアクションが実行され、アクションの完了時にメッセージが表示されます。

    3270ExecutionComplete

  3. [OK]をクリックします。

  4. [表示]メニューから、[XMLドキュメントの展開]を選択します。これにより、XMLドキュメントのペアレント、チャイルド、データ要素などがすべて展開され、実行されたコンポーネントの結果を確認できます。XMLドキュメントを展開しないと、指定したデータが5250環境から出力DOMに移動されていることを確認できません。

 
Top of page

アニメーションツールの使用

アクションモデルには、1つまたは複数のブレークポイントを設定することにより、アクションモデルの特定のセクションをテストできるアニメーションツールがあります。これらのツールを使用すると、適切に動作するアクションをすべて実行して、問題の生じたアクションで停止してから、問題のアクションを1つずつトラブルシューティングすることができます。

注記:   アニメーションツール機能の簡単な例は、次のとおりです。すべてのアニメーションツールおよびその機能の詳細については、『exteNd Composerユーザガイド』を参照してください。

Procedure アニメーションを実行する

  1. 5250コンポーネントを開きます。5250コンポーネントエディタウィンドウにコンポーネントが表示されます。

    注記:   アニメーションモードと記録モードは、コンポーネントでは互いに排他的なモードです。アニメーション中に記録を行うには、アニメーションを一時停止または停止してから、記録モードをオンにする必要があります。

  2. アクションモデルのツールバーで[アニメーションの開始]ボタンをクリックするか、キーボードの<F5>キーを押します。ツールバーのすべてのツールが有効になります。

  3. [ステップイン]ボタンをクリックします。最初のマップアクションが選択されます。

    5250AnimationMapScreen

  4. [ステップイン]ボタンをもう一度クリックします。ネイティブ環境ペインの入力フィールドに「PART」というコマンドを入力するという指示がハイライト表示されます。

    3270AnimationMapPart

  5. [ステップイン]ボタンをもう一度クリックします。ネイティブ環境ペインの入力行に「PART」という語が表示されます。

    5250AnimationPART

  6. [ステップイン]ボタンをもう一度クリックします。ネイティブ環境ペインに[ENTER PART]画面が表示されます。

    5250AnimationENTERPART

  7. [ステップイン]ボタンをもう一度クリックします。アクションモデルで、SKUを入力DOMから[ENTER PART]画面の[SKU]フィールドにドラッグアンドドロップするという指示がハイライト表示されます。

    3270AnimationDRAG

  8. [ステップイン]ボタンをもう一度クリックします。入力DOMのSKUデータが[ENTER PART]画面の[SKU]フィールドに表示されます。

    5250AnimationDROP

  9. [ステップイン]ボタンをもう一度クリックします。[ENTER PART]画面に、SKU番号に関連付けられたデータが表示されます。

    5250AnimationENTER

  10. [ステップイン]ボタンをもう一度クリックします。アクションモデルで、SKUデータを[ENTER PART]画面から出力DOMにドラッグするという指示がハイライト表示されます。

    3270AnimationSKUtoOutput

  11. [ステップイン]ボタンをもう一度クリックします。[ENTER PART]画面のSKUデータが出力DOMの[SKU]フィールドに表示されます。

    3270utputDOM01

  12. [ENTER PART]画面のフィールドにあるすべてのデータ要素が出力DOMに表示されるまで、[ステップイン]ボタンをクリックします(次の図を参照)。

    3270AnimationOutputDOM

  13. 完了すると、次のメッセージが表示されます。

    3270AnimationCompleted

 
Top of page

接続付きコンポーネントアクション

接続付きコンポーネントアクションは、5250コンポーネントから別のコンポーネントを呼び出して同じ接続を共有できるという独特な特徴を備えています。 このアクションを使用すると、大きなコンポーネントを5250のメインコンポーネントと複数のサブコンポーネントに分割できるため、アクションモデルの管理が容易になります。メインコンポーネントがサブコンポーネントと接続を共有することによって、ランタイム時における接続のオーバーヘッドやトランザクションのナビゲーションが大幅に減少します。作業を開始する前に、必要なサブコンポーネント数を決定し、記録開始時に使用する(アクションが記録されていない)シェルを作成して保存してください。

Procedure 接続付きコンポーネントアクションを使用する

  1. サブコンポーネントを呼び出す準備ができるところまで、メインコンポーネントの基本的な構造を作成して記録します。この例では、メインコンポーネントは「5250 Caller」です。

    Caller1

  2. メインメニューから、またはマウスの右ボタンをクリックして、[新規アクション]>[接続付きコンポーネント]を選択します。次のダイアログボックスが表示されます。

    componentwithconnectdialog

  3. [コンポーネントタイプ]プルダウンリストから、コンポーネントタイプの名前を選択します。[コンポーネント名]プルダウンリストから、コンポーネントの名前を選択します。

  4. 変更する必要がある場合、渡されるIDをプルダウンリストから選択します。変更する必要がある場合、返されるIDをプルダウンリストから選択します。[OK]をクリックします。

  5. 次のアクションがマップペインに表示されます。

    caller2

  6. マップコンポーネントをアニメーション表示し、接続付きコンポーネントアクションをステップインすると、サブコンポーネントが開きます。画面の表示が「5250Called」というコンポーネントに変更されることを確認します。

    called1

  7. アニメーションツールバーで[一時停止]ボタンをクリックし、[記録]ボタンを有効にします。

  8. [記録]ボタンをクリックし、サブコンポーネントのアクションを記録します。 Callerend

  9. 記録処理を停止する前に、コンポーネントを保存します。

  10. 5250 Calledのウィンドウが5250 Callerのウィンドウに戻ります。CallerEnd2

 
Top of page

ネイティブ環境ペインでのスタイルシートの使用

5250コンポーネントエディタのスタイルシートの機能では、ネイティブ環境ペインの表示方法に関するオプションを選択できます。

Procedure ネイティブ環境ペインにスタイルシートを適用する

  1. 5250コンポーネントエディタウィンドウの[コンポーネント]メニューから、[スタイルシート]を選択します。[スタイルシートエディタ]ウィンドウが表示されます。

    3270StyleSheetEditor

  2. [スタイルシート]ドロップダウンリストからスタイルシートを選択します。スタイルシートエディタの使用の詳細については、17ページの「スタイルシートリソースの作成」を参照してください。

  3. [OK]をクリックします。

 
Top of page

5250コンポーネントエディタでの他のアクションの使用

画面のマップアクションおよび複数行アクションに加えて、Composerにあるすべての基本的なアクションおよび高度なアクションも使用できます。基本的なComposerアクションの完全なリストは、『Composerユーザガイド』の第7章にあります。第8章には、より高度なアクションのリストがあります。

 
Top of page

エラーおよびメッセージの処理

この節では、アニメーションツールの実行時に発生する可能性がある一般的なエラーについて説明します。

画面フィールド数の変更

このエラーは、特定のトランザクションのアニメーション表示または実行で発生します。このエラーを招く原因の1つに、ユーザからの応答(AIDキーを押すなど)を「必要としない」端末に画面を送信した後、応答を「必要とする」画面を送信する場合があります。たとえば、「お待ちください」などのメッセージ画面を表示した後で、ユーザが実際に使用するトランザクション画面を表示するよう設計されたトランザクションがあります。トランザクションによって画面の表示が制御されているため、ユーザはメッセージ画面に応答できません。このようなトランザクションの動作は、アニメーション表示中に問題を引き起こします。アクションからアクションへ移行する際、Composerの画面のマップアクションにより、各画面のフィールド数が数えられ、コンポーネントに記録した元のフィールド数と比較されます。対応する画面のマップアクションに移行する前に、トランザクションでは2番目の画面を送信できるため、フィールド数の同期が取れなくなります。

このエラーを修正するには、フィールド数が変更された理由を特定し、次のいずれかの方法を使用します。

[ナビゲーションオプション]ダイアログボックスで 指定できる内容は、次のとおりです。

フィールド数の同期が取れなくなる場合、別の原因も考えられます。たとえば次のとおりです。




Copyright © 2004 Novell, Inc. All rights reserved. Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved.  more ...