Tips

BOOLEAN ARRAY FROM SETコマンド

日付2001/01/05
ID01-485
バージョンSpecific to 4D v6.5 and higher
プラットフォームMacOS and Windows

4D v6.5に導入された「BOOLEAN ARRAY FROM SET」コマンドは、強力な方法でレコードを扱うのを助けることができます。例えば、出力形式中のレコードの選択を操作するためにそれを使用することができます。

コマンドは2つのパラメーターを要求します。第1のパラメーターでは、ブール配列を指定します。第2のパラメーターでは、セットを指定します。その後、コマンドは、各レコードがセットに含まれるかどうかを示すエントリーを備えたブール配列を構築するでしょう。

このコマンドの力を利用するために、何が配列にあるか正確に理解する必要があります。配列中の要素の番号は、指定されたセットが属するテーブルの中で使用される最も高いレコード番号と等しくなります。例えば、新しいデータベースを作成すると仮定しそれに10のレコードを入力する
セットの中にそれらをすべて入れて、次にBOOLEAN ARRAY FROM SETコマンドを実行する。テーブルに持っている記録的な数の範囲が0~9であるので、それが作成するブール配列はそれに9つの要素を持つでしょう。(9つの要素に加えて、4D配列はさらに要素0(それは10の要素の実際の合計に向かう)を持っています。)テーブルの最初のレコードの記録的な数は0です。また、最後のレコードの記録的な数は9です。レコードがすべてセットにあるので、要素0~9はブール配列に間違いありません。

あなたがテーブル中の最初の5つのレコードを削除すると今仮定しましょう、セットへテーブル中で残るレコードをすべて入れて、次に、BOOLEAN ARRAY FROM SETコマンドを実行する。それが作成するブール配列は、0~9まで及ぶ要素をまだ持つでしょう。配列中の要素の番号は、常に、テーブルの中で使用された最も高いレコード番号未満で1でしょう。ブール配列のサイズはNOTを行います、必ずテーブル中のレコードの数に一致します。この例において、要素0~4は配列に誤りでしょう。また、要素5~9は真実でしょう。

配列の要素がすべて記録的な数に相当するので、特定のレコード番号がセットにあるかどうか知ることは容易です。私たちの最後の例を使用して、そのレコード番号が6であるレコードがセットにあるかどうかあなたが知りたかったならば、しなければならないのは配列の第6の要素の値をチェックすることです。

4Dランゲージリファレンスは、記録的な数に関してより多くの情報を含んでいます: