過去の桐井戸端BBS (桐ver.8)
13029 項目属性の制約の中で式を入れたのだが、制約されずに入力されてしまう masa 2001/09/14-15:21
みなさんこんにちは。度々すみませんが又教えて下さい。
項目毎に入力出来る範囲を設定したいのですが、

項目1の中に1〜200000までの数字を入れたい時、項目属性の制約の中で
0<[項目1]<200000としたのですが、200000以上の数字が入力出来てしまうのですが何故でしょうか?
よろしくお願いします。

13031 Re:項目制約について うにん 2001/09/14-15:26
記事番号13029へのコメント
masaさん

>項目1の中に1〜200000までの数字を入れたい時
>項目属性の制約の中で
>0<[項目1]<200000としたのですが、200000以上の数字が
>入力出来てしまうのですが何故でしょうか?

こういうのは
0<[項目1] .and [項目1]<200000
と書かないといけません。
(ところで「まで」=「未満」?「以下」?)

桐のヘルプで「条件式の基礎知識」を見ましょう。

13032 Re:早速ありがとうございます。 masa 2001/09/14-15:37
記事番号13031へのコメント
うにんさん 度々ありがとうございます。

>0<[項目1] .and [項目1]<200000
>と書かないといけません。
>(ところで「まで」=「未満」?「以下」?)

項目を一で済ませようとしたのが原因なんですね。ありがとうございます。
それから「まで」だと=も入りますね。文法的にもおかしくてすみませんでした。

13040 項目制約式は条件式です 佐田 守弘 2001/09/14-23:56
記事番号13029へのコメント
masaさん
回答は既にうにんさんが書かれている通りですが、補足させて頂きます。

桐には、計算式、比較式、条件式の3つの式があり、一件似ている場合がありますが、
返す値と使う場所が全く異なります。

御質問の項目制約に記述する式は、制約条件ですから、条件式を記述します。
質問に書かれている
>0<[項目1]<200000としたのですが、
の書式は、比較式の特別な書式(範囲を指定する場合の比較式)ですから、
条件式の記述ではありません。

条件式の場合には、.and や .orといった論理演算子を使った記述ができ、
 [項目1]>0 .and [項目1]<200000
の書式で記述します。

序でに述べれば、絞り込みなどで記述する比較式には、論理演算子が使えません。
比較式で範囲を指定する場合には、「0<[項目]<2」の様な特殊な記述書式が使えます。
またAND条件は、比較式をコンマで区切って記述します。
一方、OR条件を比較式で記述する方法はなく、通常は条件名を使います。

なお、桐の3つの式に関しては、このBBSでも再三書いているので、
過去ログも参考にしてみて下さい。
また詳しい話は私のサイトにも掲載してあります。

佐田守弘(KS-00119)
13050 Re:度々ありがとうございます。 masa 2001/09/15-20:31
記事番号13040へのコメント
佐田 守弘さん 今晩は。更なる回答、度々ありがとう御座います。

>桐には、計算式、比較式、条件式の3つの式があり、一件似ている場合が
>ありますが、返す値と使う場所が全く異なります。

今迄、上記3種類も異なる式があるとは気づきませんでした。
なんとなく思いつくまま式を作っていたので 0<[項目1]<200000 こういう式も
昔どこかでちゃんと作動したのに変だなと思いつつ投稿していたのですが、
こういう事だったのですね。
又一つ賢くなりました。ありがとう御座いました。

戻る