バッチの処理回数
mizkoba
投稿数: 48
みなさん、こんにちは。
バッチの処理回数なのですが、通常はメインソースのレコード分の
数だけ処理が繰り返されると思います。
(終了条件や、チェック時期によっては違いますが、デフォルトでは)
しかし、レコード分以上の処理回数が起こってしまい、
結果が変になってしまうのですが、何故なのでしょう?
1.番号(文字型 4桁)
2.到着日(日付型<##/##/##>)
3.出発日(日付型<##/##/##>)
4.増加日数(数値型 2桁)
でDB(DB名:TEMP-DBで番号は2とします)を定義します。
ここにAPGで2レコードのみ登録しました。
番号には3桁数字の1桁アルファベット(951Nやら903S)
2と3には単純に日付(ほぼ同日)を
4に7を登録しました。
このDBをメインソースにしてバッチ処理でDBを書き換えて
いくのですが、処理が上手くいきません。
処理内容は一回のバッチサイクルで番号に1を足し、
(901N⇒902N : 933S⇒934S)
到着日・出発日にDの増加日数を足すというだけです。
メインソース(TEMP-DB)
A.番号(文字型 4桁)
B.到着日(日付型<##/##/##>)
C.出発日(日付型<##/##/##>)
D.増加日数(数値型 2桁)
ロジックビュー
レコード後
項目更新 A.番号
<式> MID(A,1,1)&Str(Val(MID(A,2,2),'2')+1,'2')&MID(A,4,1)
*番号の1桁目は年数の下一桁なので固定
2,3桁目が変更部分
4桁目はアルファベットなので固定
項目更新 B.到着日
<式> B+D
項目更新 C.出発日
<式> C+D
これも単純に計算されずに、変な日付の結果になってしまいます。
アクティビテモニタを見ると
10回くらい処理を繰り返してます(COUNTER=10と同じ) 。
終了条件をCOUNTER(0)=DBRECS('2'DSOURCE,'')
チェック時期 A:後
にすると、バッチの処理は1サイクルしかしません。
これって何ででしょう???
バッチの処理回数なのですが、通常はメインソースのレコード分の
数だけ処理が繰り返されると思います。
(終了条件や、チェック時期によっては違いますが、デフォルトでは)
しかし、レコード分以上の処理回数が起こってしまい、
結果が変になってしまうのですが、何故なのでしょう?
1.番号(文字型 4桁)
2.到着日(日付型<##/##/##>)
3.出発日(日付型<##/##/##>)
4.増加日数(数値型 2桁)
でDB(DB名:TEMP-DBで番号は2とします)を定義します。
ここにAPGで2レコードのみ登録しました。
番号には3桁数字の1桁アルファベット(951Nやら903S)
2と3には単純に日付(ほぼ同日)を
4に7を登録しました。
このDBをメインソースにしてバッチ処理でDBを書き換えて
いくのですが、処理が上手くいきません。
処理内容は一回のバッチサイクルで番号に1を足し、
(901N⇒902N : 933S⇒934S)
到着日・出発日にDの増加日数を足すというだけです。
メインソース(TEMP-DB)
A.番号(文字型 4桁)
B.到着日(日付型<##/##/##>)
C.出発日(日付型<##/##/##>)
D.増加日数(数値型 2桁)
ロジックビュー
レコード後
項目更新 A.番号
<式> MID(A,1,1)&Str(Val(MID(A,2,2),'2')+1,'2')&MID(A,4,1)
*番号の1桁目は年数の下一桁なので固定
2,3桁目が変更部分
4桁目はアルファベットなので固定
項目更新 B.到着日
<式> B+D
項目更新 C.出発日
<式> C+D
これも単純に計算されずに、変な日付の結果になってしまいます。
アクティビテモニタを見ると
10回くらい処理を繰り返してます(COUNTER=10と同じ) 。
終了条件をCOUNTER(0)=DBRECS('2'DSOURCE,'')
チェック時期 A:後
にすると、バッチの処理は1サイクルしかしません。
これって何ででしょう???
投票数:0
平均点:0.00
投稿ツリー
-
バッチの処理回数
(mizkoba, 2009-2-26 16:17)
- Re: バッチの処理回数 (ISHIJIMA, 2009-2-26 16:34)