質問 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 495
質問 Akio Hashimoto · 2022年2月1日 Windows11での動作状況について Windows端末でCachéやIRIS等を開発環境として使っています。 Windows11での動作状況について、インターシステムズからの正式な対応はまだのようですので、 下記のバージョンで既にインストールをされている方が居られれば、状況などを教えて頂けないでしょうか。 特に問題無く動いていますでしょうか? ・Caché 2017.1 ・IRIS for Health 2019.1 この他のバージョンについても情報が御座いましたらよろしくお願い致します。 #Caché #InterSystems IRIS #その他 2 2 0 351
質問 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 751
質問 Yuji Ohata · 2022年5月26日 スタンドアロン環境におけるEmbeded Pythonの利用について。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 EmbededPythonに興味があり、利用を検討しているのですが、スタンドアロン下におけるライブラリの使用方法について疑問があります。 #Python #InterSystems IRIS 1 2 1 519
質問 Yuji Ohata · 2024年11月22日 SQLのInsertにおける、JDBCとIRIS直の挙動差異について。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 IRISに直接Insert文を発行する時と、JDBCを経由してInsert文を発行する時とで、挙動差異があるように見受けれれまいたので、何かご存知な方がいらっしゃれば教えてください。 次の様なテーブルがあります。 それに対してDBeaverとIRIS管理ポータルからInsertを実行します。 ★DBeaver ★IRIS管理ポータル #JDBC #SQL #重要な質問 #InterSystems IRIS 1 3 0 92
質問 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 359
質問 Yuji Ohata · 2023年4月13日 Pythonからネームスペースを指定してグローバルを参照する方法。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 現在、Embedded Pythonを用いて開発を行おうとしているのですが、別のNMSPに存在するグローバルをiris.gref()で参照する方法がわかりませんでした。 > iris.gref("^[NMSP]GBL") <-----こうしても自身のNMSPのグローバルを参照してしまう。 諦めてznでネームスペースを切り替えてみようかな、とも思ったのですが、python上でznをかける方法もよくわからず、対応方法に悩んでいます。 どなたか、上記の対応方法についてご存じな方はいらっしゃいませんでしょうか? #Embedded Python #InterSystems IRIS 1 5 1 200
質問 Taro Yamada · 2021年1月28日 ループ中にエラーが発生してもそのままループを継続したい 皆さんこんにちは。 以下のメソッドでは日付の入った配列を受け取り、すべてのYYYY-MM-DD形式の日付を$horologに変換しているのですが、たまに日付が古すぎるものが入っており<VALUE OUT OF RANGE>エラーが発生して途中で止まってしまいます。エラー時にエラーメッセージを代入してそのまま継続できる方法はないでしょうか? プログラムは以下の通りです。 #ObjectScript #InterSystems IRIS 0 2 0 795
質問 Yuji Ohata · 2023年6月1日 SQLでWHERE句に文字列を指定する時、予期せぬデータがヒットする。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 IRISにSQLを投げるときの動作について教えてください。 ■適当なテーブルを作成CREATE TABLE Mst.Test (id int, name varchar(10)) ■データをINSERTINSERT INTO Mst.Test VALUES (2, 'bbb ')※文字列の末尾にスペースを追加。 ■SELECTSELECT * FROM Mst.Test WHERE name = 'bbb'※whereの条件には末尾のスペースを入れない。 ⇒上記の結果、INSERTされたデータがヒットしている。 [疑問点]SQLの実行において、=を使って完全一致検索をしているつもりなのですが、末尾のスペースはその条件を無視してヒットしてしまうものなのでしょうか? 何か情報をお持ちの方がいらっしゃれば、フォローいただけますと幸いです。 #SQL #InterSystems IRIS 0 3 0 214
質問 Seiji Hirose · 2021年2月22日 新規ネームスペース画面でのメッセージについて 本件、すでに改修済みである場合にはご容赦願います。 IRIS2020.1のテストをしています。 新規ネームスペース画面に「相互運用プロダクション用にネームスペースを有効化」というチェックボックスがあります。デフォルトでチェックされていましたので、試しにチェックを外してみました。下記のようなメッセージが表示されるのですが、日本語のメッセージになると有り難いなぁ、と感じました。 (メッセージ) Are you sure you do not want this to be 運用相互プロダクションのために有効? #InterSystems IRIS 0 2 0 184
質問 Yuji Ohata · 2022年2月17日 マニフェストを利用したNMSPの作成について。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 現在、共通のIRIS環境を複数個所に用意するため、インストール・マニフェストを利用した環境構築の仕組みを作成しております。https://docs.intersystems.com/iris20211/csp/docbookj/DocBook.UI.Page.cls... #相互運用性 #Ensemble #InterSystems IRIS 0 2 0 189
質問 Shuichi Igusa · 2023年9月7日 FHIR サーバサイドアプリケーションを利用したデータの追跡を簡単に試せるテンプレート内で作成されるテーブルについて こんにちは、皆さま。 IRIS for Healthを業務に利用すべく試用中です。 FHIR R4 リソースリポジトリの体験とFHIR サーバサイドアプリケーションを利用したデータの追跡を簡単に試せるテンプレートで提供されている環境をローカルに展開しています。 患者登録を実際に行った動作の理解を進めておりますが、以下2点不明となっております。どなたか情報ございましたらフォローいただければと思います。 ・実際のデータが登録されているテーブルは「HSFHIR_X0001_S.Patient」かと思いますが、どこでInsert文が流れているのでしょうか。 ・clsと実際のテーブルは対になるという認識でおりますが、vscode上に「HSFHIR_X0001_S.Patient」に該当するようなclsが無いように見受けられましたがどこかにあるのでしょうか。 見当違いな質問でしたら申し訳ありません。 #InterSystems IRIS for Health 0 2 0 124
質問 Seiji Hirose · 2022年2月20日 DjangoでIRISデータベースにアクセスできますか? 現在、Django(python)でWebアプリケーションを作成するための調査をしています。 DjangoからIRISのデータベースにODBCでアクセスできるのか、についてご教授頂けないでしょうか。 宜しくお願い致します。 #Python #InterSystems IRIS 0 4 0 300
質問 Yuji Ohata · 2023年10月16日 VsCodeでリモートアクセスした際にSourceControlのUsernameが取得できない。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 同じ現象に陥っていた方がいれば助言頂きたいのですが、VsCodeでIRISにリモートで接続した際、SourceControlでUserNameが取得できていないようです。 { "objectscript.conn": { "host": "xxxx.xxxx.xxxx.xxxx", "port": 52773, "ns": "RKNK", "username": "xxxx", "password": "xxxx", "active": true }, "editor.formatOnType": true} →SourceControlクラスで..Usernameを取得しようとしても値が入っていない。 同じような現象になった方はいらっしゃらないでしょうか?何か情報をお持ちの方がいらっしゃれば、フォローいただけますと幸いです。 #InterSystems IRIS #VSCode 0 4 0 185
質問 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 497
質問 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 250
質問 Shuichi Igusa · 2023年11月27日 IRIS for Healthで用意されているアダプタについて こんにちは、皆さま。 IRIS for Healthを業務に利用すべく試用中です。Interoperabilityで取り扱えるデータ型のリストがないか探していたのですが、管理ポータルのInteroperabilityの項目には記載が無いように見受けられました。準備されているアダプタのリストが確認できる場所はありますでしょうか。恐縮ですが教えていただければと思います。 #InterSystems IRIS for Health 0 2 0 113
質問 TAKAHITO KURAUCHI · 2021年3月3日 カタカナ→ローマ字変換について カタカナ→ローマ字変換ができるサンプルクラスはありませんでしょうか? #HealthShare 0 2 0 237
質問 Yuji Ohata · 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 269
質問 makoto fukunaga · 2024年11月21日 IRISインスタンスが起動できない。 IRISを起動しようとするとエラーとなり起動できません。どなたか解決策をご存知でしょうか?よろしくお願い致します。 環境:Windows11 事前作業: 下記URLと同症状が発生し、アップグレードインストールを行っています。 https://jp.community.intersystems.com/post/iris%E3%82%B3%E3%83%9F%E3%83%... 操作: 1.タスクトレイアイコンから「InterSystems IRIS 開始(S)[IRIS]」を選択。 2.エラーメッセージが表示される。 #Microsoft Windows #ObjectScript #重要な質問 #InterSystems IRIS 0 6 0 150
質問 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 443
質問 Mitsuru Amano · 2021年3月13日 %CSP.WebSokectの非同期動作(SharedConnection=1)でソケットクローズの検知 こんにちは、皆さん 私は、%CSP.WebSocketの非同期動作(SharedConnection=1)で、ソケットのクローズを検知する手段が見つからなくて困っています。 WebアプリケーションとIRIS間でソケットの接続、データの送受信は出来ましたが、Webアプリケーション側でソケットクローズしたとき、IRIS側でそれを検知する方法が分かりませんでした。 どなたか、IRIS(サーバ側)でソケットのクローズを検知する方法をご存じでしたら教えて下さい。 #JavaScript #InterSystems IRIS 0 3 0 198
質問 Yuji Ohata · 2022年6月13日 トランザクション中に任意のテーブル更新だけ先にCommitを確定させたい。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 現在テーブルを用いてシステムの設計を行っておりますが、トランザクション中に、そのトランザクションの影響を受けずにテーブルを更新するような仕組みが欲しいと考えております。(トランザクションがRollbackされても、そのテーブルの更新だけは確定させたい。) 例えば$INCREMENT()はトランザクション中であっても、その制約を無視して値を更新できます。そのような回避策がないかをご教示いただきたいです。 用途としては、連番を生成するAPIを作成していて、その値をテーブルで管理しています。このAPIは複数プロセスから呼ばれることがありますが、1トランザクション中の連続Updateにより、行ロックからテーブルロックへの昇格が行われる(1000行以上行ロックをしたときのIRISの仕様)ことで、他プロセスがAPIを利用できなくなるなどの影響が出ています。今回のAPIに関しては、番号重複さえ起きなければよいので、そのような影響は受けたくありません。 #InterSystems IRIS 0 4 0 432
質問 Akio Hashimoto · 2024年11月28日 VSCodeでエラーが出まくります ここ最近になって、VSCodeで以下のようなエラーが出るようになり、波線だらけになってしまいます。IRISサーバーとは連携出来ていて、コンパイルも通るので大きな問題ではないのですが、ソースが真っ赤っ赤になってとっても見辛いです。これらを消す方法があれば教えて下さい。VSCode、拡張モジュール共に最新です。 Avoid using legacy if/else flow control statements (cachequality:OS0089) 鍋蓋カッコを使わない1行のIF文のところで真っ赤な波線が出まくります。例:if (a = "") set b = "c" Consider using an If statement instead of a postconditional (cachequality:OS0039) コマンドの後付条件を記載しているところで、青い波線が出まくります。例:quit:var="" #VSCode #その他 0 5 1 138
質問 Yuji Ohata · 2021年3月29日 ObjectScriptの変数の型検知について。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 ObjectScriptでは様々な型の変数定義が可能ですが、実際に定義された変数(Object)から、その変数の型を逆引きする方法をご存じな方はいらっしゃいませんでしょうか? 理想としては、Java等で利用可能な『instanceof』演算子の代替えとなるような仕組みが望ましいです。 力技で何とかなりそうなら、専用のメソッドみたいなものを自作で作ってもよいかなとは考えておりますが、現状その力技すら思いついていない状況です。。。 何か情報をお持ちの方がいらしたら、助言いただけますと幸いです。 #API #ObjectScript #言語 #InterSystems IRIS 0 4 0 396
質問 Akio Hashimoto · 2024年12月4日 Embedded Python からの venv環境の利用は出来ますか? Pythonでは、拡張モジュールのバージョン違いが混同されないように、venv を使って仮想環境に拡張モジュールをインストールする事を推奨されてたりしますが、IRISから使用する場合に、このvenvで作られた仮想環境を利用する事は可能でしょうか? PythonPathに仮想環境のパスを指定してはみましたが、プロジェクトから、あるいはimportで、その場所を指定する等出来るでしょうか? 何方か御存知の方がおられましたら、その方法などを教えて下さい。 #Embedded Python #InterSystems IRIS 0 4 0 110
質問 Yuji Ohata · 2021年4月13日 RecordMapでのエラー情報の取得について。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 InteroperabilityのRecordMapの仕組みを利用した、ファイル取り込みについて、取り込み時のエラー内容を独自のログ出力グローバルに吐き出したいと考えております。 管理ポータル上だと以下のように表示されている内容を文字列として取得したいだけなのですが、何か方法はありませんでしょうか? Ent_Util.Logの中を見ると上記の内容は確認できたのですが、わざわざシステムが吐いているログを見なくとも、ビジネス・サービスの結果として取得できる情報があるのでは?と考えております。 #InterSystems IRIS 0 4 0 148
質問 Yuji Ohata · 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 247
質問 Yuji Ohata · 2024年12月4日 SQLの最適化について。 こんにちは、皆さま。業務でIRISを用いて開発を行っている者です。 私自身SQLがあまり得意ではなく、業務で書いてみたもののパフォーマンスがよくなく、不要なループが含まれていた、無駄な検索条件が含まれている…なんてことが多々あります。 IRISの管理コンソールなどにはいろんな機能があると思うのですが、パフォーマンス改善をするために利用できるツールなどはあったりしますでしょうか? 何かご存知の方がいらっしゃいましたら、情報共有頂けますと幸いです。 #SQL #InterSystems IRIS 0 2 0 39
質問 Yuji Ohata · 2021年4月13日 ビジネス・サービスの実行監視について。 こんにちは、皆さま。JOBの実行監視について、いい方法があれば教えてください。 現在Interoperablity上にファイル検知(PassthroughService)をトリガーにしたServiceを作成しており、このServiceがデイリーで正しく動作しているかどうかを監視する仕組みを作りたいと考えています。 例) 「A」というServiceが、毎日20時までに実行されているか? を監視し、実行されていなければエラーメールを送信する。 今考えている案では、タスクスケジューラを用いてJOBが実行されたかを見に行くしかないのかなと考えているのですが、他にいい実現方法をご存じな方がいらっしゃれば、情報頂けますと幸いです。 #InterSystems IRIS 0 2 0 180