Visual COBOL 9.0 の新機能

Micro Focus™ Learn COBOL 拡張機能および Micro Focus™ COBOL 基礎コース

上へ戻る

Micro Focus では、動画ベースの COBOL トレーニング コースとして Micro Focus™ COBOL 基礎コースを新たにリリースしました。このコースでは、COBOL 言語の基礎を解説し、COBOL 構文および Micro Focus COBOL ツールの使用方法を紹介します。

このコースは、C、Java、または .NET の知識を踏まえて COBOL を学習したい開発者に最適です。標準的なプログラミングの概念の実務経験があれば、どの言語でも構いません。

Microsoft の Visual Studio Code 用の新しい Learn COBOL 拡張機能を利用できます。この拡張機能には、COBOL トレーニング コースのトレーニング資料が用意されます。COBOL コースおよび Micro Focus Learn COBOL 拡張機能の詳細については、www.cobol.com を参照してください。

注:この拡張機能は、Visual COBOL インストーラーには含まれません。

Visual Studio Code 用の Micro Focus COBOL 拡張

上へ戻る

Micro Focus Enterprise 拡張を Visual COBOL 9.0 で使用する場合に、以下の機能が利用できます。

  • JVM COBOL デバッグ
  • COBOL コードのテキストおよび実行可能ブロックを同じファイル内に含められる COBOL ノートブック
  • COBOL 指令ファイル (cobol.dir) の色付け
  • 現在の COBOL プログラムで、エディターの右上隅に新しいボタン ([Debug COBOL Program] または [Run COBOL Program]) が表示されるようになりました。
  • カスタム タブ ストップの構成設定
  • TERMINAL ペイン内での Micro Focus COBOL 端末
  • コピーブックが複数のプログラムで参照されている場合に、コピーブックの COBOL メイン ファイル コンテキストを指定できるようになりました。
注:この拡張機能は、Visual COBOL インストーラーには含まれません。

.NET サポート

上へ戻る

このリリースでは、.NET サポートが次のように強化されています。

  • このリリースでは、特定の Micro Focus 機能のアセンブリを含む複数の NuGet パッケージがインストールされます。新しい .NET プロジェクト、および 9.0 で編集またはビルドした既存のプロジェクトは、プロジェクトの基本機能を含むコア パッケージ MicroFocus.COBOL.Runtime.Core にリンクされます。追加パッケージ (特定のファイル ハンドラー、COBOL Accept/Display など) をプロジェクトに手動で追加する必要があります。新しいパッケージにより、ディストリビューションの粒度が向上し、アプリケーションにパッケージ化される内容をより柔軟に制御できるようになります。
  • 新しい SDK バージョン - Micro Focus SDK がバージョン 2.1 に変更されました。既存のプロジェクトをアップグレードする方法の詳細については、「既存の .NET COBOL プロジェクト ファイルのアップグレード」を参照してください。

COBOL 言語

上へ戻る

今回のリリースでは、COBOL 言語に次の新機能および拡張機能が提供されます。

  • 二重コロン (::) 修飾を、データ名の修飾子として、またポインターを逆参照する際に使用できるようになりました。
  • PERFORM フレームのローカル変数 - DECLARE された変数のスコープが適切に設定されるようになりました。再帰的に、または終了後に SECTION を再入力すると、そのような変数の新しいインスタンスが生成されます。これにより、データの局所性が向上し、より適切に構造化されたコードの記述に役立ちます。
  • パラメーター化セクション - プログラム セクションで引数を受け取り、値を返すことができる構文。
    • SECTION の PERFORM では、その SECTION に引数を渡せるようになりました。
    • SECTION を PERFORM したコードに結果を返せます。
    • 値を返すセクションは、識別子が必要なコンテキストで関数として使用できます。
  • コンパイラはコンパイル時にプラットフォームを識別できます。コンパイル時定数__unix__windows__dotnet__jvm、および__native が導入されました。これらを $if 文でテストし、使用中のプラットフォームに合わせてコードを調整できます。
  • CBL_STRING_CONVERT ライブラリ ルーチンの強化 - CBL_STRING_CONVERT を使用して、文字列を Base64 との間で変換できるようになりました。

次の機能強化により、IBM Enterprise COBOL バージョン 6.4 のサポートがさらに追加されます。

  • ユーザー定義関数 - ユーザー定義関数は、バージョン 6.4 との互換性のために Enterprise COBOL 方言で使用できるようになりました。製品ヘルプの「リファレンス」>「COBOL 言語リファレンス」>「第 3 部:追加トピック」>「追加の方言サポート」>「Enterprise COBOL 構文サポート」>「ENTCOBOL 方言でのユーザー定義関数」を参照してください。新しいコンパイラ指令 MANAGED-FNC-PARAM-BY を使用すると、数値関数パラメーターの管理動作をデフォルトで BY VALUE にするか BY REFERENCE にするかを指定できます。
  • Java と COBOL 間の相互運用メカニズムの強化 - COBOL と Java の相互運用が強化され、Java を使用した COBOL アプリケーションの機能が拡張されました。これにより、オブジェクト指向 (OO) の COBOL を記述せずに済みます。次のシナリオで、ネイティブ COBOL プログラムと Java プログラムを相互運用できます。
    • COBOL プログラムを JAVA-CALLABLE としてマークできるため、Java の静的メソッドと同様に Java から呼び出せます。
    • COBOL プログラムは、java.class.method を呼び出して Java 静的メソッドを呼び出せます。
    • COBOL データを JAVA-SHAREABLE としてマークして Java プログラムと共有できます。
  • 一般的な各種 Java データ型およびそれに対応する COBOL 型の間の自動変換を包括的にサポートしているため、パラメーターの受け渡しや戻り値の処理を行うためにユーザー コードで特別な処理を施す必要はありません。

コンパイラ指令

上へ戻る

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

コンパイラ指令を設定するための新しいメカニズム(テクノロジ プレビュー)

  • 共通指令ファイル - このリリースでは、共通指令ファイル directives.mf が導入されました。これにより、指令を個別に指定しなくとも、複数の COBOL アプリケーションのコンパイルに必要なすべての指令を自動的に提供できるようになります。この機能は、アセンブラーまたは IMS では使用できません。
    注:これはテクノロジ プレビュー機能としてのみ提供されます。この新機能について、テストおよびフィードバックができるようになる予定です。ただし、提供の目的は、この新機能のテストおよびフィードバックを行えるようにすることです。また、この機能は GA レベルでの提供が保証されるものではなく、提供されたとしても、このテクノロジ プレビュー版とは大きく異なる可能性があります。

新しいコンパイラ指令

  • ALPHA-LIT-CONT - 数値以外のリテラルの継続を区切るために右マージンまたは行末を使用するかどうかを指定します。
  • DECLARE - ローカルで宣言された変数の動作を定義します。
  • ILEXPOSEALPHA/ILEXPOSEGROUP - これらの 2 つの指令は、.NET COBOL プログラムのパラメーター化セクションまたはメソッドに値によって渡される英数字項目またはグループ項目をバイト配列として公開できます (デフォルトでは文字列オブジェクトとして公開します)。
  • ILSTRINGLOAD - 非常に多くの個別の英数字リテラルを持つ .NET COBOL プログラムにより内部制限を超過する場合、この指令を使用してこれらのリテラルをバッキング ファイルに作成し、実行時に文字列に変換できます。
  • MANAGED-FNC-PARAM-BY - ILGEN でコンパイルする際に、ユーザー定義関数のパラメーターがデフォルトで BY VALUE または BY REFERENCE のどちらで渡されるかを指定します。
  • INITIAL - IS INITIAL としてマークされたプログラムの作業場所節を初期化する方法を決定します。

Java とネイティブ COBOL 間の相互運用の新しいメカニズムをサポートするために、新しいコンパイラ指令のファミリーが導入されました。

  • JAVA-SHAREABLE - JAVA-SHAREABLE ON および JAVA-SHAREABLE OFF 指令を使用して、1 つ以上の作業場所節データ項目をかっこで囲み、この COBOL プログラムと相互運用する Java アプリケーションから読み取りおよび書き込みアクセスできるようにすることを示します。
  • JAVA-CALLABLE - COBOL プログラムを Java から自動的に呼び出し可能にするようコンパイラに指示します。
  • JAVA-GEN-PROGS、JAVA-GEN-STRG、JAVA-OUTPUT-PATH、および JAVA-PACKAGE-NAME - JAVA-CALLABLE 指令または JAVA-SHAREABLE 指令を介して、または CALL 文を使用して Java 静的メソッドを呼び出すことによって、Java と相互運用する COBOL プログラムの動作を制御します。

データのモダナイゼーションに関するアドバイス

上へ戻る

フラット ファイル、VSAM、索引ファイルや順編成ファイルなどの COBOL データ ファイルを、リレーショナル データベース (RDBMS) に移行するためのアドバイスが製品ヘルプに含まれるようになりました。このドキュメントには、アプリケーションに最適なオプションやパフォーマンスの考慮事項に関するアドバイスなど、これを実現するための Visual COBOL に含まれるソリューションがリストされています。

デバッグ

上へ戻る

このリリースには、次のような新機能があります。

  • Visual Studio で、WSL で .NET COBOL プロジェクトをデバッグできるようになりました。

Enterprise Server

上へ戻る

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

  • casverify コマンドライン ユーティリティを新たに利用できるようになりました。このユーティリティを使用すると、指定したエンタープライズ サーバー リージョンを起動せずにその構成を検証できます。また、JSON または人間が判読できる出力で即時診断情報を作成することもできます。検証ステージはモジュール方式であり、実行する検証チェックを指定できます。
  • ジョブ ステップをリストして、ユーザーが高度な再開機能を実行できるようになりました。ジョブ ステップは、casout /%jnumber を指定して JSON に出力したり、casout /%tnumberを指定してテーブルに出力したりできます。詳細については、「casout」を参照してください。

Enterprise Server Common Web Administration (ESCWA)

上へ戻る

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

  • アクセシビリティの向上 - 508 および WCAG 2.1 規格にさらに準拠するようになりました。
  • API (バージョン 2 拡張) - 既存の API (バージョン 1) の一部のエンドポイントの更新バージョンが含まれており、より多くのエンドポイントを含めるように拡張されました。
  • マージされたアーカイブ スプール - エンタープライズ サーバー リージョンを構成して、UI でマージされたアーカイブ スプールを表示できるようになりました。単一のリージョンから複数のアーカイブ スプールを表示し、以前の名前で実行された複数のジョブの古いスプール情報を表示できます。
  • ページ検索機能 - 指定した検索文字列を含むページを検索できるようになりました。この機能強化は、アクセシビリティに関する WCAG 2.1 要件の一部です。
  • PAC クライアント - ESCWA UI には、PAC に接続されているすべての TN3270 クライアントがリストされます。これにより、単一の PAC リージョンから PAC 全体にわたるクライアントを管理および監視できるようになります。
  • TLS 対応の Redis 接続。ESCWA で、TLS Redis SOR を使用した PAC の管理および監視がサポートされました。

Enterprise Server のセキュリティ

上へ戻る

今回のリリースでは、次の新機能および拡張機能が提供されます。

  • デモ CA - コンポーネントが全面的に再設計され、Visual COBOL の一部として提供されるようになりました。デモ CA は複数のインストール環境をサポートし、最新の暗号化サポートを使用して、中間 CA によって署名された SANS、PKID、AKID などを含む最新のバージョン 3 の証明書を生成します。デモ CA はさらに使いやすくなり、サードパーティの SSL/TLS システムとの相互運用性が向上しました。
    注:Micro Focus では、デモ CA を SSL/TLS の開発およびテストにのみ使用することを強く推奨します。デモ CA は本番環境での使用は想定されていません。
  • esfupdate サポート (Vault 機能) -esfupdate ユーティリティで、MFDS への接続に必要な認証情報として Vault 機能の使用がサポートされました。
  • OpenSSL 3.0 - OpenSSL が更新され、現行の長期サポート版 OpenSSL の暗号化ライブラリを使用するようになりました。
  • VSAM 外部セキュリティ マネージャー (ESM) - VSAM ESM モジュールは、LDAP ベースのセキュリティを使用するよりもシンプルで便利な Enterprise Server セキュリティの新しいオプションです。VSAM ESM モジュールは、セキュリティ データを COBOL データ (VSAM) ファイルに保持する Enterprise Server のセキュリティ マネージャーを提供します。MLDAP ESM モジュールの多くの機能を提供しますが、LDAP サーバーやその他のサードパーティ ソリューションは必要ありません。セキュリティ データは YAML ファイルからインポートできるため、Enterprise Server のセキュリティ保護およびそのセキュリティ データの変更が容易になります。
    注意:この機能は、早期導入者プログラム (Early Adopter Program; EAP) リリース ステータスで提供されます。機能の最終版については、今後リリースする予定です。詳細については、Micro Focus カスタマー ケアまでお問い合わせください。

Interface Mapping Toolkit

上へ戻る

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

  • YAML サポートが COBOL クライアントの生成で利用できるようになりました。OpenAPI スキーマは、JSON 形式に加えて YAML でも使用できるようになりました。
  • COBOL プログラムベースのサービス インターフェイスのインターフェイス マッパー ユーザー インターフェイスが更新されました。以前のバージョンで使用していた [Interface Fields] ペインは、[Interface Fields - Input] および [Interface Fields - Output] という 2 つのペインで表されるようになりました。[COBOL Entry Points] ペインは、これらの新しい 2 つのペインの間にあります。COBOL エントリ ポイントと対応するインターフェイス、COBOL 割り当て、および再利用可能なフィールド間の関係は、矢印を使用して視覚的に示されます。ペインの位置を変更して、矢印の関係を見やすくすることもできます。

Visual Studio

上へ戻る

このリリースには、次のような新機能があります。

  • JSON データを COBOL クラスに変換 - JSON データをコピーして、[Paste JSON As Classes] コマンドを使用して .NET COBOL ファイルにコピーできるようになりました。これにより、それらのクラス内のデータを逆シリアル化できる COBOL クラスが生成されます。
  • COBOL ファイル用の [Document Outline] ウィンドウ。
  • エディターのサポートは、ローカル変数およびパラメーター化セクションで利用できます。
  • コード クリーンアップを用いた形式を構成して、コード内のキーワードを小文字または大文字に変更できるようになりました。