質問 Ohata Yuji · 2022年12月28日 インスタンスの起動イベントをクラスで拾いたい。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 どなたかインスタンスの起動を%ZSTART等のMACではなく、クラスのコールバック等で検知する方法をご存知ではないでしょうか? 背景としましては以下の通りです。 =================================================================== 現在、Interoperabilityを利用する機能を開発しております。Ens.Productionを継承したクラスの中でOnStart()をoverrideしており、その中で上記のクラス自身をリコンパイルする処理が含まれております。 OnStart()でリコンパイルが行われる際、プロダクションの定義が変更されているとそのプロセスでのプロダクションの起動が失敗してしまいます。(プロダクション上の定義と、実際のクラスの状態に不一致が発生するため。) そのため、クラス自身のリコンパイルをプロダクションの開始時ではなく、インスタンスの開始時にしたいのですが、%ZSTART等のMACファイルは今回利用したくありません。 #InterSystems IRIS 0 6 0 56
質問 松川 幸久 · 2022年12月19日 VSCODEによるサーバCSPフォルダ内のHTML編集について こんにちは、普段はスタジオを使っているのですが、サーバCSPフォルダ内のHTMLファイルを編集する事があり、便利なのでたまにVSCODEを利用しています。以前はHTMLファイルも表示していたと思うのですが、何をやらかしたのかCSP,CSS,MACのみになりました。int,html,jsなどの他のファイルを表示する設定をご存知の方いらっしゃいましたらご教授お願い致します。 #開発環境 #Caché 0 2 0 47
質問 Ohata Yuji · 2022年12月14日 Ubuntuにおけるpython開発環境について。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 この度、新たにUbuntu環境にIRISを入れてEmbedded Pythonを用いて開発をすることとなりました。初期設定として、Ubuntuへのpythonのインストールが必要だと考えているのですが、その時のバージョンの指定等はあるのでしょうか? 公式サイトを漁ってもうまく見つけられず、ご存知の方がいらっしゃれば教えてください。同様の開発をされている方で、躓きポイントなど(Ubuntuだとスタジオ使えないからVSCode必須だよ)があれば、合わせて助言頂けますと幸いです #Python #Ubuntu #InterSystems IRIS 0 2 1 44
質問 Seiji Hirose · 2022年11月23日 CSPでHyperEventエラーが出る場合の対処方法について Cache2008.1+WindowsServer2008R2で稼動していたCSPアプリケーションを、Cache2018.1+WindowsServer2019に移植したところ、下記のエラーメッセージが表示されるようになってしまいました。どういった原因が考えられるでしょうか?また、対処方法をご存知でしたらご教授願います。 Unexpected status code, unable to process HyperEvent: Not Found (404) #Caché 0 3 0 75
質問 Ohata Yuji · 2022年10月24日 SQLの実行で意図せぬ結果になる。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 SQLの実行結果について、意図せぬ結果になるものが二点ありますので、利用方法等に誤りがないかを確認させてください。 ①CREATE TABLE Tmp.AAA AS SELECT * FROM Mst.AAA WHERE column = ?⇒管理ポータルで実行しても、?パラメータを置換するダイアログが表示されず、 オンコードで%Execute()しても実行エラーになる。 ★この構文では?パラメータは利用できないのでしょうか? #SQL #InterSystems IRIS 0 8 1 86
質問 Ohata Yuji · 2022年9月13日 テーブルアクセス結果の取得APIについて。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 現在開発している処理の中で、大量データをSELECT & INSERTする処理があり、合計で91分かかっています。この処理で用いるSQLは実行結果を再利用したい等の意図があったため、ScrollableResultSetを用いていましたが、このAPI自体がSQL実行時に全件ループを回したり、そもそも古いAPIとの事であったため、%SQL.Statementに書き換えたところ、62分まで短縮することが出来ました。 ここからが問題なのですが、更なる処理時間の軽減のために時間がかかる処理を調査していたところ、カラム情報を取得する%Get()メソッドにコストがかかっていることがわかりました。なので現在はこれを改善したいと思っております。 こちらで動作を見たところ、最速は下記でいう所の「rset.name」でこちらを利用すると、41分まで削減されます。 #InterSystems IRIS 0 4 0 82
質問 Kobata Makoto · 2022年8月10日 ubuntu 22.04 LTS へのIRIS Community Editionのインストールについて 皆様こんにちは。 ubuntu 22.04 LTSに対してIRIS-Community 2022.1.0.209.0をインストールしようとしたところ、 下記のようなエラーが出てインストールができない状態です。 LTSバージョンではSSLがversion3.0.2になっていますので、手動にてversion1.1.1をインストールしてみましたが 改善されません...製品版のIRIS 2022.1.0.209.0であれば正常にインストールできますので、Community Editionだけの 問題のような気もしています。 ← こちらは製品版でも同じ現象でした...>< どなたか知見をお持ちの方おられないでしょうか? ----- ■以下エラー Warning: The installer can't find a platform in this distributionsupported by your system. Searching for platforms that might install in unsupported mode... #InterSystems IRIS 1 2 1 104
質問 Ohata Yuji · 2022年6月13日 トランザクション中に任意のテーブル更新だけ先にCommitを確定させたい。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 現在テーブルを用いてシステムの設計を行っておりますが、トランザクション中に、そのトランザクションの影響を受けずにテーブルを更新するような仕組みが欲しいと考えております。(トランザクションがRollbackされても、そのテーブルの更新だけは確定させたい。) 例えば$INCREMENT()はトランザクション中であっても、その制約を無視して値を更新できます。そのような回避策がないかをご教示いただきたいです。 用途としては、連番を生成するAPIを作成していて、その値をテーブルで管理しています。このAPIは複数プロセスから呼ばれることがありますが、1トランザクション中の連続Updateにより、行ロックからテーブルロックへの昇格が行われる(1000行以上行ロックをしたときのIRISの仕様)ことで、他プロセスがAPIを利用できなくなるなどの影響が出ています。今回のAPIに関しては、番号重複さえ起きなければよいので、そのような影響は受けたくありません。 #InterSystems IRIS 0 4 0 117
質問 Ohata Yuji · 2022年5月26日 スタンドアロン環境におけるEmbeded Pythonの利用について。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 EmbededPythonに興味があり、利用を検討しているのですが、スタンドアロン下におけるライブラリの使用方法について疑問があります。 #Python #InterSystems IRIS 0 2 0 118
質問 Tomomi Yamano · 2022年5月8日 terminology service in Japan Hi, Our business is working on the launch of terminology service module in Japan and wonder if there is any specific like SNOMED CT for Japanese market. Your input would be appreciated. Best, #FHIR #InterSystems IRIS #InterSystems IRIS for Health 0 2 0 83
質問 Ohata Yuji · 2022年3月6日 Interoperabilityのスケジュール起動について。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 現在複数のJob実行の仕組みをInteroperabilityの機能を使って実現しておりますが、特定のビジネスサービスは、xx:xx~yy:yyの間実行させたくない、という仕組みを実現させる必要が出てきました。 https://docs.intersystems.com/iris20201/csp/docbookj/DocBook.UI.Page.cls... ここに「スケジュール指定の定義」というものがあり、まさにこれが利用できるのかと思ったのですが、文献を見る限りだと、プロダクションそのものを停止するような仕組みに見えており、また実際に定義を作ってみたのですが、それをどうやってプロダクションへ反映させるかもわかりませんでした。 #Ensemble 0 2 0 87
InterSystems公式 Toshihiko Minamoto · 2022年3月4日 3/1 複数のInterSystems IRIS for Health 、HealthShare への勧告 InterSystems Product Alerts and Advisories page に投稿された14件の勧告へのリンクです。HealthShare製品は全て、IRIS for Healthは最初の3件について影響があります。 #HealthShare #InterSystems IRIS for Health #InterSystems公式 #ワールドワイド・レスポンスセンター(WRC) 0 0 0 38
質問 Kobata Makoto · 2022年2月28日 Native API for .NETでの%Stream.GlobalBinaryデータの書き込みについて 皆様こんにちは。 Native API for .NETを使用して、%Stream.GlobalBinaryタイプのプロパティを持つデータを作成しようとしています。 %Stream.GlobalBinaryタイプのプロパティ(binaryData)に書き込む部分は以下のようになっています。 Using obj As InterSystems.Data.IRISClient.ADO.IRISObject = iris.ClassMethodObject("User.Sample","%New") Using prop As InterSystems.Data.IRISClient.ADO.IRISObject = obj.GetObject("binaryData") prop.InvokeStatusCode("Write", binary) End Using obj.InvokeStatusCode("%Save") End Using #.NET #InterSystems IRIS 0 8 0 105
質問 Seiji Hirose · 2022年2月20日 DjangoでIRISデータベースにアクセスできますか? 現在、Django(python)でWebアプリケーションを作成するための調査をしています。 DjangoからIRISのデータベースにODBCでアクセスできるのか、についてご教授頂けないでしょうか。 宜しくお願い致します。 #Python #InterSystems IRIS 0 4 0 132
質問 Ohata Yuji · 2022年2月17日 マニフェストを利用したNMSPの作成について。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 現在、共通のIRIS環境を複数個所に用意するため、インストール・マニフェストを利用した環境構築の仕組みを作成しております。https://docs.intersystems.com/iris20211/csp/docbookj/DocBook.UI.Page.cls... #相互運用性 #Ensemble #InterSystems IRIS 0 2 0 56
質問 Akio Hashimoto · 2022年2月3日 エラー時の行番号について 皆さん こんにちは。 最近ではVSCodeでIRISのプログラミングを行っている方も多いと思います。 クラスメソッドなんかをコーディングし、実行してエラーとなった場合に、以下のようなエラーメッセージが取得できると思います。 > <UNDEFINED> zNewMethod+32^ClassName.1 これは、NewMethodというメソッド内の32行目でUNDEFINEDが発生した事を指していますが、これは実際にはClassName.clsのNewMethod内の32行目ではなく、ClassName.1というルーチン(int)のzNewMethodでの32行目を示しています。 .clsから生成されるintは空行が削られたり、複数ルーチンに分割されたりしますので、実際のClassName.clsを開いてNewMethodの32行目を見ても実際のエラー箇所では無い場合があります。 VSCodeで開発をしていると、これが結構面倒なのですが、エラーメッセージに出力される行番号を .clsや、.mac 上での行番号に変える方法があれば教えて頂きたく、よろしくお願い致します。 #ObjectScript #InterSystems IRIS 2 2 0 113
質問 Akio Hashimoto · 2022年2月1日 Windows11での動作状況について Windows端末でCachéやIRIS等を開発環境として使っています。 Windows11での動作状況について、インターシステムズからの正式な対応はまだのようですので、 下記のバージョンで既にインストールをされている方が居られれば、状況などを教えて頂けないでしょうか。 特に問題無く動いていますでしょうか? ・Caché 2017.1 ・IRIS for Health 2019.1 この他のバージョンについても情報が御座いましたらよろしくお願い致します。 #Caché #InterSystems IRIS #その他 2 2 0 151
質問 Ohata Yuji · 2022年1月26日 テーブル定義内のTIMESTAMP型のデータについて。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 TIMESTAMP型のデータを持つテーブルの扱いについて教えてください。 現在Ens_Util.Logを参照するシステムを開発しようとしております。このテーブルの中にTimeLoggedというTIMESTAMP型のデータがあるのですが、それをSELECTした際、CASTの有無で表示されるデータに差異が出ます。 SELECT DATE(TimeLogged), CAST(TimeLogged AS TIME), TimeLoggedFROM Ens_Util.Log #InterSystems IRIS 0 8 0 86
質問 Ohata Yuji · 2021年12月6日 SQL実行時にバインドパラメータを255個以上渡したい場合について。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 私はIRISでSQLアクセスを行うプログラムをを作成しており、テーブルアクセスには%ScrollableResultSetクラスのAPIを用いて処理を実現しています。作成するSQLはインジェクション対策のため、?パラメータを用いておりますが、この度、大量のパラメータ(600項目)を用いるSQLを作成する必要が出てきました。 https://irisdocs.intersystems.com/iris20191/csp/docbookj/DocBook.UI.Page...こちらによりますと、可変長引数を用いても引数の上限値は255個となっており、実際に600個のパラメータを引数に与えてSQLアクセスしようとすると、<STACK>エラーが発生する状況です。 #Caché #InterSystems IRIS 0 2 0 89
質問 Ohata Yuji · 2021年8月17日 $SYSTEM.OBJ.ImportDir()利用時のSourceControlの利用について。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 スタジオ以外でSourceControlを利用されている方がいれば教えてください。 現在SourceControlを用いて、コンパイル前に自動コードレビュー(静的解析)を行うような仕組みを構築しております。実際にスタジオやVSCodeでの保存時には、上記の仕組みが動作しソースチェックが行われるのですが、clsの一括取り込みを行おうと『$SYSTEM.OBJ.ImportDir()』を実行した際にはSourceControlが動作していないように見えております。 以下のような形でメソッド実行しているのですが、オプション等の不備になるのでしょうか? > Do $SYSTEM.OBJ.ImportDir("ファイルが存在するパス","*.cls;*.mac;*.int;*.inc;*.dfi","ck",,1) #ObjectScript #InterSystems IRIS 0 2 0 88
質問 Ohata Yuji · 2021年6月7日 オンコードでのclsファイルのExportについて。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。clsファイルのExportについて、ご存じな方がいらしたら教えてください。VSCodeではclsの一覧からExportを選択すると、clsファイルとしてローカルにファイル出力されます。 これと同じことを、ObjectScript上でも行いたいと思っています。しかしながら、Export用のAPIを見てみてもxmlファイルで出力される旨のコメントがあり、clsファイルのまま出力するためのAPIが見当たりません。 #API #InterSystems IRIS 0 2 0 86
質問 Ohata Yuji · 2021年5月18日 AWS CodeBuildを用いた自動ビルドの仕組みについて。 こんにちは、皆さま。業務で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にて、以下のような命令で行おうと考えております。 #AWS #InterSystems IRIS 0 5 0 578
質問 Ohata Yuji · 2021年4月13日 ビジネス・サービスの実行監視について。 こんにちは、皆さま。JOBの実行監視について、いい方法があれば教えてください。 現在Interoperablity上にファイル検知(PassthroughService)をトリガーにしたServiceを作成しており、このServiceがデイリーで正しく動作しているかどうかを監視する仕組みを作りたいと考えています。 例) 「A」というServiceが、毎日20時までに実行されているか? を監視し、実行されていなければエラーメールを送信する。 今考えている案では、タスクスケジューラを用いてJOBが実行されたかを見に行くしかないのかなと考えているのですが、他にいい実現方法をご存じな方がいらっしゃれば、情報頂けますと幸いです。 #InterSystems IRIS 0 2 0 98
質問 Ohata Yuji · 2021年4月13日 RecordMapでのエラー情報の取得について。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 InteroperabilityのRecordMapの仕組みを利用した、ファイル取り込みについて、取り込み時のエラー内容を独自のログ出力グローバルに吐き出したいと考えております。 管理ポータル上だと以下のように表示されている内容を文字列として取得したいだけなのですが、何か方法はありませんでしょうか? Ent_Util.Logの中を見ると上記の内容は確認できたのですが、わざわざシステムが吐いているログを見なくとも、ビジネス・サービスの結果として取得できる情報があるのでは?と考えております。 #InterSystems IRIS 0 4 0 78
質問 Ohata Yuji · 2021年3月29日 ObjectScriptの変数の型検知について。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 ObjectScriptでは様々な型の変数定義が可能ですが、実際に定義された変数(Object)から、その変数の型を逆引きする方法をご存じな方はいらっしゃいませんでしょうか? 理想としては、Java等で利用可能な『instanceof』演算子の代替えとなるような仕組みが望ましいです。 力技で何とかなりそうなら、専用のメソッドみたいなものを自作で作ってもよいかなとは考えておりますが、現状その力技すら思いついていない状況です。。。 何か情報をお持ちの方がいらしたら、助言いただけますと幸いです。 #API #ObjectScript #言語 #InterSystems IRIS 0 4 0 161
質問 Mitsuru Amano · 2021年3月13日 %CSP.WebSokectの非同期動作(SharedConnection=1)でソケットクローズの検知 こんにちは、皆さん 私は、%CSP.WebSocketの非同期動作(SharedConnection=1)で、ソケットのクローズを検知する手段が見つからなくて困っています。 WebアプリケーションとIRIS間でソケットの接続、データの送受信は出来ましたが、Webアプリケーション側でソケットクローズしたとき、IRIS側でそれを検知する方法が分かりませんでした。 どなたか、IRIS(サーバ側)でソケットのクローズを検知する方法をご存じでしたら教えて下さい。 #JavaScript #InterSystems IRIS 0 3 0 87
質問 Kota Torikai · 2021年3月5日 Ubuntu 20.04.2でのDocker, IRIS(DL製品版)導入-起動までのメモ <Ubuntu-Docker> https://qiita.com/tkyonezu/items/0f6da57eb2d823d2611d 手順を参照 手順2.1-2.5までを実行→Docker環境ができる <Docker-IRIS> 1. 端末などでディレクトリ /home/usr/docker/iris2020.3 を作成(ディレクトリ名は任意) 2. 上記ディレクトリに、インターシステムズから送られるDLサイトからダウンロードしたirishealth_ml-2020.3.0.304.0-docker.tar.gz を置く #Docker #Ubuntu #InterSystems IRIS for Health 0 2 0 202
質問 TAKAHITO KURAUCHI · 2021年3月3日 カタカナ→ローマ字変換について カタカナ→ローマ字変換ができるサンプルクラスはありませんでしょうか? #HealthShare 0 2 0 76
質問 Mitsuru Amano · 2021年3月3日 VSCODEのCSPの編集について こんにちは、皆さま IRISとVSCODE環境を日頃から愛用しています。 普段は使用しませんが、実験的にCSPファイル(*.CSP)をVSCODEで編集してみようと思い試みましたが上手く行きませんでした。 VSCODEの拡張は、「InterSystems ObjectScript Extension Pack」を使用しています。 具体的は2つの方法を試しました。 1.DBからworkspaceにExportして編集+Import&Compile ObjectScriptのソースTree-コンテキストメニューにExportが無いため動作を確認できず。 clsのExprot cspのExportが…ない #CSP #VSCode #InterSystems IRIS #Open Exchange 0 4 0 212
質問 Seiji Hirose · 2021年2月23日 Excel(VBA)でのIRISアクセスについて 弊社では、Cacheの時からExcel(VBA)を使用して、Cache側のクラス定義を抽出して画面に表示する、という開発サポートツールを作成して使用していました。 今回、IRISベースでの開発に移行するにあたって、このExcel(VBA)の動作確認をしました。 実施したことは、VBAのエディタ画面にあるメニューから「ツール」→「参照設定」へと進み、表示される選択リストの「CacheActiveX3.0[IRIS] Type Library」を選択しなおすことで、VBAのコードを変更することなく動作する事が確認できました。 このようなExcel(VBA)への対応はカットされたのではないかと不安がありましたが、流石ですね、ちゃんとカバーされていました。 なお、Type Libraryの名称が「CacheActiveX」で始まっていたのはご愛嬌でしょうか?Cache経験者であれば、問題ないと思いましたが、IRISから使い始めた方にとっては、少々困惑されるかも、と感じました。 Excel(VBA)でIRISに接続する事例がどの程度存在するのかは不明ですが、Excel(VBA)でIRISに接続できると便利だと感じています。今時ですから、ODBC を使った方が分かりやすいかも知れませんね。 #InterSystems IRIS 1 8 0 361