2022年5月30日より、外部アプリからGmailを送信するには OAuth 2.0が必須になりました (リンク) そのため、IRIS から Gmail を送信したい 場合は、今後は OAuth 2.0 を利用して Gmailアカウントに接続する 必要があります。 そこで、IRIS コード ObjectScript を使って、OAuth 2.0 でGmailアカウントに接続&メール送信するサンプルを作成しました。 ぜひご活用ください!

2 0
0 929
InterSystems 開発者コミュニティは 17,526 名の優秀な開発者が参加しているコミュニティです
InterSystems IRIS のプログラマーが学習や知識の共有を行い、最新情報を入手し、共に楽しく成長できる場所です!

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

通常SQLCODE -110(Locking conflict in filing)のエラーはロックが競合した場合に発生します。

大量レコードが一度に更新された場合、その件数がロック閾値を超えてロックエスカレーションを起こしてテーブルロックとなる可能性があり、そのためにロックの競合が起きやすくなっていることが考えられます。

このロック閾値を上げることにより、この競合を回避できる可能性もあります。

しかしこの閾値を上げることにより、システムが必要とするロック管理用のメモリが増えるという副作用がありますので、慎重な検討が必要です。

あるいはテーブルロックになる可能性を排除できずに、更新タイミング等アプリケーションの仕様を見直す必要があるかもしれません。

またSQLCODE -110はロックテーブルの空き容量が不足した場合にも発生する可能性があります。

0 0
0 919
記事
· 2021年3月10日 3m read
RESTでセッション共有化する方法

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

REST アプリケーションはステートレスであることが想定されています。

しかし、複数の REST 呼び出し間でデータを保持したい場合などの理由で、Webセッションを使用したい場合は、UseSession パラメータを使用することができます。

以下のように、Web アプリケーションのディスパッチクラスとして定義された %CSP.REST のサブクラスでUseSession パラメータを指定することで、CSPと同じようにWebセッションを使用することが可能となります。

Class REST.MyServices Extends %CSP.REST
{
 Parameter UseSession As Integer = 1;


詳細は以下のドキュメントをご覧ください。

1 0
0 914

HealthShare の理想的な Apache HTTPD Web サーバー構成に関するお問い合わせをよくいただいています。 この記事では、真っ先に推奨される HealthShare 製品の Web サーバー構成について概要を説明します。

何よりもまず第一に、Apache HTTPD バージョン 2.4.x(64ビット)を使用することをお勧めします。 2.2.x のような旧バージョンも使用できますが、HealthShare のパフォーマンスとスケーラビリティを確保するにはバージョン 2.2 はお勧めできません。

0 0
0 902

この記事では、従来のIRISミラーリング構成の代わりに、Kubernetesの Deploymentと分散永続ストレージを使って高可用性IRIS構成を構築します。 このデプロイでは、ノード、ストレージ、アベイラビリティーゾーンといったインフラストラクチャ関連の障害に耐えることが可能です。 以下に説明する方法を使用することで、RTOがわずかに延長されますが、デプロイの複雑さが大幅に軽減されます。

0 0
0 901

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

IRIS の FHIR リポジトリは、HL7 FHIR 標準プロファイルに対する検証をサポートしていますが、カスタムプロファイルに対する検証は、まだサポートできていません(将来のリリースバージョンで対応予定です)。

カスタムプロファイルの Search Parameter の追加はサポートしています!詳しくは、「動画:FHIR プロファイル」をご参照ください。

この記事では、IRIS の FHIR リポジトリに対して、カスタムプロファイルの検証を行う方法についてご紹介します。

1 0
1 897

請求、支払いや領収、アイテムの配送や在庫を処理するアプリケーションでは、バーコードや QR コードの使用が必要となるのが一般的です。 単純なバーコードよりも多くの情報を格納できる QR コードは、さらに幅広いシナリオで使用されています。 したがって、バーコードと QR コードを生成する機能、またはそれらに格納されたデータを画像または PDF から読み取る機能が重要となります。 この記事では、Python と無料のライブラリを使用してこれを行う方法を説明します。

Pyzbar ライブラリ

pyzbar ライブラリは、zbar ライブラリを使って、Python 2 と 3 から 1 次元バーコードと QR コードを読み取ります。 以下の特徴が備わっています。

2 0
0 895

この記事はこちらの投稿の続きの内容です。

前回の記事では、Interoperability(相互運用性)メニューを利用してシステム統合を行う際、どのような仕組みで動作しているのかについて解説しました。

今回の記事では、Interoperability(相互運用性)メニューを利用してでシステム統合を行うためにどのような開発を行うのか、について解説します。

最初に、どんな流れを作りたいのか?を考えながら、以下の内容を作成していきます。

0 0
0 869

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

ジャーナルファイルの削除は、自動削除と手動削除が選択できます。


「自動削除」については、以下2つの方法が選択できます。

A) タスクスケジュールを使用して指定時間に自動削除する方法
B) オンラインバックアップ使用時、指定回数成功後に自動削除する方法

A) タスクスケジュールを使用して指定時間に自動削除する方法

インストール時デフォルトで登録されるタスクスケジュール「ジャーナルファイルの削除」を使用して自動削除します。
自動削除を行う前に運用環境に合わせて適切な日数分ジャーナルを保持するよう、ジャーナルファイルの設定を修正します。

0 0
0 869

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

PythonでExcelからPDFへ変換を行うには、pywinを使うとできるらしいので、IRISにあるデータをDataframeに設定した後Excelに出力し、ExcelからPDFに変換する流れを、Embedded Pythonで試してみました。

メモ:pywinはWindows環境下で動くモジュールのようです。

Excelに出力するデータですが、例では、SELECTの結果をDataframeに格納する方法を利用しています。グローバル変数の情報をDataframeに格納する方法については、以下の記事で詳しくご紹介しています。ぜひご参照ください。
Embedded Python で IRIS グローバル($LB) を Pandas Dataframe に変換する方法

0 0
0 866

キーワード: PyODBC、unixODBC、IRIS、IntegratedML、Jupyterノートブック、Python 3

目的

数か月前、私は「IRISデータベースへのPython JDBC接続」という簡易メモを書きました。以来、PCの奥深くに埋められたスクラッチパッドよりも、その記事を頻繁に参照しています。 そこで今回は、もう一つの簡易メモで「IRISデータベースへのPython ODBC接続」を作成する方法を説明します。

ODBCとPyODCBをWindowsクライアントでセットアップするのは非常に簡単なようですが、Linux/Unix系サーバーでunixODBCとPyODBCクライアントをセットアップする際には毎回、どこかで躓いてしまいます。

バニラLinuxクライアントで、IRISをインストールせずに、リモートIRISサーバーに対してPyODBC/unixODBCの配管をうまく行うための単純で一貫したアプローチがあるのでしょうか。

0 0
0 860

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

この記事は、FHIRの関連技術として、FHIRプロファイル作成ツールであるSUSHIの使い方を紹介するシリーズの第2弾です。パート2である今回まで半年の期間が経ってしまいました。

前回のパート1では、FHIRとは?FHIRプロファイルとは?FHIR Shorthandとは?そしてSUSHIとはどのようなツールなのか?どのような物を作成できるのか?について、サンプルの成果物のスクリーンショットを交えながら説明しました。

今回の記事では、SUSHIで作成したプロファイルの実際の活用例として、SUSHIを使ってPatientリソースに Extension を追加し、さらにそのExtensionの項目に対する新しい SearchParameter を定義し、IRIS for HealthのFHIR Repositoyで新しいSearchParameterが使えるようになるまで、をご紹介します。

1 0
0 814

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

IISおよびWebゲートウェイの設定方法は以下のとおりです。

(1) IIS構成で以下の設定を行います
アプリケーション /rest を作成し、ハンドラーマッピングで * = CSPms のみ定義します。

IIS構成 > Default Website > アプリケーション /rest > "ハンドラーマッピング" をダブルクリック
要求パス: *
モジュール: CSPms
名前: CSPGW (任意の名前)

要求の制限 > [要求のマップ先が次の場合のみハンドラーを呼び出す] のチェックはオフにします。
※こちらの設定はデフォルトでは「チェックあり」になっていますのでご注意ください。

この構成により、IIS は /rest アプリケーションをWebゲートウェイに転送します。

0 0
0 808

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

※データベースファイルとは、IRIS.DAT、および、CACHE.DATのことを指します。

Caché/Ensemble 2018.1.4、IRIS 2019.1.2/2020.1.0 以降のバージョンより、データベースファイル のサイズの縮小に、データベースの「圧縮」と「未使用領域の削除」機能をあわせて使用できます。

1 0
0 802

この連載記事では、InterSystems IRIS をはじめて操作される方を対象に、IRIS のインストールから、開発環境作成、各種言語からのアクセス方法についてご紹介していきます。

以下3つのビデオは、基本操作をご紹介するビデオです。既にご存知の内容が多い場合は、各種アクセス方法をご紹介するビデオからぜひご参照ください。

基本操作編ビデオシリーズ

1 0
1 799

IRIS でのクラス定義の作成、ObjectScript でインスタンスの生成と永続化(保存)の方法について解説します。

https://www.youtube.com/embed/kWJCzn9bndQ
[これは埋め込みリンクですが、あなたはサイト上の埋め込みコンテンツへのアクセスに必要な Cookie を拒否しているため、それを直接表示することはできません。埋め込みコンテンツを表示するには、Cookie 設定ですべての Cookie を受け入れる必要があります。]

もくじ

最初~1:55 前回のビデオの学習

1:55~2:45 今回の説明内容解説

2:45~5:15 クラスの種類について

5:15~13:20 作成するクラスの説明、定義説明

13:20~18:44 スタジオでの作成実演

18:44~22:35 VS Codeでの作成実演

22:35~27:40 ObjectScriptでインスタンス生成

27:40~29:38 インスタンス生成~永続化の実演

29:38~34:54 データの確認

0 0
0 790

企業はグローバルコンピューティングインフラストラクチャを迅速かつ効率的に成長させて管理すると同時に、資本コストと費用を最適化して管理する必要があります。 Amazon Web Services(AWS)および Elastic Compute Cloud(EC2)コンピューティングおよびストレージサービスは、非常に堅牢なグローバルコンピューティングインフラストラクチャを提供することにより、最も要求の厳しいCachéベースのアプリケーションのニーズを満たします。

0 0
0 781

この記事はこちらの投稿の続きの内容です。

この記事では、Interoperability(相互運用性)メニューを利用してシステム統合を行う際、どのような仕組みで動作しているのかについて解説します。

図の左側は、外部システムから送信される情報の受け入れ窓口です。

情報の受信方法としては、ファイルを読むために指定ディレクトリを一定間隔で監視したり、データベースへ定期的に問い合わせを行ったり、入力を待機したり、または他システムのアプリケーションから直接呼び出して渡してもらうなど、様々な方法を用意しています。

1 0
0 781

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

2023/2/20追記

チュートリアルページが新しくなり「Developer Hub」に変わりました!

チュートリアルの種類や使い方については、「InterSystems Developer Hub:クリック1回で開始できるチュートリアル(4種)のご紹介」をご参照ください。


以下にご紹介しているチュートリアルページは、現在非公開となりますので、Developer Hub をご利用ください!

0 0
0 779

Mirroring 101

Cachéミラーリングは、CachéおよびEnsembleベースのアプリケーションに適した信頼性が高く、安価で実装しやすい高可用性および災害復旧ソリューションです。 ミラーリングは幅広い計画停止シナリオや計画外停止シナリオで自動フェイルオーバーを提供するもので、通常はアプリケーションの回復時間を数秒に抑制します。 論理的にデータが複製されるため、単一障害点およびデータ破損の原因となるストレージが排除されます。 ほとんど、またはダウンタイムなしでアップグレードを実行できます。

2 0
0 761

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

今日はAzure上でIRIS for Healthをデプロイし、FHIRリポジトリを構築する方法をご紹介したいと思います。

AzureのMarketPlaceで「InterSystems」をキーワードに検索していただくと、以下のように複数のInterSystems製品がヒットします。

今日はこの製品の中から、InterSystems IRIS for Health Community Editionを選択し、FHIRリポジトリを構築します。

3 0
0 760

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

タスクスケジュールを別環境にコピー(エクスポート/インポート)するには、以下の2つの方法があります。

  1. 個別にエクスポート/インポートする場合(管理ポータルで行う方法)
  2. 複数のタスクスケジュールをエクスポート/インポートする場合(%SYS.TaskSuperクラスを使用する方法)

1.個別にエクスポート/インポートする場合 管理ポータルから行うことが可能です。

個別のスケジュールを開くと、エクスポートボタンがあるので、そちらからエクスポートしてください。

インポートも同じく管理ポータルから行えます。

2.複数のタスクスケジュールをエクスポート/インポートする場合 タスクスケジュールのエクスポートには、%SYS.TaskSuper クラスの ExportTasks() メソッドをお使いいただけます。

実行例は以下のようになります。

0 0
0 760

本稿について

ICM(InterSystems Cloud Manager)のセットアップは難しいものではありませんが、様々な理由でそもそもDockerが使いづらいという状況があり得ます。
また、セキュリティ的に堅固な環境を得るために、既存VPC内のプライベートサブネット上にIRISクラスタをデプロイする方法のひとつに、同VPC内でICM実行する方法があります。
本稿では、ICMをAWSにデプロイする作業を、CloudFormationで自動化する方法をご紹介します。ICMに関しては、こちらの記事をご覧ください。

更新: 2020年11月24日 デフォルトVPC以外でも動作するよう変更しました。

0 0
0 745

こんにちは、皆さま。
業務でIRISを用いて開発を行っている者です。

AWSのcodebuildを利用して、
IRIS環境をビルドされた経験がある方がいらっしゃたら
情報共有いただきたいです。

ただいま取り組んでいるプロジェクトでは、
IRISのclsファイルをaws codecommitのgitリポジトリで管理しております。
※Dockerコンテナではない。

ここで作成されたソースコードをaws Codebuildの仕組みを利用して
自動でコンパイルチェックをする仕組みを構築したいと考えております。
コンパイルを実行する環境としては、AWS ECRに自作したDockerコンテナを利用しております。
※コンテナはstore/intersystems/iris-community:2020.1.0.215.0を基底に、簡単なネームスペースを作成しただけのもの。
 ローカルPC上ではIRIS環境として利用できることを確認済み。

ビルドはbuildspec.ymlにて、以下のような命令で行おうと考えております。

0 5
0 739

NoSQLデータベースという言葉を聞かれたことがあると思います。色々な定義がありますが、簡単に言えば、文字通りSQLを使わない、つまりリレーショナルデータベース(RDB)以外のデータベースのことを指すのが一般的です。

InterSystems IRIS Data Platformでは、テーブルを定義してSQLでデータにアクセスできます。ですから、InterSystems IRIS Data Platformは厳密にNoSQLデータベースというわけではありません。しかし、InterSystems IRISの高パフォーマンスを支える「グローバル」は、40年も前からInterSystemsのコア技術として、現代で言うNoSQLデータベースを提供してきました。本稿では、InterSystems IRISの「グローバル」でグラフ構造を作り、それをPythonでアクセスする方法を紹介します。

本稿で説明する内容は動画でも公開しています。ぜひご覧ください。

1 0
0 738

キーワード: Python、JDBC、SQL、IRIS、Jupyterノートブック、Pandas、Numpy、および機械学習

1. 目的

これは、デモの目的で、Jupyterノートブック内でPython 3によってIRIS JDBCドライバーを呼び出し、SQL構文でIRISデータベースインスタンスにデータを読み書きする、5分程度の簡単なメモです。

昨年、私はCacheデータベースへのPythonバインディング(セクション4.7)について簡単に触れました。 そこで、Pythonを使ってIRISデータベースに接続し、そのデータをPandasデータフレームとNumPy配列に読み込んで通常の分析を行ってから、事前処理済みまたは正規化されたデータをML/DLパイプラインに通すためにIRISに書き込む作業においてのオプションと議論について要約しましょう。

すぐに思い浮かぶ簡単なオプションがいくつかあります。

2 0
0 718

みなさん、こんにちは。

前回の記事では1個のBME280で気象データを取得したのですが、気温のブレが大きかったので基板から
ただ、基板につけたBME280のはんだを外すのが大変なので、別のBME280を外付けすることにしました。
当初、ESP8266の別のIO端子と接続することを考えていたのですが、Wire.hが複数のバスに対応していない
ため、以下の配線図のようにカスケード接続することにしました。

0 0
0 697