Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

ビジネス・ホストおよびアダプタの概要

ここでは、外部言語で記述されたすべてのビジネス・ホストとアダプタに適用される情報を提供します。

実行時変数の作成

PEX フレームワークでは、管理ポータルを使用してリモート・クラスの変数の実行時の値を指定できるので、1 つの PEX コンポーネントをさまざまなプロダクションで再利用できます。リモート・クラスで宣言された変数は、管理ポータルには対応するビジネス・ホストの設定として表示されます。例えば、ビジネス・サービスの Python クラスで Min = int(0) を宣言した場合、プロダクションのビジネス・サービスには [最小] の設定があります。実行時に、この変数は管理ポータルでの設定の値に設定されます。

管理ポータルに表示したくない変数をリモート・クラスで宣言する場合は、メタデータを追加してその変数を非表示にできます。

変数のメタデータ

変数に対して作成された管理ポータルの設定を制御するメタデータをリモート・クラスに追加できます。このメタデータの構文は、外部言語によって異なります。Java ではアノテーション、.NET では属性、Python では variableName_info という名前の特殊なメソッドをそれぞれ使用します。例えば、以下のコードは、設定 MyVariable が必須であることを指定し、その設定のヒントとして表示される説明を追加します。

@FieldMetadata(IsRequired=true,Description="Name of the company")
public String MyVariable;
[FieldMetadata(IsRequired=true,Description="Name of the company")]
public string MyVariable;
MyVariable = int(0)

@classmethod
def MyVariable_info(self) -> \
 {
    'Description': "Maximum value",
    'IsRequired': True
  }:
  pass

この構文を使用して、管理ポータルの設定の動作を制御する以下の要素をメタデータに追加できます。

メタデータの要素 説明
Description 管理ポータルにヒントとして表示される、設定の説明。
Category カテゴリ見出しで設定をグループ化します。例えば、Category="Basic" を Java クラスに追加すると、その設定は、設定の [基本] セクションにグループ化されます。
DataType 変数のデータ型を上書きし、設定を新しいデータ型に関連付けます (例 : Ens.DataType.ConfigName)。
IsRequired true の場合、設定の値を指定する必要があります。既定値は false です。
ExcludeFromSettings true の場合、変数は管理ポータルに設定として表示されなくなります。既定値は false です。

PEX コンポーネントのメタデータ

リモート・クラスの個々の変数にメタデータを追加できるのと同様に、PEX コンポーネント全体に適用されるメタデータを追加できます。このメタデータを使用して、管理ポータルでコンポーネントに関する情報を提供します。この情報は、管理ポータルの [情報を提供する設定] の [Production EXtensions] ページおよび [プロダクション構成] ページに表示されます。

メタデータの要素 説明
Description PEX コンポーネントの説明。
Info URL PEX コンポーネントに関連付けられている URL。例えば、コンポーネントの詳細を提供する Web ページ。

このクラス・メタデータを組み込むための構文は、外部言語によって異なります。Java ではアノテーション、.NET では属性を使用します。Python では、docstring と特殊変数を使用します。以下のコードは、これらのメタデータ要素を PEX コンポーネントのリモート・クラスに追加します。

@ClassMetadata(Description="Custom Java Business Service",InfoURL="http://www.mycompany.com")
public class MyBusinessService extends com.intersystems.enslib.pex.BusinessService {
[ClassMetadata(Description ="Custom .NET Business Service", InfoURL="www.mycompany.com")]
public class MyBusinessService : InterSystems.EnsLib.PEX.BusinessService
class MyBusinessService(iris.pex.BusinessService):
  """ Custom Business Service in Python """

  INFO_URL = "http://www.mycompany.com"

FeedbackOpens in a new tab