記事 Mihoko Iijima · 2024年3月11日 2m read Embedded Pythonで$LIST()形式のデータを扱う方法 これは InterSystems FAQ サイトの記事です。 現時点(2024年3月)では、コミュニティに掲載されているPythonライブラリ「iris-dollar-list」を利用することでIRISの$LIST()形式のデータをPythonのリストとして利用することができます。 ※標準ツールではありませんがご利用いただけます。詳細はコミュニティの記事「もう1つの $ListBuild() の実装:Pythonライブラリ「iris-dollar-list」」をご参照ください。 WindowsにインストールしたIRISで使用する場合は、以下の方法で「iris-dollar-list」をインストールしてください。 ※Windows以外にインストールしたIRISでは、pipコマンドを利用した通常の方法でインストールできます。 #Embedded Python #ObjectScript #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 0 0 1 27
記事 Mihoko Iijima · 2024年3月6日 2m read プロダクションの設定項目をクラスメソッドで取得する方法 これは InterSystems FAQ サイトの記事です。 Ens.Directorクラスのクラスメソッドを使用して取得できます。 プロダクション名(FAQSample.Interop.Production)とホスト名(FAQSample.Interop.FileOperation)を指定して設定リストを取得する方法は以下の通りです。 #ヒントとコツ #相互運用性 #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 29
記事 Mihoko Iijima · 2024年3月4日 9m read オブジェクト同時(並行)処理オプションについて これは InterSystems FAQ サイトの記事です。 永続クラス定義(またはテーブル定義)に対してオブジェクト操作でデータの参照・更新を行うとき、オブジェクトオープンで使用する%OpenId()、オブジェクトの削除に使用する%DeleteId()の第2引数を使用して並行処理の制御方法を選択できます。 ご参考:オブジェクト同時処理のオプション 既定値は1です。(永続クラスのDEFAULTCONCURRENCYクラスパラメータでデフォルト値を指定できます。特に変更していない場合は 1を使用します) 並行処理の基本事項は以下の通りです。 #オブジェクトデータモデル #データベースのトランザクション処理 #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 32
記事 Megumi Kakechi · 2024年3月3日 2m read ユーザではなくロールに対してSQL権限を割り当てる方法 これは InterSystems FAQ サイトの記事です。 ユーザに権限を与えたい場合、「GRANT」コマンドや「GrantPrivilegeメソッド」を使用しますが、ロールに対しても権限を与えることができます。 例えば、特定スキーマにのみ何でもできるロールを作成し、それを特定のユーザに割り当てるようなことが可能となります。 こちらの記事では、その方法をご紹介します。 (1) GrantPrivilegeメソッドを使用して「スキーマXXX に何でもできるロール」を作成し、(2) 該当ユーザに (1) のロールを割り当てる ★GRANT文を使う場合 #SQL #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 37
記事 Mihoko Iijima · 2024年2月29日 3m read インデックス再構築が終わるまで新しく定義したインデックスを使用させない方法 これは InterSystems FAQ サイトの記事です。 新しいインデックスを定義した後、インデックスの再構築が完了する前にクエリを実行するとデータが存在しているにもかかわらず「検索結果0件」や検索結果数が徐々に増えるような状況が発生します。 インデックスを永続クラス定義(またはテーブル定義)に追加しコンパイルすることで今まで使用していたクエリ実行経路が削除され、再度同じクエリを実行するタイミングで新しいインデックス定義を含めた実行経路が作成されるためです。(この時にインデックス再構築が完了していないとインデックスデータが存在しない、または不完全であるため0件や徐々に検索結果数が増えるような状況を起こします。) これを起こさなために、新しいインデックスの再構築が終了するまでクエリオプティマイザにインデックスを使用させないように指定する方法が用意されています。 ※インデックスの再構築が完了したら、必ず指定を元に戻してください。 #SQL #インデックス付け #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 26
記事 Toshihiko Minamoto · 2024年2月29日 6m read Journal File Indexer (JP) コミュニティの皆さん、こんにちは! この記事では、私の最新のアプリケーションである Journal File Indexer をご紹介します。 このアプリケーションの開発は、ポータルアイデアの DPI-I-270 に基づいています。 簡単に言えば、このアプリケーションではデータベースでログファイルを読み込んでインデックス作成できます。 製作理由 管理ポータルでログファイルの検索機能を使用したことがあるなら、タイムアウトエラーになったり、ページが空になったりしたことがあるのではないでしょうか。 この問題は通常、大規模なジャーナルファイルを検索する場合に発生します。 Journal File Indexer は、ファイルをデータベースに読み込んで、検索速度を大幅に高めることで、この問題を解決します。 復元プロセス中にはもう 1 つの問題が発生します。 ログファイルでグローバルエントリを検索し、古い値または新しい値を復元したくても、管理ポータルにはこの特定の機能がありません。 そのため、これを達成するにはルーチンをコーディングする必要があります。 Journal File Indexer を使うと、この復元機能を統合できます! #ジャーナリング #ツール #デバッグ #InterSystems IRIS #InterSystems アイデアポータル Open Exchange app 1 0 0 29
記事 Megumi Kakechi · 2024年2月28日 2m read InterSystems IRIS との通信に SSL/TLS を使用する際のクライアントの構成について これは InterSystems FAQ サイトの記事です。 InterSystems IRIS との通信に SSL/TLS を使用する際のクライアントの構成は、使用する技術によって変わってきます。 1. ODBCクライアント、IRISクライアントから接続の場合(IRISスタジオやターミナルなど)2. .NET クライアントから接続の場合(SSLDefs.iniは要りません) ★1.ODBCクライアント、IRISクライアントから接続の場合(IRISスタジオやターミナルなど) ODBCやIRISクライアントから接続する場合は、以下の記事にある設定が必要となります。具体的には、SSLDefs.iniという設定ファイルを作成し、決められた場所に配置します。 #セキュリティ #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 39
記事 Mihoko Iijima · 2024年2月27日 5m read もう1つの $ListBuild() の実装:Pythonライブラリ「iris-dollar-list」 1. iris-dollar-list DollarListは、Pythonのための$LIST()インタープリタです。 このインタプリタが作成された理由は以下の通りです。 Pythonで $LIST()を使いたいため。 Embedded Python で$LIST()がサポートされていないため。 NatveAPIでは、$LIST()の中に$LIST()のデータを埋め込むことをサポートしていないため。 この機能は、開発途中です。現時点では、$LIST()の中に、$LIST()、int 、string のデータを含めることができます。 作成中タイプ:fload、decimal、double このモジュールはPypiで利用できます: pip3 install iris-dollar-list Embedde PythonとNativeAPIに対応しています。 #InterSystems IRIS Open Exchange app 2 1 0 41
記事 Mihoko Iijima · 2024年2月27日 7m read REST経由で情報を入力する場合の Interoperability(相互運用性機能)のサンプル これは InterSystems FAQ サイトの記事です。 InterSystems製品のInteroperability(相互運用性機能)を利用する際、REST経由で情報入力を行う場合の作成方法についてサンプルプロダクションを利用しながらご紹介します。 サンプルはこちら👉https://github.com/Intersystems-jp/FAQ-Interop-REST 作成概要 サンプルプロダクションの流れ 作成方法 サンプルのインポート #ObjectScript #REST API #ヒントとコツ #ビジネスサービス #相互運用性 #InterSystems IRIS #InterSystems IRIS for Health 1 0 0 39
記事 Toshihiko Minamoto · 2024年2月26日 10m read IrisApiTester による API テストの自動化: 開発者ガイド #API #チュートリアル #テスト #InterSystems IRIS Open Exchange app 1 0 0 30
記事 Toshihiko Minamoto · 2024年2月16日 3m read IrisApiTester 2.0 の新機能 コミュニティの皆さん、こんにちは! IrisApiTester の新しいバージョンを公開しました。以下のようないくつかの新機能が含まれています。 外部リポジトリ: コレクションのファイルをウェブページに手動でドラッグする代わりに、リポジトリ(GitHub または Bitbucket)のコレクションを使用できる機能を追加しました。 プルして実行: リポジトリの変更を自動的にプルしてテストを実行する新しいエンドポイントを作成しました。 ユニットテスト / 統合テスト: ユニットテストと統合テストで IrisApiTester を使用する例を追加しました。 CI/CD: GitHub などのワークフローでコミットの完了ごとにコレクションのリポジトリの変更を自動的にプルし、テストを実行して Google Chat に結果を送信するための新しいエンドポイントを追加しました。 外部リポジトリ: #API #テスト #InterSystems IRIS Open Exchange app 1 0 0 29
InterSystems公式 Ayumu Tanaka · 2024年2月15日 1m read Caché, Ensemble, HSAP 2018.1.9 リリースのご案内 インターシステムズは、Caché, Ensemble, Health Connect HSAP のメンテナンスリリース(MR) 2018.1.9をリリースしました。本リリースは、幅広い領域で多くのアップデートが行われたメンテナンスリリースです。 Caché と Ensemble 製品のフルインストールキットは、WRC の Software Distribution ページからダウンロードすることができます。 #リリース #Caché #Ensemble #InterSystems公式 1 0 0 14
記事 Toshihiko Minamoto · 2024年2月7日 2m read Postman で Newman テストを作成する方法 コミュニティの皆さん、こんにちは! 私の IRIS Api Tester というアプリで使用する Postman コレクションのテストを作成する方法を説明します。 Newman とは? Newman は、Postman コレクションを拡張可能な方法で自動的に実行できるコマンドラインツールです。 Newman でテストを作成することで、API エンドポイントの信頼性と正確性を確実にすることができます。 この記事では、Postman で Newman のテストを作成する方法と開始に役立つ実用的な例を紹介します。 Postman コレクションを作成したら: テストスクリプトを書き始めることができます。 #API #REST API #テスト #InterSystems IRIS #InterSystems IRIS for Health Open Exchange app 2 0 0 81
記事 Megumi Kakechi · 2024年2月6日 4m read Native SDK (NativeAPI) for .NET を使用する簡単なサンプルのご紹介 需要はそんなに多くはないのですが、時折「Native SDK (Native API) for .NET の使い方」に関するご質問を受けることがありますので、簡単に試せるサンプルをご紹介します。 Native SDK (Native API) for .NET を使用すると、ObjectScript のクラスメソッドを、ネイティブの .NET メソッドを呼び出すのと同じように、.NET アプリケーションから簡単に呼び出すことができます。また、グローバルへのアクセスも簡単に行えます。こちらの記事では、VB.NET のサンプルコードをご紹介します。 以下の手順で実行していきます。 #.NET #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 2 0 0 46
記事 Toshihiko Minamoto · 2024年1月31日 3m read IRIS Api Tester (JP) コミュニティの皆さん、こんにちは!! Open Exchange に最新の「IRIS Api Tester」アプリケーションをアップロードしました。 InterSystems IRIS と Newman を使用した Docker プロジェクトで、素早く簡単に Postman コレクションをテストできます。 リポジトリをクローンするだけで、初期状態で使用できるようになっています: https://github.com/daniel-aguilar-garcia/irisapitester docker-compose ファイルを実行します。 この URL をブラウザで開きます。 #API #Docker #REST API #テスト #InterSystems IRIS #InterSystems IRIS for Health #Open Exchange Open Exchange app 2 0 0 37
記事 Mihoko Iijima · 2024年1月25日 6m read プライベートWebサーバ(PWS)を使用しないバージョンのコンテナ版IRIS利用時のWebサーバ設定例 この記事は、「プライベートWebサーバ(PWS)を使用しないバージョンの新規インストール/アップグレード:概要」の続きの記事で、コンテナ版IRISを利用する場合のWebサーバ設定例をご紹介します。(先に「概要」の記事をお読みいただくことをお勧めします。) バージョン2023.2以降のコンテナ版IRISを利用する場合、以下いずれかの方法で管理ポータルを含めたWebアクセスを行うための設定が必要です。 任意の場所にWebサーバを用意する Webゲートウェイ用コンテナを利用する この記事では、【Webゲートウェイ用コンテナを利用する】方法についてご紹介します。 #Docker #Web Gateway #コンテナ化 #システム管理 #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 1 0 0 79
バージョン2023.2以降のコンテナ版IRISを利用する場合、以下いずれかの方法で管理ポータルを含めたWebアクセスを行うための設定が必要です。 任意の場所にWebサーバを用意する Webゲートウェイ用コンテナを利用する この記事では、【Webゲートウェイ用コンテナを利用する】方法についてご紹介します。
記事 Mihoko Iijima · 2024年1月25日 12m read ApacheをWebサーバとする場合のプライベートWebサーバ(PWS)を使用しないバージョンの新規インストール/アップグレード この記事は、「プライベートWebサーバ(PWS)を使用しないバージョンの新規インストール/アップグレード:概要」の続きの記事で、ApacheをWebサーバとする場合の設定概要をご紹介します。(先に「概要」の記事をお読みいただくことをお勧めします。) 同一サーバ上にApacheとInterSystems製品をインストールする場合、事前にApacheをインストールしておくとApacheに必要なWebゲートウェイのインストールとIRISへの接続設定をインストーラーが自動で行います。 以降の説明では、以下のインストール方法について解説します。 1. Apacheを事前に準備しない状態での新規インストール 2. Apacheを事前に準備しない状態でのアップグレード 3. Apacheをインストールした後の新規/アップグレードインストール 4. Apacheの設定 ※ 図解では、InterSystems IRISを使用していますが、InterSystems製品で操作は共通です。 #Web Gateway #システム管理 #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 1 0 0 80
記事 Mihoko Iijima · 2024年1月25日 5m read IISをWebサーバとする場合のプライベートWebサーバ(PWS)を使用しないバージョンの新規インストール/アップグレード この記事は、「プライベートWebサーバ(PWS)を使用しないバージョンの新規インストール/アップグレード:概要」の続きの記事で、IISをWebサーバとする場合の設定概要をご紹介します。(先に「概要」の記事をお読みいただくことをお勧めします。) 同一サーバ上にIISとInterSystems製品をインストールする場合、事前にIISを有効化しておくとIISに必要なWebゲートウェイのインストールと設定をIRISのインストーラーが自動で行います。 以降の説明では、以下のインストール方法について解説します。 1. IISを事前に準備しない状態での新規インストール 2. IISを事前に準備しない状態でのアップグレード 3. IISをインストールした後の新規/アップグレードインストール 4. IISの設定 ※ 図解では、InterSystems IRISを使用していますが、InterSystems製品で操作は共通です。 #Web Gateway #システム管理 #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 1 0 0 64
記事 Megumi Kakechi · 2024年1月25日 2m read IRIS REST API でファイルのアップロード/ダウンロードを行う方法 これは InterSystems FAQ サイトの記事です。 こちらの記事 では、HTMLのフォームからRESTを使って画像ファイルをアップロードする方法をご紹介しました。 お客様からは、ダウンロードする方法もあわせてお問い合わせいただくことがあるため、この記事では両方の方法に加え、イメージファイル以外にも対応したサンプルをご紹介します。 サンプルでは、HTMLのフォームから IRIS REST API を呼び出してファイルの「アップロード/ダウンロード」を行っています。 【手順】 #HTML #REST API #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 1 0 0 47
記事 Toshihiko Minamoto · 2024年1月18日 3m read CPU のマイクロアーキテクチャファミリと命令セットの判定方法 はじめに InterSystems は、最新の CPU 命令セット拡張機能を活用するために、IRIS を最適化したいと考えています。製品のパフォーマンスに対しては素晴らしいことですが、CPU が新しい IRIS ビルドにサポートされるかを知るにはどうすればよいでしょうか。ここでは、CPU のマイクロアーキテクチャファミリと CPU の特定の命令セット拡張機能を知る方法について説明します。 #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 44
記事 Mihoko Iijima · 2024年1月18日 5m read Webサーバ(IISやApache)を利用してVSCodeからInterSystemsサーバに接続するときの注意点(バージョン2023.1以下) 開発者の皆さん、こんにちは! VSCodeのObjectScriptエクステンションを利用してInterSystems製品に接続するときに「プライベートWebサーバ (*1)」ではなく、「Webサーバ(IISやApache)」を利用される場合、接続時に使用するREST用パスが通るようにWebサーバに仮想パスを追加する必要があります。 (*1) プライベートWebサーバとは、バージョン2023.1以前のInterSystems製品をインストールすると自動でインストールされる簡易的なApacheで、52773番ポートで管理ポータルやWebアクセスのテストにご利用いただけるWebサーバです。(本番運用環境には適さない簡易的なWebサーバです) 対象バージョン:2023.1以下のInterSystems製品 追加が必要なパス: /api #ObjectScript #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health #VSCode 0 0 0 120
記事 Seisuke Nakahashi · 2024年1月12日 6m read ^mypButtons を利用して InterSystems IRIS パフォーマンスをチェックしてみましょう [背景] InterSystems IRIS 製品には、便利なツール ^SystemPerformance (Caché / Ensemble 時代は ^pButtons と呼ばれていました) があり、データベースのパフォーマンス情報を HTML 形式で出力してくれます。 IRIS for Windows で ^SystemPerformance を実行すると、 InterSystems 独自のパフォーマンスログ mgstat と Windows パフォーマンスログの両方を含んだ HTML が生成されます。 #システム管理 #パフォーマンス #ヒントとコツ #Caché #InterSystems IRIS Open Exchange app 2 0 0 42
記事 Toshihiko Minamoto · 2024年1月11日 3m read DeepSee で有効な階層を設計 DeepSee で階層を設計する場合、子メンバーに 1 つの親しか指定できません。 子が 2 つの親に対応する場合には、信頼性のない結果が得られることになります。 類似する 2 つのメンバーが存在する場合、そのキーがそれぞれ一意になるように変更する必要があります。 これが起きる場合とそれを回避する方法について、2 つの例を見ながら説明します。 例 1 (アメリカには)Boston と言う都市がある州がたくさんあります。 私のサンプルデータでは、Boston, MA(マサチューセッツ州ボストン)と Boston, NY(ニューヨーク州ボストン)のレコードがあります。 次元は次のように定義されています。 #IRIS Analytics Architect #キューブ #データモデル #ヒントとコツ #ベストプラクティス #分析 #Caché #InterSystems IRIS #InterSystems IRIS BI (DeepSee) 0 0 0 24
記事 Hiroshi Sato · 2024年1月9日 1m read CSPアプリケーションをReactを使って書き換えるその5 最後にCSP機能の中でReactでうまく置き換えできなかった処理について紹介します。 該当する処理は、サーバー上の商品データに含まれるその商品の画像データ(GIF形式)を取得して、ブラウザにイメージとして描画させるものです。 CSPにはStreamServer.clsというサーバー側で動作する機能が用意されています。 この機能を使ってデータベース上に格納されているストリームデータをHTML IMGタグで処理できる形式に変換してくれます。 StreamServer機能を使って画像を表示する処理 Reactで同様の機能を実現する方法が見つからなかったため(そもそもReactはサーバーサイドではなくクライアント上の技術なので)、データベース内に格納されているイメージを取得するのではなく、静的なイメージファイルをウェブサーバーが参照可能な場所に置くことで解決しました。 #CSP #React #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 40
記事 Kosaku Ikeda · 2023年10月2日 8m read FHIRリポジトリ導入時の備忘録として 皆さまこんにちは。IRIS for Healthを用いてFHIRの開発に携わっている者です。 FHIRリポジトリの導入を検討している方々に向けて、足がかり的な記事になればと思い投稿致します。 <アジェンダ>■IISでの環境構築■POSTMANを利用しないリソースへのデータアクセス■Patientリソースの作成について■FHIRリポジトリを使ってみての感想 ■おまけEmbedded Pythonを使って、サンプルファイルからFHIRリソースへアクセスする方法 #Embedded Python #FHIR #コンテスト #InterSystems IRIS for Health 18 3 1 365
記事 Hiroshi Sato · 2024年1月5日 1m read インストール時に指定する初期セキュリティ設定について これは InterSystems FAQ サイトの記事です。 インストール時に選択できる初期セキュリティ設定のレベルには以下の3つがあります。※バージョンにより、表記(日本語/英語)が違う場合があります。 最小 (Minimal) 通常 (Normal) ロック・ダウン (Locked Down) 各レベルの違いの詳細は以下の資料をご確認ください。 セキュリティの説明資料 #セキュリティ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 35
記事 Toshihiko Minamoto · 2023年12月28日 35m read PEX を使用して IRIS と .NET または Javaとの統合を実装 はじめに InterSystems IRIS 2020.1 には、Java または .NET で記述されたコンポーネントで IRIS 相互運用性プロダクションの開発を容易にする PEX(プロダクション拡張フレームワーク)が含まれています。 この PEX により、Java または .NET の知識を備える統合開発者は、InterSystems IRIS 相互運用性フレームワークの力、スケーラビリティ、および堅牢性を利用し、すぐに生産性を高めることができます。 IRIS 相互運用性フレームワークエキスパートに対し、PEX は既存の Java 言語または .NET 言語の外部コンポーネントとの統合を簡単にリッチ化することができます。 #.NET #Java #ベストプラクティス #相互運用性 #InterSystems IRIS 0 0 0 53
記事 Hiroshi Sato · 2023年12月26日 3m read CSPアプリケーションをReactを使って書き換えるその4 IRIS側の処理は、IRISでREST APIを実装する方法を理解していれば、簡単です。 前回のログイン処理でユーザー認証をIRIS側でどのように実装されているか確認して見ましょう。 まずはディスパッチクラスの定義です。 Shop.Brokerというクラスの中で定義されています。 checkpasswordというメソッドが最後に定義されていて、最終的にShop.Rest.Customer:checkPasswordという(クラス)メソッドが呼ばれているのがわかると思います。 ここで定義しているパラメータは、とりあえずおまじない的に含めておくことをお勧めします。 (説明し出すと少し長くなるので) Class Shop.Broker Extends %CSP.REST{ Parameter CONVERTINPUTSTREAM = 1; Parameter HandleCorsRequest = 1; #CSP #React #REST API #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 53
記事 Hiroshi Sato · 2023年12月26日 7m read CSPアプリケーションをReactを使って書き換えるその3 それでは、今回はより具体的にReact開発方法について解説します。ショップデモのリポジトリの配下にreactというディレクトリがあります。 この下にReactのコードがあります。 ここのreact-setup.mdに記載されている通り、前準備としてreactのテンプレートを作ります。 npx create-react-app shopdemo --template typescript あとはこのReactプロジェクトを動かすためのライブラリのインストールを行います。 詳細は、react-setup.mdに書いてあります。 まず3つのディレクトリがあって、これは絶対こうしなければならないというものでもないのですが、基本的なお作法として用意するのが一般的なようです。 #CSP #React #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 85
記事 Hiroshi Sato · 2023年12月26日 4m read CSPアプリケーションをReactを使って書き換えるその2 CSPを使って作成したアプリケーションをReactを使用して書き換える2回目の記事です。 前回の記事で紹介したショップデモの書き換えについてもう少し詳しく説明します。 まずReactについて、インターネット上に様々な情報が提供されていますので、それらを利用しながら学習するということも可能だとは思いますが、一方で学習時間を短縮するには、やはりReactについて説明した本を一通り読む方が速いのではないかと思います。 実際Reactに関する本はたくさんあるので、その中から自分に合いそうなものを選ぶのが良いかと思います。 ちなみに参考までに私が学習に使ったものは、以下です。 #CSP #React #InterSystems IRIS #InterSystems IRIS for Health 1 0 0 66