Data Platforms • InterSystems IRIS • Caché • InterSystems IRIS for Health • Ensemble
Data Platforms Add-ons • Atelier Integration • CSP Gateway for CE • IRIS Studio • InterSystems API Manager • InterSystems Kubernetes Operator (IKO) • ISC Agent • Legacy .Net bindings • Legacy node JS binding • ODBC Driver • System Alerting and Monitoring (SAM) • VS Code Integration • Web Gateway for IRIS • Zen Mojo
HealthShare • HealthShare Clinical Viewer (2019.1以前 ) • Unified Care Record • Care Community • Personal Community • Provider Directoryi • Health Insight • Patient Index • Health Connect
記事へ
Ohataさん
こんにちは。
残念ながら、ミラーリングですと、%NOJOURNキーワードは無視されるようです。
その他の方法を探してみたところ、ObjectScriptから実行することになりますが、
$SYSTEM.Process.TransactionsSuspended()でトランザクションを一時停止すると、その間の更新はバックアップサーバに値は転送されますし、ロールバックしても戻らなくなりました。
例
よろしくお願いします。
記事へ
Ohataさん、
こんにちは。
ちょっと調べてみたのですが、
UPDATE文に%NOJOURNというオプションがありますので
UPDATE %NOJOURN table SET counter = counter + 1 WHERE name='xxx'
のように記述いただくと、その更新はロールバックを無視します。
よろしくお願いします。
記事へ
Ohataさん、こんにちは。
既に解決されているかもしれませんが、記述されていた通り、スタンドアロン環境ではパッケージをインストールできませんので、以下の手順でインストールする必要があるかと思います。
1. インターネット環境にて必要なパッケージ(.gzファイル)をダウンロードする
c:\InterSystems\IRIS\mgr\pyhtonフォルダにパッケージ(tar.gz形式)のファイルが作成されます。
2. スタンドアロン環境にパッケージをコピー
3. スタンドアロン環境にてパッケージをインストール
以下のサイトを参考にしました。
https://qiita.com/analytics-hiro/items/2565adbb2c900e6738cd
記事へ
Ohataさん
こんにちは。
もしかすると、自己解決されているかもしれませんが、
ビジネスサービスの「設定」タブの「追加の設定」にあるスケジュールに、
作成されたスケジュール仕様を選択すれば、その時間帯だけ稼働するかと
思います。
記事へ
Hiroseさん
こんにちは。
Ohataさんが紹介されている記事にあるDjango-irisを使ってDjangoからIRISのDBを使うことができました。
(Pythonコンテスト1位でしたね!)
手順はこんな感じです。
1. IRISインストール
記事の中にあるように、IRIS 2022.1のプレビュー版が必要ですので、ダウンロードし、インストールします。
2. Pythonインストール
Python 3.10.2 amd64をインストールしました。インストール時に add Python 3.10 to Pathをチェックしてインストールしています。
3. Djangoインストール
コマンドプロンプトより、python -m pip install Django
4. Django-irisのダウンロード
https://openexchange.intersystems.com/package/django-iris よりdjango-iris-0.1.x.zipをダウンロードし、c:\に展開
5. Python DB-APIのインストール
コマンドプロンプトで4で展開されたディレクトリに移動し、whlファイルをインストールします。 pip3 install intersystems_irispython-3.2.0-py3-none-any.whl
6. Django-irisのインストール
コマンドプロンプトより、以下のコマンドでインストールします。 pip install django-iris
7. Djangoアプリの作成
Djangoの公式ページにあるチュートリアルに従ってアプリを作ってみました。 https://docs.djangoproject.com/ja/4.0/intro/tutorial01/ ただし、Databaseの設定部分で設定ファイル(settings.py)のDATABASESの部分を以下のように修正しています。
記事へ
Hashimotoさん
)
こんにちは。
IRISスタジオだと「他の表示」で表示されたINTコード上で、エラーの行にカーソルを持っていき、
再度「他の表示」をクリックすると対応するソースコードに移るのでなんらかの方法はあるかと
思い、調べてみました。(%SYS.MONLBLで...
Internalクラスなので、インターシステムズのサポートは無く、将来的に変わる可能性はありますが、以下の方法で求められそうです。
まず以下のメソッドでエラーのロケーション形式( label+offset^routine )から、INTルーチンの先頭からのoffsetを求めます。
で、sc=1の場合、intnameにはINTルーチン名、intlineには先頭からのオフセットが入ります。
次に、以下のメソッドでソースコードのロケーションを求めます。
sc=1の場合、変数mapは以下の形式で返ります。
ちなみに、SourceLine()メソッドの第2~5引数は
startLine, startPos, endLine, endPos
となっており、どうもエディタ上で選択した範囲を入力すると、それに対応するソースコードの範囲を計算してくれるようです。
その場合、変数mapはこんな感じになります。
記事へ
Ohataさん
こんばんは。
Ens.Util.LogテーブルのTimeLoggedカラムを見ると、Ens.DataType.UTCとなっていました。これはUTCで保管されているのですが、表示するときにLogicalToDisplay()などでローカル時刻に変換しています。
従いまして、①については、実体としてUTCで保管されています。
②についてはEns.DataType.UTCは表示するときにローカル時刻に変換されますが、キャストしたものは型が異なるので変換されずに表示されるからだと思います。
③についても、WHERE句の条件はUTCで計算されますので、記載されたようにDATEADDで変換するしかなさそうです。
ただTimeLoggedカラムに変換をかけるよりも、指定したパラメータをUTCに変換する方が、DBのインデックスも使用できるので効率が良いかと思います。
WHERE timelogged >= DATEADD('hh',-9,'2022-01-26')
記事へ
12/16現在、各製品の調査状況は以下の通りです。詳細はこちらをご確認ください。
以下の製品につきましては、Log4j2による脆弱性があることが確認されました。
Data Platforms Add-ons
• InterSystems Reports Server
• InterSystems Reports Designer
TrakCare
• TrakCare Core
以下の製品はLog4j2を使用していますが、信頼できないソースからのデータ処理には使用されていません。
Data Platforms Add-ons
• InterSystems Cloud Manager
HealthShare
• HealthShare Clinical Viewer (2019.2 ~ 2021.2)
以下の製品につきましてはLog4j2による脆弱性が無いことが確認されています。
Data Platforms
• InterSystems IRIS
• Caché
• InterSystems IRIS for Health
• Ensemble
Data Platforms Add-ons
• Atelier Integration
• CSP Gateway for CE
• IRIS Studio
• InterSystems API Manager
• InterSystems Kubernetes Operator (IKO)
• ISC Agent
• Legacy .Net bindings
• Legacy node JS binding
• ODBC Driver
• System Alerting and Monitoring (SAM)
• VS Code Integration
• Web Gateway for IRIS
• Zen Mojo
HealthShare
• HealthShare Clinical Viewer (2019.1以前 )
• Unified Care Record
• Care Community
• Personal Community
• Provider Directoryi
• Health Insight
• Patient Index
• Health Connect
記事へ
Ohataさん
こんにちは。
例えば、$listを使用して、10パラメータずつまとめてExecuteメソッドのパラメータに渡すというのはいかがでしょうか。プログラム例は以下のとおりです。(長くなりますので、途中「...」で省略しています)
Prepare()メソッドでは、60個のパラメータにP0~P59の名前を付けるサブクエリを作り、それをFROM句に指定して$listget関数で分解したデータをcoltest.testテーブルのP0001~P599のカラムにINSERTするSQL文を指定しています。
Execute()メソッドではデータ10個を$listbuild()関数で$list形式に変換し、パラメータとして指定しています。
記事へ
Ohataさん
こんにちは。
実際にSourceControlを使っているわけではないのでよくわかっていない部分はありますが、
スタジオやVSCodeで保存した際には、スタジオやVSCodeのフック処理にてSourceControlの処理が実行されるかと思います。しかしImportDirなどObjectScriptのメソッドにはこのような機能がないため、SourceControlの処理は実行されません。
ImportDirメソッドを実行されるということは、その前に特定のディレクトリに.CLSなどのファイルを保存されるかと思います。
その際にSourceControlで使用する作業ディレクトリに保存すれば、SourceControlの処理が実行されるかと思うのですが、いかがでしょうか?
抽象的な内容ですみません。
何らかのヒントになれば幸いです。