Неверное значение поля в TaxTrans

Если значение поля в TaxTrans неверно, используйте сведения, приведенные в этой статье, чтобы попытаться устранить проблему.

Общие сведения о значениях

В следующем списке показано, как TaxTrans, TaxUncommitted и TmpTaxWorkTrans похожи наборы данных, но работают по-разному.

  • TaxTrans — это окончательный результат размещенной налоговой транзакции, сохраненный в базе данных.
  • TaxUncommitted — промежуточный результат расчетного налога, сохраненный в базе данных (если применимо), который будет использоваться позже при публикации.
  • TmpTaxWorkTrans — это временный результат расчета налога в таблице в памяти (тип таблицы = InMemory).

Если вы нашли первопричину неправильного столбца TaxTrans , вы также обнаружили первопричину неправильного столбца TaxUncommitted или TmpTaxWorkTrans , так как три столбца копируются друг от друга.

Как правило, во время расчета налога создается TmpTaxWorkTrans , а затем, если применимо, создается TaxUncommitted . Во время отправки налогов создается TaxTrans .

Добавление точек останова

Чтобы добавить точки останова, выполните следующие действия.

  1. Добавьте расширения и точки останова в insert() расширения и update() в расширения, как показано ниже.

    • TaxTrans

      [ExtensionOf(tableStr(TaxTrans))]
      public final class TaxTrans_Extension
      {
          public void insert()
          {
              next insert();
          }
      
          public void update()
          {
              next update();
          }
      
      }
      
    • TaxUncommitted

      [ExtensionOf(tableStr(TaxUncommitted))]
      public final class TaxUncommitted_Extension
      {
          public void insert()
          {
              next insert();
          }
      
          public void update()
          {
              next update();
          }
      
      }
      
    • TmpTaxWorkTrans

      [ExtensionOf(tableStr(TmpTaxWorkTrans))]
      public final class TmpTaxWorkTrans_Extension
      {
          public void insert(boolean _ignoreCalculatedSalesTax)
          {
              next insert(_ignoreCalculatedSalesTax);
          }
      
          public void update(boolean _ignoreCalculatedSalesTax)
          {
              next update(_ignoreCalculatedSalesTax);
          }
      
      }
      
  2. Кроме того, точки останова можно добавлять непосредственно, если taxUncommitted не включен.

    • TaxTrans.insert(), TaxTrans.update()
    • TmpTaxWorkTrans.insert(), TmpTaxWorkTrans.update()

Воспроизведение и отладка

После установки точек останова во время отладки будет видно каждое изменение сохранения данных. Чтобы найти первопричину неправильного столбца TaxTrans, TaxUncommitted или TmpTaxWorkTrans, просмотрите и обратите внимание на следующие элементы:

  • Последняя точка останова, в которой указан правильный столбец.
  • Первая точка останова, в которой столбец указан неправильно.
  • Что происходит между этими двумя точками.

Определение наличия настройки

Если вы выполнили действия, описанные в предыдущих разделах, но не смогли устранить проблему, определите, существует ли настройка. Если настройка не существует, обратитесь за помощью к служба поддержки Майкрософт.