過去の桐井戸端BBS (桐ver.9)
24038 フォームで中止とか実行とかのコマンドボタンによって一括処理へ戻ったとき押されたボタンによってその後を制御したい もさく 2003/12/27-16:21
一括処理から呼び出したフォームでコマンドボタン"中止"又は"実行"が押されたら、
元の一括処理の対応する名札"中止"又は"実行"に戻りたいのです。
又このとき変数"&処理"に押したボタンに対応した"中止"又は"実行"を設定して持ってゆきたいのですが・・・
コマンドボタンの機能名パラメータまたはイベントなど、どう記述すればよいでしょうか。
どなたか教えて下さい、よろしくお願いします。
24039 Re:フォームから条件で一括処理へ 幅田 2003/12/27-16:36
記事番号24038へのコメント
もさくさん
こんにちは。

>一括処理から呼び出したフォームでコマンドボタン"中止"又は"実行"が押さ
>れたら、元の一括処理の対応する名札"中止"又は"実行"に戻りたいのです。
>又このとき変数"&処理"に押したボタンに対応した"中止"又は"実行"を
>設定して持ってゆきたいのですが・・・
>コマンドボタンの機能名パラメータまたはイベントなど、どう記述すればよ
>いでしょうか。どなたか教えて下さい、よろしくお願いします。

一括処理から
フォーム呼び出しコマンドでフォームを開き、
コマンドボタンの「機能名」閉じるで
一括処理に戻っているのですか?

であれば、
フォームの中止のコマンドボタンには
1行目の機能名「なし」
機能パラメータリスト「#代入(&処理,"中止")」
2行目の機能名「閉じる」

実行のコマンドボタンには
1行目の機能名「なし」
機能パラメータリスト「#代入(&処理,"実行")」
2行目の機能名「閉じる」

を設定して下さい。

中止のボタンを押したときには&処理に「中止」
実行のボタンを押したときには&処理に「実行」
が入っていますので、

一括処理に戻ったとき(フォーム呼び出しコマンドの次)

条件 (&処理="実行") 分岐 実行
条件 (&処理="中止") 分岐 中止

などとして、それぞれの名札に飛ぶようにしてはいかがでしょうか。

24040 Re:フォームから条件で一括処理へ 悲しげ 2003/12/27-17:30
記事番号24038へのコメント
どもっ、もさくさん、幅田さん

もし「フォーム呼び出し」コマンドでフォームを呼び出しているのなら
次のような方法も使えます。

ヘルプによれば
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
フォーム呼び出し  <フォーム ファイル名>,\
         許可作業 = *|なし|<作業名> + …,\
         ボタン = <文字列型の変数名>,\
         編集表 = しない|する,\
         終了状態 = <変数名>

ボタン = <文字列型の変数名>
オブジェクト名を代入する変数名を指定します。変数のデータ型は、
文字列型でなければいけません。
この変数には、終了時にクリックしたコマンドボタンのオブジェクト名が代入されます。 (以下略)
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

つまり「呼び出したフォームでコマンドボタン"中止"又は"実行"が押されたら」
そのボタンオブジェクト名を取得できる訳です。
ですから、この場合は、

  フォーム呼び出し "なんとか.wfm",ボタン=&牡丹
  if(&牡丹="b中止") /*「中止」ボタン押下時*/
   ・・・・中止時の処理
     (「手続き実行 中止()」とか「分岐 中止」とか)
  else       /*即ち「実行」ボタン押下時*/
   ・・・・実行させる場合の処理
  end

※コマンドボタンのオブジェクト名がそれぞれ「b実行」「b中止」で
 あり、文字列型変数「&牡丹」が変数宣言済みであると仮定。

24041 補足 悲しげ 2003/12/27-17:42
記事番号24040へのコメント
補足です。
この場合、コマンドボタン「b実行」「b中止」の機能名は、どちらも
1行目に「閉じる」だけです。

24046 Re:補足 もさく 2003/12/27-22:16
記事番号24042へのコメント
幅田さん
悲しげさん
有難うございました。
おかげさまで"ばっちし"でした。
一部試したところもありましたが一括処理の悪い癖がでてパラメータの書式にまずいところもあり
うまくゆかなかったようです。
はやばやご指導頂きほんとうにありがとうございました。

戻る