InterSystems IRIS for Health™は、世界で最も重要なデータを管理する医療アプリケーションの迅速な開発を目的に特別に設計された世界初、かつ唯一のデータプラットフォームです。 トランザクションの処理と分析、拡張可能な医療データモデル、FHIRベースのソリューション開発、医療情報の相互運用性に関わる標準規格への対応など、すぐに使える強力な機能を搭載しています。 これらすべての機能により、開発者は価値を実現し、画期的なアプリケーションをすばやく構築することができます。 詳細はこちらをご覧ください
開発者の皆さん、こんにちは!
12月3日(水)13時半~のミートアップへの参加申し込みは、お済でしょうか??👀
今年のミートアップは、開発者向けウェビナーでもお届けしておりましたが 🎣釣り人ビギナーサポートAIを作ろう!🎣 をテーマとしたワークショップを行います。
ということで、今年のグッズは、🎣釣りにちなみましてこちらです🐟
.png)
ガジェットポーチです!(現在デザイン印刷中のため、仕上がりのイメージ図となります。)
↓パソコンと接続するケーブル類など収納できます!↓
.png)
開催概要👉「第 3 回 InterSystems Japan 開発者コミュニティ・ミートアップ in 東京開催のお知らせ」
申込はこちら
ミートアップ会場でお会いできることを楽しみにしております!🐟
.png)
BroadSea - InterSystems OMOP を使用したコア OHDSI のウォークスルー
インターシステムズは、InterSystems IRIS® data platform、InterSystems IRIS® for HealthTM、HealthShare® Health Connect のメンテナンスバージョン 2025.1.2 および 2024.1.5 をリリースしました。今回のリリースでは、最近お知らせした以下の警告や勧告の修正が含まれています。
- 警告:LogRollback 有効の場合にトランザクションロールバックが失敗する
- 勧告:ミラーデータベースダウンロードでグローバル変数の欠落の可能性
- 警告:SQL クエリにおける特定の外部結合パターンを使用すると間違った結果を返す
- 警告:未使用の共通テーブル式を含むクエリ実行時にエラーなく間違った結果を返す
- 勧告:SDA3 → FHIR 変換が失敗する
製品の品質改善のために、開発者コミュニティを通じてぜひご意見をお聞かせください。
ドキュメント
詳細な変更リストとアップグレードチェックリストはこちらのドキュメントをご参照ください(すべて英語, 2025.
これは InterSystems FAQ サイトの記事です。
ルーチンやメソッドを実行した際に以下のような<FRAMESTACK>エラーが発生する場合、DOコマンドの発行の入れ子数が多すぎて、それ以上スタック情報を保持できなくなったことを示しています。
<FRAMESTACK> error is reported when the routine has too many nested calls to DO command. You can check the current stack with $STACK value.可能性として高いのはプログラミング上のミスで再起的なメソッド/ルーチン呼び出しがループしている場合などです。
以下のようなプログラミングを行い、$STACK変数の値を確認することで、スタックのレベルがどのように変化しているのかを確認できます。
main() {
write "main 1: ",$STACK,!
do l1
write "main 2: ",$STACK,!
quit
}
l1() {
write "l1 1: ",$STACK,!
for i=1:1:5 {
do l2(i)
}
write "l1 2: ",$STACK,!これは InterSystems FAQ サイトの記事です。
%String型のプロパティをOrder Byの条件にしてクエリーを発行した際のデータは以下のような順番で並べられます。
SELECT * FROM Shop.Order order by StatusFlagnull
-1
-2
-99
0これは%String型(文字列型)のプロパティの照合順として正しい振る舞いです。
文字列プロパティに対し、+ をつけることで、数値照合と同じ照合順を得ることができます。
SELECT * FROM Shop.Order order by +StatusFlagnull
-99
-1
-2
0これは InterSystems FAQ サイトの記事です。
SQLアクセス( ADO含む)を行う場合は、SQLトランザクションを使用して、トランザクションを制御します。
一方オブジェクトアクセス(ObjectScript)ではtstart / tcommit / trollbackコマンド
(Native SDK for .NETでは IRIS の TStart(), TCommit(), TRollback() メソッド)
によってトランザクションを制御します。
この2種類のトランザクションモードを混在させて使用することはサポートされていません。
詳細は、以下のドキュメントをご参照ください。
また関連するメソッドの以下ドキュメントの注意事項にも
「このメソッドは Native SDK トランザクション・モデルを使用し、ADO.NET/SQL トランザクション・メソッドとは互換性がありません。
この 2 つのトランザクション・モデルを混在させないでください。」
と記載をしております。
.pyファイルの中でIRISのEmbedded Pythonを動作させる際にirispythonコマンドで実行する方法はドキュメント上で紹介されていましたので、以前より使用していました。
しかし、普通のpythonコマンドを使用するとうまく実行できなかったのですが、最近その謎(原因)が解けたので紹介します。
これは、Mac特有の問題である可能性が高くWindowsやLinuxでは何の問題もなく実行できるのかもしれません。
エラーは以下のようなエラーです。
File "/opt/iris/lib/python/iris.py", line 34, in <module>
from pythonint import *
ImportError: IrisSecureStart failed: IRIS_ATTACH (-21)このエラーの原因は、シェルの実行ユーザーとirisのオーナーが異なることが原因とのことです。
Macで普通にIRISをインストールするとそのオーナーはrootです。
従ってpython3コマンドを実行する時にsudoコマンドでrootになる必要があるということです。
開発者の皆さん、こんにちは!今年も開発者コミュニティミートアップを東京にて開催します!📣
【ミートアップ概要】
AI アプリの開発に興味があるけれど、何から始めれば良いか分からない方へ。
RAG、生成 AI などの用語は聞いたことがあるけど、そこまで詳しくない。
興味はあり、自分たちのシステムにも導入してみたい、でも、なかなか時間が取れなくて、学ぶチャンスがない。
そう悩んでいる方いませんか?
そんなあなたに!12月3日(水)AIアプリの開発をテーマとしたミートアップを開催します!
ミートアップでは、最初に、数々の AI 駆動開発をご経験されている方から、「AI駆動開発の最新情報」についてお話いただきます。
次に、AI アプリ作成のワークショップを通じて、具体的な開発の流れを短時間でご体験いただきます。
最後に、コミュニティメンバーとのネットワーキングの時間を楽しんでいただきます。この時間には、クイズ大会も行う予定です(軽食もご用意いたします)。
AI を「使う」から「創る」側へ。未来を拓く一歩を踏み出しませんか?
ぜひ、AI アプリ作成を体験できるミートアップにご参加ください。
《こんな方におすすめ》
- RAG、生成AIに興味があり、開発をしてみたい方
- 具体的に動くコードを見るとワクワクする方
開発者の皆さん、こんにちは!
この記事では、Developer Hub にまたまた新チュートリアル:InterSystems IRIS for Health:デジタルヘルスの相互運用性 が追加されましたので、体験内容についてご紹介します。(準備不要でブラウザがあれば試せるチュートリアルです!)
チュートリアルでは、InterSystems IRIS for Health を使用しているのですが、IRIS for Health の持つ機能により以下のような相互運用性シナリオを作成できます。
- HL7、CDA、FHIR、DICOM のデータルーティングを管理
- HL7 から FHIR への変換、CDA から HL7 への変換、FHIR から CDA への変換
- 異なるシステムと API との間のデータフローを確立
チュートリアルの中では、あるシステムから入力される HL7 メッセージを他のシステムに送信する流れをご体験いただけます。
また、データ変換が必要な場合の対応方法や HL7 メッセージの一部をテーブルに保存する流れなどもご体験いただけます。
例)HL7 メッセージの一部をテーブルに格納
.png)
アカウント作成やログインも不要で
ボタンをクリックするだけで始められます👍
ぜひ、お試しください!
開発者の皆さん、こんにちは!
この記事では、Developer Hub にあるチュートリアルに新しいチュートリアル:InterSystems IRIS ベクトル検索を使用した RAG が追加されましたので内容をご紹介します。(準備不要でブラウザがあれば試せるチュートリアルです!)
このチュートリアルでは、生成 AI アプリケーションの精度向上に向けて、ベクトル検索と検索拡張生成(Retrieval Augmented Generation)の活用を体験できます。
具体的には、InterSystems IRIS のベクトル検索機能を活用し、生成 AI チャットボット向けのナレッジベースをサンプルコードを利用して作成します。
また、Streamlit を使用して作成したチャットボットを動かしながら、ナレッジベースの情報を追加することで生成 AI からの回答が変化していくことを確認していきます。
.png)
アカウント作成やログインも不要で
ボタンをクリックするだけで始められます👍
チュートリアルへのリンクは「開発者コミュニティのリソース」からも辿れます!
.png)
ぜひ、お試しください!
少し遅れましたが、モバイルアプリケーションから接続する例を示して Workflow Engine に関する連載記事をようやく締めくくることにします。
前回の記事では、これから説明する例として、患者と担当医師の両方にとって高血圧症などの慢性病状の詳細な管理を可能にするアプリケーションを示しました。 この例では、患者は携帯電話からウェブアプリケーション(基本的に、デバイスに応答するように設計されたウェブページ)にアクセスし、ポータブル血圧計が IRIS インスタンスに送信する測定に基づく通知を受信します。
.png)
したがって、IRIS インスタンスへのアクセスは 2 つです。
- モバイルアプリケーションからのユーザーアクセス。
- 血圧の測定値を送信するデバイスアクセス。
この記事では、患者が測定値を生成するタスクを管理できる、最初のアクセスを確認します。
モバイルアプリケーションと IRIS の接続
この接続では、IRIS 内でウェブアプリケーションを構成するのが最も単純です。これを行うには、管理ポータルのシステム管理 -> セキュリティ -> アプリケーション -> ウェブアプリケーションからアクセスします。
.png)
次に、表示されるリストでアプリケーションの新規作成をクリックすると、以下のような画面が開きます。
.png)
この画面で、以下のフィールドを構成しましょう。
.png)
コミュニティの皆さん、こんにちは。
この記事では、私のアプリケーションである iris-AgenticAI をご紹介します。
エージェンティック AI の登場により、人工知能が世界とやりとりする方法に変革的な飛躍をもたらし、静的なレスポンスが動的な目標主導の問題解決にシフトしています。 OpenAI の Agentic SDK を搭載した OpenAI Agents SDK を使用すると、抽象化をほとんど行わずに軽量で使いやすいパッケージでエージェンティック AI アプリを構築できます。 これは Swarm という前回のエージェントの実験を本番対応にアップグレードしたものです。
このアプリケーションは、人間のような適応性で複雑なタスクの推論、コラボレーション、実行を行える次世代の自律 AI システムを紹介しています。
アプリケーションの機能
- エージェントループ 🔄 ツールの実行を自律的に管理し、結果を LLM に送信して、タスクが完了するまで反復処理するビルトインのループ。
- Python-First 🐍 ネイティブの Python 構文(デコレーター、ジェネレーターなど)を利用して、外部の DSL を使用せずにエージェントのオーケストレーションとチェーンを行います。
- ハンドオフ 🤝 専門化されたエージェント間でタスクを委任することで、マルチエージェントワークフローをシームレスに調整します。
- 関数ツール ⚒️ @tool で Python 関数をデコレートすることで、エージェントのツールキットに即座に統合させます。
- ベクトル検索(RAG) 🧠 RAG 検索のためのベクトルストアのネイティブ統合。
- トレース 🔍 リアルタイムでエージェントワークフローの可視化、デバッグ、監視を行うためのビルトインのトレース機能(LangSmith の代替サービスとして考えられます)。
- MCP サーバー 🌐 stdio と HTTP によるモデルコンテキストプロトコル(MCP)で、クロスプロセスエージェント通信を可能にします。
- Chainlit UI 🖥️ 最小限のコードで対話型チャットインターフェースを構築するための統合 Chainlit フレームワーク。
- ステートフルメモリ 🧠 継続性を実現し、長時間実行するタスクに対応するために、セッション間でチャット履歴、コンテキスト、およびエージェントの状態を保持します。
皆さん、こんにちは!
2025年2月から開始しました「InterSystems ソリューションセミナー」アーカイブビデオのまとめページを作成しました。
ソリューションセミナーでは、企業の様々な課題に対する解決方法と、それを InterSystems 製品を活用してどのように解決するかについて各回テーマを設けご紹介してまいります。
- 2025/9/3開催「~FHIR×OMOP CDMで広がる医療データの価値~InterSystems OMOPのご紹介」
- 2025/8/6 開催「ホスピタルショウ注目技術をざっくり解説!インターシステムズの最新情報」
- 2025/6/17開催「サイロ化されたデータを有効活用するには? InterSystems Data Fabric Studioのご紹介」
- 2025/4/24開催「InterSystems IRIS data platform 2025.1 EMリリース:新機能と改善点について」
- 2025/2/20 開催「開発効率化とシステム統合の実現:InterSystems IRIS data platform による、次世代システム基盤の構築」
ぜひご視聴ください!
コミュニティの皆さん、こんにちは。
従来のキーワードベースの検索では、ニュアンスのあるドメイン固有のクエリには対応できません。 ベクトル検索であれば、セマンティック認識を利用して、キーワードだけでなくコンテキストにも基づいたレスポンスを AI エージェントで検索して生成することができます。
この記事では、エージェンティック AI RAG(検索拡張生成)アプリケーションを作成手順を紹介します。
実装手順:
- エージェントツールを作成する
- インジェスト機能の追加: ドキュメント(例: InterSystems IRIS 2025.1 リリースノート)を自動的にインジェストしてインデックス作成を行います。
- ベクトル検索機能の実装
- ベクトル検索エージェントを作成する
- Triage(メインエージェント)に渡す
- エージェントを実行する
開発者の皆さん、こんにちは!本日(10月1日)よりコンテストへご応募いただけます💨
✅コンテスト詳細👉「第3回 InterSystems Japan 技術文書ライティングコンテスト 開催!」
✅応募方法👉「記事の投稿方法:第 1 回技術文書ライティングコンテスト」
✅応募記事一覧👉「技術文書ライティングコンテスト一覧」
この連載記事を終えていなかったことに気付きました!

今日の記事では、フロントエンドから最適なオプションを選択できるように、テキストに最も類似する ICD-10 診断を抽出するプロダクションプロセスについて説明します。
診断の類似度検索:
アプリケーション内で、HL7 で受け取った診断リクエストを示す画面から、医療従事者が入力したテキストに最も近い ICD-10 診断を検索できます。
.png)
検索プロセスを高速化するために、HL7 メッセージを取得する際に受信した診断をベクトル化したテキストをデータベースに保存しました。 これを行うために、メッセージから診断コードを抽出し、ベクトルを生成するメソッドにそれを送信する単純な BPL を実装しました。
.png)
受信した診断をベクトル化するコードは以下のようになります。
ClassMethod GetEncoding(sentence As %String) As %String [ Language = python ]
{
import sentence_transformers
# create the model and form the embeddings
model = sentence_transformers.SentenceTransformer('/iris-shared/model/')
embeddings = model.開発者の皆さんこんにちは!
技術文書ライティングコンテストの開始(10月1日)まであと少しとなりました!💨
このお知らせでは、今年の賞品を発表いたします!
↓
↓
👀
↓
↓
🎁賞品情報🎁
審査員投票とコミュニティメンバーからの「いいね」の数の合計で順位を決定します。
1位~3位を受賞された方は、各順位に記載された賞品の中からお好きな1点をお選びいただけます。(1位の方は1~3位の賞品を、2位の方は2~3位の賞品をお選びいただけます)
🥇 1位
- リカバリーウェア TENTIAL BAKUNEシリーズ
- スマートリング Re・De Ring
- アウトドアの体験ギフト EXCITING Gift Premium -エキサイティング プレミアム
🥈 2位
- MYTREX DR. HEAT NECK
- ソーダーストリーム TERRA スターターキット
- アウトドアの体験ギフト EXCITING Gift -エキサイティング
🥉 3位
- Bluetoothスピーカー
- モレスキン クラシックダイアリー Large
- スタバギフトカード(5000円)
🎁参加賞:投稿いただいた方全員に「モバイルバッテリー」をプレゼント!
1回目、2回目とは異なる賞品を!ということで賞品決めチームでいろいろ探してみました👀
高得点を狙う場合は、早めの投稿がおすすめです!
これは InterSystems FAQ サイトの記事です。
$System.Encryption.Base64Encodeに指定するデータは、UTF8にエンコードして渡す必要があります。
日本語が含まれるローカル変数をこのメソッドの引数として指定すると<ILLEGAL VALUE>エラーが返ります。
以下のようにUTF8に変換後引数として渡す必要があります。
set wLineData=$ZCONVERT(wLineData, "O", "UTF8")
詳しくは以下をご参照ください。
これは InterSystems FAQ サイトの記事です。
何の設定も行なっていない場合、GROUP BYやDISTINCTで指定したフィールドは大文字小文字を区別せずに全て大文字として処理されます。
これはGROUP BYやDISTINCTのグループ化がフィールドに対して定義された照合タイプに基づいて行われ、その文字列照合の既定値がSQLUPPERになっているためです。
以下のドキュメントに説明がある通り、DISTINCT は、フィールドに対して定義された照合タイプに基づいて、文字列値をグループ化します。
これを変更する方法は、以下の3種類になっています。
(A) %SQLSTRING または %EXACT照合関数を使用する
(B) フィールドの文字列照合を SQLSTRINGに変更する
また、フィールドにインデックスが設定されている場合には、インデックスの文字列照合も SQLSTRINGに変更する
(C) 管理ポータルで設定を変更する
※(B)について補足
・文字列照合をEXACTに設定しても動作しますが、一般的にはSQLSTRINGの使用が推奨されています。
・フィールドの文字列照合とインデックスの文字列照合は、同じ設定にすることが推奨されています。
開発者の皆さん、こんにちは!
10月1日(水)から今年の「技術文書ライティングコンテスト」が始まります!💨みなさま、応募の準備は進んでいますか??👀
この記事では、昨年開催したコンテストにご応募いただいた素晴らしい作品を審査員コメントを添えてご紹介します。
(審査員コメントは昨年 11 月に開催したミートアップ内で行ったコンテスト表彰式で紹介した内容です)
✅ @Akio Hashimoto さんが投稿された「Embedded Python を利用する時の注意点」
審査員コメント:
Embedded Pythonをこれから操作される人が同様の問題に遭遇したときの解決策が提示されているありがたい記事だと感じました。
昨年もコンテストに投稿いただき、今年同様に、これから体験される方向けの道標となるような素晴らしい記事を投稿いただいています。
✅ @Yusuke Kojima さんが投稿された「FHIR Object Modelを使ったInteroperability開発」
審査員コメント:
2024.
開発者の皆さん、こんにちは!
今年で 3 回目となりますが、✍ 技術文書ライティングコンテスト✍ 開催します!
📣9/26更新:賞品、参加賞決定しました!
📣 9/29更新:コンテスト投稿一覧ページ準備完了です!
📣 11/6更新:応募期間を1週間延長し、応募締切は11月24日(月)に変更しました!
テーマはいつもと同じで InterSystems IRIS/InterSystems IRIS for Health に関連した内容であればどのような内容でもご応募いただけます。
🎁 参加賞:投稿いただいた方全員に「モバイルバッテリー」をプレゼント!
🏆 特別賞:選ばれた3作品に、今年も特別賞あります!詳細はこちら
コンテストへの応募はとても簡単です。2025年10月1日(水)~11月17日24日(月)までの期間に開発者コミュニティに「IRISに関連した記事」を投稿してください。
もちろん!今年も🍆ボーナスポイント🍆あります!こちらをご参照ください!
.png)
これは InterSystems FAQ サイトの記事です。
こちらの記事では、ミラー環境をメジャーバージョン(例:2024.1.0 -> 2025.1.1)にアップグレードする際の手順についてご説明します。
こちらの手順は、「ミラー環境アップグレード時に計画的なダウンタイムを伴う」ことを前提とした手順になります。
※こちらのドキュメント にあるイメージの、「 Procedure 2: Major Version Upgrades with Planned Downtime」の手順です。
【注意1】
ミラーを構成するすべてのフェイルオーバーおよび DR 非同期メンバーは、同じバージョンの InterSystems IRIS である必要があります。異なるバージョンが許容されるのは、アップグレード中のみです。
アップグレードしたメンバーがプライマリメンバーになると、アップグレードが完了するまで、他のフェイルオーバーメンバーおよび DR 非同期メンバーは使用できません。
【注意2】
InterSystems IRIS for Health および Health Connect でミラーリングを構成する場合は、HSSYSを必ずミラーリングするようにしてください。また、アップグレードは2024.1以降のバージョンへ行うようにしてください。
.png)
プロフェッショナルな FHIR® から OMOP への変換
.png)
「プロフェッショナル」という言葉の使用に焦点を当て、それをある文脈に置いて考えてみましょう。これは業界の専門家によって書かれており、サポートと、動作に貢献する柔軟なオプションに対してガードレールをいくつか備えた有料サービスとしてまとめられているということです。オープンソースまたは自社開発のソリューションと比較して、(同じ機能を果たすかもしれませんが)拡張性やミッションクリティカルな価値の提供が検討材料となる点に重要な違いがあると感じます。OHDSI コミュニティは、OMOP データベースへの ETL というテーマに関して総合的な能力を備えており、たとえば WhiteRabbit は OMOP データベースを分析し、Rabbit in a Hat は ETL の設計に役立ちます。提供内容を改良するためにコミュニティツールが InterSystems の変換スタックに適用されたということに、株を空売りしてでも賭けるでしょう。
これは InterSystems FAQ サイトの記事です。
ダイナミックオブジェクトの%ToJSONメソッドを利用することで簡単にJSONデータを送信することができます。
但し、標準的な方法では、出力するJSONのデータがIRIS文字列の最大長(約32万文字 正確には$SYSTEM.SYS.MaxLocalLength()が返す値)を超えると<MAXLENGTH>エラーとなります。
これを回避するためには、文字列として返すのではなく、%ToJSONメソッドの出力先としてStreamを指定し、その結果作成されたそのStreamデータを順次読み取って、出力先に書き出すようにする必要があります。
以下のように処理できます。
ClassMethod bigjson() As %Status [ ProcedureBlock = 0 ]
{
set x={}
for i=1:1:100 {
set cmd=" set x.a"_i_" = ^a " ;; ^aのサイズは1MB
xecute cmd
}
set tmpStream = ##class(%Stream.GlobalCharacter).%New()
do x.これは InterSystems FAQ サイトの記事です。
JSON利用の普及に伴いインターシステムズは、JSONに関連する様々な機能強化をIRISに対して行なっています。
その一環として、SQLのJSON_OBJECTのサポートがあります。
この機能に関して現時点より(2025年6月)古いバージョンでは残念ながら制限や不具合が存在しています。
今後も機能強化やバグフィックスを継続していく予定となっているため、この機能の利用を検討および既に利用している方は最新バージョンでのご利用をお勧めします。
ここでは、現時点でわかっている制限事項/不具合についてお知らせします。
- VIEW経由でJSON_OBJECTを利用した場合にエラーとなる場合がある 以下のようなクラスとVIEWを定義します。
Class User.test Extends %Persistent
{
Property p1 As %String;
Property p2 As %String;
}
Class User.以前はMac上でDockerを動かす場合は、Docker for Macを使用していましたが、ある時点でマルウェア判定されてしまい、削除されてしまいました。
以下の記事によれば、最新版では解決しているようです。
Docker Desktop for Macがエラーで起動できない件(#7527)についての情報
そこで他の選択肢はないか調べてみるといくつか選択肢がありました。
その中でColimaというのがあり、設定してみました。
Colima で Docker と Docker Compose を使ってみた
設定も非常に簡単であり、実際のdockerやdocker composeの動かし方はほとんど変わりません。
一つColimaの方が良いと感じたのは、Docker for Macの場合、IRISのスクリプトの実行の結果として出力されるメッセージは、スクロールされて、Dockerコンテナの起動が終了すると、痕跡が残らないため途中でエラーが発生してもその場で確認できませんでしたが、Colimaの場合、ターミナル上で垂れ流されるだけなので、そのターミナルのスクリーンをロールバックすることで出力メッセージを確認できる点です。
これは InterSystems FAQ サイトの記事です。
$ZF(-100) は、OSコマンドまたはプログラムを子プロセスとして実行するのに使われますが、一緒に便利なキーワードを指定することが可能です。
$ZF(-100)でコマンドの実行がうまくできない、という経験をされた方も多いかと思います。
そんな時は、この便利なキーワードを使って原因の調査をしていきましょう。
キーワードには以下のようなものがあります。
| /SHELL | シェルを使用して program を実行する。既定では、シェルは使用されない。 |
| /STDIN=filename | 入出力リダイレクト入力ファイル |
| /STDOUT=filename | 入出力リダイレクト標準データ出力ファイル |
| /STDERR=filename | 入出力リダイレクト標準エラー出力ファイル |
| /LOGCMD | 結果として得られるコマンド行を messages.log に記録する |
| /NOQUOTE | コマンド、コマンド引数、またはファイル名の自動引用を禁止する |
使用方法は、以下のようになります。
write $zf(-100,"/SHELL /LOGCMD /STDERR=err.log","command1","command2",.開発者の皆さん、こんにちは!
Windows 版 IRIS/IRIS for Health 2025.1 以降で Embedded Python をご利用いただく場合、Windows に Python のインストールが必要になりました。
以前のバージョンから Embedded Python をご利用いただいている場合は、新しいバージョンにアップグレードした後、Python のインストールと IRIS 側に必要な設定がありますのでご注意ください。
※ 2024.1 以前のバージョンでは、IRIS インストールと同時にインストールされる Python ご利用いただく必要があったため、Windows への Python インストールは不要でした。
補足:フレキシブル Python ランタイム機能の導入により、OS にインストールされた Python のバージョンを IRIS 側で指定できるようになりました。
詳細はドキュメントもご参照ください:フレキシブル Python ランタイム機能の概要
Embedded Python 利用までの手順は以下の通りです。
1) サポートする Python のバージョンを確認
サポートしている Python のバージョンを確認します。(Windows は、Python 3.9以降)
前回、macOS上でLibreOfficeからODBC経由でアクセスするためのセットアップについて記事を書きました。
今回 .Net経由でODBCにアクセスする方法を試したので報告します。
LibreOfficeの場合、iODBCでしたが、.Netの場合は、unixODBCを使用します。
従来のバージョンでは、IRISのunixODBCドライバーはUnicode対応(ワイド)でなかったため、.NetのODBCでは日本語を正しく処理できませんでしたが、2025.2よりワイドドライバーが追加されたため正しく処理できるようになりました。
今回.Net経由のアクセスを試した理由は、ODBC版Cache DirectエミュレータをMacで動かせないかと考えたからです。
こちらのリポジトリにも設定方法の詳細を記載していますが、Mac上でunixODBCドライバーを設定する方法を紹介します。
- IRISバージョン
unixODBCのUnicode(ワイド)版のドライバーが必要なため、IRIS 2025.2以降のバージョンが必要です。
- unixODBCのインストール
Homebrewを使用してインストールします。
.png)
