#InterSystems IRIS

1 フォロワー · 1.3K 投稿

InterSystems IRISは総合データプラットフォームです

    InterSystems IRISは、企業にとって最も価値のある資産(データ)の取得、共有、理解、そしてデータに基づく行動のために必要なすべてのものを提供します。

    完全なプラットフォームである InterSystems IRIS は、複数の開発技術を統合する必要がありません。より少ないコードで開発が可能で、そのアプリケーションは、システムリソース、メンテナンスなども少なくて済みます。

InterSystems公式 Megumi Kakechi · 6月 16, 2025

概要

勧告 ID

影響を受ける製品と
バージョン

リスクカテゴリー &
スコア

明示的な発生条件

DP-439649

製品:

  • InterSystems IRIS®
  • InterSystems IRIS for Health
  • HealthShare® Health Connect

バージョン:

  • 2025.1.0.225.1
  • 2025.1.0.223.0
  • 2024.1.4
  • 2023.1.6
  • 2022.1.7

運用:
4 – 高リスク

 

システム安定性:
3 – 中リスク

 

この問題はセキュリティ上の脆弱性ではありません。ユーザーの権限チェックを無効にしたり、承認されたネームスペース外のデータアクセスを可能にするものではありません。

暗黙のネームスペースの使用、管理ポータル または データベースに対する読み取り専用/読み取り書き込み混合アクセス。


上記にリストされたInterSystems製品において、以下の機能のいずれかを使用している環境で、ネームスペースを切り替えたりグローバル変数にアクセスしたりする際、予期しない <PROTECT> エラーが発生する可能性があります。

0
0 58
InterSystems公式 Megumi Kakechi · 6月 11, 2025

InterSystems は、以下のサポート対象製品バージョン 2025.1.0、2024.1.4、2023.1.6、および 2022.1.7 に影響する不具合を解決するために、新しいポイント アップデートをリリースしました。

  • InterSystems IRIS
  • InterSystems IRIS for Health
  • HealthShare Health Connect


この問題により、以下の機能を使用する際、予期しない <PROTECT> エラーやアクセス異常が発生する可能性があります:

  • 暗黙のネームスペース
  • データベースへの読み取り専用/読み取り書き込みの混合アクセス
  • 管理ポータルでのルーチンとグローバル一覧表示


含まれる症状:

  • ネームスペースの作成の失敗
  • ルーチンをリストするときに断続的に「アクセス拒否」エラーが発生する
  • 読み取り専用権限を持つユーザーに対してグローバル表示ページがデータを返さない

これらの問題によりアクセス制御やユーザー権限が損なわれることはありませんが、複数のシナリオにおいて、システムの想定された動作に影響を及ぼします
 

解決済みバージョン

修正は次のポイントリリースに含まれています。

  • 2025.1.0.230.2
  • 2024.1.4.516.1
  • 2023.1.6.810.1
  • 2022.1.7.116.1
0
0 69
お知らせ Rie Tokue · 6月 10, 2025

 

いつもお世話になっております。

連続3回シリーズでお届けしている開発者向けウェビナー、今回のテーマは「ベクトルであそぼう!」です。

以下の日時で開催いたしますので、是非ご参加ください。

日時:7月29日(火)13時半~14時10分(40分間)

参加費無料・事前登録制

ご登録はこちらから

【概要】

ベクトルは、生成AIや機械学習エンジンがデータを理解・処理するために使われる重要な概念です。AI時代の基本単位ともいえるベクトルをつかって、いろいろな実験をします。

  • 写真から魚の名前を当ててみる
  • ベクトルを“みえる化”してデータの集まりを探す
  • ちょっと変なデータ(=アノマリー)を見つける

AIモデルが「意味」をどう捉えているのか、ベクトル空間で探検しましょう!

【こんな方におすすめ】

・機械学習に興味のある方

・データに新しい価値を加えたいと考えている方

ご多用中とは存じますが皆様のご参加をお待ち申し上げております。

0
0 84
記事 Andre Larsen Barbosa · 6月 9, 2025 3m read

相手に隙を与えないノックアウトパンチのように、オープンソースプラットフォームであるKubernetesは、その可用性(つまり、サポート、サービス、ツールの容易な入手性)により、無限の可能性を秘めています。Kubernetesはコンテナ内のジョブとサービスを管理できるプラットフォームであり、これらのプロセスの構成と自動化を大幅に簡素化します。

しかし、タイトルイメージにふさわしい、このツールに「正しい」名前、InterSystems Kubernetes Operatorを与えましょう。

原理は至ってシンプルです。サービスを選択し、ゲームのルールを定義するだけで(ここでもKnockoutを参照)、すべてが可能な限り透明性と効率性を高めて提供されます。これは、インストール、修復、そして事前定義された要件を満たさない場合の最終的な復旧にも適用されます。

0
0 44
記事 Mihoko Iijima · 6月 1, 2025 7m read

これは InterSystems FAQ サイトの記事です。

InterSystems 製品では、ユーザが持つロールによって「InterSystems 製品内で何ができるのか」が決まります。

では、ロールには何が含まれているのでしょうか。

ロールには、複数の特権を含めることができます。特権とは、リソース(保護対象)に対する許可の設定を指しています。

本記事では、IRIS の開発者である山田さん(Yamada) を例に、以下の内容をご説明します。

1) ロールから付与される特権(=リソースに対する許可)について具体例を利用した確認方法

2) ロールを利用したセキュリティ設定について

《ご参考》

ビデオでの解説もあります。ラーニングパスの「InterSystems IRIS 管理の基本」の「4. セキュリティの構成と管理」をご参照ください。

ラーニングパスには、管理者ではないけれど管理概要も知っておきたい方向けの「開発者向け InterSystems IRIS の管理概要」もあります。ぜひご参照ください。

1) ロールから付与される特権(=リソースに対する許可)について具体例を利用した確認方法

0
0 84
記事 Megumi Kakechi · 6月 1, 2025 5m read

これは InterSystems FAQ サイトの記事です。
ロックテーブルを参照する方法として、主に以下の3つの方法が挙げられます。

1. 管理ポータルで参照する方法
 ⇒ 管理ポータル:システムオペレーション > ロック > ロックを表示(または管理)

2. ^LOCKTAB ユーティリティ を使用する方法
 ⇒ %SYS> do ^LOCKTAB

3. プログラムで参照する方法
 ⇒ プログラム内でロック情報を取得する方法


こちらの記事では、ロックテーブルで参照できる情報について、以下の3つのケースに分けて、かかるロックとその意味をご説明します。

1.トランザクションで更新クエリ実行時、他のプロセスで更新・参照した状態
2.デッドロックとなった状態
3.テーブルロックがかかった状態


目視で一番わかり易いのは、1の 管理ポータルで参照する方法 になるので、こちらで説明したいと思います。

最初に、
1.トランザクションで更新クエリ実行時、他のプロセスで更新・参照をすると、どのようなロックがかかるのか見ていきます。

a. プロセスA(PID=10044)にてトランザクションで、Sample.Personテーブルの ID=1 を更新します。    ⇒ Exclusive_e->Delock ロック

0
0 85
記事 Megumi Kakechi · 5月 29, 2025 6m read

これは InterSystems FAQ サイトの記事です。

InterSystems製品では、複数のプロセスが同時に同じデータにアクセスする場合、排他制御を行うためにロックを使用できます。
ロックは、データの更新を正しく行い整合性を保つための仕組みで、あるデータに対する更新処理を制御するために使用します。
ロックを操作するには、LOCK(L)というコマンドが使用できます。

こちらの記事では、InterSystems製品で使用できるロックの種類、LOCKコマンドの使い方をご紹介します。


★ロックの種類

  増分 単純
排他(既定) LOCK +^A LOCK ^A
共有 LOCK +^A#"S" LOCK ^A#"S"


プラス記号 (+) をつけると、増分ロックになります。1つのプロセスで複数の増分ロックを追加できます。
プラス記号 (+) をつけないと、単純ロックになります。こちらは、1つのプロセスで1つのロックのみ所有できます。単純ロックコマンド実行時に既存のロックがあった場合、そのプロセスが保持している既存のロックをすべて削除し、新しいロックを追加します。

0
1 89
お知らせ Rie Tokue · 5月 28, 2025

    

ご好評をいただいておりますソリューションウェビナー、3回目は以下のテーマで開催します。是非ご参加ください!

日時:6月17日(火)13時半~14時半

タイトル:サイロ化されたデータを有効活用するには?  InterSystems Data Fabric Studioのご紹介 

参加費無料・事前登録制

ご登録はこちらから

【概要】

あらゆるステークホルダーが必要な時に必要なデータにアクセスするには、まずアプリケーション毎に異なる種類のデータを使いやすい、統一されたデータ形式の変換が不可欠です。データアクセスに関わる課題を弊社の新製品、InterSystems Dat Fabric Studioはどのように解決できるのか、ユースケースとデモを交えてお話します。

【こんな方にお勧め】

  • データの利活用方法を検討されている方
  • データサイロにお悩みの方

【前提知識】

リレーショナルデータベースの基礎知識があれば望ましいです。Data Fabric Studioはローコードツールです。

0
0 92
記事 Toshihiko Minamoto · 5月 27, 2025 14m read

次回の Python コンテストでは、Python を使用して IRIS をデータベースとして使用する簡単な REST アプリケーションを作成する方法についての小さなデモを作成しようと思います。 以下のツールを使用します。

  • FastAPI フレームワーク: 高パフォーマンス、学習しやすい、高速コーディング、プロダクション対応
  • SQLAlchemy: Python SQL ツールキットで、アプリケーション開発者が SQL の全性能と柔軟性を活用できるオブジェクトリレーションマッパーです。
  • Alembic: Python 用の SQLAlchemy データベースツールキットと使用する軽量のデータベース移行ツール。
  • Uvicorn: Python の ASGI ウェブサーバー実装。
0
0 75
InterSystems公式 Seisuke Nakahashi · 5月 22, 2025

インターシステムズは、InterSystems IRIS、InterSystems IRIS for Health、HealthShare Health Connect のポイントリリース 2025.1 をリリースしました。
新しいバージョン番号は 2025.1.0.225.1 となります。
本リリースは、SDS対応ビジネスホストを利用するユーザに影響を与える、深刻な相互運用性の問題に対応するために行われました。

0
0 59
記事 Toshihiko Minamoto · 5月 22, 2025 6m read

しばらくの間、私はワークフロー機能について何らかの概念実証を行おうと計画していましたが、これは IRIS に存在する他の多くの機能と同様に、お客様にほとんど気付かれないまま終わってしまう傾向があります(その点については申し訳ありません)。 そこで数日前、この機能を構成して、Angular で開発したユーザーインターフェースに接続して使用するための例を作成することに決めました。

記事が非常に長くならなずに読みやすくするために、3 部に分けて説明しようと思います。 この最初の記事では、Workflow の機能とこれから解決する例について説明します。 2 つ目の記事では、Workflow の管理を担うプロファクションの構成と実装について詳しく説明します。 最後に、ウェブアプリケーションを通じて Workflow にある情報にアクセスする方法を説明します。

InterSystems IRIS Workflow Engine

この Workflow 機能を説明するには、IRIS ドキュメントに記載の説明をコピーするのが一番でしょう。

0
0 54
記事 Toshihiko Minamoto · 5月 22, 2025 7m read

前回の記事では、一般的な概念と、InterSystems IRIS に統合されたタスクエンジンを使用して解決する問題を紹介しました。今回の記事では、相互運用性プロダクションを構成してソリューションを提供する方法を確認します。

Workflow Engine の構成

First we are going to define the roles of the tasks that we are going to manage, in our example we are going to define two types:

  • AutomaticBloodPressureRole: ユーザーの介入が不要な自動タスクを作成します。
  • ManualBloodPressureRole: ユーザーが手動で検証する必要のあるタスクを作成します。

後で様々な患者から HL7 メッセージを受信するたびにロールをユーザーに割り当てるため、ここでは割り当てる必要はありません。

また、IRIS ユーザーを Workflow に追加する必要もありません。これはプロダクションからコードで実行します。

プロダクションのセットアップ

この例では、アドホックで作成した「WORKFLOW」というネームスペース内にプロダクションを作成します。 このプロダクションに、必要とするビジネスコンポーネントを含めます。

0
0 55
InterSystems公式 Seisuke Nakahashi · 5月 21, 2025

今回は大きなアップデートがあります。

  • RHEL 10 が昨日リリースされました。関連情報を以下でお伝えしています。
  • 2025.3 では、すべてのオペレーティングシステムで OpenSSL 3 が使用されます。SUSE 15 sp6 は、SUSEを利用する IRISユーザのミニマムサポート OS となります。
  • ミニマムサポート CPU の基準が 2025.3 で引き上げられます。
  • 古い Windows Server オペレーティングシステム は 2025.3 でサポート対象外となります。
0
0 140
記事 Toshihiko Minamoto · 5月 20, 2025 7m read

Django フレームワークは長年学習したいと思ってきましたが、いつも他の差し迫ったプロジェクトが優先されてきました。 多くの開発者と同様に、機械学習においては Python を使用していますが、初めてウェブプログラミングについて学習したころは、PHP がまだまだ優勢でした。そのため、機械学習の作品を公開する目的でウェブアプリケーションを作成するための新しい複雑なフレームワークを選択する機会が訪れても、私は依然として PHP に目を向けていました。 ウェブサイトの構築には Laravel と呼ばれるフレームワークを使用してきましたが、この PHP フレームワークから最新の MVC(モデルビューコントローラー)というウェブプログラミングのパターンに出会いました。 さらに複雑なことに、私は最新の JavaScript フレームワークを使用してフロントエンドを構築するのを好んでいます。 React を使用するのがより一般的のようですが、私は Vue.js に一番慣れているため、このプロジェクトではそれを使用することにしました。

なぜ複雑なフレームワークを使用するのでしょうか? Django、Laravel、React、または Vue などのフレームワークを学習する際の最大の難関は何でしょうか?

0
0 92
記事 Toshihiko Minamoto · 5月 16, 2025 4m read

OwnObjectScriptExtension

ObjectScript は InterSystems IRIS などの InterSystems 製品に使用されている強力な言語で、堅牢なアプリケーションの構築を可能にします。 OwnObjectScriptExtension は Visual Studio Code の拡張機能として、ObjectScript 開発エクスペリエンスを強化する広範なツールと機能を提供しています。 この記事では、OwnObjectScriptExtension によって ObjectScript 開発ワークフローがどのように改善されるかを説明します。

機能

Add Method Description

メソッドの説明を包括的に記述することは、コードを明確に維持し、コラボレーションを促進する上で欠かせません。 OwnObjectScriptExtension を使用すると、メソッドの説明を簡単に生成できます。 メソッド内にカーソルを配置し、Add Method Description コマンドを実行するだけで完了です。 拡張機能によってメソッドの説明テンプレートが自動的に生成されるため、意味のあるドキュメントを簡単に提供できます。

Make Select Statement

0
0 91
質問 ima · 5月 13, 2025

VSCodeをサーバーサイド編集モードで使っていますが、プロジェクト内プログラムの右クリックで「Remove from Project」はありますが、逆に既存プログラムを既存プロジェクトに追加するメニューが無いように思います?
追加する方法を教えてもらえませんか?

IRIS for Windows (x86-64) 2024.3 (Build 217U) Thu Nov 14 2024 17:59:58 EST

VS InterSystems ObjectScript v3.01

Intersystems ObjectScript Extension Pack v1.0.3

InterSystems server manager v3.10.0

2
0 139
記事 Toshihiko Minamoto · 5月 14, 2025 9m read

お客様のプロジェクトにおいて、どのようにすればいつ何時に誰がデータベースを変更したかを追跡できるか問われました。 SQL とオブジェクトへの両方のアクセスで Insert、Update、および Delete を追跡することが目的です。

以下は、変更ログを維持するために作成したテーブルです。

0
0 57
記事 Tomoko Furuzono · 5月 13, 2025 1m read

IRISから他DDLのデータを参照したり取り込んだりする場合、各DDLのデータ型はそれと同等の InterSystems IRIS データ型にマッピングされます。

マッピングの定義は、管理ポータル、および、下記ドキュメントページでご確認いただけます。

管理ポータル:[システム管理] > [構成] > [SQLとオブジェクトの設定] > [システムDDLマッピング]

ドキュメント:InterSystems IRIS へのデータ型のマッピングの表示

0
0 49
記事 Tomoko Furuzono · 3月 29, 2022 2m read

これは、InterSystems FAQサイトの記事です。
 

%SQL.Util.Proceduresクラスの CSV() プロシジャを使用することにより、実現できます。
下記が使用例のコードとなります。(test.csvというファイルが c:\temp にあるという前提)

 Set rowtype="Name VARCHAR(50),UID VARCHAR(50), PHONE VARCHAR(50)"
 Set filename="c:\temp\test.csv"
 Set result=##class(%SQL.Statement).%ExecDirect(,"call %SQL_Util.CSV(,?,?)",.rowtype,filename)
 Set rset =result.%NextResult()
 
 // 全件表示したい場合は、do rset.%Display()
 While rset.%Next() {
     Write "Name:",rset.%GetData(1)," UID:",rset.%GetData(2)," PHONE:",rset.%GetData(3),!
     }

 Set rset="",result=""
 Quit

上記を実行することにより結果セットとして各行およびフィールドにアクセスできます。
実行例:

3
1 665
記事 Mihoko Iijima · 1月 15, 2021 1m read

これは InterSystems FAQ サイトの記事です。

InterSystemsでは、既存のお客様および見込みのお客様と実施した他DBMS製品との比較を行った様々なベンチマーク結果を持っています。

しかし、それらの結果に関して、ほとんどのRDBMSベンダのライセンス条項に当該RDBMSベンダの承諾なしにベンチマーク結果を公表してはならないという条項があるため、現実問題として一般的な公表は、難しい状況です。

一方、TPC等の公共の機関等がベンチマーク条件を策定、公開しているベンチマークに関しては、必要な実施コストに対して得られるものが少ないと考えており、過去にも実施しておりませんし、将来も実施する予定はありません。

InterSystemsは、TPCの様な現実のシナリオからかけ離れたベンチマークを実施するのではなく、実際のアプリケーションを模したベンチマークシナリオを構築し、それに基づき、各ハードウェアベンダ、パートナ企業、エンドユーザとの協力の基、ベンチマークを実施しております。

様々なベンチマークの結果をまとめた記事があります。ぜひご参照ください。

IRISで公開しているベンチマーク資料

2
0 347
記事 Mihoko Iijima · 9月 29, 2020 2m read

これはInterSystems FAQ サイトの記事です。


LAST_IDENTITY() SQL関数を使用すると取得できます。
※ この関数は、埋め込み SQL または ODBC 利用時に使用できます。ダイナミック SQL、SQL シェル、または管理ポータルの SQL インタフェースによる値には設定されません。

簡単な埋め込み SQL での例をご紹介します。

1
0 1105
お知らせ Rie Tokue · 4月 24, 2025

 

いつもお世話になっております。

さて今年二回目となる開発者向けウェビナーの日時、内容が決まりました。

【日時】 6月10日(火) 13:30-14:00

【タイトル】 IRISのベクトル検索を使ってテキストから画像を検索してみよう

【概要】

昨年5月のウェビナーで紹介したIRISのベクトル検索が、2025.1でパワーアップしました。特に、ANN(近似最近傍探索)インデックスのサポートにより、大量のベクトルに対する検索性能が劇的に向上しました。前回のウェビナーではテキストに対するベクトル検索を取り上げましたが、CLIPと呼ばれる技術により、画像とテキストを比較可能なベクトルに変換して、例えば、テキストから画像を検索するといったことが可能になります。

本ウェビナーでは、IRISのベクトル検索について再度説明し、画像とテキストを組み合わせた検索シナリオについて説明します。

【こんな方にお勧め】 機械学習に興味がある方。テキストの検索、画像の検索に興味がある方。

ご多用中とは存じますが、皆様のご参加をお待ち申し上げております。

ご登録はこちらから

インターシステムズジャパン

0
0 105
InterSystems公式 Ayumu Tanaka · 4月 23, 2025

インターシステムズは、InterSystems IRIS®データプラットフォームInterSystems IRIS® for HealthTMHealthShare® Health Connect のメンテナンスバージョン 2024.1.4 2023.1.6 をリリースしました。このリリースには以前ご案内した 警告:SQLクエリが間違った結果を返す の修正を含みます。製品の品質改善のために、開発者コミュニティを通じてぜひご意見をお聞かせください。

ドキュメント

詳細な変更リストとアップグレードチェックリストはこちらのドキュメントをご参照ください(すべて英語です):
✅ 2024.1.4

✅ 2023.1.6

早期アクセスプログラム (Early Access Programs; EAPs)

多くの 早期アクセスプログラムをご用意しております。こちらの ページ からご興味のあるプログラムにお申込みいただけます。

キットの入手方法

0
0 82
記事 Megumi Kakechi · 4月 22, 2025 5m read

先日、お客様よりタイトルのご質問をいただき、サンプルコードを作成しました。せっかくですので、こちらでも共有したいと思います。

今回は、データベースの空き容量情報を取得する、%SYS.DatabaseQueryクラスのFreeSpaceクエリを使用したサンプルとします。

C#.Net と VB.Net で作成してみました。


★C#.Net

0
0 83
お知らせ Mihoko Iijima · 4月 17, 2025

開発者の皆さん、こんにちは!

開発者の方なら、誰でも小さなサイドプロジェクトやアプリケーションをお持ちのはずです。新しい技術を試したり、アイデアをより大きなソリューションに実装する前の試作品、また興味ある技術を使ったアプリケーションなどなど。

今お持ちのこれらの作品が、InterSystems READY 2025 の目標達成につながるとしたらどうでしょうか?

開発者コミュニティでは、ユニークなチャンスをご用意いたしました。IRIS に対するあなたの情熱、創造性、そして想いを自由に表現して InterSystems READY への無料パスとホテル宿泊券をゲットしましょう!

応募ルールは簡単です。あなたのIRISを使用したアプリケーションを Open Exchangeにアップロードします。そして、InterSystems の年間最大イベントである InterSystems REDY の無料パス獲得に向けた意気込みを短い感動的なビデオに録画して送ってください。

期間:  2025年4月21日~5月4日

賞品: ホテル宿泊と InterSystems READY 2025 への無料パス!

0
0 41
記事 Tomoko Furuzono · 4月 17, 2025 1m read

これは、InterSystems FAQサイトの記事です。


メソッドの実装に使用する言語を明示する場合は、下記のようにメソッドキーワードで「Language=~~~」と指定します。

Method name(formal_spec) As returnclass [ Language = language ]
{    //implementation }

 指定できるLanguageの値は下記のとおりです。

  • objectscript (既定) — ObjectScript
  • python — 組み込み Python
  • tsql — Transact-SQL
  • ispl — Informix ストアド・プロシージャ言語

ドキュメント:Language (メソッド・キーワード)

上記の通り、ObjectScriptで記載する場合は、「Language=objectscript」と指定します。
但し、CSP内の<SCRIPT>タグ内で指定する場合は、下記の通り、「LANGUAGE=’cache’」と指定することにご注意ください。

<SCRIPT LANGUAGE='cache', ~~~>

ドキュメント:<SCRIPT>  

※CSPページは、IRISでは非推奨の機能です。

0
0 71
記事 Toshihiko Minamoto · 4月 11, 2025 10m read

説明

これは、ネイティブウェブアプリケーションとして IRIS にデプロイできる Django アプリケーションのテンプレートです。

インストール

  1. リポジトリをクローンする
  2. 仮想環境を作成する
  3. 要件をインストールする
  4. docker-compose ファイルを実行する
git clone
cd iris-django-template
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
docker-compose up

使用法

ベース URL は http://localhost:53795/django/ です。

エンドポイント

  • /iris - IRISAPP ネームスペースに存在する上位 10 個のクラスを持つ JSON オブジェクトを返します。
  • /interop - IRIS の相互運用性フレームワークをテストするための ping エンドポイント。
  • /api/posts - Post オブジェクトの単純な CRUD エンドポイント。
  • ``/api/comments` - Comment オブジェクトの単純な CRUD エンドポイント。

このテンプレートからの開発方法

WSGI 導入記事をご覧ください: wsgi-introduction

0
0 63
記事 Tomoko Furuzono · 4月 10, 2025 2m read

これは、InterSystems FAQ サイトの記事です。
 

※Caché/Ensembleの「CSPゲートウェイ」は、IRISでは「Webゲートウェイ」と名称が変更されています。
 これに伴い、サービス名も、「%Service_CSP」 ⇒ 「%Service_WebGateway」となっています。
 以下は、IRISベースの名称で記載しておりますので、適宜読み替えてご参照ください。

Webゲートウェイ・レジストリとその関連クラスを使用すると、Webゲートウェイのインストール環境の確認、および、設定値の変更が可能です。
関連するクラスは、以下になります。
%CSP.Mgr.GatewayRegistry
%CSP.Mgr.GatewayMgr

例えば、以下は、アクティブなWebゲートウェイのインストール環境(リストの1番目)の情報を書き出しています。

Set reqistry = $system.CSP.GetGatewayRegistry()
Set gateways = reqistry.GetGatewayMgrs()
Set gateway = gateways.GetAt(1)
Write gateway.IPAddress," : ",gateway.Port," : ",gateway.Version

      ↓(結果)

0
0 79
記事 Tomoko Furuzono · 4月 10, 2025 1m read

これはInterSystems FAQサイトの記事です。
 

サーバのIPアドレスやマシン名は、%SYSTEM.INetInfoクラスのメソッドで取得することが出来ます。

set hostname=$System.INetInfo.LocalHostName() //マシン(ホスト)名set ip=$system.INetInfo.HostNameToAddr($system.INetInfo.LocalHostName())  //IPアドレス 
0
0 61