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

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

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

0 0
0 121

インターシステムズは、InterSystems IRIS 製品でプロセスメモリの使用量が増加する不具合を修正しました。

対象バージョン:
InterSystems IRIS 2022.2, 2022.3, 2023.1.0
InterSystems IRIS for Health 2022.2, 2022.3, 2023.1.0
HealthShare Health Connect 2022.2, 2022.3, 2023.1.0
Healthcare Action Engine 2022.1



対象プラットフォーム: すべて

0 0
0 121

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

アプリケーション等がデータベースにアクセスしている最中に、データベースの最大サイズの変更や未使用領域の開放などのデータベース設定変更を行うことにより、データベース整合性等に悪影響を及ぼすことはありません。

しかし、未使用領域の開放などは、ディスクアクセスの増加やメモリの使用等でシステムに負荷をかける可能性があるため、その観点からシステム運用に影響が出ないよう注意が必要です。

0 0
0 120

インターシステムズは、InterSystems IRIS® および Caché が、Windows 上でラージ・ページが割り当てられていることを示しているにもかかわらず、その利点を利用しないことがある問題を修正しました。この問題は、システム・パフォーマンスに悪影響を及ぼす可能性があります。

0 0
0 120

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

2022年3月9日開催「InterSystems Japan Virtual Summit 2022」のセッション「SQLでどこまでできる? ~データロードから機械学習まで~」のアーカイブを YouTube に公開いたしました。

(プレイリストはこちら


データベースのテーブルにアクセスするためにSQLを利用するのは「ご飯を食べるときは箸を使います」と同じぐらい開発者にとって当たり前のことだと思いますが、SQLで分析や機械学習まで行えたらどうでしょうか。

便利ですよね?

本セッションではInterSystems IRISのSQLを使って、どこまでの操作ができるのかについて、デモを交えながらご紹介します。

ぜひ、動画をご参照ください。

0 0
0 120

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

システムのパフォーマンスが低下した場合、OSやインターシステムズ製品の様々なツールを使用して情報収集を行い
  ”通常時と比較して、どこがどの程度変わっているか”
を確認することで、問題のある箇所を特定できます。
(逆に、通常時の状況が不明な場合、パフォーマンス問題点の切り分けが非常に困難となる場合もあります。)

いざ という時に備え、通常時のパフォーマンスを確認することは、大変重要な情報となります。


収集情報詳細は、以下のドキュメントをご参照ください。

0 0
0 120

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

VSCodeのObjectScriptエクステンションを利用してInterSystems製品に接続するときに「プライベートWebサーバ (*1)」ではなく、「Webサーバ(IISやApache)」を利用される場合、接続時に使用するREST用パスが通るようにWebサーバに仮想パスを追加する必要があります。

(*1) プライベートWebサーバとは、バージョン2023.1以前のInterSystems製品をインストールすると自動でインストールされる簡易的なApacheで、52773番ポートで管理ポータルやWebアクセスのテストにご利用いただけるWebサーバです。(本番運用環境には適さない簡易的なWebサーバです)

対象バージョン:2023.1以下のInterSystems製品

追加が必要なパス: /api

0 0
0 120

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

アプリケーションに求められる要件は日々複雑化しています。

しかし、複雑化するからといって開発のスピードおよび実行時のスピードが遅くなることは許されません。

複雑な要件を満たすために現在主流の手法ではソフトウェアスタック上の様々な部品(ミドルウェア、ライブラリ、フレームワークなど)を組み合わせる方法を取ります。

この方法は、様々なものを学習するための時間、それらを連携する方法、経年で様々なものが進化していくことに伴って各部品間の関係性が変化するためにそれらを維持管理していくための手間など様々な付帯的な作業が必要です。

結果として本来行いたいことに集中して取り組む前に付随する作業に忙殺されることになり開発生産性があがりません。
しかも実行時にも様々な部分が連携するためのオーバーヘッドを避けることができず期待する性能を確保することも困難になります。

0 0
0 120

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

Question:

IRISは医療に特化したシステム統合製品ですか?

Answer:

InterSystems IRIS Data Platform(以下IRISと表記)は、金融、物流など様々な業種でお使いいただいています。

また、IRISから派生して医療分野に特化したInterSystems IRIS for Health(以下IRIS4Hと表記)という製品があります。

IRIS4Hでは医療分野で良く使われる情報交換規格 HL7(FHIR,V2,V3,CDA)、DICOM、X12 などへの対応に力を入れています。

医療分野のお客様には、IRIS4Hをご利用いただくようお願いしております。

0 0
0 120

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

次のコンテストの詳細が決定しましたのでお知らせします📣

今回は、FHIRの知識を共有するためのコンテストを企画しています。

🏆 InterSystems IRIS for Health コンテスト: FHIR for Women's Health 🏆

InterSystems FHIR または、InterSystems Healthcare Interoperability を使用したアプリケーションを作成してご応募ください。

    期間: 2022年11月14日~12月4日

    賞金: $13,500!

    >> 応募はこちらから! <<

    1 0
    0 120

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

    以下のようにユーザ名、パスワードを引数に持ち、認証が成功した場合はユーザ名、失敗したときは""(NULL)を返すルーチン(SecTest^SecTest)を作成し、標準の認証システムを書き換えることができます。

    SecTest(user,pass)
    // user1のパスワードがuser1の場合、認証OKのログを作成
    if user="user1",pass="user1" {
    set ^sqllog($i(^sqllog))="認証OK;"_$horolog_";"_user
    quit user
    }
    // 認証できなかった場合、認証NGのログを作成
    set ^sqllog($i(^sqllog))="認証NG;"_$horolog_";"_user
    quit ""
    0 0
    0 119

    こちらの記事 では、ヘルスモニタのセンサー値を ^%SYSMONMGR ユーティリティを使用して変更する方法をご紹介しました。
    今回は、ヘルスモニターセンサー値を コマンド(プログラム)で変更する方法をご紹介します。


    ヘルスモニタは、CPUUsage(CPU使用率)、DBLatency(DBからのランダム読取に要する時間)、DiskPercentFull(DBのディスク使用率)などの該当しきい値を超えた場合に、通知を生成します。
    ヘルスモニタのセンサー値(閾値)について

    センサーのしきい値を超えると、IRISのシステムログ(messages.log)に以下のようなメッセージが記録されます。

    3 0
    0 119

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

    HL7 メッセージの送受信を行うプロダクションでは、以下3個のグローバルが非常に大きくなることがあります。

    グローバルの大きさを確認する場合は、^%GSIZEユーティリティを利用します。詳細は関連トピック/記事をご参照ください。

    ^EnsHL7.Segment
    ^EnsLib.H.MessageD
    ^EnsLib.H.MessageI

    HL7メッセージは EnsLib.HL7.Message.cls で定義されます。
    ^EnsLib.H.MessageD はデータを保存するグローバル、^EnsLib.H.MessageI はインデックスを保存するグローバルです。

    また、HL7メッセージは多数のセグメントで構成されており、メッセージデータを含むそれらのセグメントは ^EnsHL7.Segment に保存されます。

    0 0
    0 118

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

    第6回 InterSystems IRIS プログラミングコンテスト(Full Stackコンテスト) への応募、投票が全て終了しました。コンテストへのご参加、またご興味をお持ちいただきありがとうございました。

    今回のお知らせでは、見事受賞されたアプリケーションと開発者の方々を発表します!

    🏆 審査員賞 - 特別に選ばれた審査員から最も多くの票を獲得したアプリケーションに贈られます。

    1 1
    0 118

    InterSystems 製品のキットには Apache Web サーバが含まれています。
    これにより、お客様が外部Webサーバをインストールせずに Caché/IRIS 管理ポータルを動作させる為の便利な方法を提供しています。
    ただし、このWebサーバを実稼働インスタンスに使用しないでください。お客様は、システムに応じたニーズとセキュリティ/リスク要件に適合するWebサーバを別途インストールする必要があります。

    0 0
    0 118

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

    現ジャーナルファイル名の取得は、ジャーナリング API を利用します。

    ##class(%SYS.Journal.System).GetCurrentFileName()


    現ジャーナルファイルの使用量bytesの取得は、ジャーナリング API を利用します。

    ##class(%SYS.Journal.System).GetCurrentFileOffset()


    実行例は以下の通りです。

    0 0
    0 118

    FHIR関連トレーニングの中で複数の方よりいただいたご質問をご紹介していきます。


    IRIS for HealthのFHIRリポジトリでは、リソースPOST時のデフォルトの動作としてリポジトリ内でユニークな論理ID(id)を自動的に付与します。

    例えば、以下のようなPatientリソースをPOSTした場合

    0 0
    0 118

    プログラムによる本番環境アクセス

    プログラムで本番環境(インターフェース)を編集するには、相互運用性 apis と SQL クエリを組み合わせて使用できます。

    現在のネームスペース

    大まかに言えば、その時点で作業しているネームスペースと本番環境を知ることが重要です。

    // Object script 
    // アクティブなネームスペースはこの変数に格納される
    $$$NAMESPACE 
    // ネームスペースを出力
    Write $$$NAMESPACE
    
    # Python
    import iris
    # このメソッドからアクティブなネームスペースが返される
    iris.utils._OriginalNamespace()
    # ネームスペースを出力
    print(iris.utils._OriginalNamespace())
    >>> DEMONSTRATION
    

    現在の本番環境(アクティブまたは最後に実行した本番環境)

    本番環境の名前を知ることも重要です。次の API を使用してネームスペース内のアクティブな本番環境を取得できます。

    0 0
    0 118

    これは2023.1の開発者プレビュープログラムの第3弾となります。2023.1では多くのアップデートや機能強化が追加されており、カラムナーストレージの本番環境サポートや、Bulk FHIRの使用、MacOS 13 Venturaのサポートといった新機能が予定されています。これらの機能または改善点の一部は、今回の開発者向けプレビューで利用できない場合があります。

    今後のプレビューリリースは隔週で更新される予定であり、準備が整い次第、機能を追加していく予定です。より良い製品を一緒に作り上げていくために、開発者コミュニティを通じてフィードバックをお願いします

    ドキュメントは、以下のリンクからご覧になれます。これらは、発売が正式に発表される(General Availability - GA)までの間、数週間にわたって更新される予定です。

    0 0
    0 116

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

    クラス定義のプロパティの表示順は、スタジオのプロパティウィザードを利用して登録した場合は、末尾に追記されます。

    また、エディタ上の任意の場所でプロパティ定義文を記述する場合は、その場所に追記され、クラス定義が登録されます。


    つまり、定義者が記述した順番に登録されます。

    (スタジオが並び換えを行ったりはしません。)

    作成したクラス定義が、PersistentやSerialのようにデータベースに格納する属性を持ったクラス定義である場合、”初回のコンパイル”で クラス定義に対応するグローバル変数の定義情報=ストレージ定義を作成します。

    初回コンパイル以降に、プロパティ定義の追加が行われれば、そのプロパティに対応するグローバル変数のスロット番号を、末尾に追加し、ストレージ定義を更新します。

    以下の例は、クラス定義に対応するストレージ定義の例です。

    (初回コンパイル時の状態)

    0 0
    0 116

    皆さんこんにちは。

    第5回 InterSystems IRIS プログラミングコンテスト(FHIRコンテスト) への応募は終了しました。コンテストへのご参加、またご興味をお持ちいただきありがとうございました。

    今回のお知らせでは、見事受賞されたアプリケーションと開発者の方々を発表します!

    🏆 審査員賞 - 特別に選ばれた審査員から最も多くの票を獲得したアプリケーションに贈られます。

    1 0
    0 115

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

    TCP アダプタを使用するビジネスホストの [接続中を維持(StayConnected)]と[プールサイズ(PoolSize)]のデフォルト設定値は以下の通りです。

    StayConnected = -1(常時接続タイムアウト無し)
    PoolSize = 1

    ネットワークの問題でビジネスホストへの接続が切断された場合に、プロダクション側では切断されたことを検知できないため新しい接続を受け付けません。

    またこの状況の時、イベントログにも記録されません。

    StayConnected が デフォルト値(-1)の場合、接続がタイムアウトしないため新しい接続を受け付けるためには、ビジネスホストを再起動する必要があります。

    0 0
    0 115

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

    2022年3月9日開催「InterSystems Japan Virtual Summit 2022」のセッション「Embedded Python で広がる InterSystems IRIS の世界」のアーカイブを YouTube に公開いたしました。

    (プレイリストはこちら


    今や Python は最も人気のあるプログラミング言語の一つです。シンプルで機能的なコードが書けることや、なんでも揃う豊富なライブラリを利用できることなどが人気の理由です。

    Embedded Python は、IRIS に Python のランタイムを組み込み、ルーチンやメソッドを Python で書けるようにする画期的な機能です。

    IRIS 開発者の方にとって、広大な Python の世界が身近になります。InterSystems IRIS の新しいカタチを是非ご覧ください。

    0 0
    0 114

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

    2022年3月9日開催「InterSystems Japan Virtual Summit 2022」のセッション「オープンソースだけで IRIS on Kubernetes を動かそう」のアーカイブを YouTube に公開いたしました。

    (プレイリストはこちら


    Docker は使いこなせるようになってきたけど、Kubernetes はなかなか手を出すチャンスがないな、という方々を対象に手持ちの Windows/PC 上に K8s 環境を構築して色々試すことを最終目標としたセッションです。

    開発者コミュニティの記事「microk8sでKubernetesをお手軽に試す」との紙面連動です。

    ぜひご参照ください。

    0 0
    0 113

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

    InterSystems IRIS Business Intelligence 用メニューの Analytics(または DeepSee)を使用するためには、使用するネームスペース用ウェブアプリケーションパスを Analytics(またはDeepSee)に対応するように設定変更する必要があります。

    詳細については以下のドキュメントをご参照ください。

    【IRIS】
    InterSystems IRIS Business Intelligence の Web アプリケーション設定について

    【2015.1~2018.1】
    DeepSee の Web アプリケーション設定について

    【~2014.1】
    %CSPページへのアプリケーション・アクセスの制御について/特殊なケース: DeepSee

    0 0
    0 113

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

    InterSystems 製品の管理ツールやWebページのセキュリティ強化のため、%付きのWebページ(例:管理ポータル上のユニットテストポータル、Webサービスクラスのテスト画面)に対するアクセスがより効率的に制御できるよう、新しいルールが追加されました。

    これによりデフォルトで参照可能なページ以外については、明示的に参照許可を設定する必要があり、設定しない場合参照エラーとなります。 以下のドキュメントをご参照いただき、必要に応じて参照許可を設定するようにしてください。


    %CSP ページへのアプリケーション・アクセスの制御について

    Webサービスクラスのテスト画面の場合は、以下をご覧ください。

    0 0
    0 113

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

    デフォルトではテーブルのカラムの順番はシステムが自動的に決定します。

    順番を変更するにはクラス定義を行う際にプロパティ・キーワード SqlColumnNumber でプロパティ毎に明示的に順番を設定してください。

    例:

    Property Name As %String [SqlColumnNumber = 2];


    ドキュメントは以下をご参照ください。

    0 0
    0 113

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

    ユーザ定義エラーとして使用したいエラーコードと対応するメッセージを記述したXMLを用意します。

    なお、エラーコードは負の整数で設定してください。

    <?xml version="1.0" encoding="UTF-8" ?> 
    <MsgFile Language="ja">
      <MsgDomain Domain="UserErrors">
        <Message Id="-111" Name="MyError">エラーが発生しました</Message> 
        <Message Id="-222" Name="MyError2">エラーが発生しました2</Message> 
      </MsgDomain>
    </MsgFile>
    

    XML ファイルが作成できたら使用したいネームスペースにロードします。

    1 0
    0 113