記事 Mihoko Iijima · 9月 21, 2021 3m read

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

Excelのマクロ機能を使ってVBAからREST/JSON経由でアクセスすることが可能です。

REST/JSONを使用したInterSystems製品との連携の簡単なサンプルを以下のGitHubサイトから入手できます。

VBAマクロサンプル

マクロサンプルは Solution/activityreport.xlsm をご覧ください。

サンプルは、コンテナを利用しています。READMEに記載の方法でコンテナを開始し、Solution/activityreport.xlsm の「データ取得」ボタンをクリックすると以下の結果が得られます。

 

マクロの中では、以下のGET要求を実行しています。

以下の図例は、RESTクライアントでGET要求を行った結果です(​​​ Basic 認証でアクセスしています)。


​​​上記GET要求により、ベースURL(/pm)の指定で、RESTディスパッチクラス(PM.Broker)が起動し、要求されたパス(例では /getactivities)から、PM.REST クラスの GetActivities() メソッドを実行しています。

Class PM.Broker Extends %CSP.
0
0 378
記事 Toshihiko Minamoto · 9月 20, 2021 2m read

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

CSVまたはURLからCSVデータをプログラムでInterSystems IRISにインポートしなければならない場合があります。 そして、適切なデータ型でクラスが作成され、そのデータがインポートされることを期待するでしょう。

それを実現するcsvgenモジュールをOpen Exchangeに公開しました。

IRISにCSVファイルをインポートするだけであれば、次のようにすることができます。

USER>do ##class(community.csvgen).Generate("/usr/data/titanic.csv",,"Data.Titanic")

Class name: Data.Titanic
Header: PassengerId INTEGER,Survived INTEGER,Pclass INTEGER,Name VARCHAR(250),Sex VARCHAR(250),Age INTEGER,SibSp INTEGER,Parch INTEGER,Ticket VARCHAR(250),Fare MONEY,Cabin VARCHAR(250),Embarked VARCHAR(250)
Records imported: 891
USER>

または、GitHubのCOVID-19 Dataのように、インターネット上にCSVがある場合は、次のようにしてデータを取得できます。

USER>d ##class(community.csvgen).GenerateFromURL("https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_daily_reports/05-29-2020.csv",",","Data.Covid19")

Class name: Data.Covid19
Header: FIPS INTEGER,Admin2 VARCHAR(250),Province_State VARCHAR(250),Country_Region VARCHAR(250),Last_Update DATE,Lat MONEY,Long_ DOUBLE,Confirmed INTEGER,Deaths INTEGER,Recovered INTEGER,Active INTEGER,Combined_Key VARCHAR(250),Incidence_Rate DOUBLE,Case-Fatality_Ratio DOUBLE
Records imported: 3522
USER>
0
0 287
記事 Hiroshi Sato · 9月 17, 2021 2m read

これは InterSystems FAQ サイトの記事です。
※ IRIS Data Platformのサーバーライセンス(プロセッサーコア単位の課金)では以下の内容は適用されませんので、ご注意お願いします。

2012.1以降のバージョンより、ライセンス管理が厳格化されたために、管理ポータルでもライセンスを消費するようになりました。


デフォルトでは、管理ポータルは独立したID(CSPセッション)単位でライセンスを消費するために同一ユーザが複数ライセンスを消費するようになります。

スタジオ、ターミナル、管理ポータル全ての消費ライセンスをに同一ユーザにまとめる方法は以下になります。

0
1 597
お知らせ Makiko Kokubun · 9月 17, 2021

 

開発者のみなさん、こんにちは!
インターシステムズ開発者コミュニティでは、4回に渡り、InterSystems IRIS 2021.1の新機能や、開発を行う上で役に立つ機能をご紹介するウェビナーを開催します。10月の火曜と木曜のお昼に、弊社の技術者が30分でインターシステムズの最新テクノロジーについて解説します。
ぜひお気軽にご視聴ください!

※ (2022/4/1更新)YouTubeにアーカイブを公開しました。こちらよりご覧いただけます。

開催予定

第1回:10/12(火)InterSystems IRIS Adaptive Analytics のご紹介
第2回:10/14(木)Python Gateway のご紹介
第3回:10/19(火)SQL から始める機械学習 – IntegratedML のご紹介
第4回:10/21(木)FHIR 新機能

時間:12:30~13:00予定(約30分)
配信形式:ON24を使用したオンライン配信
参加費:無料

詳細・事前登録はこちらから

 

プレビュー:IRIS & InterSystems IRIS for Health 2021.1 新機能のご紹介

このビデオでは、昨年リリースされたバージョン2020.1から、新バージョン2021.1の間で追加/改善/強化された機能についてご紹介しています。合わせてご覧ください。

0
0 241
記事 Mihoko Iijima · 9月 16, 2021 1m read

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

答え:必要ありません。

InterSystems 製品では、クライアント機能用に特別なライセンスを設けておりません。

通常のサーバーライセンス(サブスクリプションを含む)を保有していれば、そのサーバーライセンスで許容しているキャパシティに応じて、複数のクライアントシステムにクライアント機能をインストールして利用することができます。

0
0 213
記事 Toshihiko Minamoto · 9月 16, 2021 10m read

はじめに

InterSystemsは最近、HL7バージョン2の相互運用性に焦点を当てた、IRIS for Health 2020.1のパフォーマンスとスケーラビリティのベンチマークを完了しました。 この記事では、さまざまなワークロードで観察されたスループットを説明し、IRIS for HealthをHL7v2メッセージングの相互運用性エンジンとして使用しているシステムの一般的な構成とサイジングのガイドラインを提供します。

0
0 256
記事 Mihoko Iijima · 9月 14, 2021 1m read

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

管理ポータルの SQL 画面(管理ポータル > システムエクスプローラ > SQL)で、任意の SQL を実行した後、結果の行数などが表示されいる行の右端にある「印刷」のリンクから、CSVファイル出力を選択できます。

「クエリ印刷」画面で「ファイルにエクスポート」をチェックすると「ファイル形式」の欄が表示されます。

形式に「CSV」を指定し、出力ファイル名を指定したあと「エクスポート」ボタンをクリックすると出力できます。

注意:古いバージョンでは正しくCSV出力が行えない場合もあります。新しいバージョンをぜひご利用ください。

 

プログラムでCSV出力を行いたい場合は、関連記事をご参照ください。

0
0 503
記事 Toshihiko Minamoto · 9月 14, 2021 10m read

より産業向けのグローバルストレージスキーム

この連載の第1回では、リレーショナルデータベースにおけるEAV(Entity-Attribute-Value)モデルを取り上げ、テーブルにエンティティ、属性、および値を保存することのメリットとデメリットについて確認しました。 このアプローチには柔軟性という点でメリットがあるにもかかわらず、特にデータの論理構造と物理ストレージの基本的な不一致などによりさまざまな問題が引き起こされるという深刻なデメリットがあります。

こういった問題を解決するために、階層情報の保存向けに最適化されたグローバル変数を、EAVアプローチが通常処理するタスクに使用できるかどうかを確認することにしました。

パート1では、オンラインストア向けのカタログをテーブルを使って作成し、その後で1つのグローバル変数のみで作成しました。 それでは、複数のグローバル変数で同じ構造を実装してみることにしましょう。

最初のグローバル変数^catalogには、ディレクトリ構造を保存します。 2つ目のグローバル変数^goodには、店の商品を保存します。 ^indexグローバルには、店のインデックスを保存します。 プロパティは階層的なカタログに関連付けられているため、プロパティ用の個別のグローバル変数は作成しません。

0
0 458
お知らせ Mihoko Iijima · 9月 13, 2021

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

InterSystems Analytics コンテスト2021 は終了しました。コーディングコンテストにご参加いただきありがとうございました!

この記事では、コンテスト受賞者を発表します! 

受賞された開発者の皆さん、👏おめでとうございます!🎊

0
0 92
記事 Megumi Kakechi · 9月 12, 2021 2m read

特定文字列が含まれるグローバルを検索する時、どのように行われているでしょうか?

管理ポータルでグローバルを表示して Ctrl+F で検索することもできますが、サイズが大きなグローバルでは表示に時間がかかり難しい場合もあります。

もちろん、$ORDER  や $QUERY 関数でループして含まれる文字列を検索することは可能です。

しかし、もっと簡単で便利な方法があります。

管理ポータルで行える、グローバル文字列検索機能 を使う方法です。

こちら、管理ポータルの [システムエクスプローラ] > [グローバル] :検索 から簡単に行えます

例えば、^%ISCLOGグローバルの中から「CSP error cleaning up after page」というエラーが含まれるグローバルを検索するときは以下のようになります。

 ↓

 
どうしても  $ORDER や $QUERY 関数を使用してプログラムで行いたい、という場合は以下のようになります。

※サブスクリプトが複数あるときは、 $QUERY  関数で複数階層ループします。

0
0 226
記事 Hiroshi Sato · 9月 9, 2021 2m read

これは InterSystems FAQ サイトの記事です。
システムクラス  Config.MapGlobals を使用して登録することができます。

ネームスペース USER からデフォルトデータベース以外のデータベース SAMPLES にある ^Sample.PersonD をグローバルマッピングする方法は以下の通りです(ターミナルでの実行例)。

USER>zn "%SYS"  %SYS>set ns="USER"  %SYS>set glo="Sample.PersonD"
 
%SYS>set vals("Database")="SAMPLES"
 
%SYS>set st=##class(Config.MapGlobals).Create(ns,glo,.vals) ※ Config.MapGlobals クラスの Create()メソッドの第3引数は参照渡しのため、変数名前にピリオド(.)を付与して指定します。

 

Config.MapGlobals クラスを使用する方法以外に、インストールマニフェストクラスを利用して定義することもできます。

インストールマニフェストクラスの作成方法詳細については添付をご参照ください。

以下例は、インストールマニフェストでの定義例です(クラス定義は添付内に含まれています)。

0
0 398
記事 Hiroshi Sato · 9月 9, 2021 2m read

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

2025.1以降CORS関連の設定方法は大きく変わっています。

詳細は、以下の記事を参照してください。

jQueryを使用してIRISからJSONデータを取得する方法

 

%CSP.REST クラスを継承する REST 用ディスパッチクラスで REST を実装している場合は、クロスドメイン制約回避用に用意されたパラメータ HandleCorsRequest を利用します。

設定方法は以下の通りです。

REST 用ディスパッチクラスをスタジオで修正する場合は、
[クラス] > [リファクタ] > [オーバーライド] を開き、[パラメータ]タブを選択 > [HandleCorsRequest] を選択後OKボタンを押下します。

 

以下の定義が追加されるので、1を設定します。

 

Parameter HandleCorsRequest=1;

REST ディスパッチクラスを Atelier で修正する場合は、オーバーライドメニューの用意がないため、パラメータの定義を追加するか、%CSP.REST クラスを開き、HandleCorsRequest の定義をコピーし修正します。

0
0 711
記事 Toshihiko Minamoto · 9月 9, 2021 10m read

はじめに

この連載の最初の記事では、リレーショナルデータベースのEAV(Entity–Attribute–Value)モデルを見て、それがどのように使用されて、何に役立つのかを確認しましょう。 その上で、EAVモデルの概念とグローバル変数と比較します。

原則として検索する必要のある、フィールド数、または階層的にネストされたフィールドの数が不明なオブジェクトがある場合があります。

たとえば、多様な商品群を扱うオンラインストアを考えてみましょう。 商品群ごとに固有の一意のプロパティセットがあり、共通のプロパティもあります。 たとえば、SSDとHDDドライブには共通の「capacity」プロパティがありますが、SSDには「Endurance, TBW」、HDDには「average head positioning time」という一意のプロパティもあります。

場合によっては、同じ商品でも別のメーカーが製造した場合には、それぞれに一意のプロパティが存在します。

では、50種の商品群を販売するオンラインストアがあるとしましょう。 各商品群には、数値またはテキストの固有のプロパティが5つあります。

実際に使用するのは5個だけであっても、各商品に250個のプロパティがあるテーブルを作成するのであれば、ディスク容量の要件が大幅に増える(50倍!

0
0 2145
記事 Mihoko Iijima · 9月 7, 2021 3m read

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

Windows システムにインストールされた InterSystems 製品を削除するには、コントロールパネルにあるプログラムの追加と削除(Windows 10の場合は、Windows の設定からアプリを選択)を使用します。

システムに変更を加えますので、管理者権限を持ったユーザでログインして作業を行う必要があります。

1) 管理者(Administrator)でシステムにログインします。

2) システムトレイから、アンインストールを行う InterSystems 製品インスタンスのランチャーを終了します(ランチャークリック → 終了)。

3)コントロールパネルにある プログラムの追加と削除 (Windows 10の場合は、Windows の設定からアプリを選択)で

<InterSystems製品> instance [xxxx] ( xxxx にはインスタンス名が表示されています) を削除します。

 例:InterSystems IRIS instance [IRIS]

4) InterSystems 製品インストールディレクトリ(既定では C:\InterSystems\<InterSystems製品> )を Windows エクスプローラ等を使用して削除します。

0
0 817
記事 Toshihiko Minamoto · 9月 7, 2021 4m read

まずはこの記事で手短にこの疑問に回答します。 この連載のパート2には、pButtonsから抽出されたパフォーマンスデータのグラフを含めました。 pButtonsの.htmlファイルからmgstatなどのメトリックを抽出してExcelで簡単にグラフ作成する方法として、カット&ペーストよりも素早く行える方法がないか、オフラインで尋ねられました。

参照: パート2: 収集したメトリックを確認する

pButtonsは、収集したデータをWRCに送信して確認しやすくするために、そのデータを1つのhtmlファイルにコンパイルするのですが、 特に24時間などの長い収集時間で実行されるpButtonsの場合は、mgstat、vmstatなどの時間ベースのデータをグラフィック表示にして確認できれば、トレンドやパターンが見やすくなります。

pButtons データをhtmlファイルにロールアップしてから解凍するのに時間を掛けるのはばかげているように聞こえるかもしれませんが、pButtonsはパフォーマンスの問題をトラブルシューティングするためにWRCが多数のシステムメトリックのビューを取得するためのツールであることを忘れてはいけません。

0
0 283
記事 Mihoko Iijima · 9月 5, 2021 1m read

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

%SYSTEM.License クラスのメソッド利用すると、ライセンス情報を取得できます(実行時は、$SYSTEM.License.メソッド名() と記述します)。 

%SYSTEM.License クラスは、ライセンスユーティリティ用システムオブジェクトです。

ユーティリティの詳細については、添付資料をご参照ください。
(クラス詳細については、クラスリファレンス内 %SYSTEM パッケージ以下 License クラスも併せてご覧ください。)

 また、ライセンス情報は、管理ポータルからも確認できます。

ライセンスキー情報:
 [システム管理] > [ライセンス] 以下

ライセンス使用状況:
 [システムオペレーション] > [ライセンス使用量] 以下

0
0 279
記事 Megumi Kakechi · 9月 3, 2021 2m read

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

$ZSTRIPコマンドは、指定された文字列から文字のタイプと文字を削除します。
このコマンドを使用することで文字列から数値部分のみを抽出することが可能です。

$ZSTRIP(string,action,remchar,keepchar)

第1引数(string)      :対象文字列
第2引数(action)     :string から削除する対象。アクションコードとマスクコードで構成。
第3引数(remchar) :削除する特定の文字を指定。第2引数のマスクコードに含まれない文字も指定可能。【オプション】
第4引数(keepchar):削除しない特定の文字を指定。【オプション】

以下はその例です。

// 第2引数:アクションコード "*" を指定しすべて削除(E)
// 第4引数:.0123456789- を削除しない

USER>write $zstrip("ABC-0.100g","*E",,".0123456789-")
-0.
0
0 451
記事 Hiroshi Sato · 9月 2, 2021 2m read

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

$ZF(-100) のコマンドは、以下のフォーマットで使用します。

$ZF(-100, フラグ, コマンド名, コマンドの引数)

OSコマンドを実行する場合は、「/shell」フラグが必要です。
例えば mkdir であれば、次のように使用します。

 // mkdir C:\temp\newdir
 Write $ZF(-100, "/shell", "mkdir", "C:\temp\newdir")

コマンドの引数が複数ある場合は、以下の例のように引数の数だけ二重引用符で括ってカンマ区切りで指定します。

 // move C:\temp\a.txt C:\temp\a2.txt
 Write $ZF(-100, "/shell", "move", "C:\temp\a.txt", "C:\temp\a2.txt")  // net use Z: \\filesrv\public /user:user password
 Write $ZF(-100, "/shell", "net", "use", "Z:", "\\filesrv\public", "/user:user", "password")

また、同期・非同期実行は以下のように使用します。

0
0 743
記事 Toshihiko Minamoto · 9月 1, 2021 8m read

記事で使用されているすべてのソースコード: https://github.com/antonum/ha-iris-k8s 

前の記事では、従来型のミラーリングではなく分散ストレージに基づいて、高可用性のあるk8sでIRISをセットアップする方法について説明しました。 その記事では例としてAzure AKSクラスタを使用しました。 この記事では引き続き、k8sで可用性の高い構成を詳しく見ていきますが、 今回は、Amazon EKS(AWSが管理するKubernetesサービス)に基づき、Kubernetes Snapshotに基づいてデータベースのバックアップと復元を行うためのオプションが含まれます。

インストール

早速作業に取り掛かりましょう。 まず、AWSアカウントが必要です。AWS CLIkubectl、およびeksctlツールがインストールされている必要があります。 新しいクラスタを作成するために、次のコマンドを実行します。

eksctl create cluster \
--name my-cluster \
--node-type m5.
0
0 813
記事 Megumi Kakechi · 9月 1, 2021 1m read

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

InterSystems製品のクラスクエリにはSQL文を利用する方法と、ユーザコードによる記述が選択できます。

スタジオメニューの [クラス] >[追加] > [クエリ] を選択すると、クエリウィザードが起動します。


画面に、「実装」を選択する項目があり、「このクエリはユーザコードで定義されている」を選択すると SQL文ではなく、ユーザコードによりクエリ定義が行えます。

 
次画面以降では、必要な情報として、入力パラメータ、結果セットの選択カラムの指定を行います。 ウィザード終了後、ユーザコードのひな型として、以下のメソッドがクラス定義に追加されます。

{QueryName}Execute()

{QueryName}Fetch()

{QueryName}Close()

({QueryName}はクエリウィザードで指定するクエリ名です。)

 

これらのメソッドに実際に実行したいユーザコードを記述していきます。

以下に、詳細記述とJavaから呼び出すサンプルがございますのでご参照ください。

https://github.com/Intersystems-jp/classquery_sample

0
0 519
記事 Hiroshi Sato · 8月 31, 2021 2m read

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

Linux上では、以下の手順で InterSystems IRIS (以降IRIS)のインスタンスを削除してください。

(1) アンインストールしたい IRIS のインスタンスを iris stop で停止 

# iris stop インスタンス名

(2) 以下のコマンドでインスタンス情報を削除 

# iris delete インスタンス名

(3) IRIS のインストールディレクトリを rm コマンドで削除 

# rm -r インストールディレクトリ

IRISは、インストール先のディレクトリのほかに、以下の(a)(b)も使用しています。

-----------------------------------------
(a) /usr/local/etc/irissys フォルダ
(b) /usr/bin/iris
    /usr/bin/irisdb
    /usr/bin/irissession
-----------------------------------------

もしマシン上から、すべての IRIS を完全に削除したい場合は、上記のアンインストール手順に加えて、(a)(b)をすべて削除してください。

但し、これらは全インスタンスで共通で使用しています。

0
0 794
記事 Mihoko Iijima · 8月 31, 2021 5m read

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

24時間停止しないシステムの場合、「ジャーナルファイルの削除設定」に合わせて 0時30分 に古いジャーナルファイルを削除します。

「ジャーナルファイルの削除設定」より古いジャーナルファイルが残っている原因として、オープンされたままのトランザクションが存在していることが考えられます。

その場合、トランザクション実行中プロセスを探し、トランザクションを確定させることでジャーナルファイルを削除できるようになります。

以下のサンプルは、オープンされたままのトランザクションの存在確認と、存在する場合は対象ファイル名とジャーナルレコード情報が出力されます。

(サンプルは、https://github.com/Intersystems-jp/CheckOpenTransaction からダウンロードできます)

※注意※
確認対象のジャーナルファイルサイズが大きい場合、ジャーナルファイルが多数ある場合は、実行に時間がかかるため、弊社サポートセンターまでご連絡ください。

Class ISJ.JournalUtility
{
ClassMethod GetOpenTransaction() As %Status
{
    set status=$$$OK
    #dim ex As %Exception.
0
0 377
記事 Toshihiko Minamoto · 8月 31, 2021 12m read

最初の記事では、Caché Webアプリケーションのテストとデバッグを外部ツールを用いて行うことについて説明しました。 2回目となるこの記事では、Cachéツールの使用について説明します。

以下について説明します。

  • CSP GatewayとWebappの構成
  • CSP Gatewayのロギング
  • CSP Gatewayのトレース
  • ISCLOG
  • カスタムロギング
  • セッションイベント
  • デバイスへの出力
0
0 465
記事 Hiroshi Sato · 8月 30, 2021 1m read

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

何らかの理由でサーバー移行が必要になった際に、移行前の環境から移行後の環境に設定情報をコピーすることで設定作業を軽減できます。

以下の設定情報を移行できます。

  • iris.cpf
  • SQLゲートウェイ設定
  • Webゲートウェイ設定 *注1
  • IRISSYSデータベースに保存しているユーザー作成ルーチンなど *注2
  • セキュリティ設定
  • タスク設定

注1 パスワードを設定している場合には、パスワードのみ手動で再設定が必要です。
注2 ^%ZSTART, ^ZMIRRORルーチンなど

 

優先接続サーバー設定に関しても、物理的には移行可能ですが、Windowsのレジストリー情報をコピーする必要があります。


しかしながらレジストリー情報をコピーして他システムに移行する方法は通常推奨される方法ではありませんので、安心、安全を優先する場合は、手動設定することをお勧めします。

各設定のエクスポート/インポート方法は、以下のリンクをご確認ください。 

各設定のエクスポート/インポート方法

また、以下のドキュメントもあわせてご覧ください。

タスクスケジュールをコピーする方法

サーバ移行ガイド

0
0 383
記事 Mihoko Iijima · 8月 30, 2021 2m read

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

InterSystems 製品には、テーブルのコンテンツに関する統計を収集し、クエリの最適化に役立てる「テーブルチューニング機能」があります。

設定方法は、以下のドキュメントをご参照ください。

ターミナルでは次のコマンドを実行します。

do $SYSTEM.SQL.Stats.Table.GatherTableStats("スキーマ名.テーブル名")

 

 2021.1以前のバージョンでは以下メソッドを利用します。

Do $system.SQL.TuneTable("スキーマ名.テーブル名",1,1)

 

また、以下の資料もご参照ください。

1) パフォーマンス調査の基礎知識として必要なグローバル構造の解説やSQLの動作の仕組みからクエリプランの見方の解説

インターシステムズ・シンポジア2011の資料

2) パフォーマンスチューニングの例(P13~)

インターシステムズ・シンポジア2012の資料

3) ビットマップ・インデックスの圧縮やオプティマイザ・ヒントなど、Caché SQLのパフォーマンスを最大限に引き出すための情報について

インターシステムズ・シンポジア2014の資料

4) パフォーマンスに困ったときにどこに着目し、どのツールで調べていくか、お客様から日々ご相談をいただくカスタマーサポートから、解決に向かうアプローチの「イロハ」をご紹介するビデオ

動画:Performance 101

5) 開発者コミュティのパフォーマンス関連情報(performanceタグ)

performanceタグ

0
0 493
記事 Megumi Kakechi · 8月 25, 2021 2m read

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

リレーションシップが設定されており 1対n の n が多量の場合、そのリレーションシップの順次処理などで大量のメモリ消費となるケースがあります。

プログラムの中で多側オブジェクトを参照し内部的にスウィズル処理した後には、そのOREFを含む変数の解放(削除、他の値の設定など)だけでは、その多側オブジェクトとリレーションシップオブジェクトが解放されないことが原因です。

それらを完全にメモリから解放するためには、OREF変数の解放とRelationshipオブジェクトの%UnSwizzleAt<%Library.RelationshipObject >メソッドの実行による明示的なメモリ解放が必要です。
 

- 使用例 -

 Do {
    Set employee = company.Employees.GetNext(.key)
    If (employee '= "") {
        Write employee.Name,!
        // remove employee from memory
        Do company.Employees.
6
0 327
記事 Megumi Kakechi · 8月 26, 2021 2m read

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

こちらは、コンパイル時に既にそのクラスのインスタンスを開いている場合に起こるエラーです。

対処方としては以下の2つの方法があります。

  1. インスタンスを開いているプロセスまたはアプリケーションを終了する
  2. スタジオのビルドメニュのコンパイルオプション:コンパイルフラグ “使用中のクラスをコンパイル” をチェックしコンパイルを行う  


インスタンス化しているプロセスを特定したい場合は、以下のサンプルルーチンをお試しください。

/// Test.
0
0 223
お知らせ Mihoko Iijima · 8月 26, 2021

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

InterSystems Analytics コンテストのテクノロジーボーナスが発表されました!

 

Adaptive Analytics (AtScale) キューブの使用- 4 ポイント
InterSystems Adaptive Analytics では、分析ソリューションに AtScale キューブを作成して使用するオプションを提供しています。

今回、コンテスト用に準備した AtScale サーバ(URLと認証情報は Discord チャンネルで確認できます)にあるキューブを使用するか、JDBC 経由で IRIS サーバに接続し、新しいキューブを作成することもできます。

AtScale を使用した Analytics ソリューションの可視化レイヤでは、Tableau、PowerBI、Excel、Logi を利用することができます。

Adaptive Analytics のドキュメントAtScale documentation

オンラインラーニング(InterSystems IRIS Adaptive Analytics Essentials)

0
0 117