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

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

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

■12938 / inTopicNo.1)  イベント処理で遅延
  
□投稿者/ 田代正巳 -(2021/04/26(Mon) 15:35:27)
    先日はありがとうございました。

    先日お聞きした桐10から桐9を起動して作業させました。
    その結果をcsvで出力し
    桐10に渡したいのです。

    桐10で桐9から出力したcsvを読み込みするのですが
    そのcsvが作られるまで、遅延で対応しようかとおもったのですが
    イベントは遅延が使用できないですね。

    何かいい方法はないでしょうか?

    よろしくお願いいたします。
引用返信 [メール受信/OFF] 削除キー/
■12940 / inTopicNo.2)  Re[1]: イベント処理で遅延
□投稿者/ 今村 誠 -(2021/04/26(Mon) 19:55:16)
    2021/04/27(Tue) 08:49:03 編集(投稿者)

    桐10から桐9を起動
    その結果をcsvで出力
    桐9から桐10を起動
    桐10でcsvを読み込み

    プログラムの見通しをよくするなら
    手続き実行を覚えた方が良いです。
    桐10でcall
    手続き実行 桐9起動csv作成()
    終了 桐
    proc 桐9起動csv作成()
    ここに先日のサンプルを記載
    end

    桐9でも同様のcall
    call csv作成()
    手続き実行 桐10起動vbs作成()
    終了 桐
    手続き定義開始 csv作成()
     あなたの作ったcsv書出し処理
    手続き定義終了
    proc 桐10起動vbs作成()
     先日のサンプルの桐10起動印字
    end
引用返信 [メール受信/OFF] 削除キー/
■12941 / inTopicNo.3)  Re[1]: イベント処理で遅延
□投稿者/ ONnoji -(2021/04/26(Mon) 20:25:29)
    2021/04/27(Tue) 10:55:39 編集(投稿者)


     [遅延]コマンドは、DOS桐とWin桐の一括処理で使えるコマンドですが、

     DOS桐との互換を維持する一括処専用の[レガシーなコマンド]なのでWin桐のイベント処理では利用できませんね。

     以下、具体的なプログラミング例ではなく、考え方だけですが・・・

     シェル実行 &exe1

     ↑で、ターゲットの CSVファイルがディスクに生成されるわけですね。

     ■全体の流れ

     1.ターゲットの CSVファイルをディスクから削除する

     2.シェル実行 &exe1 ※ターゲットの CSVファイルがディスクに生成される

     3.タイマー1またはタイマー2イベントをオンにして、任意のn回になるまでカウントアップする

     4.n回の値が、ある値を超えたらタイムアウトする ※つまり、タイマーイベントをOFFにする


     ■タイマー1またはタイマー2イベントの流れ

     タイマー1またはタイマー2イベントでは、以下のコマンドを実行する

     読み込み  CSV,ターゲットのCSVファイル, 終了状態 = &status, ・・・

     戻り値 説明
     1 終了した。
     0 共有違反以外のエラーが発生した。
     -2 他の利用者が、置換や併合などの処理を実行中(ファイル排他)。

    ┌if &status の値が1:終了した ならば、

    │ 1.タイマーイベントをOFFにセットする ※タイマーイベントがこれ以上繰り返し発生さないようにする
    │ 2.必要ならば、任意の一般手続きを呼び出す

    ├else


    │ リトライ数をカウントアップする ※n = n + 1 的な

    │┌if リトライ数が既定回数を超えたならば
    ││
    ││ 3.タイマーイベントをOFFにセットする ※タイマーイベントがこれ以上繰り返し発生さないようにする
    ││ 4.タイムアウトを通告する
    │└end

    └end

     以上は、私が[イベント属性の動的セット]と呼んでいる手法です。

     まとまった資料があるので、よろしければ以下の拙作webサイトを参考にしてみてください。

     フォームアプリケーション教書 第1部|桐の釣魚大全
     http://silicon7565.html.xdomain.jp/guide/guide_Part1.htm#section9

      9   イベントとは
      9.1 イベントループ
      9.2 [イベント]属性のオン/オフ コマンドボタンの[機能名:実行条件]

     10   [イベント]属性の静的/動的セット

     11   [タイマー]イベントの動的セット
     11.1 [タイマー]イベントとは
     11.2 [イベント]属性と[インターバル値]属性の動的セット

     フォームアプリケーション教書 第2部|桐の釣魚大全
     http://silicon7565.html.xdomain.jp/guide/guide_Part2.htm#section35

     33   スピンボタン

     34   リピート(マウスボタンを押している間実行し続ける)ボタン

     35   プログレスバー
     35.1 内部プログレスバーと外部プログレスバー
     35.2 プログレスバー実行中に作業を中断する
     35.3 プログレスバーの事例


引用返信 [メール受信/OFF] 削除キー/
■12943 / inTopicNo.4)  Re[1]: イベント処理で遅延
□投稿者/ 尾形 -(2021/04/27(Tue) 03:31:40)
    どうも、こんにちは

    > 何かいい方法はないでしょうか?

    [csv作成]ボタン (桐9の処理を起動するボタン)
    [csv読込]ボタン (作成が終わって読込処理ボタン)

    にわけて、手動処理にするとか


引用返信 [メール受信/OFF] 削除キー/
■12944 / inTopicNo.5)  Re[2]: イベント処理で遅延
□投稿者/ ONnoji -(2021/04/27(Tue) 10:06:50)

    老婆心ながら申し上げます。

    桐9s/桐10sの[シェル実行]コマンドには、

     同期 = しない|する

    パラメータがあるのですが、同期 = する ならば理屈上ではタイミングが合うと思います。
                           ・・・・・・・・・・・・・・・・・・  
    実は、当方は少し前に某図書館のオンライン蔵書目録の検索で 同期 = しない|する を試してみましたが、

    同期 = する の場合には、当方の予期せぬエラーが発生して、このパラメータの使用を諦めたところです。

    また、同期 = する は非常に魅力的ですが、「いつまで経っても同期が取れない場合にはどうなるのか??」
                         ・・・・・・・・・・・・・・・・・・・・・・・・・
    と、考えると気持ちが良いものではありませんよね。

    ということで、当方はデフォルトの 同期 = しない を前提とした手順を使用しています。

    これは[タイマーを使って、成功または不成功(タイムアウト)するまでウェイト(待機)する]という処理手順です。

    この方法は、非常に面倒ですが、一度作ってしまえば、後はいくらでもバリエーションが作れますので便利ですよ。



引用返信 [メール受信/OFF] 削除キー/
■12945 / inTopicNo.6)  Re[2]: イベント処理で遅延
□投稿者/ 田代正巳 -(2021/04/27(Tue) 11:21:27)
    今村 誠さん
    ありがとうございます。

    手続き実行
    ちょっと勉強します。。

    勉強に時間がかかるかとおもいます。


    ありがとうございました。
引用返信 [メール受信/OFF] 削除キー/
■12946 / inTopicNo.7)  Re[2]: イベント処理で遅延
□投稿者/ 田代正巳 -(2021/04/27(Tue) 11:24:11)
    ONnojiさん

    ありがとうございます。

    タイマーですか

    タイマー、初めてなんで
    勉強します。

    ありがとうございました。
引用返信 [メール受信/OFF] 削除キー/
■12947 / inTopicNo.8)  Re[2]: イベント処理で遅延
□投稿者/ 田代正巳 -(2021/04/27(Tue) 11:26:46)
    尾形さん

    ありがとうございます。

    手動という手がありましたね
    勉強する間

    手動対応することにします。

    ありがとうございました。
解決済み!
引用返信 [メール受信/OFF] 削除キー/



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

このトピックに書きこむ

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

Mode/  Pass/

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

- Child Tree -
- Antispam Version -