過去の桐井戸端BBS (桐ver.9)
22406 表にデータが入れば自動的にフォームが表示されるようにしたい dog 2003/09/19-09:01
dogです。
はじめまして。
桐V9で質問です。
見出しのように、あああ.tblにデータが入れば(自動的に)フォームを表示するようにしたいのですが。
教えてください。
22408 Re:自動的にフォームを表示 うにん 2003/09/19-11:49
記事番号22406へのコメント
意味不明です。

>見出しのように、あああ.tblにデータが入れば(自動的に)
>フォームを表示するようにしたいのですが。

あああ.tblには最初データが0件で、誰かが行追加した時にフォームを表示という意味ですか?

22422 Re:自動的にフォームを表示 dog 2003/09/19-18:38
記事番号22408へのコメント
うにんさんはじめまして。
意味不明で申し訳ありません。

>あああ.tblには最初データが0件で、誰かが行追加した時にフォームを表示
>という意味ですか?

最初はデータが0件です。
その通りです。

22424 Re:自動的にフォームを表示 うにん 2003/09/19-20:31
記事番号22422へのコメント
>最初はデータが0件です。
>その通りです。

う〜〜〜ん、その通りといわれるとますます何をしたいのかがよくわかりませんが、

表 "あああ.tbl"
繰り返し (#総件数=0)
  遅延 10
繰り返し終了
使用フォーム "フォーム名"

というような一括処理を動かしておけばそんなようなことができそうな?

22426 Re:自動的にフォームを表示 通りすがり 2003/09/20-00:10
記事番号22424へのコメント
ループを組むより
[行挿入終了]イベント
を使った方がいいかも?

多分(あくまで予想で)、LAN上で共有して表を利用していて、誰かがデータを入力(行挿入)したときに、
管理責任者がフォームで確認する?っていう使い方なのかな?
フォームを最初から立ち上げておき、最小化にしておくとか、非表示にしておいて、
イベントが発生したら、フォームを表示する・・・・って手順じゃダメですかね?


22430 Re:自動的にフォームを表示 うにん 2003/09/20-11:06
記事番号22426へのコメント
通りすがりさん

>ループを組むより
>[行挿入終了]イベント
>を使った方がいいかも?

他のコンピュータで行挿入したとき自分のコンピュータでイベントが発生するとは思えませんが??
いずれにしろ、もうちょっとやりたいことが具体的になればもっといい方法があるかもしれません。

22432 Re:自動的にフォームを表示 通りすがり 2003/09/20-17:29
記事番号22430へのコメント
現在、試すことのできるLAN環境じゃないから試せないのですが、

>他のコンピュータで行挿入したとき自分のコンピュータでイベントが発生するとは思えませんが??

共有で表を開き、フォームにかかえていてもですかね?
試してないので、何ともいえませんけど。


22441 Re:自動的にフォームを表示 dog 2003/09/21-21:08
記事番号22432へのコメント
dogです。
ご指導皆さんありがとうございます。

説明が下手ですみません。
内容は下記です。

もちろんLANで使用しています。
端末は10台です。

3つのセクションがあります。

販売課、4台
仕入課、4台
管理課、2台 以上のパソコンがあります。

それぞれの業務の連絡をパソコン同士で行いたいのです。
そこで、それぞれのパソコンにデータを送信すると
指定されたパソコンでは、フォームが自動的にオープンする。
ってな具合にならないかなあ。

と、いった仕組みなんですが。どうですか?
よろしくお願いいたします。


22446 Re:自動的にフォームを表示 通りすがり 2003/09/22-08:59
記事番号22430へのコメント
試したところ、うにんさんの指摘どおり

>他のコンピュータで行挿入したとき自分のコンピュータでイベントが発生するとは思えませんが??

でした。
22452 Re:自動的にフォームを表示 うにん 2003/09/22-14:01
記事番号22441へのコメント
>3つのセクションがあります。
>
>販売課、4台
>仕入課、4台
>管理課、2台 以上のパソコンがあります。
>
>それぞれの業務の連絡をパソコン同士で行いたいのです。
>そこで、それぞれのパソコンにデータを送信すると
>指定されたパソコンでは、フォームが自動的にオープンする。

ということは、「指定されたパソコン」ということがあるので、最初に出てきた
「行挿入」だけでは不足ですね。(ファイルを分ければいいかな?)

桐でやるとしたら、タイマーイベントで監視するくらいでしょうか。
連絡用の表を1つ定義しておいて、
[日付]日付
[時刻]時刻
[連絡先]文字列
[送信者]文字列
[連絡内容]文字列
[処理済]整数
送信する=この表に行追加、[連絡先]に相手の名前かコンピュータ名など。
受信する=タイマーイベントのあるフォームを開いておく
イベントの内容
絞り込み [連絡先]{="自分の名前とかコンピュータ名",[処理済]=0}
if (.not #eof)
 #フォームを表示する(タイマーイベントのフォームを非表示にしておいて
使う?)
 項目訂正 [処理済]=1
end

みたいな。

22456 業務連絡のために行追加をウォッチしたい 佐田 守弘 2003/09/22-23:31
記事番号22441へのコメント
dogさん
>それぞれの業務の連絡をパソコン同士で行いたいのです。
>そこで、それぞれのパソコンにデータを送信すると
>指定されたパソコンでは、フォームが自動的にオープンする。
との事ですが、
10台のうち、1台が管理者の端末であって、他の担当が入力を開始したら、
管理者がそれをすぐに見つけて、承認をするとか別の処理を行うといったことをされるのでしょうか。

また、元の表は空の表との事ですが、この様な内容だと、必ずしも空の表とは限らない様にも見えます。
それから、開かれる表は複数、それもある程度の数の表がある様にも思えるのですが。

基本的には、もし入力を行ったことを管理者に伝えるのであれば、別の方法
例えばメールを発信するなどの方が良さそうにも思えますが。

●新規のデータ入力をウォッチするには
敢て質問の主旨の方法を考えたとしたら、関連する表を全て開いておき、
データ行数を時々数えて、前回と変化がないかを比べるしかなさそうだと思います。
しかし、不必要に表を開いたり、レコード数をカウントするようなことを行うので、
全体が重くなると思いますが。

佐田守弘(KS-00119)

戻る