2

EDI に変換して本社に転送する大量の請求書を作成する必要があります。入ってくるすべての注文を含む注文テーブルがあります。1 日のある時点で、セット (約 1k) を取得して請求書を生成する必要があります。

  1. 請求書番号を生成するのに最適な場所はどこですか? SQL Server バックエンドで? または、バッチを .NET アプリケーションに取り込み、そこで請求書番号を生成しますか? 請求書番号はランダムにすることができますが、繰り返すことはできません (3 ~ 4 年間)。私は最大 12 桁で遊ぶことができ、英数字にすることができます。請求書番号の生成に関する情報はどこにありますか。

注: 請求書を生成している間に、注文の合計と税金を計算する必要があります。

ご意見をお待ちしております。

4

4 に答える 4

4

請求書番号は、法的な要求によって規制される場合があります (私が住んでいる場所では、順番に並べる必要があり、順番にギャップがあるとは思いません)。

多くの場合、数字には時間の範囲を示す要素が含まれています (年: 2009 03472 など)。こうすることで、同じ番号を 2 回使用するリスクを最小限に抑えることができます。

1 日に最大 1,000 件の請求があるとします。つまり、6 桁の請求書番号がお客様のニーズをカバーします。したがって、4 桁の年にゼロが埋め込まれた 6 桁の請求書番号が続くと、おそらくうまくいくはずです。

それらが一意であることを確認するために、おそらくデータベースにそれらを生成させるでしょう。

于 2009-06-23T21:05:11.727 に答える
1

最後に使用した請求書番号の値を格納するテーブルをデータベースに追加し、この値をインクリメントして新しい値を返すストアド プロシージャを追加して、請求書の作成に使用します。

新しい請求書を保存するときは、次の請求書番号を取得するために SP を呼び出します。これは、検証に合格した後、ディスクに書き込む直前に行う最後の作業の 1 つです。あなたの番号付けシーケンス。

于 2009-06-23T21:22:02.127 に答える
0

請求書IDの生成に関するルールを制限する法律がない場合、それはあなたが望むものになると思います.

今、私は次のような良い例を持っています:

実際、私は請求書システムをプログラミングしていて、ID コードを順番に生成していましたが、たとえば顧客が会社との契約をキャンセルしたときに、以前に 12 の請求書をすでに生成していたため、いくつかのギャップがありました。

(ここでは私たちはISP会社であり、契約は6、12、または24か月でなければならないため)

システムのユーザーがキャンセルされた請求書を削除したため、データベースにギャップが生じました。本当に連続番号が必要な場合は、法律に問題があります。また、ここでは他にも多くの状況があり、連続した請求書番号にギャップが生じました。

この種の問題が発生する状況が多数あるため、この種の問題を回避する方法が本当にわかりません。何か案が?

于 2010-11-09T18:08:54.387 に答える