最近のアクセス:
[Object Visibility] プロパティ

 
ほかのモジュール内のオブジェクトから、当該オブジェクトへのアクセスを許可するかどうかを定義します。モジュールレベルまたはオブジェクトレベルのいずれかで指定できます。
モジュールレベルで値を設定すると、モジュール内のすべてのオブジェクトの既定値が変更されます。

Public 公開オブジェクトは、任意のモジュール内の任意のオブジェクトからアクセスできます。
Private 非公開オブジェクトは、同じモジュール (およびその子モジュール) 内のオブジェクトだけがアクセスできます。
Internal 共通のルートモジュール (「Root Module」という名前の子) を持つオブジェクトだけが内部オブジェクトにアクセスできます。
 
オブジェクトの既定値は、親のモジュールオブジェクトから継承されます。

説明

モジュールオブジェクトを設計するときには、その使用方法 (ほかのモジュールが、定義しているモジュールをどのように操作できるか) を定義することが目標の 1 つです。モジュールオブジェクトには、ナレッジベース内のほかのモジュールからのアクセスできるものとできないものがあります。
開発者は、 [ Object Visibility ] プロパティに適切な値を設定することで、各オブジェクトがモジュールの外部からアクセスされる方法を制御、つまりモジュールのインターフェースを設計できます。


Root Module
|-- ProcRoot
|-- ModuleA
|--  |-- ProcA
|--  |-- ModuleA1
|--  |    |-- ProcA1 //Public
|--  |    |-- ModuleA11
|--  |         |-- ProcA11_Internal //Internal
|--  |         |-- ProcA11_Private // Private
|--  |-- ModuleA2
|--       |-- ProcA2

この例では
  • ProcRoot は ProcA1 を呼び出すことができます。ProcA11_Internal と ProcA11_Private を呼び出すことはできません。
  • ProcA、ProcA1、そして、ProcA2 は ProcA11_Internal を呼び出すことができますが、ProcA11_Private を呼び出すことはできません、
  • ProcA11_Internal は ProcA11_Private を呼び出すことができます。
  • ModuleA1 を Packaging するとき、ProcA1 だけがインターフェースの一部となります。

プロパティの変更の適用方法

[ Object Visibility ] プロパティを変更すると、そのオブジェクトを参照しているすべてのオブジェクトが、次のビルド操作時に自動的に特定されます。生成の必要がない場合もあります。

使用可能バージョン

このプロパティは、GeneXus Tilo Beta 1 以降で利用できます。
「Internal」の値は、GeneXus 15 Upgrade 3 から使用できます。

参考情報

モジュール
モジュールとフォルダ
モジュール - 動的な呼び出し






サブページ
Created: 15/01/07 22:48 by Admin Last update: 21/05/21 03:31 by Admin
カテゴリ
Powered by GXwiki 3.0