クリアフィルター
記事
Seisuke Nakahashi · 2021年4月20日
みなさん、こんにちは!
Visual Studio Code 用のエクステンション、 InterSystems Server Manager のバージョン2.0がリリースされました。
このバージョンでは、弊社製品に同梱されているコードエディタ Studio と同じように、「サーバ上にあるクラス定義やルーチンを、サーバに接続して、直接編集&コンパイル」することが簡単にできます。この記事では、「Visual Studio Code を、Studio と同じように、気軽に使う」ための設定をご紹介いたします。
1. ObjectScript用エクステンションのインストール
まずは Visual Studio Code に、InterSystems IRIS (Caché) に接続するためのエクステンションを入れましょう。この記事を参考に、3つのエクステンションを導入します。
InterSystems ObjectScript
InterSystems Language Server
InterSystems Server Manager
2. 接続するサーバの登録
左のサイドバーに InterSystems Tools という道具箱のアイコンがインストールされます。ここで接続先のサーバ情報を定義します。All Servers にカーソルをあわせ + をクリックし、新規接続サーバを登録してください。
サーバ情報として順に、「接続名、IPアドレス、WEBサーバポート番号、接続ユーザ名、スキーマ (http or https) 」を入力していきます。
これでサーバ情報がツリーに登録されました!クリックしてサーバに接続すると、接続パスワードを聞かれます。パスワードを入力し、右上の鍵ボタンをクリックすると、次回以降のパスワード入力をスキップできます。
接続が完了すると、ネームスペース一覧が見えます。
3. クラス定義やルーチンを編集する
道具箱 (InterSystems Tools) で接続先を定義しましたが、実際の編集は、Visual Studio Code の Explorer ビュー から行います。まず道具箱アイコンから、編集したいネームスペースにカーソルをあわせて、鉛筆マークをクリックしてください。
WORKSPACE上に、以下の画像のように、 接続サーバ名:ネームスペース という名前の論理フォルダが定義されます。ここから、サーバ上のクラス定義やルーチンを直接エディットすることが出来ます。この例のネームスペース NAKA には、まだルーチンもクラスも存在しないので、からっぽです。
(1) ルーチンを新規で作成するには、フォルダ右クリック>New File> 拡張子 mac を入力します。
自由にエディットしてください。Ctrl+S で保存すると自動でコンパイルされます。
(2) クラスを新規で作成するには、フォルダ右クリック>New File> 拡張子 cls を入力します。
InterSystems Language Server エクステンションによって、キーワードも補完されます。ルーチンと同じく、Ctrl+Sでコンパイルされます。
4. 接続を定義したワークスペースを保存しておく
次回以降のために、 File > Save Workspace As... でワークスペースを保存しておきましょう! ワークスペース名.code-workspace というファイルで保存されます。
5. CSPファイルを編集する
CSPファイルを編集するには、上記で保存した code-workspaceファイルを、直接編集します。
以下の赤字部分が、CSP編集用の接続定義です。uri は isfs://接続サーバ:ネームスペース/?csp となります。
{
"folders": [
{
"name": "iris2021:NAKA",
"uri": "isfs://iris2021:naka/"
},
{
"name": "iris2021:NAKA:csp",
"uri": "isfs://iris2021:naka/?csp"
}
]
}
これで、サーバ上のCSPファイルを、直接編集することができるようになりました。
6. まとめ
新しくなった InterSystems エクステンションシリーズによって、軽量で快適に動作する Visual Studio Code を、InterSystems IRIS サーバ上のコードエディタとしてお手軽にお使いいただけます。ぜひご活用くださいませ。
Happy Coding!
お知らせ
Toshihiko Minamoto · 2023年4月18日
インターシステムズは、まれに Enterprise Cache Protocol (ECP) クライアントが不安定になることがある不具合を修正しました。
この不具合は、以下の製品およびそれらをベースとしたインターシステムズの製品に存在します。
影響を受けるバージョン: 2022.1.x, 2022.2, 2022.3
InterSystems IRIS®
InterSystems IRIS for Health™
HealthShare® Health Connect
影響を受けるバージョン: 2022.2 (ECPを導入しているお客様のみ)
InterSystems HealthShare®
この問題は、ECPクライアントシステムでのみ発生する可能性があります。この問題が発生すると、プロセスで <SYSTEM> または <DATABASE> エラーが発生することがあります。エラー後、ECPクライアントが不安定になり、場合によってはインスタンスがハングアップすることがあります。データへの影響はなく、ECP データサーバーも影響を受けません。
不安定な状態を解消するには、ECP クライアントインスタンスを再起動する必要があります
IRIS、IRIS for Health、またはHealth Connectのインスタンスに影響がある場合、近日中にリリースされるバージョン2023.1または2022.1.3にアップグレードすることで改善できます。HealthShareのインスタンスが影響を受けている場合、改善策を推奨する別の警告文書が間もなくリリースされます。
この不具合の修正は TR1162 として特定され、InterSystems IRIS®、InterSystems IRIS for Health™、および HealthShare® Health Connect の将来のすべてのバージョンと、それらをベースとするインターシステムズ製品に含まれる予定です。
この修正は、アドホック配布でも利用可能です。
このアラートに関するご質問は、ワールドワイド・レスポンス・センターまでご連絡ください。
記事
Tomoko Furuzono · 2021年11月28日
これは、InterSystems FAQサイトの記事です。InterSystems製品のデータ(テーブルの行データ、オブジェクトのインスタンスデータ)は、グローバル変数に格納されています。各グローバルのデータサイズは、管理ポータル>システム>構成>ローカルデータベース>グローバルのページから参照したいグローバルのプロパティをクリックし、表示されるグローバル属性ページ上のサイズ計算ボタンをクリックすることで個別のグローバルのサイズを取得することができます。ネームスペース上のグローバルのデータサイズをまとめて表示するには、ターミナル上で^%GSIZEユーティリティを起動することで取得することができます。実行方法は以下の通りです。
USER>do ^%GSIZE Directory name: c:\intersystems\ensemble\mgr\user\ =>All Globals? No => Yes^DeepSee.ActiveTasks contains no dataInclude it anyway? No => YInclude any other similar globals without asking again? Yes =>^DeepSee.ActiveTasks contains no dataInclude it anyway? No => YesInclude any other similar globals without asking again? Yes => Yes^DeepSee.FeatureStats contains no data -- included^DeepSee.Session contains no data -- included^oddBIND contains no data -- included^oddMETA contains no data -- included^oddStudioDocument contains no data -- included^oddStudioMenu contains no data -- included^rINCSAVE contains no data -- included91 items selected from91 available globalsShow details?? No => YesDevice:Right margin: 80 =>directory: c:\intersystems\ensemble\mgr\user\ Page: 1 GLOBAL SIZE 26 Jun 2017 6:56 PM Global Blocks Bytes Used Packing Contig. -------- -------- --------------- ------- ------- CacheMsg 1 3,812 47 % 0 DeepSee.ActiveTasks 1 24 0 % 0 DeepSee.AgentLog 1 6,008 74 % 0 DeepSee.Agents 1 688 8 % 0 DeepSee.BucketList 1 76 1 % 0 DeepSee.Cache.Axis 25 142,616 70 % 14 DeepSee.Cache.Listing 15 87,728 72 % 11 DeepSee.Cache.Results 31 183,200 72 % 17 DeepSee.Cubes 3 17,936 73 % 0 to continue or '^' to STOP: