(現在 過去ログ34 を表示中)

HOME HELP 新規作成 新着記事 トピック表示 ファイル一覧 検索 過去ログ

[ 最新記事及び返信フォームをトピックトップへ ]

■5334 / inTopicNo.1)  共有更新で開いた表
  
□投稿者/ 篤姫 -(2009/11/09(Mon) 09:30:11)
    お世話になっております。
    よろしくご指導ください。

    パソコン3台で使用しております。
    PC2、PC3で入力したデータを、PC1のデータというフォルダに転送しています。

    PC1にある表10をPC2で共有更新で開き更新作業をします。
    同時にPC3で入力したデータを表10に転送します。

    転送方法は下記の一括処理で行っております。
    PC1=表10.tbl 変数名:&表10
    PC3=表1.tbl  変数名:&表1

    1.表 &表10,モード=共有更新
    2.ジャンプ 行番号=終端
    3.読み込み 表,&表1
    4.終了 表 編集対象表

    5.表 &表1
    6.行削除 *
    7.終了 表 編集対象表

    すると、3.でエラーが発生します。
    KD1450 他のユーザーが処理中です。

    どうすればこのエラーを回避できるでしょうか?







引用返信 [メール受信/OFF] 削除キー/
■5335 / inTopicNo.2)  Re[1]: 共有更新で開いた表
□投稿者/ うにん -(2009/11/09(Mon) 12:44:46)
    表1.tblを共有更新で開いてますか?

引用返信 [メール受信/OFF] 削除キー/
■5336 / inTopicNo.3)  Re[2]: 共有更新で開いた表
□投稿者/ 篤姫 -(2009/11/09(Mon) 14:44:51)
    うにんさん
    ありがとうございます。

    表1.tblは端末側なので、共有で開く必要がない
    と判断しまして
    共有更新では開いておりません。



    > 表1.tblを共有更新で開いてますか?
    >
引用返信 [メール受信/OFF] 削除キー/
■5337 / inTopicNo.4)  Re[1]: 共有更新で開いた表
□投稿者/ うにん -(2009/11/09(Mon) 16:23:08)
    > KD1450 他のユーザーが処理中です。
    >
    > どうすればこのエラーを回避できるでしょうか?

    共有の設定はできてるとして、「置換や併合などの処理を実行中(ファイル排他)」は他からアクセスできなくなるので
    終了状態を取得して、-2だったら数秒待ってループするぐらいしかないでしょうね。

引用返信 [メール受信/OFF] 削除キー/
■5338 / inTopicNo.5)  Re[1]: 共有更新で開いた表
□投稿者/ 今村 誠 -(2009/11/09(Mon) 16:35:43)
    篤姫さんこんにちは
    > 1.表 &表10,モード=共有更新
    > 2.ジャンプ 行番号=終端
    > 3.読み込み 表,&表1
    > 4.終了 表 編集対象表
    > すると、3.でエラーが発生します。
    > KD1450 他のユーザーが処理中です。

    桐のヘルプには下記のように記述すると書いてあります。
    読み込み  表,<表ファイル名>|<表番号>,\
    編集表 = する|しない,終了状態 = <変数名>,\
    { <現在表項目名> <読み込み項目名>,…}|*

    コマンドの終了状態を代入する変数名を指定します。
    変数のデータ型は、整数、長整数、数値、通貨、実数のいずれか
    でなければいけません。
    変数には、つぎの値が代入されます。
    戻り値 説明
    1 終了した。
    0 共有違反以外のエラーが発生した。
    -2 他の利用者が、置換や併合などの処理を実行中(ファイル排他)。

    3行目の終了状態を判断して繰り返し読み込む
    ようにするか、行追加で1行づつ処理するかだと思います。
    コマンドを書きたくないなら、専有で&表10を開いて
    読む込むのが最短です。

    確実に進めるなら&表1を専有で開いておいて、&表10を
    共有更新で開き全ての項目を変数で指定するか同じ構造の
    データファイルであれば行退避コマンドでコピーして
    行復旧を共有表で使うと簡単かもしれませんが、未定義値の
    処理がありますので確実かどうかは充分にテストされた方が
    良いと思います。

    案外と「読み込み表」は「置換」と一緒で共有では使えない
    コマンドかもしれません。
引用返信 [メール受信/OFF] 削除キー/
■5339 / inTopicNo.6)  Re[2]: 共有更新で開いた表
□投稿者/ 篤姫 -(2009/11/10(Tue) 09:31:31)
    今村 誠さん
    ありがとうございます。

    読み込みは使えないようですね。
    行追加でチャレンジしてみます。
    ありがとうございました。

引用返信 [メール受信/OFF] 削除キー/
■5340 / inTopicNo.7)  Re[2]: 共有更新で開いた表
□投稿者/ 篤姫 -(2009/11/10(Tue) 09:33:53)
    うにんさん
    ありがとうございます。
    読み込みは使えないようですねぇ
    今村さんに、ご教示いただいた
    行追加とうにんさんにご教示いただいた
    タイム設定してループする方法でチャレンジしてみます。
    ありがとうございました。

引用返信 [メール受信/OFF] 削除キー/
■5341 / inTopicNo.8)  Re[3]: 共有更新で開いた表
□投稿者/ うにん -(2009/11/10(Tue) 12:01:53)
    > 読み込みは使えないようですねぇ

    いや、ほんとにファイル排他で出てるエラーなら、読込に限らず変更するコマンドは何もできないはずですよ?

    と思って改めてヘルプを見てみたら、読込もファイルロックをかけようとするので、
    行訂正などでレコードロックがかかってると実行できないのですね。
    今一大雑把だなあ。
引用返信 [メール受信/OFF] 削除キー/
■5342 / inTopicNo.9)  Re[4]: 共有更新で開いた表
□投稿者/ 篤姫 -(2009/11/10(Tue) 15:15:29)
    うにんさん
    ありがとうございます。
    一括処理のコマンドで【ロック】というコマンドがありますが
    これはどのような使い方をするのでしょうか?
    あわせてご教示いただけませんか?

引用返信 [メール受信/OFF] 削除キー/
■5343 / inTopicNo.10)  Re[5]: 共有更新で開いた表
□投稿者/ うにん -(2009/11/10(Tue) 15:33:56)
    > 一括処理のコマンドで【ロック】というコマンドがありますが
    > これはどのような使い方をするのでしょうか?

    使ったことないです。(そもそも桐のファイルを共有で使ったことがない^^;)
    置換や併合をするとファイル排他になってしまうので、必要行だけロックして
    ループで行訂正、みたいなことに使うような気がするけど、1表あたり814行しか
    ロックできないので(共有利用者全員で814行みたいですし)使えるのかなあ?

引用返信 [メール受信/OFF] 削除キー/
■5344 / inTopicNo.11)  Re[5]: 共有更新で開いた表
□投稿者/ 尾形 -(2009/11/10(Tue) 16:32:20)
    どうも、こんにちは

    >PC1にある表10をPC2で共有更新で開き
    >PC3で入力したデータを表10に転送
    PC1とPC2は直接、表10に入力しているのに
    PC3だけ転送で処理してるから面倒になってるのかな

    PC3もダイレクトに表10に入力させるか
    PC1とPC2も転送方式に変えたほうがよろしいかも

引用返信 [メール受信/OFF] 削除キー/
■5345 / inTopicNo.12)  Re[6]: 共有更新で開いた表
□投稿者/ うにん -(2009/11/10(Tue) 21:30:25)
http://dev.mysql.com/downloads/mysql/5.1.html
    > PC3もダイレクトに表10に入力させるか

    私もそう思った。

    あと、読み込みじゃなくて全行コピーしてペーストすればファイルロック関係ないと
    思ったのですが、コピーペーストは一括処理にできないのね。。。
    手作業でやれば一瞬で終わるけど。。。

引用返信 [メール受信/OFF] 削除キー/
■5358 / inTopicNo.13)  Re[6]: 共有更新で開いた表
□投稿者/ 篤姫 -(2009/11/14(Sat) 08:10:00)
    うにんさん

    ありがとうございます。
    そうですか
    814行がロックできるんですか
引用返信 [メール受信/OFF] 削除キー/
■5359 / inTopicNo.14)  Re[6]: 共有更新で開いた表
□投稿者/ 篤姫 -(2009/11/14(Sat) 08:14:18)
    尾形さん
    ありがとうございます。
    ここでは端末が2台という表現をしていますが
    実際は、10台程度で使用しているんです。
    PC1にこの10台が同時にアクセスすると
    負荷がかからないでしょうか?


引用返信 [メール受信/OFF] 削除キー/
■5360 / inTopicNo.15)  Re[7]: 共有更新で開いた表
□投稿者/ 篤姫 -(2009/11/14(Sat) 08:15:35)
    うにんさん
    コピペは一括処理ではできないですよねぇ

    すべて一括処理で処理したいんです。
引用返信 [メール受信/OFF] 削除キー/
■5361 / inTopicNo.16)  Re[6]: 共有更新で開いた表
□投稿者/ オヨヨ -(2009/11/14(Sat) 10:43:30)
    >PC3もダイレクトに表10に入力させるか
    >PC1とPC2も転送方式に変えたほうがよろしいかも
    1票!

    PC1の表を10台位で共有しているようですが、それってPC1が起動してナイト
    いけないんですよね..
    今ならLANDiskとか大容量で安く購入できると思いますが、如何?

    /*以下桐ヘルプ引用(キーワード"共有"-表のオープンモード-注意と制限)*/
    表を共有で使用している場合、桐はコマンドに応じて、レコードロックまたはファイルロックをかけます。
    レコードロックがかかっているあいだ、他のユーザはファイルロックをかけるコマンドを使用できません。
    ファイルロックがかかっているあいだ、他のユーザは表を更新できなくなります。
    レコードロックまたはファイルロックと競合した場合、「KD1450:他のユーザが処理中です」というメッセージが表示されます。
    表を共有で開いているときであっても、誰もその表を更新していないときにファイル操作を行なった場合は、参照表にもファイルロックをかけ、他のユーザはその処理が終了するまで、更新を行なうことができなくなります。

    ロック種別   コマンド    更新表ロック 参照表ロック
    レコードロック 行追加      ○      −
            行訂正      ○      −
            行削除      ○      −
            レコードロック  ○      −
    ファイルロック 行削除 *     ○      −
            置換       ○      −
            読み込み     ○      △
            書き出し     ○      △
            併合       ○      △

    ※△は参照表を誰も更新していないときにファイルロックがかかるもの。

引用返信 [メール受信/OFF] 削除キー/
■5364 / inTopicNo.17)  Re[7]: 共有更新で開いた表
□投稿者/ 尾形 -(2009/11/16(Mon) 07:10:39)
    > 負荷がかからないでしょうか?
    別に負荷がかかっても運用に支障なければ
    いいのではないでしょうか
    (自分ならLanDiskを購入しますけど)

    先にも書いたように、pc1もダイレクトに
    表に書き込むのではなく、他のpcと同じように
    転送方式に統一した方がよろしいかと


    >10台程度で使用
    外部db(MySQL)も検討してみては・・・
    結構簡単ですよ
    (TBLの機能は使えなくなりますけど)


    #外部dbを使う人が増えて、桐がブラッシュアップ
    #してくれればうれしいなぁと (^^;

引用返信 [メール受信/OFF] 削除キー/
■5367 / inTopicNo.18)  Re[8]: 共有更新で開いた表
□投稿者/ うにん -(2009/11/16(Mon) 13:18:53)
    無理やりvbsでコピペしてみた。ウィンドウ1からウィンドウ2へ。

    印字開始 "c:\temp\kiricopy.vbs"
    印字 "Set S=CreateObject(""WScript.Shell""):S.AppActivate(""桐 - ""):WScript.Sleep(500):S.SendKeys(""%W1""):WScript.Sleep(500):S.SendKeys(""%EL""):WScript.Sleep(500):S.SendKeys(""%EC""):WScript.Sleep(500):S.SendKeys(""%W2""):WScript.Sleep(500):S.SendKeys(""%EP"")"
    *コピーする行数が多い場合、多分もっと待ち時間が必要。
    印字終了
    編集表 2
    ジャンプ 行番号=終端
    *最後にペーストするためジャンプしてるが、ペースト先は表番号指定ではない。
    シェル実行 "c:\temp\kiricopy.vbs"

    この後一括処理が速やかに終わらないと、SendKeysを受け付けない。

    *なぜかCTRL+AとかCTRLのショートカットはだめで、ALT+Eの編集メニューから実行している。
引用返信 [メール受信/OFF] 削除キー/
■5368 / inTopicNo.19)  Re[8]: 共有更新で開いた表
□投稿者/ うにん -(2009/11/16(Mon) 13:22:55)
    > (自分ならLanDiskを購入しますけど)

    うちでだいぶ前に買った160GBのは、GB単位のバックアップするのに
    ファイルコピーが遅くて参ったけど、最近のは速くなったかな〜?
    桐ファイルならせいぜい512MBだしいいかな。

    > 先にも書いたように、pc1もダイレクトに
    > 表に書き込むのではなく、他のpcと同じように
    > 転送方式に統一した方がよろしいかと

    pc1だけ優遇?する必要ないでしょうからね。
    逆に全員ダイレクトにしてればレコードロックしかかからないので問題なさそう。

引用返信 [メール受信/OFF] 削除キー/
■5372 / inTopicNo.20)  Re[3]: 共有更新で開いた表
□投稿者/ homepiyo -(2009/11/16(Mon) 15:33:12)
    No5339に返信(篤姫さんの記事)
    篤姫さん。こんにちは。
    行追加で試作してみました。複数のパソコンで試していないので動作するかわかりません。

tensou20091116a.lzh
/14KB
引用返信 [メール受信/OFF] 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Mode/  Pass/

HOME HELP 新規作成 新着記事 トピック表示 ファイル一覧 検索 過去ログ

- Child Tree -
- Antispam Version -