サービス・フロー・プロジェクトから生成された Web サービスは、直接的にも間接的にも、それ自体を呼び出すことはできません。一般的には、サービス・フロー・プロジェクト・ツールを使用すると、フローの再帰呼び出し、つまり直接的にまたは中間呼び出しを利用してそれ自体を呼び出すフローを作成することはできません。
この状態において: フロー・エディターは、再帰の作成時に再帰を検出せず、エラー・メッセージを表示しません。CICS サービス・フロー・ランタイムのランタイム・コードを正常に生成でき、Web サービス (WS01) をデプロイできます。Web サービス (WS01) の実行時に、2 番目の Web サービス (WS02) の呼び出しが成功します。ただし、再帰呼び出し (WS02 から元の WS01 に対する呼び出し) は失敗します。
問題: 画面メッセージ・ファイルを誤って削除して、画面の再インポートまたは再キャプチャーによってその置き換えを試みた場合、それらのファイルのメッセージに対する参照が壊れたままの可能性がある。これは、画面メッセージごとに、固有 ID が生成されて、その固有 ID を使用してその他のファイルの画面メッセージを識別するためです。
予備手段: プロジェクトのバックアップを頻繁に行います。画面メッセージ・ファイルを誤って削除したときに、フローの再モデル化を望まない場合は、画面の再インポートまたは再キャプチャーではなく、バックアップ・バージョンのファイルをインポートすることによって画面メッセージを元に戻します。
問題: 使用タイプが POINTER のフィールドを含む、COBOL または PL/I ソース・コードのデータ構造をインポートすると、対応するフィールドがタイプ hexBinary でメッセージが作成される。 このため、「ランタイム・コードの生成」ウィザードが失敗します。
予備手段: メッセージ・エディターでメッセージを編集します。エディターの「拡張」タブで、フィールドのタイプを HexBinary から int へ変更します。このように変更すると、生成が正常に完了できるようになります。
問題: フロー・エディターでは、フローの実行パスがそれ自体に (フローの実行パスの最初の方のポイントで) つながる接続を追加できない。この状態では、ランタイム・コードの生成時にエラーが発生しない可能性があります。ただし、ランタイム処理中にエラーが発生する可能性が非常に高くなります。
予備手段: 特定の条件が真である限りフローの一部を複数回繰り返す必要がある場合は、While ノード (エンタープライズ・サービス・ツールのドキュメンテーションのトピック『ループの作成』を参照) を使用します。
問題: あるフローを作り、1 つのメッセージのフィールドの名前が別のメッセージの名前と同じ場合、生成された COBOL コードは、名前の競合が原因で、IGYPS0037 エラーを発して、コンパイルできない。 例えば、そのフローが (1)「Y」というフィールドを伴う「X」というメッセージと (2)「Y」というメッセージ を参照している場合、生成されたコードが項目「Y」を参照すると、COBOL コンパイラーは、その参照先がメッセージ「Y」であるか、フィールド「X の Y」であるか分かりません。
予備手段: 名前の競合を解決するために、メッセージまたはフィールドのいずれかをリファクタリングしてください。EST Project Explorer において、重複名を持つ項目の 1 つを選択します。コンテキスト・メニューを開き、「名前変更 (Rename)」を選択してください。
問題: COBOL コピーブック・ファイルをインポートしようとする場合、ファイル・パスまたはファイル名に英語以外の文字が含まれていると、インポートが失敗する。
予備手段: COBOL コピーブック・ファイルの名前を、英語のみの文字を含むように変更してください。 パスに英語のみの文字が含まれるディレクトリーにファイルを配置してください。
問題: PL/I インクルード・ファイルをインポートしようとした場合、ファイル・パスまたはファイル名に英語以外の文字が含まれていると、インポートが失敗する。
予備手段: PL/I インクルード・ファイルの名前を、英語のみの文字を含むように変更してください。 パスに英語のみの文字が含まれるディレクトリーにファイルを配置してください。