グループレベルでのリンクレコードの更新
y-yoshi
投稿数: 4
こんにちは。
バッチタスクでのリンクしたレコードの更新で、不可解な現象が起こりました。
例えば、
DB1・・区分1/コード/数値(主キーは区分・コード)
DB2・・区分2/数値計 (主キーは区分)
という二つのテーブルがあり、
DB1の区分毎の数値の計を、DB2に書き込むというプログラムを
一つのタスクで作るとします。
通常、メインソースでDB1を読み、
登録(または書込)リンクでDB2を開き、
区分1でブレイクを取り、数値計に項目更新するという具合に
作りますが、
あえて区分1とコードでブレイクを取り、
コードのグループ後で、数値計に項目更新をするというプログラムを書くと
なぜか正常に計算されません。
V9で同じように作ったのですが、こちらでは問題なく正常な値が落ちます。
データを調べていくと、区分毎のレコード数が奇数の場合は
1,3,5,7・・・レコード目
偶数の場合は
2,4,6,8・・・レコード目
だけが計算されているようです。
ただ、このプログラムにひとつ変数を宣言し、レコード後と
コードのグループ後で常に別の値が落ちるよう
項目更新をかけると、正常に計算されるようになるのです。
読込と書込のタスクを分けるなどすれば
回避は可能かとは思いますが、そもそも一見何の問題もなさそうな
ロジックなのに、なぜこのような結果になるのか、
V10の不具合なのか、あるいは私が無知なだけなのか
論理的な説明がつきません。
同じような現象が起きた方はいらっしゃいますか?
バッチタスクでのリンクしたレコードの更新で、不可解な現象が起こりました。
例えば、
DB1・・区分1/コード/数値(主キーは区分・コード)
DB2・・区分2/数値計 (主キーは区分)
という二つのテーブルがあり、
DB1の区分毎の数値の計を、DB2に書き込むというプログラムを
一つのタスクで作るとします。
通常、メインソースでDB1を読み、
登録(または書込)リンクでDB2を開き、
区分1でブレイクを取り、数値計に項目更新するという具合に
作りますが、
あえて区分1とコードでブレイクを取り、
コードのグループ後で、数値計に項目更新をするというプログラムを書くと
なぜか正常に計算されません。
V9で同じように作ったのですが、こちらでは問題なく正常な値が落ちます。
データを調べていくと、区分毎のレコード数が奇数の場合は
1,3,5,7・・・レコード目
偶数の場合は
2,4,6,8・・・レコード目
だけが計算されているようです。
ただ、このプログラムにひとつ変数を宣言し、レコード後と
コードのグループ後で常に別の値が落ちるよう
項目更新をかけると、正常に計算されるようになるのです。
読込と書込のタスクを分けるなどすれば
回避は可能かとは思いますが、そもそも一見何の問題もなさそうな
ロジックなのに、なぜこのような結果になるのか、
V10の不具合なのか、あるいは私が無知なだけなのか
論理的な説明がつきません。
同じような現象が起きた方はいらっしゃいますか?
投票数:0
平均点:0.00
投稿ツリー
-
グループレベルでのリンクレコードの更新
(y-yoshi, 2009-2-4 17:56)
- Re: グループレベルでのリンクレコードの更新 (ISHIJIMA, 2009-2-16 13:38)