Visual COBOL 5.0 の新機能

COBOL のフォーマット

上へ戻る

エディターで独自の設定や基準に応じて COBOL コードを再フォーマットできるようになりました。[Windows > Preferences > Micro Focus > COBOL > Editor > Formatter] (Eclipse) で設定できる構成オプションに基づいてインデントが設定されます。

COBOL のフォーマットの機能は、エディターのコンテキスト メニュー (Eclipse) から利用できます。

コード分析

上へ戻る

コードについての次のビューを作成できるようになりました。

  • Program Flow Graph - COBOL プログラムの全体の構造を節と段落を表すノードを使用して表示できます。ノード間にあるプログラム フローに影響する PERFORM 文は、ノードを結ぶリンクで表されます。[Program Flow Graph] ビューには他のプログラムの外部呼び出しも表示されますが、それらを展開することはできません。ノードにカーソルを合わせると、該当する節または段落を表すコードがツールチップに表示されます。ノードまたはノードを結ぶリンクをクリックすると、コード エディターでソースの該当する位置に移動し、プログラム内をすばやく簡単に移動することができます。
  • Data Flow Analysis Tree - データ項目を選択し、その値がどのような要因で変化するかや他のデータ項目にどのように影響するかを静的にトレースできます。

Enterprise Server とスケールアウト アーキテクチャ

上へ戻る

注: この機能は、早期採用者製品 (Early Adopter Product; EAP) リリース ステータスで提供されます。

このリリースでは、新しいパフォーマンス/可用性クラスター (PAC) を使用してクロスシステムのリージョンのグループを単一のシステム イメージとして管理および保守することが可能になり、Enterprise Server の可用性と保守性が向上しています。

異なる Enterprise Server インスタンスが連携できるようにするには、それらの間でデータを共有できる必要があります。これは、スケールアウト リポジトリ (SOR) を使用して実現されます。PAC に含まれるすべての ES インスタンスで、それらのインスタンス間の同期が簡単になるように、共通の SOR (PSOR) を使用して CICS リソース (このリリースでは PCT、PPT、FCT、DCT、および TST に限定) と内部システム データが格納されます。また、一時記憶域キューと一時データ キューについても、SOR に転送することで Enterprise Server インスタンス間で共有できます。この方法で PAC と SOR を使用する利点は次のとおりです。

  • ハードウェア コストの削減 - PAC を利用してスケールアップではなくスケールアウトを行うことで、プロセッサ リソースをより効率的に使用できます。
  • 保守が簡単 - システムの保守のために PAC にリージョンを動的に追加または削除できます。
  • 可用性の向上 - いずれかの Enterprise Server インスタンスに障害が発生した場合でも、少ない容量で PAC の運用を継続できます。Enterprise Server インスタンスを異なるマシンに配置すれば、可用性がさらに向上します。
  • 動的なスケーリング - Enterprise Server インスタンスをオンデマンドで PAC に追加したり PAC から削除したりできます。
  • パフォーマンスの向上 - 単一のマシンのリソースを使用することによるスループットの制限 (スケールアップの場合) がなくなります。
  • 保守性の向上 - PAC および関連するリージョンを最新の Web ベースの管理インターフェイス (ESCWA) で単一のイメージとして管理できます。

Enterprise Server Common Web Administration

上へ戻る

注: この機能は、早期採用者製品 (Early Adopter Product; EAP) リリース ステータスで提供されます。

Visual COBOL に新しい Enterprise Server Common Web Administration インターフェイス (ESCWA) が追加されました。ESCWA は、最新の Enterprise Server の管理、監視、制御に対応した Web ユーザー インターフェイスおよびサーバーです。ユーザービリティを向上させるために Enterprise Server のさまざまなユーザー インターフェイスが統合されており、ネイティブおよびマネージのリージョンやセキュリティ ストアを 1 か所で管理できます。次の機能があります。

  • 複数のホストにわたるディレクトリ サーバーの管理。
  • Enterprise Server インスタンスの監視と制御。
  • Microsoft Active Directory や OpenLDAP などの LDAP 互換セキュリティ マネージャーで定義されたセキュリティ ストアの構成と管理。
  • スケールアウト機能の管理 - Enterprise Server インスタンスの論理グループを指定し、パフォーマンス/可用性クラスター (PAC) とそれに関連するスケールアウト リポジトリ (SOR) を構成して実行できます。
  • Enterprise Server for .NET のリージョンとリスナーの管理、監視、制御。
  • セキュリティに重点を置いている最新の Web フレームワークの使用。

Application Workflow Manager

上へ戻る

次の各項目が強化されています。

  • AWM、Eclipse、および ISPF 機能パッケージのツールが再編成されて改良されました。
    • ツール パラメーターが指定されるようになり、パラメーターの場所に影響を受けることがなくなりました。
    • ユーザーが指定できるのは、ツールでサポートされるパラメーターのみです。
    • 現在サポートされているパラメーター タイプは「文字列」と「ファイル」だけです。
    • 「大量処理」はツール パラメーターの属性になり、特別な入出力パラメーター タイプではなくなりました。
    • パラメーター タイプ「ToolDefinedResourceOperation」がツール関係「Resource Operation Value」に置き換えられました。
  • 新しい REST 機能パッケージが追加されました。DELETE、HEAD、GET、PATCH、POST、および PUT の各機能がサポートされます。

    REST ペイロードをサポートするために、新しい JSON ファイル記述子が提供されています。この機能パッケージを使用して、RESTful API を AWM ワークフローと統合できます。「REST Function Package」を参照してください。

  • Eclipse 機能パッケージに、Eclipse のセキュア ストアに情報を保存したり情報を取得したりするための新しいツールが追加されました。
    • [Save To Secure Storage]、[Read From Secure Storage]、[Delete From Secure Storage] があります。

    これらのツールを使用して、ログイン資格情報をリモート システムに安全に保存し、以降のアクセスで情報を再利用できます。

  • AWM モデル エディターですべてのモデル コンポーネントにコメントを追加できる新しい属性が追加されました。「AWM モデル エディターのコメント」を参照してください。

COBOL 言語の機能拡張

上へ戻る

COBOL 構文の強化点は次のとおりです。

  • ISO2002 条件付きコンパイル - 条件付きコンパイルのメカニズムが追加され、ISO2002 条件付きコンパイル方式が使用可能になりました。これは、Enterprise COBOL 6.2 に対するサポートの一部として実装されています。

    次のコンパイラ指令文がサポートされています。

    >>DEFINE
    >>IF/>>ELSE/>>END-IF
    >>EVALUATE/>>WHEN/>>WHEN OTHER/>>END-EVALUATE
  • JSON PARSE 文を使用すると、JSON テキストを COBOL データ形式に変換できます。これは、Enterprise COBOL 6.2 に対するサポートの一部として実装されています。
  • INSPECT 文 - INSPECT...CONVERTING 文のパフォーマンスが改善されました。特に、source-alphabet が長い場合のパフォーマンスが向上しています。
  • SET の移植可能な構文として set[string] がサポートされるようになりました。

コンパイラ指令

上へ戻る

このリリースでは、次のコンパイラ指令が新たに追加されました。

JVMTARGET
このコンパイル単位で生成されたクラス ファイルの対象となる JVM のバージョン番号を指定します。
ILNORMALIZENAMES
プログラムを .NET または JVM COBOL にコンパイルするときに正規化されるプログラム要素を決定します。この正規化では、生成されたクラス ファイルの名前に含まれるすべての $ および - (ハイフン) 文字が _ (アンダースコア) 文字に置き換えられます。

統合化トレース機能 (CTF)

上へ戻る

このリリースの強化点は次のとおりです。

  • Eclipse インターフェースからの CTF の利用 - Eclipse の起動構成ダイアログ ボックスに追加された新しいプロパティ タブの [CTF] で、CTF トレースを有効にしたり、CTF 構成ファイルを指定したりできます。デフォルトでは、トレース ファイルはプロジェクトのフォルダーにある Logs サブフォルダーに保存されます。
  • 動的 CTF - トレースしているプロセスの外部から動的に CTF を構成できるようになりました。現在、この機能は Windows プラットフォームでのみ利用できます。

    新しいコマンド ライン ユーティリティ cblctd の使用 - CTF トレースがすでに有効になっている実行中のアプリケーションのトレース イベントを変更できます。トレース レベルを変更したり、トレース対象のコンポーネントを追加または削除したりできるほか、有効になっているエミッターの構成も可能です。

    さらに、Micro Focus ネイティブ データベース ファイル ハンドラーのアクティビティをトレースするために、mf.mfdbfh というコンポーネントを新たにトレースできるようになりました。

データファイル ツール

上へ戻る

このリリースの強化点は次のとおりです。

  • データファイル エディタに、2 つのデータ ファイルの内容を並べて比較できる [Compare Files] ツールが追加されました。
  • 構造ファイルとそれに含まれるレイアウトをデータファイル エディタで作成できるようになり、レイアウトを管理するためにクラシック データファイル ツール ユーティリティを使用する必要はなくなりました。
  • エンタープライズ サーバー リージョンに格納されている VSAM データセットへの接続で、現在のセッションの間はアクセスに必要なパスワードを格納できます。
  • アーカイブ スプール ファイルのマージ プロセスを使用して、1 つのスプール ファイルにマージされたアーカイブ JES スプール ジョブを表示できます。
  • [Duplicate Record] オプションを使用して、索引ファイル以外のファイルのレコードをすばやく複製できるようになりました。

デバッグ

上へ戻る

このリリースの強化点は次のとおりです。

  • アニメート - Eclipse で COBOL プログラムをデバッグする際のメニュー オプションに、速度の設定とアニメート モードの切り替えを行うオプションが追加されました。このオプションがアクティブな場合、ソース コードの各行が自動的にステップ実行され、エディターの [Debug Stack]、[Outline]、および [Variables] の各ビューでソース コードが更新されます。「デバッグのコマンドおよびオプション」を参照してください。
  • 条件付き監視ポイント - COBOL 監視ポイントの条件およびヒット カウントを指定できるようになりました。式の形式またはヒット カウント (データ項目に関連付けられたメモリが更新された回数) として条件を指定できます。監視対象のデータ項目に変更が見つかるたびに条件が評価されます。条件が真と評価されると、プログラムの実行が停止します。これにより、現在の監視ポイントのサポートをより細かく調整することができ、大規模で複雑なプログラムをデバッグするときに役立ちます。
  • 動的コア ダンプ - コア ダンプをプログラムで起動し、その間もプログラムの実行を継続できるようになりました。新しいライブラリ ルーチンの CBL_CREATE_CORE を使用すると、現在のプロセス、または現在のプロセスと同じユーザーが所有するプロセスのコア ファイルを作成できます。
  • PERFORM の可視性の改善 - 32 ビットの Intel アーキテクチャの Linux および Intel アーキテクチャの Solaris の多くで、PERFORM スタックおよび PERFORM 範囲の名前が gdb などのシステム デバッガーに認識されるようになりました。AIX、64 ビットの Solaris-Intel、および他のすべての Linux プラットフォーム (64 ビット Linux-Intel を含む) は、すでに対応しています。
  • ライブ記録 - ライブ記録ファイル作成時のパフォーマンスの向上に役立つ新しい環境変数 COB_LIVE_RECORD_SIZE が追加されました。この環境変数で、ライブ記録ファイルに書き込まれるイベントの保存に使用されるメモリ量 (MB 単位) を指定できます。制限に達すると、バッファーが循環されます。つまり、最新のイベント用に領域を確保するために、最も古いイベントが削除されます。
  • ランタイム エラー メッセージにソース行番号を含めることでプログラムの問題の診断が簡単になるように、コマンド ラインからビルドする場合に、NOANIM 指令が指定されていない限り、COBOL コンパイラによってデフォルトで .idy ファイルが生成されるようになりました。これらの .idy ファイルは、不要であればコンパイルの完了後に削除してかまいません。また、コードをデバッグする場合以外は、アプリケーションと一緒に配布する必要もありません。ただし、ANIM 指令を指定しないと、.dll.gnt などの生成された実行可能ファイルをデバッグすることはできません。これは、これまでの動作と同じです。
    注: IDE または IDE から生成されたビルド スクリプトを使用する場合の動作には変更はありません。
  • stackdump ファイル (Linux Intel 64 ビット、Solaris Intel 64 ビット、および Linux/390 プラットフォームのみ) - 本番環境のアプリケーションで実行時システム エラーが発生した場合に、それらのスタック トレースを生成できます。stackdump_on_error チューナーおよび stackdump_filename チューナーを使用して、エラーが発生したときに stackdump ファイルを生成するように構成します。このファイルから、プログラム内の失敗したコードの正確な行を見つけることができます。
  • 新しい構成可能なツールで、実行時システム エラーが発生した場合に、処理中のすべてのスレッドのスタック トレースをファイルにダンプできるようになりました。[Linux Intel、Solaris Intel、zLinux のみ – 32 ビット Linux Intel では ANIM が必要]。これはネイティブ COBOL でのみサポートされます。
  • 最適化されたビルドについて、行番号の情報が出力されるようになりました (Linux Intel 64 ビット、Solaris Intel 64 ビット、PowerLinux、zLinux、および Solaris SPARC プラットフォームのみ)。これはネイティブ COBOL でのみサポートされます。最適化の処理により、完全な情報とはなりませんが、それでも十分に役立つ情報が得られます。これには次の利点があります。
    • 最適化されたビルドに対して stackdump ユーティリティを使用できます (対応している場合)。
    • gdb などのシステム デバッガーでの実行時に信号が発生する位置情報が提供されます。
    • 最適化されたコードをシステム デバッガーで制限付きでステップ実行できます。

Eclipse 統合

上へ戻る

このリリースでは、次の各項目が強化されています。

  • サポートされる Eclipse のバージョン - このリリースでは、Eclipse 4.7 (Oxygen) および 4.8 (Photon) がサポートされます。セットアップ ファイルでは Eclipse 4.8 がインストールされます。

    Eclipse 4.6 (Neon) はサポートされなくなりました。

  • Java のサポート - Eclipse IDE を実行するには、64 ビットの Java 8 が必要です。セットアップ ファイルでは Adopt OpenJDK 8 (u202) with Hotspot がインストールされます。JVM COBOL コードの実行のため、およびネイティブ COBOL と Java の相互運用性のために、Java 8 (32 ビット版または 64 ビット版)、および Java 11 (64 ビット版のみ) がサポートされています。サポートされる Java のバージョンの詳細については、「ソフトウェア要件」を参照してください。
  • COBOL エディター:
    • END 文の自動挿入 - IF、EVALUATE、PERFORM、EXEC、および TRY の各文の終了句が自動的に挿入されるようになりました。
    • 終了記号の自動挿入 - デフォルトで、閉じ引用符や右かっこが必要な場合に自動的に追加されるようになりました。
    • 指定した列の範囲にあるテキストの検索 - [Micro Focus Find/Replace] ダイアログ ボックスに、コードの指定した列の範囲内で検索を行うオプションが追加されました。
  • 指令のセット - プロジェクトのコンパイラ指令が、プロジェクトのフォルダーの .settings サブフォルダー内に格納される言語固有の .mfdirset XMLファイルに保存されるようになりました。独自のバージョンの .mfdirset ファイルを作成し、Micro Focus から提供される XML スキーマと照合して検証できます。

    以前は、すべての設定が単一の独自の IDE プロジェクト ファイルに格納されていました。指令やその他の類似の設定を .cobolproj ファイルで現在指定している既存のプロジェクトは、Visual COBOL 5.0 にインポートまたはロードすると、新しい .mfdirset ファイルを使用するようにアップグレードされます。ソース コードをソース制御管理システムに格納している場合は、ソース制御管理にも .mfdirset ファイルを追加してください。

  • リモート接続 - Visual COBOL Development Hub ネットワーク トラフィックの自動 SSH トンネリングがサポートされます。ほとんどの Visual COBOL Development Hub ネットワーク トラフィックを SSH ポート転送を使用してルーティングできます。これにより、ファイアウォールを実行するリモート UNIX ホストでの開発が簡単になります。さらに、ネットワーク トラフィックが SSH トンネル内で送信されるため暗号化されます。
  • ユーザー インターフェイス:
    • COBOL エクスプローラー ビューで、ビルド パスに同じ名前の別のプログラムがすでにあるためにビルドされない COBOL プログラムが「P」というアイコンで示されるようになりました。
    • 設定の UI の改良 - COBOL およびランタイム構成設定のページで、プロパティ グリッドを使用して設定の定義も表示されるようになりました。

Enterprise Server セキュリティ

上へ戻る

このリリースの強化点は次のとおりです。

  • セキュリティ - 開発者や管理者が新しい COBOL サービス (Web サービスと EJB) をネットワーク経由でエンタープライズ サーバー インスタンスにインストールするときに、セキュリティ機能を使用できるようになりました。認証と承認について、いくつかのオプションを有効にすることができます。「ディプロイ リスナー」および「.mfdeploy ファイル」を参照してください。
  • コンテナー機能 - 新しいセキュリティ機能が追加され、Enterprise Server の一部のコンポーネントにおいて、特定の機密情報をコンテナーと呼ばれる記憶域の形式で保持できるようになりました。コンテナーには、構成可能なコンテナー プロバイダーを介してアクセスできます。デフォルトのコンテナー プロバイダーでは、データが暗号化された形式でディスクに格納されます。
  • OpenSSL 1.1.1 - OpenSSL セキュリティ プロバイダーが OpenSSL バージョン 1.1.1 に更新されました。

    これは OpenSSL の長期サポート版 (安定版) です。

    • 批准された TLS プロトコル バージョン 1.3 のサポートが追加されました。TLS 1.3 の利点は次のとおりです。
      • 初期接続のネゴシエーション シーケンスがはるかに短くなります。これにより、データ送信の開始前にリンクが確立されるまでの時間が短縮されます。
      • 最も安全な暗号とハッシュ方式のみが使用されます。
      • TLS 1.3 は古い TLS プロトコルよりも優先してネゴシエートされます。
    • TLS 1.3 の要件に合わせて、新しい暗号およびキー交換グループのサポートが追加されました。
    • 以前に構成されたエンドポイントに対するデフォルトのセキュリティ レベルは、セキュリティ レベル 0 からセキュリティ レベル 1 に変更されています。これにより、SSL3 や MD5 などの既知の脆弱な要素が誤って使用されることがなくなります。最近、Java、Chrome、Firefox、および安全な接続を提供する他のシステムにおいても、デフォルトのセキュリティ レベルが同じように変更されています。
  • Fileshare セキュリティ - Fileshare セキュア TCP/IP トランスポート プロバイダーで、証明書の共通名要素が Fileshare サービスの名前になっている X509 証明書の使用がサポートされるようになりました。

    以前のリリースでは、Fileshare サービスへの安全な接続を確立するために、Fileshare サービスが配置されたネットワークの場所を表す証明書が使用されていました。この方法も引き続きサポートされますが、この方法では単一のホスト システムに複数のサービスが存在する場合に接続している正確な Fileshare サーバーが区別されません。今回の変更により、個々の Fileshare サービスを一意の証明書を使用して識別できるようになります。同じホストで実行されていて、同じネットワーク エンドポイントで登録されている場合についてです。

  • Active Directory のユーザー グループとグループ名マッピングのサポート - Enterprise Server の外部セキュリティ機能の MLDAP ESM モジュールで、Enterprise Server ユーザー グループに Active Directory ユーザー グループ オブジェクトを使用できるようになりました。また、長いグループ名をメインフレーム エミュレーションに必要な最大 8 文字の名前にマッピングできるようになりました。
  • 選択的な監査 - 管理者が特定の対象のみを選択してセキュリティ アクティビティを監査することで、監査のオーバーヘッドとイベントの量を減らすことができます。Enterprise Server の外部セキュリティ機能の MLDAP ESM モジュールで、特定のユーザー、グループ、およびリソースのみを対象として ESF 監査イベントを有効にできるようになりました。
  • LDAP クライアント ライブラリとの連携の強化 - LDAP クライアント ライブラリとの相互運用が改善されたことで、LDAP 関連の問題が少なくなり、診断も簡単になりました。Enterprise Server の外部セキュリティ機能の MLDAP ESM モジュールが次のように改良されています。
    • クライアント ライブラリのロード後に、ベンダーとバージョンの情報がログに記録されるようになりました。
    • OS ベンダーから提供された正しいライブラリをロードできるようにモジュールのヒューリスティックが改良され、「provider」構成オプションを通常は省略できるようになりました。
    • OpenLDAP について、モジュールで独自の「connect timeout」オプションが設定されるようになりました。

Micro Focus Unit Testing Framework

上へ戻る

このリリースでは、次の機能がサポートされています。

  • データ駆動型単体テスト - ソースから読み取られた値が同じテストを通過するデータのテストに適した新しいタイプのテスト。
  • テスト出力の色付け - テスト出力に、サポートされている端末エミュレーション用の基本的な色分けを含めることができるようになりました。この機能はコマンド ラインから実行する必要があります。

製品ドキュメント

上へ戻る

このリリースの新機能は次のとおりです。

  • COBOL と他のマネージ言語の比較」のドキュメントが更新され、.NET および JVM COBOL のサポートについての最新の機能拡張の内容が反映されました。