Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

ZKILL

ノードの下位を保持しながら、そのノードを削除します。

Synopsis

ZKILL:pc array-node,...
ZK:pc array-node,...

引数

pc オプション — 後置条件式
array-node 配列ノードであるローカル変数、プロセス・プライベート・グローバル、またはグローバル、またはそれらのコンマ区切りのリスト

概要

ZKILL コマンドは、指定された array-node の値を削除しますが、そのノードの下位は削除しません。対照的に KILL コマンドは、指定された配列ノードの値と、そのノードの下位を削除します。配列ノードは、ローカル変数、プロセス・プライベート変数、またはグローバル変数のいずれかです。

既定では、この後、この削除された array-node を参照すると <UNDEFINED> エラーが生成されます。%SYSTEM.Process.Undefined()Opens in a new tab メソッドを設定することで、未定義の添え字付き変数を参照する際に <UNDEFINED> エラーを生成しないように Caché の動作を変更できます。

引数

pc

オプションの後置条件式。Caché は、後置条件式が True (0 以外の数値に評価される) の場合にこのコマンドを実行します。Caché は、後置条件式が False (0 に評価される) の場合はコマンドを実行しません。詳細は、"Caché ObjectScript の使用法" の "コマンド後置条件式" を参照してください。

array-node

ローカル、プロセス・プライベート・グローバル、またはグローバル配列ノード。単一の式、またはコンマ区切りの式のリストを指定できます。添え字とノードに関する詳細は、"Caché グローバルの使用法" の "グローバル構造" を参照してください。

構造化システム変数 (SSVN) (^$GLOBAL など) で ZKILL を使用しようとすると、<COMMAND> エラーとなります。

以下の例では、ZKILL コマンドは a(1) を削除しますが、a(1,1) は削除しません。

    SET a(1)=1,a(1,1)=11
    SET x=a(1)
    SET y=a(1,1)
    ZKILL a(1)
    SET z=a(1,1)
    WRITE "x=",x," y=",y," z=",z

上記は、x=1 y=11 z=11 を返しますが、a を発行します。

   WRITE a(1)

これは、<UNDEFINED> エラーを生成します。

関連項目

FeedbackOpens in a new tab