過去の桐井戸端BBS (桐ver.8)
17764 複数の項目の編集初期値式に設定した式が個別にクリックしたときに入るようにしたい あかね 2002/10/26-18:40
表作成で
項目名に1.「入荷日」2.「出荷日」3.「確認日」とありデーター型は1・2・3とも文字列
編集初期値式に1・2・3とも「&年月日」と設定

以上のように設定すると
「入荷日」をクリックすれば日付が自動ではいりますが
すると同時に「出荷日」「確認日」にも同じ日付が入ってしまいます。

これを個別にクリックした時に自動でその日の日付が入るようにしたいのですが、
どの様にすればいいのでしょうか?

桐の先輩方、アドバイスください。

まだ桐初心者です。

@あかね
17765 Re:編集初期値での条件設定 pokopon 2002/10/26-21:40
記事番号17764へのコメント
あかねさん こんにちは

この手の解決は、やはり「フォーム」だと思います。その方が簡単ですので。

>表作成で
表編集形式で、と、解釈し、さらに 桐V8でと仮定して話します。

>編集初期値式に1・2・3とも「&年月日」と設定

であれば、項目の値が「未定義」の状態で&年月日が入ります。
これは編集初期値がそういう目的で使われるからです。
そこで、ご希望にそえるかどうかはわかりませんが、次のような方法はダメですか?

[入荷日]にデータがあるときに[出荷日]に&年月日が初期値として入力でき、
[入荷日]と[出荷日]にデータ−があるときにだけ、[確認日]にデータがはいる。

それ以外は、データが入力されない(#未定義が入る)というのは?
理屈的に言って、他にデータがない時、[確認日]にだけデータがあることはおかしいですし、
また、[入荷日]にデータがないのに[出荷日]にデータがあるのもおかしい。
実用的な意味で、#CONDで場合わけをしてみてはどうですか。

各項目の「編集初期値」に次の関数を設定してみてください。

[入荷日] &年月日
[出荷日] #COND([入荷日]<>#U .and [確認日]=#U , &年月日 , 1 , #U)
[確認日] #COND([入荷日]<>#U .and [出荷日]<>#U .and [確認日]=#U , &年月
日,1,#U)

回りくどい書き方をしていますが、理解しやいようにと思って書きました。

17766 Re:編集初期値での条件設定 悲しげ 2002/10/26-22:38
記事番号17765へのコメント
poko氏のフォームを使う案に同意します。(^^;)

>この手の解決は、やはり「フォーム」だと思います。その方が簡単ですので。

さて、表編集におけるpoko案ですが、多分却下だと思います。(^^;)
と云うのは、大胆に推測するに、あかねさんの懸案は、行追加(行挿入)または
訂正モードで、[入荷日]を扱った後、続けて[出荷日][確認日]にカーソルが移動した時に
生ずる事象を指しているのだと思います。

「マウス左クリック」だと、何となく表示モードから当該項目の単項目訂正をイメージしてしまいますが、
例えば行追加となるようなマウスクリックで試してみると、なるほどと私は思いました。

その上での(フォームでの)対策ですが、ひとつには[入荷日]を扱った際には、
まずは[出荷日][確認日]にフォーカスが行かないようにするとかも考えられます。

でも、あかねさんの使い方はとにかくマウス左クリックが主なようですから、
次のような方法の方が簡単かな、と云うことで一例。
  ※表定義で初期値は設定しないことにします。
  ※以下の記述は、上部メニューバー/書式/定義画面の設定で、最下段の
  「詳細プロパティを使用」にチェック入とします。
フォームの[出荷日]テキストオブジェクトの属性において「テキスト」タブ内の
「入力時の操作」牡丹から「入力支援ボタン」にチェック→OK
[出荷日]テキストオブジェクトの右端に付加された[▼]牡丹をクリック→「操作ボタン」タブ内の「選択値リスト」に
  &年月日
と入力する。その下「リストの種別」とかはそのまま(ドロップダウンリスト)でいいと思います。
こうすれば、ともかく入力したい時に、当該テキストの右端の[▼]牡丹をマウスクリックすれば、
その時の&年月日の値を選ぶことができます。
当該テキストの中ほどをクリックしただけとか、通っただけでは値は入りません。



どうしても表編集でやりたいと云うことなら、表定義(編集初期値の設定)は
そのままにして、ともかく今回該当しないところを訂正・項目訂正モードで通らないような
配慮をするしかないような気がします。
例、
訂正モードではなく全て項目訂正で入力するようにする(非現実的?)
[出荷日][確認日]は最右端において、行追加時などにはその項目まで行かないような使い方をする。(^^;)

ps:
表定義の値集合に「&年月日」とかを設定できるといいのにね。
(v9ではどうでしたっけ?)
17767 Re:編集初期値での条件設定 pokopon 2002/10/26-22:59
記事番号17766へのコメント
悲しげさん こんばんは

>さて、表編集におけるpoko案ですが、多分却下だと思います。(^^;)

厳しいご指摘、ありがとうございました。(^^ゞ

これなら、まだまし? (あくまで表形式編集にこだわっています)

新たに、[だみー]という項目を作成して下さい。文字列でいいです。
表示幅は「0」でいいです。あくまでダミーですから。見えない方が幸せですから。

[だみー] の計算項目式に 「あ」 と入れます。 単に あ で結構です。

残りは、
各項目の「編集初期値」に次の関数を設定してみてください。

[入荷日] &年月日
[出荷日] #COND([だみー]<>#U .and [入荷日]<>#U .and [確認日]=#U , &年月日 , 1 ,
#U)
[確認日] #COND([だみー]<>#U .and [入荷日]<>#U .and [出荷日]<>#U .and [確認日]=#U , &年月日,1,#U)

これなら、同一レコード内での処理なら・・・・大丈夫?



17768 Re:どなたか教えてください。 しましま 2002/10/27-00:03
記事番号17764へのコメント
う〜ん。”同時に”入力されてしまうというところをみると、
単に「編集初期値式」に設定するところを誤って、「挿入初期値式」に
&年月日を設定しているだけのような気がしますが。
どうでしょうか。
(ちなみに、桐のバージョンも書いてくれた方がいいですよ。)

17769 解決しました。! あかね 2002/10/27-12:53
記事番号17768へのコメント
しましまさんの言う通りでした。

>う〜ん。”同時に”入力されてしまうというところをみると、
>単に「編集初期値式」に設定するところを誤って、「挿入初期値式」に
>&年月日を設定しているだけのような気がしますが。
>どうでしょうか。

その通りでした。挿入初期値式に入れるとそうなるのですね!
勉強になりました。
また、これで応用がききます。

>(ちなみに、桐のバージョンも書いてくれた方がいいですよ。)

バージョンは桐8でした。

皆様ありがとうございました。


@あかね

17770 Re:編集初期値での条件設定 pokopon 2002/10/27-13:00
記事番号17767へのコメント
悲しげさんへ

どっちも的外れだったみたい。 (^^ゞ

17771 Re:解決しました。! 悲しげ 2002/10/27-15:50
記事番号17769へのコメント
う〜ん、あかねさんの#17769のコメントは解釈に苦しみます。(^^;)

(1)#17764で「編集初期値式」と書いたのは実は「挿入初期値式」の誤記だった。

(2)#17764の質問は「編集初期値式」であることは間違いではないのだが、
   この度「挿入初期値式」についての知識も増えて「勉強」になり、
   「また、これで応用が」きいて、何らかの方法(?)で
   解決した。

このどちらともとれますが、どちらでしょう?
そして、どのような方法で解決したのでしょう? 自分の中だけで合点していないで、
他の方に判るような書き方を一般的にお勧めします。

戻る