Compartilhar via


O valor do campo está incorreto em TaxTrans

Se um valor de campo no TaxTrans estiver incorreto, use as informações neste artigo para tentar resolve o problema.

Visão geral dos valores

A lista a seguir mostra como TaxTrans, TaxUncommitted e TmpTaxWorkTrans são conjuntos de dados semelhantes , mas funcionam de forma diferente.

  • TaxTrans é o resultado final da transação fiscal postada persistente no banco de dados.
  • TaxUncommitido é o resultado de imposto calculado intermediário persistente no banco de dados (se aplicável), que será usado posteriormente na postagem.
  • TmpTaxWorkTrans é o resultado de imposto calculado temporário na tabela na memória (Tipo de Tabela = InMemory).

Se você encontrar a causa raiz de uma coluna taxtrans incorreta, você também encontrou a causa raiz de uma coluna TaxUncommitted incorreta ou TmpTaxWorkTrans à medida que as três colunas são copiadas umas das outras.

Normalmente, durante o cálculo fiscal, o TmpTaxWorkTrans é gerado e, se aplicável, o TaxUncommit é gerado. Durante a postagem de impostos, o TaxTrans é gerado.

Adicionar pontos de interrupção

Para adicionar pontos de interrupção, conclua as seguintes etapas:

  1. Adicione extensões e pontos de interrupção dentro insert() e update() nas extensões, conforme mostrado abaixo.

    • TaxTrans

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

      [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. Como alternativa, você pode adicionar pontos de interrupção diretamente quando TaxUncommitted não estiver incluído.

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

Reproduzir e depurar

Depois que os pontos de interrupção são definidos, cada alteração de persistência de dados fica visível durante a depuração. Para localizar a causa raiz de uma coluna incorreta de TaxTrans, TaxUncommitted ou TmpTaxWorkTrans, examine e observe os seguintes itens:

  • O último ponto de interrupção em que a coluna está correta.
  • O primeiro ponto de interrupção em que a coluna está incorreta.
  • O que acontece entre esses dois pontos.

Determinar se a personalização existe

Se você concluiu as etapas nas seções anteriores, mas não conseguiu resolve o problema, determine se a personalização existe. Se não houver personalização, entre em contato com Suporte da Microsoft para obter assistência.