DB更新について
- このフォーラムに新しいトピックを立てることはできません
- このフォーラムではゲスト投稿が禁止されています
znet_kt
投稿数: 7
![新米 新米](../../uploads/rank3e632f95e81ca.gif)
お世話になっております。
DB更新に関して、考えた通りにいかないのでご質問させて頂きます。
PGはリッチクライアントで作成し、DBはSQLServer2008を使用しています。
サブタスクで一覧を作成するのですが、1レコード毎に処理ボタンを付けています。
その処理ボタンを押すと、同行にあるレコード情報を受け渡しパラメータとして格納します。
格納後、バッチ処理を呼び出し、バッチ処理の受け取りパラメータに受け渡しパラメータの値を渡します。
受け取りパラメータの値を、バッチ処理のデータビュー・メインソースに定義した項目に代入します。
代入した時点でDBに反映されると考えていたのですが、反映されません。
どうすれば受け取ったパラメータの値をDBに反映できるのか、アドバイス等あればお願いいたします。
DB更新に関して、考えた通りにいかないのでご質問させて頂きます。
PGはリッチクライアントで作成し、DBはSQLServer2008を使用しています。
サブタスクで一覧を作成するのですが、1レコード毎に処理ボタンを付けています。
その処理ボタンを押すと、同行にあるレコード情報を受け渡しパラメータとして格納します。
格納後、バッチ処理を呼び出し、バッチ処理の受け取りパラメータに受け渡しパラメータの値を渡します。
受け取りパラメータの値を、バッチ処理のデータビュー・メインソースに定義した項目に代入します。
代入した時点でDBに反映されると考えていたのですが、反映されません。
どうすれば受け取ったパラメータの値をDBに反映できるのか、アドバイス等あればお願いいたします。
投票数:0
平均点:0.00
Jiro123
投稿数: 271
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
ご質問のプログラムは、リッチクライアントのプログラムとバッチプログラムから構成されていることから、リッチクライアントプログラムに問題があるのか、それともバッチプログラムに問題があるのかの切り分けが必要と思われます。
まず、バッチプログラムの単体テストを行うことから始められてはいかがでしょうか。その場合、リッチクライアントプログラムからコールするのではなく、各パラメータ項目の特性のデフォルト値欄にて、初期値を設定し、その値で更新されるか否かを確認されるというのではどうでしょう。
あるいは、オンラインプログラムに慣れていらっしゃれば、オンラインプログラムからバッチプログラムをコールする、オンラインタスクのテストプログラムを用意するのも良いと思います。
問題解決には、どこに問題があるかを切り分けることから始めるのが最良と思います。
どこに問題があるかを知ることは、問題解決のプロセスの重要なステップですよ。
まず、バッチプログラムの単体テストを行うことから始められてはいかがでしょうか。その場合、リッチクライアントプログラムからコールするのではなく、各パラメータ項目の特性のデフォルト値欄にて、初期値を設定し、その値で更新されるか否かを確認されるというのではどうでしょう。
あるいは、オンラインプログラムに慣れていらっしゃれば、オンラインプログラムからバッチプログラムをコールする、オンラインタスクのテストプログラムを用意するのも良いと思います。
問題解決には、どこに問題があるかを切り分けることから始めるのが最良と思います。
どこに問題があるかを知ることは、問題解決のプロセスの重要なステップですよ。
投票数:0
平均点:0.00
znet_kt
投稿数: 7
![新米 新米](../../uploads/rank3e632f95e81ca.gif)
Jiro123様、ご指摘ありがとうございます。
リッチクライアントプログラムに問題があるのか、それともバッチプログラムに問題があるのかを切り分けて、問題がどこにあるのかを調べてみます。
リッチクライアントプログラムに問題があるのか、それともバッチプログラムに問題があるのかを切り分けて、問題がどこにあるのかを調べてみます。
投票数:0
平均点:0.00
pu_mahalo
居住地: 大阪
投稿数: 775
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
こんにちは Puです
UnipaasのRIAは遅延トランしか対応していませんので
そのあたりを確認してみてはどうでしょうか
(私的には 遅延トランの正しい動作だと思いますが)
UnipaasのRIAは遅延トランしか対応していませんので
そのあたりを確認してみてはどうでしょうか
(私的には 遅延トランの正しい動作だと思いますが)
投票数:0
平均点:0.00
nobukoshi802
投稿数: 118
![一人前 一人前](../../uploads/rank3dbf8ea81e642.gif)
親タスクもしくは、子タスクでトランザクションを開始
していませんか?
子タスクのレコードにボタンを設定しても
リッチの場合、子タスクのレコード後処理を実行しないので
コミットされない状態になっているのではないかと思います。
していませんか?
子タスクのレコードにボタンを設定しても
リッチの場合、子タスクのレコード後処理を実行しないので
コミットされない状態になっているのではないかと思います。
投票数:0
平均点:0.00
znet_kt
投稿数: 7
![新米 新米](../../uploads/rank3e632f95e81ca.gif)
初めに、返信が遅れて申し訳ありません。
PGが壊れてしまう等トラブルがあり、検証に時間がかかり返信が出せませんでした。
リッチクライアントプログラムかバッチプログラムに問題があるのかを切り分けてみた結果、バッチプログラムに問題があることが分かりました。
問題があったのは、バッチプログラムのタスク特性のチェック時期が「前置」となっていたためであり、チェック時期を「後置」に変更することにより、問題が解決されました。
皆さんいろいろアドバイスありがとうございました。
PGが壊れてしまう等トラブルがあり、検証に時間がかかり返信が出せませんでした。
リッチクライアントプログラムかバッチプログラムに問題があるのかを切り分けてみた結果、バッチプログラムに問題があることが分かりました。
問題があったのは、バッチプログラムのタスク特性のチェック時期が「前置」となっていたためであり、チェック時期を「後置」に変更することにより、問題が解決されました。
皆さんいろいろアドバイスありがとうございました。
投票数:0
平均点:0.00