記事 Hiroshi Sato · 2025年3月10日 1m read select count(*)の応答に時間がかかる、あるいはタイムアウトが発生する場合の対処法について これは InterSystems FAQ サイトの記事です。 大量のレコードが含まれるテーブルに対して、select count(*) from テーブル名の応答が遅い、または応答がタイムアウトする場合には、ビットマップ・エクステント・インデックスを追加することで問題を解消することができます。 ビットマップ・エクステント・インデックスを追加する方法は、以下をご参照ください。 ビットマップ・エクステント・インデックスの追加方法 クラス定義に以下のような定義を行うことで、ビットマップ・エクステント・インデックスを追加することもできます。 #ヒントとコツ #リレーショナルテーブル #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 28
記事 Hiroshi Sato · 2025年3月11日 1m read ODBC経由で取得したデータが途切れる場合の対処法 これは InterSystems FAQ サイトの記事です。 8192文字を超える文字列をODBC経由で取得した場合に特定のODBCクライアントとの組み合わせにおいて文字列が途切れて取得されるケースが報告されています。 このような状況が発生した場合、該当するODBCデータソースの設定画面でUnicode SQLタイプをチェックすることで問題が解消されることがわかっています。 #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 22
記事 Megumi Kakechi · 2025年3月25日 6m read %Net.POP3 を使用して添付ファイル付きのメールを受信する方法 --- Gmailを使用したサンプルのご紹介 以前公開している こちら の記事では、「OAuth 2.0 を利用して IRIS から Gmail を送信する」方法をご紹介しています。 本記事では、 %Net.POP3 クラスを使用してメールを受信するサンプルをご紹介します。 #ObjectScript #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 2 0 0 15
記事 Tomoko Furuzono · 2025年3月25日 1m read ORDER BY で並べ替える際の照合順を調整する これは、InterSystems FAQサイトの記事です。 SQLでクエリ実行時、ORDER BYで並べ替えをする場合、各RDBMSによって、照合順が異なることがあります。 たとえば、NULLと空文字の混じった文字列のカラムを並べ替える場合、 IRIS SQLでは、既定の照合順は下記のようになりますが、 NULL, 空文字, 0, 00, 01, 1, 10, 100, 11, A, a, B, b Oracleでは、下記のような照合順になります。 空文字, 0, 00, 01, 1, 10, 100, 11, A, B, a, b, NULL 複数のDB由来のデータを取り扱う際には、このような照合順の違いを合わせたい場合があります。 #SQL #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 14
記事 Tomoko Furuzono · 2025年3月19日 3m read CSP(REST)でのトラブルシューティングに使用できるツール これはInterSystems FAQサイトの記事です。 ISCLOG を有効にすることにより、CSP(REST)アクセスに関連するログ情報を収集できます。これを使用して CSP(REST)でのトラブル時の調査を行うことが可能です。 ◎このツールをトラブルシューティングに使用する場合は、基本的に、エラーを(意図的に)再現できる状況で使用します。 他のウェブアクセス等がない状態で、単体実行してエラーを発生させ、このログを取得して調査します。手順は以下のとおりです。 ① ログをクリアします。 #CSP #REST API #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 1 14
記事 Hiroshi Sato · 2025年3月17日 2m read 既存のネームスペースで、インターオペラビリティ機能を無効にする方法 これは InterSystems FAQ サイトの記事です。 ネームスペースを管理ポータルで作成する際に、デフォルトでは、『相互運用プロダクション用にネームスペースを有効化』にチェックがついているため、そのチェックを意図的に外さない限り、新規作成したネームスペースは、インターオペラビリティ機能が有効になっています。 この機能が有効であることによる実用上の弊害(パフォーマンス等に影響する)は、特にありませんが、管理ポータル上のクラス表示にこの機能に関連するクラスが先に表示されて、ユーザー作成クラスの表示に余計な操作が必要になる等の操作上の余分な手間が発生する場合があります。 管理ポータル上でこの設定を無効にするメニューは用意されていませんが、以下の手順で無効化することができます。 - 相互運用性ネームスペースの無効化 #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 14
記事 Tomoko Furuzono · 2025年3月23日 1m read クライアントーサーバ間の通信を暗号化する これは、InterSystems FAQサイトの記事です。 クライアントーサーバ接続を担当するスーパーサーバで、SSLバージョン3とTLSバージョン1での通信が可能です。このオプションを利用することで、通信上のデータを暗号化できます。 その他、Kerberosを使うことで通信上の暗号化も可能です。 #セキュリティ #暗号化 #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 13
記事 Tomoko Furuzono · 2025年3月21日 1m read ジャーナルのON/OFFを、コマンドで操作する方法 これはInterSystems FAQサイトの記事です。 大量の更新を行うプログラムで、処理途中に何らかの問題が発生してもデータを初期化して再度実行することができる状況では、プロセスレベルでジャーナリングを無効/有効に変更することが可能です。 ※但し、トランザクションのロールバックにはジャーナルが必要ですので、ロールバックを正しく動作させたい場合にはこの方法は使用しないでください。 以下のコマンドを使用します。更新処理の開始と終了(またエラー処理での終了)の際に以下のコマンドを追加します。 #ジャーナリング #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 10
記事 Tomoko Furuzono · 2025年4月3日 1m read ロードバランサやプロキシサーバ経由でアクセスしている接続元クライアントIPを取得する方法 これは、InterSystems FAQ サイトの記事です。 HTTPプロキシサーバまたは負荷分散装置(ロードバランサ)を経由してウェブサーバに接続するクライアントの送信元IPアドレスを特定する際は、HTTPヘッダ:X-Forwarded-For (XFF) を取得しますが、IRISでは以下で取得できます。 set ip = %request.GetCgiEnv("HTTP_X_FORWARDED_FOR") #システム管理 #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 9
記事 Tomoko Furuzono · 2025年3月31日 2m read 小数桁数を指定して切り上げ・切り捨ての処理を行う方法 これは、InterSystems FAQ サイトの記事です。 小数点桁数を指定しない単純な整数への切り上げ・切り捨ては、それぞれ、以下の関数で実行できます。 (SQL関数) 切り上げ:CEILING切り捨て:FLOOR (ObjectScript関数) #ObjectScript #SQL #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 1 0 0 9
記事 Tomoko Furuzono · 2025年3月19日 1m read オンラインバックアップの保存先 これはInterSystems FAQサイトの記事です。 質問: オンラインバックアップの保存先にネットワークドライブ(NAS等)を指定することはできますか? 回答: バックアップの保存先に指定することはできますが、推奨はしておりません。 推奨しない理由は、オンラインバックアップの最終フェーズにDBアクセスを禁止して処理が実行されますが、 このとき、万一ネットワークエラー等でバックアップ処理がハングアップすることがあれば、システム全体に影響が及ぶリスクがあるからです。 #システム管理 #バックアップ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 9
記事 Tomoko Furuzono · 2025年3月27日 2m read ジャーナルの整合性チェックやサマリの表示をコマンドで実行する方法 これは、InterSystems FAQ サイトの記事です。 管理ポータルの [システムオペレーション] > [ジャーナル]のページで実行できる、 整合性チェックの実行や、サマリーの表示は、%SYS.Journal.File クラスのメソッドやクエリでも実行することができます。 クラスリファレンス:%SYS.Journal.File 以下、実行例です。※全て、%SYSネームスペースで実行します。 (1) 整合性チェック #システム管理 #ジャーナリング #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 6
記事 Tomoko Furuzono · 2025年3月27日 1m read 機能トラッカのメッセージについて これは、InterSystems FAQ サイトの記事です。 システムログ(messages.log/cconsole.log)に出力される、 [Utility.Event] %SYS.Task.FeatureTracker failed to transfer data というログは、機能トラッカというタスクが出力しているメッセージです。このタスクは、弊社がユーザ使用状況の統計を取得する為のデータ送信タスクになります。エラーは弊社と通信が行われてない為に発生しています。 #システム管理 #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 6
記事 Hiroshi Sato · 2025年4月1日 1m read IRISから外部のWebAPIを呼び出したとき、レスポンス内の全角文字が化ける これは InterSystems FAQ サイトの記事です。 Content-Typeにcharset 情報が含まれていない場合、IRIS/Cachéは文字コードを判断できず文字コード変換が行われません。 そこで、以下のように、「自動的な文字変換を行わず、UTF-8に変換する処理を記述」することで、その指定がある無しに関わらず、対応することができます。 #JSON #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 5
記事 Tomoko Furuzono · 2025年4月3日 3m read 二要素認証について これは、InterSystems FAQ サイトの記事です。 InterSystems製品は、二要素認証をサポートしています。下記ドキュメントページに詳細について記載がありますので、ご参照ください。2要素認証 以下、例として、スマートフォン用認証アプリを用いて、IRIS上のCSPアプリケーションの2要素認証を行うための設定方法を解説します。 #セキュリティ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 4