遅延トランザクション、鑑と明細
モバイルでRIAで例えば
売上伝票鑑データ
売上伝票明細データがあり
ワークファイルを使わずに、それら実データに
直接入力しようと思います。
この場合、伝票番号などユニークな値を設定するとした場合、
伝票欠番も覚悟して伝票全体トランザクションに先立ち採番すべきか
あるいは
伝票新規入力時の最後に採番して、鑑と明細の伝票番号を総塗り替えすべきか
どのようにされてるか教えて頂けませんでしょうか。
-
nkmtさん
私はモバイルでRIA使ったことありませんので参考になるかわかりませんが直感的に
金融や医療系、公共系でなければ伝票欠番は許容することが多いと思いますので
開始時に採番する方がシンプルな気がします。採番はDB側で行う予定ですか?
-
daiさん
ありがとうございます。
金融、医療、公共などは伝票番号欠番は良しとしないのですね。
1度も関わった事が無いものですから。
社会福祉系のシステムでは、欠番が発生したら瓶合振りなおす処理を用意しているのは見たことがあります。採番ですがデータベース側のオートナンバー?も使ったことはありません。
自分で伝票種別ごとに採番レコードを持つことが多いです。
今日は鏡明細入力を遅延トランザクション内の最初で、自分で裁判する方式で、2台の端末で並行して採番したら番号が重複するのか実験してみます。
-
お客様の目に触れない内部の伝票IDと、表面上に見せる伝票番号と分ける作りもほぼやってません。
伝票明細は不変となる内部IDと
行挿入や行削除で変化する行便号と
両方持つ作りをよく行ってます。 -
検証してみました。
遅延トランザクション内で
採番バッチを呼ぶ(その中で採番へプラス1)
鑑部分を入力。終了させたら、
(伝票番号採番データの)処理に失敗しました。
他でレコードが変更された旨のメッセージが表示されました。
※検証している現状に対してはGoodです。
(欠番発生覚悟で)
親タスクトランザクション無し
物理トランザクションで採番バッチ
新規の遅延トランザクションで鑑入力
有効な遅延トランザクションで明細入力 にするかもしれません。
この伝票番号は重複不可内部IDとし、
表面上に見せる伝票番号を新規保存時に決定するのもいいのかもしれない
と思いました。
サインインしてコメントを残してください。
コメント
4件のコメント