Net Express または Mainframe Express で作成されたアプリケーションのほとんどは、Enterprise Developer でも変更なしで引き続き機能します。ただし、これらの開発システムの間には、Enterprise Developer へのアップグレード時に考慮すべきいくつかの相違点があります。
コンパイルおよびビルドの相違点
Enterprise Developer におけるアプリケーションのコンパイルおよびビルドには、異なる働き方をする側面がいくつかあります。場合によっては、プロジェクト プロパティを変更し、以前に使用したコンパイラの指令および設定をいくつか更新する必要があります。
- 出力ファイル フォーマット
- 各プロジェクトは、単一のファイル (.dll、.so、.exe) または同じファイル タイプの複数のファイル (ソース ファイルごとに 1 つの出力ファイル (.dll、.so、.exe、.int、.gnt)) へコンパイルされます。現在は、Windows 上の .int および .gnt ファイルの集合を含む .lbr ファイルに加えて、.dll をアプリケーション コンポーネントのコンテナーとして使用できます。
- コンパイラ指令
- ソース コードを Enterprise Developer にアップグレードすると、16 ビット システム専用に設計された一部のコンパイラ指令が適切ではなくなっているため、コンパイル時にエラーを生成します。この場合、コンパイルする前にコードおよび指令ファイルからそれらのコンパイラ指令を削除する必要があります。
- リンク
- Windows では 静的ランタイム システムおよびシングルスレッド ランタイム システムは不要になっており、Enterprise Developer には付属していません。現在、Enterprise Developer でビルドされたアプリケーションは、共有または動的ランタイム システムにリンクされるようになっています。
- 呼び出されるプログラムと依存性
- 実行時に、呼び出し先のプログラムは以前と同じ方法で検索されます。ただし、COBPATH を設定してファイルを共通フォルダーにコピーするための新しい方法もいくつかあります。
- ファイル ハンドラー
- ファイル ハンドラー .obj ファイルは、Enterprise Developerでは使用できません。Enterprise Developer では、代わりに mffh.dll ファイルでパッケージ化されたファイル ハンドラーを使用します。
- OpenESQL アシスタント
- Enterprise Developer では、OpenESQL アシスタントのデータ ソース名 (DSN) を ODBC、ADO.NET、または XDB DSN として構成する必要があります。
- SQL コンパイラ指令オプション
- Enterprise Developer にアップグレードする際に、一部の SQL アプリケーションではコンパイラ エラーを回避するために SQL コンパイラ指令オプションを追加する必要がある場合があります。
- XML PARSE 文
- Net Express では、XMLPARSE コンパイラ指令のデフォルト設定は COMPAT です。COMPAT を使用すると、XML PARSE 文は IBM Enterprise COBOL Version 3 の情報とイベントを返します。Enterprise Developer では、デフォルトは XMLPARSE(XMLSS) です。XMLPARSE(XMLSS) は、IBM Enterprise COBOL Version 4 の情報およびイベントを返します。
ランタイム システムの相違点
Enterprise Developer に付属しているランタイム システムと、Net Express および Mainframe Express に付属しているランタイム システムには、いくつかの相違点があります。ただし、Enterprise Developer で既存のアプリケーションをソース コードから再コンパイルすれば、これらの相違点は既存のアプリケーションには影響しません。
- OpenESQL
- Enterprise Developer は、最適なパフォーマンスを実現するために BEHAVIOR SQL コンパイラ指令オプションをデフォルトで MAINFRAME に設定します。Net Express で示されたデフォルト動作に戻るには、BEHAVIOR 指令を UNOPTIMIZED に設定します。
- シングルスレッド ランタイム システム
- シングルスレッド ランタイム システムは、Windows 上の Enterprise Developer では使用できません。代わりに、シングルスレッド アプリケーションおよびマルチスレッド アプリケーションは、どちらもマルチスレッド ランタイム システムを使用して実行されます。これは、既存のアプリケーションには影響しません。
- 静的リンク ランタイム システム
- 静的リンク ランタイム システムは、Enterprise Developer では使用できません。代わりに、ネイティブ コードを共有または動的ランタイム システムにリンクします。これは、既存のアプリケーションには影響しません。
- Enterprise Developer と旧 Micro Focus 製品の共存
- 同じマシンにインストールされた Enterprise Developer および Studio Enterprise Edition を正しく機能させるようにするには、追加の構成が必要です。
制約事項とサポートされていない機能
旧 Micro Focus 製品の一部の機能は Enterprise Developer では利用できません。ただし、これらの機能の多くには代替手法が用意されています。
- CBL2XML ユーティリティ
- CBL2XML ユーティリティは現在、コマンド ライン ツールとしてのみ使用できます。
- DBMS プリプロセッサ
- 旧 Micro Focus 製品では、Enterprise Developer ではサポートされていない DBMS プリプロセッサ バージョンがサポートされていました。現在サポートされている DBMS プリプロセッサのリストについては、Enterprise Developer のドキュメントの「ネイティブ COBOL でのデータベース アクセス サポート 」および「.NET COBOL でのデータベース アクセス サポート」のトピックを参照してください。
- Form Designer
- Form Designer は、CGI ベースのインターネットおよびイントラネット アプリケーションのユーザー インターフェイスを作成するための Net Express のツールです。Form Designer および HTML ページ ウィザードは、Enterprise Developer では使用できません。
- ホスト互換性オプション (Host Compatibility Option; HCO)
- Mainframe Express は、ホスト互換性オプション (HCO) 機能のユーザー インターフェイスを提供していました。このユーザー インターフェイスは、Enterprise Developer では利用できません。ただし、HCO Create Database、DDL Processor、DCLGEN、Export Data、および Import Data ツールは、バッチ コマンド ライン呼び出しによって利用できます。
- INTLEVEL のサポート
- INTLEVEL 指令は、Enterprise Developer のコンパイラでは拒否されます。
- NSAPI
- Enterprise Developer では、NSAPI はサポートされていません。
- オンライン ヘルプ システム
- Net Express は、文字ベースのアプリケーションからオンライン ヘルプを作成してそれを画面に表示するためのオンライン ヘルプ システムを備えていました。このオンライン ヘルプ システムは Enterprise Developer では利用できず、オンライン ヘルプ システム情報ファイル タイプ (.HNF) はサポートされていません。
- OpenESQL
- Net Express および Studio Enterprise Edition では、OpenESQL での Oracle OCI がサポートされています。Enterprise Developer では、OpenESQL での Oracle OCI はサポートされていません。
ランタイム技術の相違点
一部の技術は Enterprise Developer では動作が異なるため、既存のアプリケーションのアップグレード方法に影響する可能性があります。
- Dialog System
- Dialog System アプリケーションは、Enterprise Developer for Visual Studio でサポートされています。
- ファイル処理
- 独自のセキュリティ モジュールを Fileshare に組み込む方法が変更されています。また、Enterprise Developer と Net Express では FILEMAXSIZE 設定が異なります。
- テスト カバレッジ
- Enterprise Developer の IDE 内で使用できるネイティブ COBOL アプリケーションのコード カバレッジは、テスト カバレッジ機能を統合しています。
編集およびデバッグの相違点
Net Express および Mainframe Express の編集およびデバッグ機能の多くは Enterprise Developer でも利用できますが、それらの機能の中には名前が異なるものや動作が若干異なるものがあります。また、バックグランド解析などの新しい機能もいくつかあります。
- Interface Mapping Toolkit
- Interface Mapping Toolkit のワークフロー キャプチャは、Enterprise Developer ではサポートされていません。つまり、Interface Mapping Toolkit を使う際に、Enterprise Developer ではキャプチャされたワークフローに基づいてサービス インタフェースを作成できません。
- Mixed Language Debugging
- Net Express では、混合言語アプリケーションをデバッグできましたが、Enterprise Developer では、ネイティブ コードの混合言語デバッグはサポートされていません。
- プログラム ブレークポイント
- プログラム ブレークポイントは、指定したプログラムまたはそのプログラム内のエントリ ポイントが呼び出されるたびに実行を停止するブレークポイントです。これらは Enterprise Developer でサポートされていますが、デフォルトでは Net Express の動作とは異なります。
- リモート デバッグ
- プログラムのリモート デバッグに使用される Net Express animserv ユーティリティは、Enterprise Developer では cobdebugremote (64 ビットのプロセスをデバッグする場合は cobdebugremote64) に置き換えられています。
- ソース プール ビュー
- Net Express のソース プール ビューは、現在のビルド タイプでソース ファイルが使用されるかどうかに関係なく、プロジェクト ディレクトリ内のソース ファイルをすべて表示していました。このビューは、Enterprise Developer では利用できません。