過去の桐井戸端BBS (桐ver.8)
22484 フォームで結合表を再抽出したときに出るメッセージを表示しないようにしたい ステラ 2003/09/25-16:48
フォームでコマンドボタンを使って結合表を再抽出したときに

「基本状態に戻してもよろしいですか?
 開始条件やグループ化については基本状態から再実行されます。:Y,N」

とメッセージが出ます。

このメッセージをとばして再抽出が完了するようにすることはできますか?

22486 Re:フォームで、結合表を再抽出したときに出るメッセージを表示させなくしたい。 うにん 2003/09/25-23:15
記事番号22484へのコメント
再抽出の前に「解除 *」を実行すればいいです。

22488 Re:フォームで、結合表を再抽出したときに出るメッセージを表示させなくしたい。 ステラ 2003/09/26-16:54
記事番号22486へのコメント
うにんさん、ありがとうございます。
さっそくやってみます。

22631 再度(フォームから結合表を再結合するときのメッセージを省略したい) ステラ 2003/10/07-14:18
ちょっと時間が取れない間にツリーが消えてしまったのでもう一度新規投稿してます。

フォーム上で結合表を再抽出するとき、「現在の状態を解除してよろしいか」のようなメッセージが出ますが、
これを書略することができるか

という質問でした。

確かうにんさんから、
== 解除 * を実行してから再抽出すればこのメッセージが出なくなる==
とのことでやってみましたがうまくいきません。

Ver8 でsp記載なしという初期の桐8だとバグが多いためバージョンアップしたほうがいいと忠告をもらっていますが、
うまくいかないのはバージョンのせいでしょうか。それとも何か記述ミス?


ちなみに、サブフォームのコマンドボタンの機能に再抽出を設定してあり、
そのボタンをメインフォームのコマンドボタンから手続き実行で動かしています。
・サブフォームのコマンドボタンの再抽出の前の機能に解除*をいれてもダメ。
・メインフォームのコマンドボタンで実行する手続きの中で、上に書いたボタンを実行させる前に解除*を入れてみてもダメでした。
 この時、対照表が設定されていないためかと思い、編集表 <結合表名:拡張子まで>を入れてみましたが、
 この表はないとエラーが出ます。
22663 Re:再度(フォームから結合表を再結合するときのメッセージを省略したい) 東北のしろくま 2003/10/08-08:55
記事番号22631へのコメント
>フォーム上で結合表を再抽出するとき、「現在の状態を解除してよろしい
>か」のようなメッセージが出ますが、これを書略することができるか
>
>という質問でした。

私も、メッセージがうっとうしいので、いろいろためしてみましたら、
一般手続きから、再抽出を実行したら、うまくいきました。

私の場合は、一つの”請求書発行.TBL”で、メインサブフォームを作り、
メインフォームを結合表(単一化)で、サブフォームは”請求書発行.TBL”です。

メインフォームにコマンドボタンをもうけ、
1)再抽出を実行中は、「メソッド呼び出し @フォーム.描画禁止( 1 )」で画面を保持し、
2)再抽出を実行すると、カーソルは先頭行にあるので、
「メソッド呼び出し @フォーム.明細番号取得( &明細番号1 )」で、実行した位置に戻っています。

以下はそのままコピーしました(メインにフォームは伝票、分割数15の条件で)

---------------------------------------------
機能名  機能名パラメータリスト
手続き実行  cmd再抽出click
---------------------------------------------

手続き定義開始 cmd再抽出click ()
 メソッド呼び出し @フォーム.描画禁止( 1 )
&明細番号1=””
メソッド呼び出し @フォーム.明細番号取得( &明細番号1 )
&更新行番号=#行番号
再抽出
ケース開始
   ケース(&削除前総件数<>#総件数 .and &更新行番号=<15)
      条件 ( .not #終端行 )ジャンプ 行番号=&更新行番号
      メソッド呼び出し @txt得意先名1.フォーカス設定()
   ケース(&削除前総件数<>#総件数 .and &更新行番号>15 .and &更新行番号≦30)
      条件 ( .not #終端行 )ジャンプ 行番号=&更新行番号
      メソッド呼び出し @フォーム.明細番号設定( &明細番号1 )
      メソッド呼び出し @txt得意先名1.フォーカス設定()
   ケース(&削除前総件数<>#総件数 .and &更新行番号>30 .and &更新行番号≦45)
      条件 ( .not #終端行 )ジャンプ 行番号=&更新行番号
      メソッド呼び出し @フォーム.明細番号設定( &明細番号1 )
      メソッド呼び出し @txt得意先名1.フォーカス設定()
   ケース(&削除前総件数<>#総件数 .and &更新行番号>45 .and &更新行番号≦60)
      条件 ( .not #終端行 )ジャンプ 行番号=&更新行番号
      メソッド呼び出し @フォーム.明細番号設定( &明細番号1 )
      メソッド呼び出し @txt得意先名1.フォーカス設定()
   ケース(&削除前総件数=#総件数)
      条件 ( .not #終端行 )ジャンプ 行番号=&更新行番号
      メソッド呼び出し @フォーム.明細番号設定( &明細番号1 )
      メソッド呼び出し @txt得意先名1.フォーカス設定()
ケース終了
 メソッド呼び出し @フォーム.描画禁止( 0 )
手続き定義終了

22665 Re:再度(フォームから結合表を再結合するときのメッセージを省略したい) ステラ 2003/10/08-09:23
記事番号22663へのコメント
イベントや処理の書き方は初心者なのでもう少し教えてください。

東北のしろくまさんは No.22663「Re:再度(フォームから結合表を再結合するときのメッセージを省略したい)」で書きました。
>
>私の場合は、一つの”請求書発行.TBL”で、メインサブフォームを作り、
>メインフォームを結合表(単一化)で、サブフォームは”請求書発行.TBL”で
>す。
これは、メインフォームとサブフォームの対照表が同じということでしょうか?
私の場合はメインがA表、サブがB結合表で対照表が違うので、メインフォームからサブフォームの
対照表を再抽出するにはなにか対照表を決めて行わなければならないかと思うのですが
その方法がわからないので、過去ログを参考にサブフォームのコマンドボタンを
メインフォームから実行する方法をとっています。


>メインフォームにコマンドボタンをもうけ、
>1)再抽出を実行中は、「メソッド呼び出し @フォーム.描画禁止( 1 )」で画面がを
>保持し、

この、描画禁止がポイントなのでしょうか?
でも、メッセージは YES or NO を聞いてくるのでそれに対し入力をしなければならないのでは?


22666 Re:再度(フォームから結合表を再結合するときのメッセージを省略したい) 東北のしろくま 2003/10/08-09:43
記事番号22665へのコメント
>でも、メッセージは YES or NO を聞いてくるのでそれに対し入力をしなければならないのでは?

再度確認ですが、「メッセージは YES or NO の確認を出したくない」だけですよね?

それを前提に、

1)確認メッセージが出るのは、
コマンドボタンに有る
機能名:結合表の再抽出
を実行するとでますが、

2)確認メッセージが出ないのは、

コマンドボタンから手続き実行させるとでません。
ですから、わたしの場合はメインフォームに
コマンドボタンをもうけ、

オブジェクト名 cmd再抽出
機能名   機能名パラメータリスト
手続き実行   cmd再抽出click

手続き定義開始 cmd再抽出click ()
再抽出
手続き定義終了
これででません。


22668 Re:再度(フォームから結合表を再結合するときのメッセージを省略したい) 東北のしろくま 2003/10/08-10:14
記事番号22665へのコメント
はやとちりで再度投書しました。文章は難しい。(-_-;)

>これは、メインフォームとサブフォームの対照表が同じということでしょうか?

一つの表を、メインが結合表、サブは表そのもの、違うような?

>私の場合はメインがA表、サブがB結合表で対照表が違うので、メインフォームからサブフォームの対照
>表を再抽出するにはなにか対照表を決めて行わなければならないかと思うのですがその方法がわからない
>ので、過去ログを参考にサブフォームのコマンドボタンをメインフォームから実行する方法をとっていま
>す。

「なにか対照表を決めて行わなければならないかと思うのですが」この質問の意味がわからない

あらためて対照表を指定する必要ないというか、サブでB結合表を使用してるのだから。


再度確認ですが、「メッセージは YES or NO の確認を出したくない」だけですよね?

それを前提に、

1)確認メッセージが出るのは、***********コマンドボタンに有る、結合表の再抽出を使うとだます。
コマンドボタンに有る
機能名:結合表の再抽出
を実行するとでますが、

2)確認メッセージが出ないのは、*********見よう見まねで一括に有る、「再抽出」を使かったらでませんでした。

コマンドボタンから手続き実行させるとでません。
ですから、わたしの場合はメインフォームに
コマンドボタンをもうけ、

オブジェクト名 cmd再抽出
機能名   機能名パラメータリスト
手続き実行   cmd再抽出click

手続き定義開始 cmd再抽出click ()
再抽出
手続き定義終了
これででません

22669 Re:再度(フォームから結合表を再結合するときのメッセージを省略したい) ステラ 2003/10/08-11:25
記事番号22668へのコメント
オブジェクト名 cmd再抽出
>機能名   機能名パラメータリスト
>手続き実行   cmd再抽出click
>
>手続き定義開始 cmd再抽出click ()
>再抽出
>手続き定義終了
>これででません>

やってみましたが、メッセージも出ませんが再抽出しません。
やはり、メインフォームの対照表がB結合表と直接関係ないため(もちろんリンクは指定してます)
メインフォームのコマンドボタンから直接サブフォームのB結合表を再抽出(再結合)することはできないような気がする。

>>私の場合はメインがA表、サブがB結合表で対照表が違うので、メインフォームからサブフォームの対照
>>表を再抽出するにはなにか対照表を決めて行わなければならないかと思うのですがその方法がわからない
>>
>
>「なにか対照表を決めて行わなければならないかと思うのですが」この質問の意味がわからない
>
桐ヘルプの他の表を操作するというところで、メインフォームの対照表(この場合A表)以外の表を操作するときは
表(この場合はB結合表)を開き、編集対照表を切り替えて操作するとなっています。
そこで、私はB結合表を開く必要はないので、編集対照表のみを切り替えるため

編集表 B.viw

としましたが、Bはありませんとエラーが出るのです。(これが最初の投稿の後ろのほうの説明です。)

22675 Re:方向転換 でもプログラムの不正処理で終了してしまう! ステラ 2003/10/08-14:51
記事番号22668へのコメント

>1)確認メッセージが出るのは、***********コマンドボタンに有る、結合表の再抽出を使うとだます。
>コマンドボタンに有る
>機能名:結合表の再抽出
>を実行するとでますが、
>
>2)確認メッセージが出ないのは、*********見よう見まねで一括に有る、「再抽出」を使かったらでませ
>んでした。
>
>コマンドボタンから手続き実行させるとでません。


東北のしろくまさんの記事にコメントをつけましたが、あのメッセージを読んで、メインフォームでなく
サブフォームのコマンドボタンで機能「結合表の再抽出」を使わずに手続き実行をさせることにしてみましたが、
「不正処理を行ったので強制終了します。」でシャットダウンしてしまうようになりました。
それまでは、メッセージは出るけど再抽出できていたのに・・・

いったい何がいけないのでしょう。

****
  手続き定義開始 再結合サブ()
   再抽出
   並べ替え 条件名=A
   絞り込み 条件名=B
  手続き定義終了
****

心当たりは、メインフォームで使用しているイベントファイルの中に、サブフォームの中のコマンドボタンで
手続き実行する一般手続きを書いたためかと思うのですが、オブジェクトのプロパティ・イベントに白抜き文字で
表示されているイベントファイル名を変更する手段がわからないので確認できてません。
(これは別質問になってしまうので、これが原因なら、また別に投稿します。)


22677 Re:再度(フォームから結合表を再結合するときのメッセージを省略したい) うにん 2003/10/08-15:42
記事番号22631へのコメント
>Ver8 でsp記載なしという初期の桐8だとバグが多いためバージョンアップし
>たほうがいいと忠告をもらっていますが、うまくいかないのはバージョンの
>せいでしょうか。それとも何か記述ミス?

「不正な処理」とかいうようになってるので、上げた方がいいでしょう。

>ちなみに、サブフォームのコマンドボタンの機能に再抽出を設定してあり、
>そのボタンをメインフォームのコマンドボタンから手続き実行で動かしてい
>ます。
>・サブフォームのコマンドボタンの再抽出の前の機能に解除*をいれてもダ
>メ。

サブフォームってことはグループ化もしているのではないでしょうか?
そうだとすると、解除*の後に「グループ解除」と再抽出後に「グループ再抽出」が必要になります。

しろくまさんのように一括コマンドでうまくいくならその方がいいですね。

22681 Re:やはりバージョンアップが近道かも ステラ 2003/10/08-17:22
記事番号22677へのコメント
>サブフォームってことはグループ化もしているのではないでしょうか?
>そうだとすると、解除*の後に「グループ解除」と再抽出後に「グループ再抽出」が
>必要になります。

グループ解除とグループ再抽出は行っていて、メッセージが出ることを除けば機能的
にはできていたのですが、メッセージをうるさがったためはまっています。

>しろくまさんのように一括コマンドでうまくいくならその方がいいですね。

たった一つ再抽出のみの一般手続きが不正処理扱いされるのでバージョンアップしてみます。

あまりにも手探りの道のり、道は険しい・・・
今後もよろしくお願いします。

22683 Re:再度(フォームから結合表を再結合するときのメッセージを省略したい) 東北のしろくま 2003/10/08-19:02
記事番号22677へのコメント
結果報告
私のもグループ化していますので

初めにこのレスを知り、

解除*
再抽出

を実行しましたが、だめだったもので、投書しましたが

再度トライしました。

解除*の後に「グループ解除」と再抽出後に「グループ再抽出」が必要になります。

で出来ました。

今考えれば、手続き実行にして、たまたま出来たのがよかっただけでこの掲示板は参考になってます。

追伸
うにんさんの
「マウスイベントでダブルクリックを識別したい」
利用させてもらってます......0.5秒くらいで
22686 Re:バージョンアップしました。うまくいきました。 ステラ 2003/10/09-09:50
記事番号22677へのコメント
うにんさん、東北のしろくまさん、ありがとうございました。

バージョンアップしたら、どちらもうまくいきました。
大変お騒がせいたしました。

ちなみに、sp7になりました。


戻る