過去の桐井戸端BBS (桐ver.8)
11426 ボタンを押して表の項目訂正と日付入力をするには Deta 2001/06/04-16:21
いつも、勉強させていただいてます。
実はフォームを使ってデータの更新をしたいのですが、コマンドボタンまたはトグルボタンを使って以下のことは出来ますでしょうか?。

工程表を作っていますが、この表、依頼番号などは事前に入っていて更新する項目は[状況]及び[登録日]と言う欄です。
これは七個ぐらいの候補から選び入力します。
出来ればこの候補、七個分をボタン化してフォーム上にレイアウトし、
任意のボタンを押したとき、表の[状況]欄に例えば ”保留”を入れ同時に、
ボタンを押した日を #日時値を使い 同じ行の[登録日]と言う欄に入力するようなスタイルにしたいのですが
簡単に出来るのでしょうか?

現状は[登録日]と[状況]を二つのトグルボタン(プッシュスタイルに変更)し
2度押ししているのですが状況を振り分けた日が、登録日なので連動で入力できる
方法があれば大変スマートになります。

どなたかアドバイスを頂きますようお願いします。
11429 Re:ボタン押しで表の項目訂正と日付入力するには 今村 誠 2001/06/04-22:22
記事番号11426へのコメント
Detaさんこんにちは


コマンドボタンだけでする場合変数は宣言しておいてください。
1 絞り込み_行数     現在行
2 なし #代入(&状況,"保留"),#代入(&現在日,#日時値生成(#年(#日時値),#月(#日時値),#日(#日時値)))
3 項目置換     [状況]=&状況,[登録日]=&現在日
4 絞り込み_解除     1, "保持する"

手続き実行だと、条件判断などもできると思います。
11433 Re:ボタン押しで表の項目訂正と日付入力するには 悲しげ 2001/06/05-00:41
記事番号11429へのコメント
今村さんwrote

>コマンドボタンだけでする場合変数は宣言しておいてください。

話をややこしくするだけかもしれませんが、フォームの中で変数宣言と同様なこともできない訳ではないようです。
それはいわゆる「局所」変数に限りのようなのですが、
え〜、フォーム定義時に、上部メニューバー等で、「ツール」「変数管理」を呼出します。
そこの「局所」タブを指定して、欲しい変数を局所変数として新規作成(必要有れば値も代入可能)します。
そうすると、いわば「フォーム埋め込み変数」のようになって、
別途変数宣言(や値の代入)抜きで、フォームオープン時には常に当該変数が生きるようです。
私はこの仕組みが判るのに、かなり悩みました(結局はいか様に教えてもらうまで判らなかったのですが)。
その後、この件は私は追っかけなかったので、挙動の詳細はよく知らないままですが、
この機会に一応ご報告だけはしておきます。
ただし、これは「局所」変数ですから、当該フォーム内だけではビンビン使えるでしょうけど、
他フォームに値を受け渡す用途には向かないような気はします(ただし未確認)。
ちょいと別件ふうになって申し訳ありませんけど。(^^;)

夜も更けてまいりましたが、アタシャまだまだ仕事が終わらない。(;_;)
11436 Re:ボタン押しで表の項目訂正と日付入力するには 今村 誠 2001/06/05-09:11
記事番号11433へのコメント
悲しげさんいそがしいようですね

>>コマンドボタンだけでする場合変数は宣言しておいてください。
フォームの定義、再定義に変数管理で作成する
>それはいわゆる「局所」変数に限りのようなのですが、

置換式に使える変数は限られています、共通と組み込みと固有だけで局所変数は使用できません。
手続き実行などで、項目訂正だと使用できます。
一括処理からは、使いそうな変数は共通や固有で宣言します。
フォームからのイベント一括では、最初のフォームのメイン部において変数宣言をしておかれると良いと思います。
別件に話題が移りそうですが、

注意事項として、当該フォームのみで

日時値を変数に代入するには、メイン部において固有あるいは
共通の日時変数(&現在日)を作成した後にコマンドボタンに11429コメントの機能パラメータを設定してください。

イベントで一般手続きでする場合、更新モードを2の訂正状態だと項目値代入か編集文字列設定

更新モードが0の表示状態では
行訂正 で良いのではないでしょうか。

11438 Re:ボタン押しで表の項目訂正と日付入力するには 島尾 2001/06/05-11:32
記事番号11426へのコメント
各ボタンのイベントに以下を定義しすればできませんか?

保留ボタンのイベント

メソッド呼び出し @フォーム.更新モード設定(2)
項目値代入 [状況]="保留"
項目値代入 [登録日]=#年月日
メソッド呼び出し @フォーム.更新モード設定(0)


11439 Re:ボタン押しで表の項目訂正と日付入力するには 島尾 2001/06/05-11:34
記事番号11438へのコメント
改良 ボタンを押す直前のモードにも変わってくるので以下のように改良


メソッド呼び出し @フォーム.更新モード設定(0)
メソッド呼び出し @フォーム.更新モード設定(2)
項目値代入 [状況]="保留"
項目値代入 [登録日]=#年月日
メソッド呼び出し @フォーム.更新モード設定(0)
11442 Re:ボタン押しで表の項目訂正と日付入力するには 今村 誠 2001/06/05-13:55
記事番号11436へのコメント
こんにちは、以下のようにすると変数宣言しないでできそうです。
コマンドボタンの

  機能       機能パラメーターリスト
1 表示       確定する   
2 絞り込み_行数   現在行
3 項目置換     [状況]="保留",[登録日]=#日時日付(#日時値)
4 絞り込み_解除   1, "保持する"

#日時日付 の関数を入れないと今の時間が入ります。
11460 Re:ボタン押しで表の項目訂正と日付入力するには Deta 2001/06/06-09:19
記事番号11442へのコメント

>こんにちは、以下のようにすると変数宣言しないでできそうです。
>コマンドボタンの
>
>  機能       機能パラメーターリスト
>1 表示       確定する   
>2 絞り込み_行数   現在行
>3 項目置換     [状況]="保留",[登録日]=#日時日付(#日時値)
>4 絞り込み_解除   1, "保持する"
>
>#日時日付 の関数を入れないと今の時間が入ります。

今村さん私は今、感動で涙が溢れそうになってます。出来ました。
早速今から割り振るボタンの数 (12種類位)分だけレイアウトします。
最初は変数の(桐で初めて使ってます。)エラーが出て、
局所変数が項目置換で使えないことをマニュアルで知ったので
固有変数で対応を取ろうと思い実行すると立ち上げる度に変数宣言をしないと削除されますし、
その解決策が初心者の私には分からなくて困っていたところでした。

いろいろなアドバイスを下さいました、みなさまにも心からお礼申し上げます。



11467 Re:ボタン押しで表の項目訂正と日付入力するには 今村 誠 2001/06/06-18:49
記事番号11460へのコメント
Detaさんこんにちは
変数を宣言するのは変数管理だけではありません。
フォームを作成したあとに、イベントファイルを桐に作ってもらうと
変数はいくつでも宣言できます。

イベントファイルの作り方は過去ログの宮城さんのコメントに
http://www.fuku3.com/~habata/kbbs/kakov8/08835.htm

作成した例は、拙作ではございますが、【多遊】さんのホームページの
出勤簿というタイトルで出勤簿.kevのメイン部に変数宣言の記載例があります。
http://www8.freeweb.ne.jp/animal/mokuchan/download/dl-list.htm

ファイルは解凍しないと見られません。

戻る