0

次のようなフィールドを持つ AutoNumber というテーブルがあります

    Public Class AutoNumber{
    int Id,
    Bool Autogenerate 
    Book IsLocked,
    Int IncrementValue,
    String Prefix,
    String Postfix,
    int IdentityValue
    string ModuleName
    }

モジュールの設定をこのテーブルに保存します。このテーブルには、モジュールの次のオートナンバーを保存します。したがって、顧客を作成するたびに、クエリを起動してオートナンバーの値を取得します。

これで、顧客が保存された後に ID 値を確認して NextAutoNumber を設定できる、Single Create および Single save で問題なく動作します。

ユーザーが10のようなカウントを指定して一度に複数の顧客を作成できる機能があるため、顧客の一時的なautoNosを作成して、重複しないようにします。

しかし、 autogenerate が true で islocked が false である設定があり、どのような種類のコードが壊れます。

この設定が有効になっていると、次のオートナンバーを設定できません。ユーザーは自分の希望に応じて autoNos を変更しましたが、そのユーザーが新しい値を入力したのか、システムが生成したのかを判断できず、次の autoNumber を設定できませんでした

4

1 に答える 1

0

答えではありません。しかし、静的カウンターを使用することをお勧めします。このカウンターはすべてのユーザーによって更新され続け、その後、何らかのイベントで、そのカウンターを既存のデータベース数に追加した後にカウントを再開することがあります。これにより、データベースへの呼び出しを最小限に抑えることができます。

于 2014-11-07T13:17:30.563 に答える