記事 Mihoko Iijima · 2025年6月30日 2m read ObjectScript での日付の比較方法(ObjectScript での SQL 関数実行方法) これは InterSystems FAQ サイトの記事です。 ObjectScript で日付の比較を行う場合、一旦 $HOROLOG 形式(内部数値)に変換することで算出しやすくなりますが、SQL 関数を利用して算出することもできます。 ObjectScript から SQL 関数を実行するには、%SYSTEM.SQL.Functions クラスを使用します。 #ObjectScript #SQL #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 5
記事 Mihoko Iijima · 2025年6月25日 3m read 管理ポータルの再下位メニューに対してアクセスを制限する方法 これは InterSystems FAQ サイトの記事です。 管理ポータルのシステム管理やシステムエクスプローラーなど最上位のメニューについては、事前定義ロールをユーザに付与することでアクセスを制限することができます。 最下位のメニュー、例えば [システム管理] > [構成] > [システム構成] > [ネームスペース] などは、事前定義ロールの %Manager を付与されたユーザであれば、全てのユーザが利用できてしまいます。 このページに対して、「%Manager ロールを持っているが、あるユーザは使用でき あるユーザは使用できない」のようにユーザ毎のアクセス制限を追加したい場合は、カスタムリソースを作成し再下位メニューに対して作成したカスタムリソースを付与することで制限を追加することができます。 手順は以下の通りです。 #システム管理 #セキュリティ #ヒントとコツ #管理ポータル #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 8
記事 Mihoko Iijima · 2025年6月24日 11m read 管理ポータルメニューにアクセスできるユーザを制限する方法 これは InterSystems FAQ サイトの記事です。 InterSystems 製品インストール時に用意されている事前定義ロールを利用して、ログインユーザ毎に管理ポータルメニュー(システム管理/システムエクスプローラー/システムオペレーション など)のアクセスを制限することができます。 管理ポータルメニューに対するアクセス制限を行うためには、管理ポータルへの「認証なし(UnknownUser)」アクセス(※1)を使用しない環境が必要です。 管理ポータル上部の「ログアウト」をクリックしてログイン画面が表示されない場合は、関連記事「管理ポータル/スタジオ/ターミナルにパスワード認証を設定するにはどうしたらいいですか?」をご覧いただき必要な設定を行ってください。 #システム管理 #セキュリティ #ヒントとコツ #管理ポータル #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 13
記事 Mihoko Iijima · 2025年6月1日 7m read InterSystems 製品のセキュリティの基本:ユーザとロール これは InterSystems FAQ サイトの記事です。 InterSystems 製品では、ユーザが持つロールによって「InterSystems 製品内で何ができるのか」が決まります。 では、ロールには何が含まれているのでしょうか。 ロールには、複数の特権を含めることができます。特権とは、リソース(保護対象)に対する許可の設定を指しています。 本記事では、IRIS の開発者である山田さん(Yamada) を例に、以下の内容をご説明します。 1) ロールから付与される特権(=リソースに対する許可)について具体例を利用した確認方法 2) ロールを利用したセキュリティ設定について 《ご参考》 #システム管理 #セキュリティ #ヒントとコツ #管理ポータル #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 23
記事 Mihoko Iijima · 2025年3月28日 4m read バージョン2025.1インストール時に指定する初期セキュリティオプションのデフォルトが「ロックダウン」に変わりました 開発者の皆さん、こんにちは。 先日、EM リリース新バージョン 2025.1 がリリースされました。 コンテナ版以外ですが、新規インストール時に指定する初期セキュリティオプションのデフォルトが「ロックダウン(Locked Down)」に変更となりましたので、今までとの違いについて以下ご説明します。 #システム管理 #セキュリティ #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 33
記事 Mihoko Iijima · 2025年2月27日 1m read ソリューションセミナー:アーカイブビデオ一覧 皆さん、こんにちは! 2025年2月から開始しました「InterSystems ソリューションセミナー」アーカイブビデオのまとめページを作成しました。 ソリューションセミナーでは、企業の様々な課題に対する解決方法と、それを InterSystems 製品を活用してどのように解決するかについて各回テーマを設けご紹介してまいります。 #Webセミナー #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 1 0 60
記事 Mihoko Iijima · 2025年1月21日 16m read Teams チャネルにメッセージを IRIS から送信してみる 開発者の皆さん、こんにちは。 Teams ワークフロー Webhook を用意すると、curl コマンドや REST クライアントを利用して Teams チャネルに任意メッセージを簡単に送信できるので、IRIS や IRIS の Interoperability を使って自動的に何か情報を入手+必要なときだけ Teams チャネル通知ができたら面白いな、と思い試してみた内容をご紹介します。 以下、Teamsワークフローの作成例です。 #Embedded Python #Python #REST API #相互運用性 #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 4 0 0 73
記事 Mihoko Iijima · 2025年1月13日 1m read ALARMエラーが発生する理由 これは InterSystems FAQ サイトの記事です。 <ALARM>エラーは、クライアントアプリでタイムアウトが発生し、その結果InterSytemsサーバのプロセスがあわせて終了している状況をあらわしています。 クライアントアプリで、タイムアウト設定を無効にすることで回避できる可能性があります。 例えば、クライアントアプリから初回実行するSQL文がある場合、初回実行時のみInterSystems製品内部にクエリキャッシュ(=コンパイル済クエリ)を生成するため(※1)通常実行よりも時間がかかります(2回目以降の実行ではコンパイルは行われません)。 例えば、コンパイルに非常に時間がかかるSQL文の初回実行をクライアントアプリから命令し、タイムアウト以内に応答が戻らない場合 <ALARM> エラーが発生します。 #システム管理 #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 31
記事 Mihoko Iijima · 2025年1月9日 2m read データベースミラーリングを構成している環境でシステム開始時の処理を追加する方法 これは InterSystems FAQ サイトの記事です。 InterSystems製品では、システム開始時に任意の処理を追加できます。 データベースミラーリングを構成していない環境では、%ZSTARTルーチンのSYSTEMラベルを作成することで任意の処理を実装できますが、データベースミラーリングを構成している環境では、このルーチンでは動作しない処理があります。 ご参考:^%ZSTART ルーチンと ^%ZSTOP ルーチンによる開始動作と停止動作のカスタマイズ 理由として、ミラーリング構成の場合、ミラーデータベースへのアクセスはミラーリングサービスが開始されプライマリメンバとなるまでReadOnlyとなります。 #システム管理 #ヒントとコツ #高可用性 #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 59
記事 Mihoko Iijima · 2025年1月6日 2m read JSON文字からダイナミックオブジェクトを作成する際、エラー #5035: 一般例外 名前 'Premature end of data'エラーが出る これは InterSystems FAQ サイトの記事です。 POST要求で受信したBodyのJSON文字列を、REST ディスパッチクラス内メソッドでダイナミックオブジェクト(%DyamicObject)に変換する際、以下エラーが発生する場合があります。 #JSON #ObjectScript #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 80
記事 Mihoko Iijima · 2024年12月26日 2m read IISにインストールしたCachéのCSPゲートウェイからIRISのWebゲートウェイにアップグレードする方法 これは InterSystems FAQ サイトの記事です。 方法は2種類あります。 1) 同一サーバにIISとCachéがインストールされている環境をそのままアップグレードする場合は、IRIS(※)インストールキットを起動し「CACHE(CONVERSION)」からCSPゲートウェイとCaché両方をアップグレードします。 2) IISがIRISとは異なるサーバにインストールされている場合は、IRIS用Webゲートウェイキットを利用します。 (※)InterSystems IRISまたはIRIS for Health それぞれの方法は以下の通りです。 1)同一サーバにIISとCachéがインストールされている環境の「CACHE(CONVERSION)」でのアップグレード方法 a) インストーラーを起動します。 b) CACHE(CONVERSION)を選択します。 #Web Gateway #システム管理 #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 73
記事 Mihoko Iijima · 2024年12月24日 3m read Interoperability(Ensemble)の大量にたまったイベントログやメッセージをAPIを利用して削除する方法 これは InterSystems FAQ サイトの記事です。 イベントログの削除には、Ens.Util.LogクラスのPurge()メソッドを使用します。実行時以下の引数を指定します。 第1引数:削除数(参照渡し) 第2引数:保持日数(デフォルト7) メッセージの削除には、2種類の方法があります。 1) 2022.1.2以降の導入されたマルチプロセスで削除する方法 #システム管理 #ヒントとコツ #相互運用性 #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 48
記事 Mihoko Iijima · 2024年12月18日 2m read HTTPアウトバウンドアダプタを使用して、クエリパラメータとボディを両方送付する方法 開発者の皆さん、こんにちは。 試していたWebAPIでは、POST要求時クエリパラメータとボディの両方を送る必要がありましたので、HTTPアウトバウンドアダプタが提供するメソッド:Post()/PostFormDataArray()/PostURL() 辺りをドキュメントで確認していたのですが、残念ながら両方を渡せるように作成された丁度良いメソッドがありませんでした。 ドキュメント:HTTPアウトバウンドアダプタが提供するメソッド では、どのように送ったかというと、SendFormDataArray()の第3引数を利用して両方の情報を送付してみました。 #ObjectScript #ヒントとコツ #相互運用性 #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 1 0 0 67
記事 Mihoko Iijima · 2024年8月21日 3m read 2023年の応募作品紹介:第1回 InterSystems Japan 技術文書ライティングコンテスト 開発者の皆さんこんにちは! 9月2日から、🖋第2回 InterSystems Japan 技術文書ライティングコンテスト🖋 が始まります!応募の準備はばっちりでしょうか?👀 この記事では、昨年開催したコンテストに応募いただいた作品を審査員コメントを添えてご紹介します。 (審査員コメントは昨年11月に開催したミートアップ内で行ったコンテスト表彰式で紹介した内容です) ✅ @Akio Hashimoto さんが投稿された DockerにIRISを構築する簡単なチュートリアル 審査員コメント: #InterSystems IRIS #InterSystems IRIS for Health #IRIS contest 1 0 0 96
記事 Mihoko Iijima · 2024年8月9日 36m read Text to IRIS SQL with LangChain:Pythonプログラミングコンテスト受賞作品紹介! 開発者の皆さん、こんにちは! この記事は、2024年7月に開催された「InterSystems Pythonプログラミングコンテスト2024」でエキスパート投票、コミュニティ投票の両方で1位を獲得された @Henry Pereira さん @José Pereira さん @Henrique Dias さんが開発された sqlzilla について、アプリを動かしてみた感想と、中の構造について @José Pereira さんが投稿された「Text to IRIS with LangChain」の翻訳をご紹介します。 第2回 InterSystems Japan 技術文書ライティングコンテスト 開催! では、生成AIに関連する記事を投稿いただくと、ボーナスポイントを4点獲得できます📢 @José Pereira さんの記事を💡ヒント💡に皆様の操作体験談、アイデアなどを共有いただければと思います。 開発されたアプリSQLzilla についての概要ですが、Open Exchange の sqlzilla のREADMEに以下のように紹介されています。 「SQLzilla は、Python と AI のパワーを活用して、自然言語の SQL クエリ生成を通じてデータ アクセスを簡素化し、複雑なデータ クエリとプログラミング経験の少ないユーザーとの間のギャップを埋めます。」 #Generative AI (GenAI) #Python #SQL #Vector Search #データベース #InterSystems IRIS Open Exchange app 1 1 0 133
記事 Mihoko Iijima · 2024年7月16日 9m read 管理ポータルのウェブ・アプリケーションメニューの設定をプログラムで作成する方法 これは InterSystems FAQ サイトの記事です。 管理ポータル > [システム管理] > [セキュリティ] 以下の設定は、%SYSネームスペースにあるSecurityパッケージ以下クラスが提供するメソッドを利用することでプログラムから作成することができます。 以下シナリオに合わせたセキュリティ設定例をご紹介します。 シナリオ:RESTアプリケーション用設定を作成する 事前準備 シナリオの中で使用するソースを2種類インポートします。 アプリケーション用RESTディスパッチクラスをインポートします。 #ObjectScript #システム管理 #セキュリティ #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health #Health Connect 1 0 0 129
記事 Mihoko Iijima · 2024年7月11日 4m read 管理ポータルのユーザ設定をプログラムで作成する方法 これは InterSystems FAQ サイトの記事です。 管理ポータル > [システム管理] > [セキュリティ] 以下の設定は、%SYSネームスペースにあるSecurityパッケージ以下クラスが提供するメソッドを利用することでプログラムから作成することができます。 #ObjectScript #システム管理 #セキュリティ #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health #Health Connect 1 0 0 81
記事 Mihoko Iijima · 2024年7月9日 2m read WriteDaemon Alertが出力される原因について これは InterSystems FAQ サイトの記事です。 メッセージログ(messages.log)/コンソールログ(cconsole.log) に以下のようなメッセージが表示される場合があります。 03/22/18-14:27:34:624 (1851) 2 [SYSTEM MONITOR] WriteDaemon Alert: Write Daemon still on pass 320186 このメッセージ出力は、ライトデーモンのデータベースファイルへの書き込み処理の遅延を示しています。その原因としては、ディスクI/O負荷が高く、そのI/O要求量に対してディスク処理性能が不足していることが考えられます。 ディスクI/O負荷の原因としては以下が考えられます。 #システム管理 #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health #Health Connect 1 0 0 83
記事 Mihoko Iijima · 2024年7月7日 4m read 監査ログをファイル出力する方法 これは InterSystems FAQ サイトの記事です。 監査ログはシステムDB内テーブル(%SYS.Audit)に記録されていますので、そのテーブルに対するクエリを実行して抽出したり、%SYS.Auditテーブルに用意されていストアドプロシージャを利用して情報を取得しファイル出力するようにプログラムを用意することもできます。 以下にご紹介する内容は「監査ログをプログラムで出力(ユーザやイベント指定など)する方法」に関連した内容で、監査ログのファイル出力を管理ポータルの機能を利用した例とプログラムを利用した例でご紹介します。 #ObjectScript #システム管理 #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health #Health Connect 1 0 0 118
記事 Mihoko Iijima · 2024年7月4日 9m read Embedded Python利用時にエラーが発生した場合の対応方法のご紹介 これは InterSystems FAQ サイトの記事です。 PythonスクリプトファイルやPythonで記述されたIRIS内メソッドを呼び出す際、エラーが発生した場合の対応方法をご紹介します。 説明使用するコードや資料PDFは公開しています👉 test1.py、FS.Utilsクラス、コードのコピー元、ビデオで解説している資料PDF Embedded Python 自習用ビデオをご用意しています(項目別にYouTubeプレイリストをご用意しています)。 各プレイリストについて詳しくはこちらをご参照ください👉【はじめてのInterSystems IRIS】Embedded Python セルフラーニングビデオシリーズ公開! #Embedded Python #ObjectScript #Python #エラーハンドリング #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 1 0 0 308