過去の桐井戸端BBS (桐ver.8)
12163 CSV形式のファイルで、#ファイル使用、#ユーザ名などは使えますか HERB 2001/07/05-12:17
No.12044「CSVファイル使用中の処理」を投稿したHERBです。

佐田さんにアドバイスいただき、CSVファイルを書き出した後ファイル複写することにしました。

そこでいくつかアドバイスいただきたいのです、
書き出すCSVファイルは8ファイル、当然複写するファイルも8となります、
そのうちの1ファイルでもネットワーク上のパソコンでファイルを使用していれば、
繰り返しコマンドを使ってメッセージBOXで表示させる方法はアドバイスいただいた通りでできそうです。

さらに、どのファイルがどのパソコンで使用中なのかメッセージBOXに表示させたい、
過去記事検索から、#ファイル使用、#ユーザ名でできそうなのですが、
#ファイル使用関数はリファレンスを見る限り、表ファイルを対象としていてるのですか、
CSV形式のような他のファイルも同じ戻り値となりますか?

Microsoftネットワークですので#ユーザ名関数で使用しているコンピューター名を得るにはどうしたらよいでしょうか、
アドバイスよろしくお願いします。

12174 1つのアイデアです MIT 2001/07/06-12:45
記事番号12163へのコメント
HERBさん

ご質問に対する回答ではありませんが、以下はネットワーク上の桐データ共有ユーザーを把握するアイデアの1つです。

ユーザー名や表の名前、使用状況などを把握する項目を設定した共有する表を1つ作ります。
(以下、この表をNET.TBLとします)

各クライアントの処理記述内に以下の処理を追加します。

各クライアントで表のオープン、編集開始など把握したい処理を開始する時にNET.TBLに必要情報を書き込ませます。

把握対象の作業が終了したらNET.TBLの該当情報を削除させます。


>どのファイルがどのパソコンで使用中なのかメッセージBOXに表示させたい

これなど上記のNET.TBLにある情報を利用すると実現できると思います。


また、他のクライアントを制御する方法として
制御したいクライアントの識別名と制御したい値をNET.TBLに書き込みます。

各クライアント側ではタイマーなどで定期的にNET.TBLを監視させて自分宛の制御値を見つけるとそれを実行させます。
例えばある値を発見したら「表を閉じる」などです。

或いは各クライアントで処理を始める時、NET.TBL内に「処理開始するな」の情報があれば、処理開始できないようにする。

などが考えられます。

なお、各クライアントがNET.TBLに値を書き込んだ後、なんらかの原因で値の削除をしなかった時のために
「書き込み値のクリア」といった処理も必要かもしれません。

このアイデアは各クライアント情報の把握を
「一括処理やイベントで桐データを制御する知識」内だけで
実現できるものです。共有する表の数やどのような項目を作るべきかは
ご使用の環境で決定する事になるでしょう。
以上抽象的な説明で申し訳ありませんが、参考になればと思い投函させて頂きました。MIT

12201 Re:1つのアイデアです HERB 2001/07/09-11:11
記事番号12174へのコメント
MITさん、HERBです。

>ご質問に対する回答ではありませんが、以下は
>ネットワーク上の桐データ共有ユーザーを把握するアイデアの1つです。

中略

>このアイデアは各クライアント情報の把握を
>「一括処理やイベントで桐データを制御する知識」内だけで
>実現できるものです。共有する表の数やどのような項目を作るべきかは
>ご使用の環境で決定する事になるでしょう。
>以上抽象的な説明で申し訳ありませんが、参考になればと思い投函させて
>頂きました。MIT

アイデア参考とさせていただきます、多少イベント、一括処理が組めるようになり
ある程度の処理ができるようにはなり、自分がやりたいことができるようにはなりました、
初期設定といってよいかどうか解りませんが、イベントが実行されたとき、
イベント処理中に開かれている表、書出処理を行うときのファイル等々、イベント実行中にエラーが発生した場合
そこで処理が止まってしまい、途中までの処理で開かれた表、ファイルが閉じられず他の処理も実行できなくなり、
桐の操作を知らない人に使用させるには、こういったエラー回避処理を作成しなければなりません、
その方法、処理をどうするか悩んでいます、
アイデアを参考にし、考えていきますまた、解らなくなったときは投稿させていただきます、今後ともよろしくお願いします。


戻る