以前の記事では Arduino を使い始め、最終的には気象観測所のデータを表示できるようになりました。 この記事ではさらに掘り下げ、InterSystems Caché アプリケーションに対して RFID カードと Arduino を介した認証をセットアップします。
ターミナルツールの使用に関するディスカッションに関連する投稿。
以前の記事では Arduino を使い始め、最終的には気象観測所のデータを表示できるようになりました。 この記事ではさらに掘り下げ、InterSystems Caché アプリケーションに対して RFID カードと Arduino を介した認証をセットアップします。
InterSystems ハッカソンの時、Artem Viznyuk と私のチームは Arduino ボード(1 台)とその各種パーツ(大量)を所有していました。 そのため、私たちは活動方針を決めました。どの Arduino 初心者もそうであるように、気象観測所を作ることにしたのです。 ただし、Caché のデータ永続ストレージと DeepSee による視覚化を利用しました!
Config.Configurationクラス、SYS.Databaseクラスのメソッドを使用して、ネームスペース・データベースの作成及び登録をターミナルから実行することができます。
以下はデータベースファル/CacheDB/AAA/cache.datを作成し、構成ファイル(cache.cpf)にデータベース AAA、及び、ネームスペースAAAの登録を行う一連の実行例です。 *実行は、%SYSネームスペースで行って下さい。*
Set"/CacheDB/AAA/"
リモートデータベースからネームスペースを作成する場合は、以下のデータベース定義で、第三パラメータにリモートのサーバ名を指定します。
※クラスの詳細については、それぞれのクラスリファレンスをご参照下さい。
また、データベースの作成・登録については、^DATABASEルーチンを使用することも可能です。
このルーチンを実行すると、下記のようにオプションが表示されますので、目的によって選択します。
以下は、データベース作成の実行例です。
*実行は、%SYSネームスペースで行って下さい。*
^DATABASE
※^DATABASEルーチンの各オプションについては、以下ドキュメントページをご参照ください。
^DATABASEについて【IRIS】
InterSystems は先日、Visual Studio Code(VSC)IDE 用の拡張機能は InterSystems Studio に比べてより優れたエクスペリエンスを提供するという考えから、VSC IDE 用の拡張機能を独占的に開発するためにバージョン 2023.2 より InterSystems Studio のサポートを終了すると発表しました。それ以来、VSC に切り替えた開発者や、VSC を使用し始めた開発者が大勢います。 VSC には Studio のような出力パネルがなく、InterSystems が開発したプラグインをダウンロードする以外に IRIS ターミナルを開く統合機能もないため、多くの人は演算を実行する際にターミナルの開き方に迷ったことでしょう。
これは、InterSystems FAQサイトの記事です。
Windowsのコマンドプロンプトからターミナルを起動するには以下の様な操作を行います。
実行イメージの場所に移動します。
以下のコマンドを実行します。
( インスタンス名のデフォルトは「IRIS」です。)
コンソールターミナルは以下のように実行します。
コンソールターミナルの場合、そのままでは日本語を正しく表示できませんのでご注意ください。
日本語を表示させるためには、以下の記事の内容の設定が必要です。
(外部技術情報サイト)
コマンドプロンプト起動時、自動的に文字コードをUTF-8にして日本語もちゃんと表示できるようにする方法
開発者のみなさん、あけましておめでとうございます🎍 今年もどうぞよろしくお願いします!
さて、この記事では、IRIS ターミナルに(こっそり)追加された便利機能をご紹介します!(つい最近知りまして、びっくりしました
)
2023/4/13 追記:Pythonシェルへ切り替えるメソッドのショートカットが追加されていたので返信欄に追記しました。
IRIS ターミナルで以前実行したコマンドを再実行する場合、上矢印キーを連打しながらコマンドを探されていると思うのですが、IRIS 2021.1 から履歴表示と、履歴番号を指定した実行ができるようになっていました!
では早速、履歴(history)の使い方をご紹介します。これがあれば、もう、上矢印キーを連打せずに以前実行したコマンドを再実行できます!!
まずは、履歴を作るため、いくつかコマンドを実行します。
ユーザ名:_system
パスワード:***
USER>
USER>write $ZDATE($NOW(),16)
2022年1月6日
USER>
USER>write $ZV
IRIS for Windows (x86-64) 2021.1 (Build 215U) Wed Jun 9 2021 09:39:22 EDT
USER>
USER>write $system.Util.ManagerDirectory()
c:\intersystems\irishealth\mgr\
USER>この記事では、syslogテーブルについて説明したいと思います。 syslogとは何か、どのように確認するのか、実際のエントリはどのようなものか、そしてなぜそれが重要であるのかについて説明します。 syslogテーブルには、重要な診断情報が含まれることがあります。 システムに何らかの問題が生じている場合に、このテーブルの確認方法とどのような情報が含まれているのかを理解しておくことが重要です。
これは InterSystems FAQ サイトの記事です。
ターミナルでルーチンを実行し、プログラム上でエラーが発生した時に、エラートラップを適切に設定していない場合、以下のようなデバッグモードになります。
この状態から、ルーチン起動の前の状態に戻るにはQuitコマンドを入力します。
またエラーが発生したルーチン内でトランザクション処理を行なっている場合には、以下のような表示のプロンプトになります。
このようにプロンプトの先頭にTL+数字が表示されている場合には完了していないトランザクションがあることを示しています。
この状態ではQuitコマンドを入力しても元のプロンプトには戻りません。
最初にTrollbackコマンドを入力し、その後でQuitコマンドを実行することで元のプロンプトに戻ります。
開発者の皆さん、こんにちは!
ターミナルでクラスメソッドを実行するとき、パッケージ名やクラス名などの入力候補が出てこないので、 ##class(パッケージ名.クラス名).メソッド名() の記述をミスったりちょっと面倒だな・・と感じること、ありませんか??
(第1回 InterSystems Idea-A-Thon(アイデアソン) でも、もっとシンプルに呼び出せるようにしよう!のアイデアが投稿されていたようです。)
(私も含めて)そんな方に、朗報です!📣
なんと、VSCode ObjectScriptエクステンションに新機能「Copy Invocation」が追加されました!
クラスメソッドを記述すると、定義の上に Copy Invocation のリンクが表示され、クリックするとクラスメソッドの実行文がバッファにコピーされるんです!![]()
Copy Invocation をクリックした後で、ターミナルで 右クリック→貼り付け をやってみてください。
ちゃんと実行文がコピーされていることを確認できます(下図の黄色い線の文章がコピーされます)。
あとは、Do や Write や Set 文を記述するだけでいいんです!
ぜひ、お試しください!
VSCode contributorの皆さん、素敵な機能追加をありがとうございました!
我々には、Redditユーザーが書いた、おいしいレシピデータセット がありますが, 情報のほとんどは投稿されたタイトルや説明といったフリーテキストです。埋め込みPythonやLangchainフレームワークにあるOpenAIの大規模言語モデルの機能を使い、このデータセットを簡単にロードし、特徴を抽出、分析する方法を紹介しましょう。
まず最初に、データセットをロードするかデータセットに接続する必要があります。
これを実現するにはさまざまな方法があります。たとえばCSVレコードマッパーを相互運用性プロダクションで使用したり csvgenのようなすばらしい OpenExchange アプリケーションを使用することもできます。
今回、外部テーブルを使用します。これは物理的に別の場所に保存されているデータをIRIS SQLで統合する非常に便利な機能です。
まずは外部サーバ(Foreign Server)を作成します。
CREATE FOREIGN SERVER dataset FOREIGN DATA WRAPPER CSV HOST '/app/data/'
その上でCSVファイルに接続する外部テーブルを作成します。
CREATE FOREIGN TABLE dataset.Recipes (
CREATEDDATE DATE,
NUMCOMMENTS INTEGER,
TITLE VARCHAR,
USERNAME VARCHAR,
COMMENT VARCHAR,
NUMCHAR INTEGER
) SERVER dataset FILE 'Recipes.csv' USING
{
"from": {
"file": {
"skip": 1
}
}
}
この記事では、InterSystems Cachéにおけるマクロについて説明します。 マクロは、コンパイル中に一連の命令に置き換えられるシンボリック名です。 マクロは、渡されたパラメーターとアクティブ化したシナリオに応じて、呼び出されるたびに一連の命令セットに「展開」されます。 これは、静的コードの場合もあれば、ObjectScriptを実行して得られる結果である場合もあります。 それでは、アプリケーションでマクロをどのように使用できるのかを見てみましょう。
開発者の皆さん、こんにちは! InterSystems IRIS(以下、IRIS)を使用したアプリケーション開発において、皆さんは環境設定をどうされていますか? 私は最近になって、「インストールマニフェスト」という機能があることを知りました。 これは、管理ポータルでポチポチしていた作業をコード化・自動化できる強力なツールです! 最初こそとっつきづらかったものの良いところがたくさんあるなと思ったので、簡単にではありますが皆さんにその良さと始め方をご紹介したいと思います。
なお、私が使用しているIRISバージョンは以下です。
2022.1
バージョンが異なる場合、違う書き方になっているもの等が存在する場合がありますので、 公式ドキュメント等を参照し適宜読み替えていただければと思います。
VS Code でファイルを編集しているときに、グローバル値のチェックやいくつかの ObjectScript コマンドの実行が必要だったことはありませんか? これが可能になりました。しかもセットアップは不要です! vscode-objectscript 拡張機能バージョン 2.10.0 以上を持っており、InterSystems IRIS 2023.3 以降に接続している場合は、サーバーの場所に関係なくサーバーへのターミナル接続を開けるようになりました。
この新しいターミナルを開く方法には 3 つあります。
コマンドパレットの「Launch WebSocket Terminal」(WebSocket ターミナルを起動)コマンド(Windows では Ctrl-Shift-P、Mac では Cmd-Shift-P):

VS Code が統合されたターミナルの Profiles(プロファイル)メニュー:
Server Manager 拡張機能のサーバーツリー:
WebSocket ターミナルは、読み取り、ネームスペースの切り替え、中断、カスタムターミナルプロンプトなど、標準 ObjectScript シェルの多数の機能をサポートしていますが、 この記事では、これに特有の 3 つの機能に焦点を当てたいと思います。
デベロッパーの皆さん、こんにちは! InterSystems Package Manager (ZPM) は、素晴らしいツールですが、インストールせずにすぐ使用できたら、さらに便利です。
それを実現する方法はいくつかあります。以下に dockerfile を使って ZPM をビルドした IRIS コンテナを用意する方法をご紹介します。
リポジトリを作成し、そのdockerfile に数行のコードを記述しました。これを使えば、最新バージョンの ZPM をダウンロードし、インストールできます。
IRIS コミュニティエディション用のあなたの dockerfile にこれらのコマンドを追加すれば、ZPM がインストールされ、使用できるようになります。
最新の ZPM クライアントをダウンロードするコマンドは以下の通り。
ターミナルにライセンス期限切れの警告メッセージ(「*\* Warning: This Cache license will expire in 3 days **」)が表示されており、そのメッセージを表示したくない場合は、以下のコマンドを実行すると、メッセージの表示を無効(または有効)にできます。
Do ExpirationMessageOff^%SYS.LICENSE - Disable
Do ExpirationMessageOn^%SYS.LICENSE - Enable


この記事では、Pythonでの仮想環境の概念を紹介します。仮想環境は、依存関係を管理してプロジェクトをOSから分離するために不可欠です。
仮想環境とは、次が含まれているフォルダのことです。
仮想環境により、OSのPythonインストールとその他のプロジェクトからプロジェクトを分離できるようになります。
仮想環境を使用するには、これらの手順に従います。
仮想環境を作成する:Pythonに標準搭載されている venv モジュールを使用すると、仮想環境を作成できます。 ターミナルを開いて、以下を実行します。
python -m venv .venv
.venv を希望する環境名に置き換えます。
仮想環境を有効化する:仮想環境を作成した後に、有効化する必要があります。 コマンドは、オペレーティングシステムによって異なります。
.venv\Scripts\Activate.ps1
エラーが発生した場合は、ターミナルで以下のコマンドを実行する必要がある可能性があります。
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process -Force; .venv\Scripts\Activate.ps1
開発者の皆さん、こんにちは!
私は普段 Windows を使用しており、VSCode で ObjectScript を書いてテストする際には、IRIS ターミナルを別途起動し、VSCode とターミナルの 2 画面を行き来する操作を続けてきました。
ところが今回、ObjectScript エクステンションに追加された「ObjectScript Lite Terminal」を利用することで、VSCode 1 画面内で IRIS ターミナルを操作できるようになりました。
一見すると小さな追加機能ですが、日々 IRIS を触っている開発者にとっては “地味に革命” と言えるかもしれません。本記事では、その使い勝手を詳しくご紹介します。
Windows 以外の環境では、通常 iris session xxx を実行して ObjectScript シェルに切り替えますが、Lite Terminal を使えばこの操作が不要になります。
まずは、起動方法から。
Lite ターミナルの起動には、3種類の方法があります。
VSCode の View > Command Palette.. > ObjectScript: Launch Lite Terminal
.png)
クリック後、