記事 Hiroshi Sato · 2020年7月2日 21m read VisM.OCX(Caché Direct)を利用したアプリケーションをIRISに移行する方法 初めに VisM.OCXはVisual Basicでクライアント・サーバー型のアプリケーション開発を支援するためにInterSystemsが提供してきたツールです。 誕生から既に20年以上が経過した非常に古いテクノロジーです。 OCX規格(ActiveXコンポーネント)は、マイクロソフト社が推進してきた規格ですが、やがてマイクロソフト社が後継となる.Net Frameworkをリリースし、その新しいフレームワークへの移行を強力に推進すると同時に、OCX規格は非推奨機能となっています。 一方で下位互換性のため、.Net Framework配下でOCXを動作可能とする仕組みが用意されており、結果としてOCXは、.Net Framework環境下で動作可能です。 従って、VisM.OCXも.Net対応のプログラミング言語C#やVB.NETからそのまま利用することができます。 しかしながら.Net Framework上で動作するとは言え、.Net Frameworkが用意する安全性の高い資源管理や強固なセキュリティ機能の恩恵を受けることができず、いわゆるマネージドコードとして動作できないという制約を抱えています。 #.NET #InterSystems IRIS #Open Exchange Open Exchange app 1 1 0 1.2K
記事 Seisuke Nakahashi · 2022年5月31日 6m read OAuth 2.0 を利用して IRIS から Gmail を送信する 2022年5月30日より、外部アプリからGmailを送信するには OAuth 2.0が必須になりました (リンク) そのため、IRIS から Gmail を送信したい 場合は、今後は OAuth 2.0 を利用して Gmailアカウントに接続する 必要があります。 そこで、IRIS コード ObjectScript を使って、OAuth 2.0 でGmailアカウントに接続&メール送信するサンプルを作成しました。 ぜひご活用ください! #OAuth2 #ObjectScript #InterSystems IRIS 2 0 0 986
記事 Megumi Kakechi · 2022年5月31日 4m read Embedded Python で IRIS グローバル($LB) を Pandas Dataframe に変換する方法 InterSystems IRIS 2021.2 のバージョンより、Embedded Python を使用できるようになりました。 Embedded Python で Excel のデータを IRIS グローバルに格納する方法 では pandas.DataFrame のデータを InterSystems IRIS グローバルに保存する方法をご紹介しました。こちらの記事では、その逆の「InterSystems IRIS グローバル($LB) を pandas.DataFrame に変換する」方法をご紹介します。 #Embedded Python #Python #InterSystems IRIS #InterSystems IRIS for Health 1 0 0 276
記事 Toshihiko Minamoto · 2022年5月31日 1m read IRIS、Openflights データセット、Apache Zeppelin で docker コンテナグループを使用する こんにちは! Open Dataset コンテストにおいて、1 つのコンテナに InterSystems IRIS と Openflights データセットを、もう 1 つのコンテナに InterSystems IRIS と Apache Zeppelin を使用する Docker コンテナアプリスタックを構築しました。 詳細はこちらでご覧ください: https://github.com/andreas5588/openflights_demo これを使用すると、構成をまったく行わずに、Apache Zeppelin から Openflights データセットをクエリできます。 コンテナは hub.docker にあるため、とても簡単に使用できます。 Docker ダッシュボードを確認すると、openflights_demo というグループがあるのがわかります。 #InterSystems IRIS Open Exchange app 0 0 0 74
記事 Mihoko Iijima · 2022年5月29日 2m read プログラムでCSVファイルをテーブルにインポート/テーブルからCSVファイルにエクスポートする方法 これは InterSystems FAQ サイトの記事です。 InterSystems IRIS/Caché の管理ポータルメニュー:SQLデータインポートウィザードの処理で行うようなCSVファイルをテーブルへインポート、テーブルからファイルにエクスポートする方法をプログラムで実行することができます。 ※ サンプルはバージョン 2017.1以降で動作確認しています。 ※ バージョン 2016.2.3以前でお試しいただく場合は、SQL.Utilsクラス の20行目をコメント化してからご利用ください。 #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 478
記事 Megumi Kakechi · 2022年5月25日 2m read 設定されているネームスペース一覧をプログラムで取得する方法 これは、InterSystems FAQサイトの記事です。%SYS.Namespace クラスの List クエリで取得することができます。 次のようなルーチンを作成し、ターミナルで実行してください。 1. サンプルの作成 #システム管理 #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 1 0 0 230
記事 Toshihiko Minamoto · 2022年5月24日 1m read まったく新しい LOAD DATA コマンドのコツとヒント - パート II 7)適切なドライバーが必要 LOAD DATA SQL コマンドを実行する場合、2021.2 のドライバーを選択する必要があります。 誤ったドライバーを選択して LOAD DATA SQL コマンドを使用してしまうと、以下のようなエラーが発生します。 Error: [SQLCODE: <-1>:<Invalid SQL statement>] [Location: <Prepare>] [%msg: < LITERAL ('%qpar') expected, : found^LOAD DATA FROM FILE :%qpar>]JDBC ドライバーのリポジトリ(https://github.com/intersystems-community/iris-driver-distribution)のフォークを作成し、InterSystems IRIS バージョン 2021.2.0.617 のドライバーを追加しました。 #InterSystems IRIS Open Exchange app 0 0 0 125
記事 Toshihiko Minamoto · 2022年5月17日 9m read ObjectScript Package Manager、GitHub Actions、および Docker による継続的インテグレーション はじめに #Code Snippet #Docker #GitHub #InterSystems Package Manager (IPM) #テスト #継続的インテグレーション #InterSystems IRIS #InterSystems IRIS for Health #Open Exchange 1 0 0 151
記事 Toshihiko Minamoto · 2022年5月10日 4m read まったく新しい LOAD DATA コマンドのコツとヒント 最近、LOAD DATA という素晴らしい新機能を使用することがありました。この記事では、初めて使用した際の体験についてお話しします。 以下の箇条書きには優先順がなく、他の評価も含まれません。 これらは、LOAD DATA コマンドを使用したときに私が気付いたことを記したものです。 また、プレビューリリースである IRIS バージョン 2021.2.0.617 を使用していることも記しておきたいと思います。 そのため、ここに記録されたことは、それ以降の IRIS バージョンに適用しない可能性があります。 それでも誰かのお役に立てるかもしれません。 #CSV #JDBC #SQL #コンテスト #ヒントとコツ #InterSystems IRIS Open Exchange app 0 0 0 242
記事 Tomoko Furuzono · 2022年5月6日 1m read 最大ネームスペース数とデータベース数 これは、InterSystems FAQサイトの記事です。 1つのインスタンスで作成可能なネームスペース数の上限は、2047個になります。ただし多数のネームスペースを使用するには、それに合わせてメモリの設定が必要になります。使用するメモリの設定については下記の関連トピックご参照ください。管理ポータルのメモリ関連設定項目について #システム管理 #データベース #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 186
記事 Megumi Kakechi · 2022年5月6日 1m read なぜフラグメントが発生しにくいのか これは、InterSystems FAQサイトの記事です。InterSystems製品では、永続データは後で高速にランダムアクセスできるように、ある一定の規則に沿ってキー順にソートされて格納されます。 新しいノードが追加された場合、ノードが削除された場合、データの長さが変更された場合など、データの構造変化が起こる度に、その並び順を維持できるようまた無駄な領域が発生しないように動的なデータの配置変えを実施します。 従って、常にデータはきれいに整理された状態で格納されるため、無駄な空き領域が発生しません。 これらの並べ替えの作業は、書き換えのコストのかかる処理ですが、InterSystems製品では、これらの処理はなるべくメモリ(キャッシュ)上で実行し、ディスクI/Oを軽減することにより、性能の劣化を抑えています。 #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 136
記事 Megumi Kakechi · 2022年5月6日 1m read InterSystems IRIS Data Platformはリレーショナルデータベースと何が違うのか これは、InterSystems FAQサイトの記事です。InterSystems IRIS Data Platform(以下IRISと表記)はSQLのサポートをはじめ、リレーショナルデータベースとの高い互換性を有します。 さらに、IRISは多次元データエンジンをベースにしており、通常のリレーショナルデータベースシステムに比べて柔軟なデータ構造を持つことができ、一般的にパフォーマンス、スケーラビリティ、データ保守性に優れています。 また完全なオブジェクト指向をサポートしており、Javaなどのオブジェクト指向開発環境との親和性という点でも優れています。 #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 228
記事 Toshihiko Minamoto · 2022年4月26日 8m read クラスの全プロパティをリストする(ObjectScript がお気に入りな理由) @Ming Zhou から素晴らしい質問をいただきました。その回答は、まさに私がObjectScriptを愛用している理由を表しています。 初めて誰かに ObjectScript や IRIS を説明する際、必ず、クラスを記述してコンパイルし、テーブルを取得して、オブジェクトまたはリレーショナルのいずれか最も自然な観点からデータを操作できると説明しています。 いずれにせよ、これは単に、グローバルと呼ばれる非常に高速な内部データ構造を囲む薄めのラッパーであり、速度をさらにバーストさせる必要がある場合にも使用できます。 #ObjectScript #オブジェクトデータモデル #InterSystems IRIS 0 0 0 310
記事 Toshihiko Minamoto · 2022年4月21日 6m read ObjectScript Package Manager のユニットテストとテストカバレッジ この記事では、ObjectScript Package Manager(https://openexchange.intersystems.com/package/ObjectScript-Package-Manager を参照)を使用して、ユニットテストを実行するためのプロセスを説明します。テストカバレッジ測定(https://openexchange.intersystems.com/package/Test-Coverage-Tool を使用)も含まれます。 #InterSystems Package Manager (IPM) #継続的インテグレーション #InterSystems IRIS #InterSystems IRIS for Health Open Exchange app 0 0 0 219
記事 Toshihiko Minamoto · 2022年4月19日 9m read Raspberry Pi Raspberry で InterSystems Iris Fhirserver を実行する Raspberry を FHIRserver として実行する 一年ほど前、 Raspberry Pi での HAPI FHIRserver のインストールに関する記事を書きました。 当時、FHIR 標準の基本しか知らず、FHIR サーバーの背後にあるテクノロジーや Raspberry についてほとんど知りませんした。 試して、失敗して、諦めて、もう一度試すことで、たくさんのことを学びました。 #FHIR #コンテナ化 #初心者 #InterSystems IRIS 0 0 0 239
記事 Megumi Kakechi · 2022年4月17日 4m read Embedded Python で Excel のデータを IRIS グローバルに格納する方法 InterSystems IRIS 2021.2 のバージョンより、Embedded Python を使用できるようになりました。Embedded Python については、「Embedded Pythonを簡単にご紹介します」の記事をぜひご覧ください。 こちらでは、Embedded Python を使用して Excel のデータを IRIS グローバルに出力する方法をご紹介します。 最初に、irispip コマンドで必要なライブラリをインストールします。今回は、pandas、xlrd、openpyxl の3つのライブラリをインストールします。 #Embedded Python #Python #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 3 2 1 566
記事 Mihoko Iijima · 2022年4月14日 10m read データベースのあるディスクの空き容量を確認し、指定サイズを下回る場合に通知する方法の例 これは、InterSystems FAQサイトの記事です。 アプリケーションモニタが提供する %Monitor.System.Diskspace(ディスク容量メトリック)を利用して指定サイズを下回る場合にメール通知を行うように設定を追加することができます。 アプリケーション・モニタのメトリック【IRIS】アプリケーション・モニタのメトリック #システム管理 #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 1 0 0 146
記事 Toshihiko Minamoto · 2022年4月14日 12m read CircleCI を使用して IRIS アプリケーションを Azure にデプロイする IRIS ベースのアプリケーションを GCP Kubernetes で実行する方法については、すでに「InterSystems IRIS ソリューションを CircleCI を使用して GCP Kubernetes Cluster GKE へデプロイする」で検討しました。 また、IRIS ベースのアプリケーションを AWS Kubernetes で実行する方法については、「Amazon EKS を使用したシンプルな IRIS ベースの Web アプリケーションのデプロイ」で確認しました。 そこで今回は、アプリケーションを Azure Kubernetes Service(AKS)にデプロイする方法を説明することにします。 #Azure #DevOps #Kubernetes #InterSystems IRIS 0 0 0 258
記事 Mihoko Iijima · 2022年4月13日 14m read Store Mindmaps using Globals(InterSystems Global コンテスト優勝作品紹介) 開発者の皆さん、こんにちは! #グローバル #InterSystems IRIS Open Exchange app 0 0 0 101
記事 Toshihiko Minamoto · 2022年4月12日 3m read ビジュアルトレースと選択の自由 コミュニティの皆さん、こんにちは。お元気ですか? 皆さんは、創造性をどのようにして発揮していますか? 新しいアイデアはどのようにしてテストしていますか? 数年にもわたって、私はずっと新しいものを作り出し、既存のものを改良し、実験、テスト、破壊(いつも壊れてしまいます)を経て作り直し、そしてこのプロセスを繰り返してきました。 InterSystems が推進するコンテストは、モチベーションを大きく持ち上げてくれます。もちろん、賞品に目が行ってしまうことは否定できませんが。 しかし、賞品や報酬だけでなく、こういったコンテストでは自分の創造性が試されますし、作成、改良、テスト、実験の機会が得られます。 さらに、最も素晴らしいのは、何をやるのも自由であるということです! #メッセージ検索 #相互運用性 #Ensemble #InterSystems IRIS #InterSystems IRIS for Health Open Exchange app 0 0 0 126
記事 Mihoko Iijima · 2022年4月8日 4m read SYS.Database クラスの FreeSpace クエリを使用してデータベースのあるディスクの空き容量を確認する方法 これは、InterSystems FAQサイトの記事です。 システムユーティリティクラス:SYS.Database のクエリ:FreeSpace を利用してディスクの空き容量を任意のタイミングで確認することができます。 #システム管理 #データベース #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 142
記事 Toshihiko Minamoto · 2022年4月7日 4m read mermaid ライブラリを使ったダイアグラムの基本的な描画方法 皆さん、こんにちは! @Henrique.GonçalvesDias と私は、MessageViewer の最近のアップデートにおいて、IRIS Interoperability でメッセージを可視化する新しい方法を提案しました。 そのアップデートでは、UML シーケンス図に基づく可視化を提供しようとしました。 詳細は、前の記事をご覧ください。 #JavaScript #フロントエンド #相互運用性 #InterSystems IRIS Open Exchange app 2 0 0 674
記事 Toshihiko Minamoto · 2022年4月5日 6m read データの匿名化、iris-Disguise の導入 まずは、データの匿名化とは何でしょうか? ウィキペディアによると: #InterSystems IRIS Open Exchange app 2 0 1 112
記事 Toshihiko Minamoto · 2022年4月1日 7m read InterSystems IRIS の新しい埋め込み SQL #SQL #InterSystems IRIS 0 0 0 305
記事 Megumi Kakechi · 2022年3月31日 1m read インスタンス(構成)名を変更する方法 これは、InterSystems FAQサイトの記事です。 Windowsでは、変更することはできませんが、Unix系プラットフォームでは、iris rename コマンドを使用することで変更できます。 iris rename instname(現インスタンス名) newname(新インスタンス名) iris rename コマンドの詳細は、以下ドキュメントをご参照くださいiris コマンドについて #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 113
記事 Mihoko Iijima · 2022年3月29日 3m read SSL/TLS を使用しているメールサーバへメールを送信するコードサンプルご紹介 これは、InterSystems FAQサイトの記事です。 メール送付のコードを記述する前に、管理ポータルで SSL/TLS 構成を作成します。 管理ポータル > システム管理 > セキュリティ > SSL/TLS 構成 メール送付までの流れは以下の通りです。 #ObjectScript #SSL #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 340
記事 Mihoko Iijima · 2022年3月29日 11m read データベース空き容量の監視方法について これは、InterSystems FAQサイトの記事です。 データベースの空き容量は、システムモニタを使用して監視することができます。 システムモニタは、システム開始時に自動開始され、予め設定された閾値に対してアラートが通知されます。 #システム管理 #データベース #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 158
記事 Toshihiko Minamoto · 2022年3月29日 3m read Apache Zeppelin + IRIS のクイックスタート Apache Zeppelin は以下を行えるようにする多目的ノートブックです。 データの取り込み データ検出 データ分析 データの可視化とコラボレーション Apache Zeppelin インタープリターの概念に基づき、あらゆる言語/データ処理バックエンドを Zeppelin にプラグインすることができます。 現在、Apache Zeppelin は、Apache Spark、Apache Flink、Python、R、JDBC、Markcown、およびシェルなど、多くのインタープリターに対応しています。 データの洞察を得るための安全な環境を得られます。 Zeppelin のハイライト機能は、JDBC と Spark IRIS のネイティブコネクタを使用して利用することができます。 これは、あなたを軌道に乗せるためのクイックスタートガイドです。 #InterSystems IRIS 0 0 0 87
記事 Tomoko Furuzono · 2022年3月29日 1m read 現在実行中のコードの位置(どの行を実行中か)を知る方法 これは、InterSystems FAQサイトの記事です。 現在実行中のコードの位置は、$STACK関数を使用して $STACK($STACK,"PLACE") で取得できます。 サンプルコードは以下ドキュメントをご参照ください。 現在実行中のコードの位置を取得する方法について【IRIS】現在実行中のコードの位置を取得する方法について #ObjectScript #Caché #InterSystems IRIS 0 0 0 61
記事 Tomoko Furuzono · 2022年3月29日 1m read SQLでのNULLデータの取り扱い これは、InterSystems FAQサイトの記事です。 SQLの場合、NULLデータと空文字列 ('')は区別されます。それぞれの設定・確認方法は、以下のようになります。 (1) NULLデータ 【SQL】 insert into test (a) values (NULL)select * from test where a IS NULL 【InterSystems ObjectScript】 set x=##class(User.test).%New()set x.a="" (2) 空文字列 ('') 【SQL】 #ObjectScript #SQL #Caché #InterSystems IRIS 0 0 0 240