2011-07-30 11 views
0

SQLトリガーがネストされた方法で呼び出されるソリューションで作業しています。後で最初にテーブルを紹介します。ネストされたトリガーの問題

  1. BillDetails
  2. SubProductAtLocation

はい、これは小売店のために設計されたERPで、ビルは表が行法案項目

billDetails

  1. から成り詳細RowID
  2. BillID
  3. SubProductID
  4. MRP
  5. 税金
  6. ディスカウント

  1. subproductLocationは
  2. をROWID
  3. SubproductID
  4. LocationID
  5. 数量
  6. 商品コード

**now**その機能SubProductAtLocationの量を差し引くことであるBillDetails挿入後に実行トリガーは、ある一層トリガーインサート後あり、更新監査ログを書き込むsubproductAtLocationにあります。そのため、billdetailsによって行わアップデートに呼ばれるが、通常、私は一時的にトリガを無効にしたりすることができますすることができ、トリガーsp_configure 'nested triggers' nが、SQL Serverが共有されているとして、これを行うことができず、これを行う場合、私はsubproductAtLocationを実行するトリガーたくない

**Problem**さも実現可能でもありません許可されます。

**Possible Solution** 

私はチェックがsubproductatLocationトリガであるとフラグが設定されている場合、トランザクションをロールバックすることができますいくつかの場所のフラグ値を格納することができます。このフラグは、BillDetails Triggerの最後の行でクリアすることができます。 2番目のテーブルに「フラグ」を置けば

親切に、トリガー挿入時のみの特別な 'の値にそれを設定し、その後、第2のトリガがちょうどだろうそして、私の貧しい知識 おかげ

答えて

0

ご容赦その値が設定されていれば、ログを書き込まないようにチェックすると...

+0

は、おそらくビットフィールドです。 –

関連する問題