バッチタスクが動作しない
- このフォーラムに新しいトピックを立てることはできません
- このフォーラムではゲスト投稿が禁止されています
kgra
投稿数: 25
![半人前 半人前](../../uploads/rank3dbf8e94a6f72.gif)
いつもこちらで勉強させていただいております、magic初心者です。
オンラインタスクから別のバッチタスクをコールして
オンラインタスク上でworkに入力されたデータをworkから実テーブルにデータを入力するプログラムを作成したいと思っていますが、
コールしたバッチタスクが動作せずに困っています。
ブレイクポイントをつけデバッグモードで動作を確認したところ、別タスクへの移動はされているのですが、呼び出したタスクの子タスク(ヘッダーと明細書き込み用のバッチファイル)は動作していない状態でした。
まったく原因がわからない状態です。
どのように作成すればいいかアドバイスいただけませんでしょうか?
よろしくお願いいたします。
----------------------------------------
■オンラインプログラム
・ヘッダー(親タスク)
・明細行入力(子タスク)
・F10キークリックのイベントで、別タスクをコール(下記のタスク)
→F10キーのイベントは動作しており、下記のタスクも動作しています
■別タスク(バッチ)
・親タスクに、同世代の子タスクを二つ設定
・親タスクのレコード後にコールでサブタスクを呼ぶように設定
・子タスク1はヘッダー入力用
・子タスク2は明細入力用
・ヘッダー、明細入力ともにそれぞれのworkから実テーブルへの入力のためのもので、レコード後に項目更新を設定しています
・親タスクの終了条件は、YES:後置
・子タスクの終了条件は、NO:前置(どちらの子タスクも同じ)
■それぞれのタスク構成
・オンライン
親 (ヘッダー入力用)
┗―子(サブフォーム。明細入力用)
・バッチ(すべてバッチタスク)
親 (子タスクコール用)
┗―子(ヘッダー用)
┗―子(明細用)
当方の環境は、uniPaaS Studio V1Plus、windows8です
----------------------------------------
オンラインタスクから別のバッチタスクをコールして
オンラインタスク上でworkに入力されたデータをworkから実テーブルにデータを入力するプログラムを作成したいと思っていますが、
コールしたバッチタスクが動作せずに困っています。
ブレイクポイントをつけデバッグモードで動作を確認したところ、別タスクへの移動はされているのですが、呼び出したタスクの子タスク(ヘッダーと明細書き込み用のバッチファイル)は動作していない状態でした。
まったく原因がわからない状態です。
どのように作成すればいいかアドバイスいただけませんでしょうか?
よろしくお願いいたします。
----------------------------------------
■オンラインプログラム
・ヘッダー(親タスク)
・明細行入力(子タスク)
・F10キークリックのイベントで、別タスクをコール(下記のタスク)
→F10キーのイベントは動作しており、下記のタスクも動作しています
■別タスク(バッチ)
・親タスクに、同世代の子タスクを二つ設定
・親タスクのレコード後にコールでサブタスクを呼ぶように設定
・子タスク1はヘッダー入力用
・子タスク2は明細入力用
・ヘッダー、明細入力ともにそれぞれのworkから実テーブルへの入力のためのもので、レコード後に項目更新を設定しています
・親タスクの終了条件は、YES:後置
・子タスクの終了条件は、NO:前置(どちらの子タスクも同じ)
■それぞれのタスク構成
・オンライン
親 (ヘッダー入力用)
┗―子(サブフォーム。明細入力用)
・バッチ(すべてバッチタスク)
親 (子タスクコール用)
┗―子(ヘッダー用)
┗―子(明細用)
当方の環境は、uniPaaS Studio V1Plus、windows8です
----------------------------------------
投票数:0
平均点:0.00
pu_mahalo
居住地: 大阪
投稿数: 775
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
こんにちは Puです。
間違ってたらゴメンなさい
オンラインタスクかたF10イベント押されたばけでは
親タスクのレコードが未だ書き込みされていないので
呼ばれたバッチタスクの親レコードが1件もHITしていない為
終了しているのでは
でわ〜でわ〜
間違ってたらゴメンなさい
オンラインタスクかたF10イベント押されたばけでは
親タスクのレコードが未だ書き込みされていないので
呼ばれたバッチタスクの親レコードが1件もHITしていない為
終了しているのでは
でわ〜でわ〜
投票数:0
平均点:0.00
HAYATO
居住地: 大阪市淀川区西中島5-9-2
投稿数: 90
![一人前 一人前](../../uploads/rank3dbf8ea81e642.gif)
こんにちは
Puさんも書かれているように、子タスク(バッチ)の書き込みもとになるワークファイルがF10イベント発生時にまだ物理的に書き込まれていないので、書きこまれていないだけでは?
イベントの強制終了条件を見直して、
ワークファイルへの書き込み(レコード後処理通過)が終わってから子タスクがコールされるようにすればよいと思いますよ。
HAYATO@アインシュタイン設計社
Puさんも書かれているように、子タスク(バッチ)の書き込みもとになるワークファイルがF10イベント発生時にまだ物理的に書き込まれていないので、書きこまれていないだけでは?
イベントの強制終了条件を見直して、
ワークファイルへの書き込み(レコード後処理通過)が終わってから子タスクがコールされるようにすればよいと思いますよ。
HAYATO@アインシュタイン設計社
投票数:0
平均点:0.00
kgra
投稿数: 25
![半人前 半人前](../../uploads/rank3dbf8e94a6f72.gif)
pu_mahalo様、HAYATO様、コメントありがとうございます!
ご指摘の通りF10コール時にワークにデータが書き込まれていないことが確認できました。
データがないためバッチが動いていなかったのですね。。
その上で次は、ではどうすれば「F10イベント時にレコード後ロジックを通ることが出来るのか」ということで悩んだのですが、HAYATO様のコメントにございました「イベントの強制終了条件」をヒントにユーザーイベントの一番右の強制終了を「レコード更新後」に設定致しましたところ、希望する動作になりました!
大変勉強になりました。
本当にありがとうございます!
ご指摘の通りF10コール時にワークにデータが書き込まれていないことが確認できました。
データがないためバッチが動いていなかったのですね。。
その上で次は、ではどうすれば「F10イベント時にレコード後ロジックを通ることが出来るのか」ということで悩んだのですが、HAYATO様のコメントにございました「イベントの強制終了条件」をヒントにユーザーイベントの一番右の強制終了を「レコード更新後」に設定致しましたところ、希望する動作になりました!
大変勉強になりました。
本当にありがとうございます!
投票数:0
平均点:0.00