記事
Hiroshi Sato · 2021年2月1日 1m read

ローカル変数の値がOREFであるかどうかの判定法

これは InterSystems FAQ サイトの記事です。
 

$IsObject()を使用して判別できます。 調べたい変数をvとすると、

 

$IsObject(v)=1 // vはOREF
$IsObject(v)=0 // vはOREFではない
$IsObject(v)=-1 // vはOREFだが、有効なオブジェクトを指していない

 

となります。

vが未定義の場合は、$IsObject(v)はUNDEFINEDエラーとなりますので、ご注意ください。

UNDEFINEDエラーを防止するには、次のように$Getを使用することをお勧めします。

 

$IsObject($Get(v))
00
1 0 0 9