過去の桐井戸端BBS (桐ver.8)
7267 一括処理で開いたフォームを表形式編集に持ち込むには Ogo 2000/08/21-01:17
<7128><7129>の続きになると思うんですが(<7129>を踏まえて)

一括処理の中で開いたフォームを任意に表形式で編集することも可能としたいのです。

桐5では何も考えずに「帳票形式編集」で HOME CLR で可能だったのに。

桐8では「フォーム呼出し」では一覧表形式に移れません。
かと言って「フォーム形式編集」では、一括処理がそこで終了してしまいます
(桐5では /Q で次行以下に制御が移ったのに、桐8では……)。

どうしたもんかなぁ……
7272 Re:一括処理で開いたフォームを表形式編集に持ち込むには 佐田 守弘 2000/08/21-16:22
記事番号7267へのコメント
Ogoさん
一括処理からフォームを開く時には、ウィンドウ作成コマンドとウィンドウ会話コマンドを使う事になると思います。
ウィンドウ会話状態から表形式編集に移行するのはいかがでしょうか。
確認していないのですが、たぶんできると思うのですが。

佐田守弘(KS-00119)
7274 Re:一括処理で開いたフォームを表形式編集に持ち込むには 宮城 2000/08/21-17:36
記事番号7267へのコメント
フォームに表形式編集というボタンを追加しておき、ボタン機能は一括処理に戻る。
ボタン名は「表形式編集」。

ウィンドウ作成→ウィンドウ会話で表示用フォームでレコードを表示しながら
コマンドボタンが押されるのを待っている状態で、ボタン名による分岐ケース制御中に

ケース(&ボタン名="表形式編集")
 表形式編集 ガイド="終了=/Q"

これでいけませんか?
ウィンドウ制御に工夫はいるでしょうが、ちゃんと動いているように見えます。
もちろん、ガイド文字は限りなく情けないです。(;_;)

(自分では、表形式によく似た一覧表フォームを作るしかないのかなと今まで思っていましたが、あれれ?)
7275 Re:一括処理で開いたフォームを表形式編集に持ち込むには hidetake 2000/08/21-17:44
記事番号7274へのコメント
Windows版の桐は V7.1 の頃から使っていますが、
ずっと表形式編集も使っています。

トラブッたら、デバッグ用に「表形式編集」コマンドを入れても確認する事もありますが、
一括処理が止まってしまうのが良くわかりません?

7276 Re:一括処理で開いたフォームを表形式編集に持ち込むには hidetake 2000/08/21-17:49
記事番号7275へのコメント
>トラブッたら、デバッグ用に「表形式編集」コマンドを
>入れても確認する事もありますが、一括処理が止まって
>しまうのが良くわかりません?

ちょっと意味がわかりづらかったかもしれません。
特に問題なく使えております。と言う意味です。

当然、モーダル状態?ダイアログ状態?
では無いので、その表以外の操作も可能な状態にはなりますが...

7278 Re:一括処理で開いたフォームを表形式編集に持ち込むには hidetake 2000/08/21-17:59
記事番号7276へのコメント
後、フォーム形式編集で開いた状態では、フォーム形式 <-> 表形式
の行き来もできますよね!
そして、何れの状態で閉じても一括処理に戻ってきます。

フォームから表を扱う場合でも「多重化_表編集」を用いたり、一旦一括処理に戻って、表を開く方法もあるし、
ウィンドウ操作の問題とか、用途によっていろいろ使い勝手が違うのでしょうけど、
やり方は工夫次第と思いますけど?

7285 Re:一括処理で開いたフォームを表形式編集に持ち込むには Ogo 2000/08/21-22:18
記事番号7278へのコメント

>後、フォーム形式編集で開いた状態では、フォーム形式 <-> 表形式
>の行き来もできますよね!
>そして、何れの状態で閉じても一括処理に戻ってきます。

それが、戻って来ないから困っているわけでして…… (^^;

今のところは宮城さん流(全く同じではありませんが)のやり方で
急場は凌いでおりますが、hidetake さんのところでうまく行くなら、
どこかで何か違う箇所があるんだろうなぁ……


現状は下記の如し。
もちろん、フォームのボタンには &形式 へ文字列を代入してから
「一括処理に戻る」です。
また、確認_OK.WFM も同様で、「実行」「中止」はそれぞれ &中止
に数値を入れて返って来る汎用ダイアローグです。

*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*


ここまでいろいろ(入力データのエラーチェック)やってます

 代入 &ガイド="ここに問題があります"
 代入 &項目="エラー項目名"
 代入 &形式="カード編集"

 繰り返し (&形式<>#未定義)
  手続き実行 フォーム編集
 繰り返し終了


ここから類似の処理が延々続きます。 


*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*

名札 フォーム編集

* 編集表 &使用TBL
* 使用フォーム &使用WFM
* フォーム形式編集 画面消去=しない,更新=許可,許可作業=*\
     ,ガイド=&ガイド,初期項目=&項目

 代入 &サブメニュー=#未定義
 ウィンドウ作成 &使用WFM,ハンドル=&ハンドル,オプション=最大化\
    ,編集表=する
 ウィンドウ会話 &ハンドル ,更新=許可,許可作業=*,初期項目=&項目\
    ,ガイド=&ガイド,終了状態=&終了状態,モーダル=しない
 ウィンドウ終了 &ハンドル
  条件 (&形式<>"一覧表編集") 手続き終了


*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*

名札 表形式編集
 ウィンドウ作成 表,ハンドル=&ハンドル,オプション=最大化
 ウィンドウ会話 &ハンドル ,更新=許可,許可作業=*,ガイド=&ガイド\
    ,終了状態=&終了状態,モーダル=しない
 ウィンドウ終了 &ハンドル
 代入 &退避=&ガイド
 代入 &ガイド="フォーム形式で開き直しますか? 次へ行きますか?"
 代入 &ガイド2="フォーム形式編集=「実行」, 次=「中止」"
 フォーム呼出し "確認_OK.WFM",許可作業=なし,終了状態=&実行リターン
  条件 (&中止>0) 代入 &形式="カード編集"
  条件 (&中止<1) 代入 &形式=#未定義
 代入 &ガイド=&退避
手続き終了

*−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−*


7286 Re:一括処理で開いたフォームを表形式編集に持ち込むには hidetake 2000/08/21-22:56
記事番号7285へのコメント
>それが、戻って来ないから困っているわけでして…… (^^;

戻って来ないと言うことは、その一括処理はどうなるのですか?

あと、帰ってくる &中止 が#未定義であるって言うことは無いですよね?

7287 Re:一括処理で開いたフォームを表形式編集に持ち込むには Ogo 2000/08/21-23:29
記事番号7286へのコメント

>戻って来ないと言うことは、その一括処理はどうなるのですか?

こういう手順で動かしています。

起動は「メニュー.WFM」をダブルクリック。
コマンドボタンがメニューになっています。
  1行目が なし #代入("機能",&メインメニュー)
  2行目が 開く "各種処理.CMD"
「各種処理.CMD」では &メインメニュー の値でサブルーチン分岐。
この中で更に「詳細処理.CMD」を呼び出。
その中で今回記載のサブルーチンを動かしています。

で、「戻って来ない」とは、表形式編集でもフォーム形式編集でも
本来なら「一括処理に戻る」が使えるはずなのに、使えなくなってしまいます
(現在の暫定ルーチンでは大丈夫)。
この状態で何かの終了動作(「閉じる」とかウィンドウのクローズボタンをクリックするなど)を行なうと、
状態が変更されているが、保存終了するか否かのダイアローグが出て、
表の保存・破棄終了を実行されてそのまま(画面上には「メニュー.WFM」が残る)。
一括処理の次の行には進みません。

>あと、帰ってくる &中止 が#未定義であるって言うことは無い
>ですよね?

これ、前回の一括処理の記述の最後の部分でしょうけど、0 か 1
が返って来ます。
しかし、本来まとも(フォーム形式で編集で HOME CLR で フォーム<--> 表 が可能で、
尚且つ「一括処理に戻る」が可能)なら、あんなルーチン(名札 表形式編集)は追加していません。
当然、最初のところで「繰り返し」なんて使わずに、いきなり
「フォーム形式編集」の1行でケリをつけるべきところなのです。

7291 Re:一括処理で開いたフォームを表形式編集に持ち込むには hidetake 2000/08/21-23:41
記事番号7287へのコメント
一番簡単な

表 "filename.tbl",使用フォーム="filename.wfm"
フォーム形式編集
終了 表 *
変数管理

とかではどうなりますか?
これでダメだったらわかりません _o_

7296 Re:一括処理で開いたフォームを表形式編集に持ち込むには 佐田 守弘 2000/08/22-14:54
記事番号7287へのコメント
Ogoさん
まだ状況がきちんと把握できていないので、外しているかも知れませんが、思いつくままの対策案です。

@メニューのフォームを閉じる
Ogoさんの場合、メニュー.wfmから起動して、一括処理を開いている様ですが、この場合には、
一括処理ファイルを開いた後、メニュー.wfmを閉じてみて下さい。
具体的には、
>  1行目が なし #代入("機能",&メインメニュー)
>  2行目が 開く "各種処理.CMD"
の後ろに
3行目に 閉じる <パラメータなし>
を入れてみて下さい。

Aこの目的なら、一括処理から起動してみて下さい。
一括処理から起動し、ウィンドウ作成、ウィンドウ会話コマンドでメニュー.wfmを開くのが良いのかと思いますが。
メニュー.wfmから開いているところに何か無理な部分がありそうな気がしています。

佐田守弘(KS-00119)

7297 Re:一括処理で開いたフォームを表形式編集に持ち込むには hidetake 2000/08/22-15:15
記事番号7296へのコメント
なるほど、WFM のコマンドボタンから、「開く」で CMD を
実行させていたのですか... これですと確かにダメみたい!

7298 Re:一括処理で開いたフォームを表形式編集に持ち込むには hidetake 2000/08/22-15:23
記事番号7297へのコメント
WFM のコマンドボタンの「開く」で実行されたコマンドは、
フォーム形式編集あるいは表形式編集が呼びだされた段階で
一括処理そのものが終了させられているようですね...

7303 モーダル 尾形 2000/08/22-18:47
記事番号7298へのコメント
ウインドウ会話をモーダル指定すれば次へ行くようですが.....

全然、見当違いでしたらごめんなさい
7326 不義理で申し訳ない Ogo 2000/08/24-18:58
記事番号7267へのコメント
ここも、β版テストのボードもですが、

いろいろコメント戴いていますが、ちょっと今週中は私は反応できそうにありません。 (^^;;;

不義理で申し訳ありません。
来週には何とかしますから。

戻る