ObjectScript

IRIS/Cache

【IRIS/Cache】テストデータを作成しよう(%Populate初級編)

データベースアプリケーションの開発で、「ダミーデータ」を効率的に生成したいと思ったことはありませんか?そのような場面で役立つのが、ObjectScriptの%Populateです。初めて%Populateに触れる方や、どのように使うのか迷っている方に向けて、本記事ではこの機能の基本から実践的な使い方までを詳しく紹介したいと思います。%Populateの仕様理解することで、テストデータの作成時間が短縮し、開発効率を大幅に向上させることができます。本記事は、一先ずテストデータを簡単に大量生成する方法を主眼にお送りいたします。
IRIS/Cache

【IRIS/Cache】%List型を誤認する!(大惨事発生)

ご存じの通り%List型は文字列の一種で、特定のパターンの文字を組み合わせて実現しています。これはこれですごい技術ですが、上記仕様の為、特定のパターンの文字を組み合わせると、当然人為的に%List型を再現する事が可能です。ただし、InterSystems社では%List型の内部構造(判定方法)を公表していないため、そのパターンを正確に理解する事はできません。正直、気にしたことも無かったです。(笑)・・・と、思っていた時期がありましたが、運用時の事故から仕様の一部を知ることになりました。今回は、偶然知ってしまった仕様の一部をご紹介致します。
IRIS/Cache

【IRIS/Cache】タスク(%SYS.Task)についての備忘録

Winsowsのタスクスケジューラとは異なる、IRIS/Cache固有のタスクになります。管理ポータルで確認するには、[システムオペレーション] > [タスクマネージャ] > [タスクスケジュール]と進みます。基本的には、この画面で操作する事になる思いますが、まれにコマンドで追加/削除したい、とか一覧を表示したいなどの要望があったりなかったりします。そんな時にお世話になるのが、「%SYS.Task」です。管理ポータルのタスクスケジューラもこのクラスに登録されます。そのため、このクラスを操作する事で、コマンドで追加/削除が可能になります。
IRIS/Cache

【IRIS/Cache】テキストファイルに書く

テキストファイルに書き込む方法はいくつかあります。クラスを利用する方法(%Library.File.cls・%Stream.FileCharacter.cls等)や、openコマンドを利用する方法です。今回は「%Stream.FileCharacter.cls」とopenコマンドについて解説します。
IRIS/Cache

【IRIS/Cache】%Fileの備忘録

%Fileに関する備忘録になります。%Fileの関数名、引数、戻り値等、普段あまり使用頻度が高くないと忘れがちになるので、項目毎にまとめました。
IRIS/Cache

【IRIS/Cache】テキストファイルを読み込む

CSVファイル、XMLファイルの読み込み記事を書いたので、今回は普通のテキストファイルを読み込み方について解説致します。テキストファイルを読み込みたい方は、この記事を一読して頂けると幸いです。
IRIS/Cache

【IRIS/Cache】「𩸽(ホッケ)」サロゲートペアの料理方法について

「𩸽」美味しいですよね。「𩸽」開きを焼いて、大根おろしと共に食べる。最高です!でも、プログラムの世界では「𩸽」は、まったくオイシクナイデス。今回は、IRIS/Cacheでの「𩸽」のおいしい料理方法をご紹介いたします。
IRIS/Cache

【IRIS/Cache】$listNext()の処理速度を検証する

リストの中身を順に取得する方法として、ついついforループと$listの組み合わせでロジックを組みがちです。ただこの方法は、ドキュメントを読むと悪手とされています。リストを順に取得するのであれば、$listnext()を使用する方がより高速に取得できると記載しています。今回は、$listNext()の処理速度を検証してみたいと思います。
IRIS/Cache

【IRIS/Cache】オブジェクトの中身を見よう

デバッグ等を実行している際、引数のオブジェクトの中身を知りたい時が稀にあります。そんな時に活躍する、$system.OBJ.Dump()コマンドです。今回は、コマンド実行方法とwriteを防止する方法をご紹介いたします。
IRIS/Cache

【IRIS/Cache】$LISTGETがおしゃれになった!

Cache時代と異なりIRISになると、$LISTGETがjavascriptの分割代入のように取得することが可能となりました。$LISTGETの新機能のついてご紹介いたします。