Share via


El valor de campo es incorrecto en TaxTrans

Si un valor de campo de TaxTrans es incorrecto, use la información de este artículo para intentar resolver el problema.

Introducción a los valores

En la lista siguiente se muestra cómo TaxTrans, TaxUncommitted y TmpTaxWorkTrans son conjuntos de datos similares, pero en funcionamiento de forma diferente.

  • TaxTrans es el resultado final de la transacción fiscal contabilizada que se conserva en la base de datos.
  • TaxUncommitted es el resultado fiscal calculado intermedio que se conserva en la base de datos (si procede), que se usará más adelante en la contabilización.
  • TmpTaxWorkTrans es el resultado de impuestos calculados temporalmente en la tabla en memoria (Tipo de tabla = InMemory).

Si encuentra la causa principal de una columna TaxTrans incorrecta, también ha encontrado la causa principal de una columna TaxUncommitted o TmpTaxWorkTrans incorrecta, ya que las tres columnas se copian entre sí.

Normalmente, durante el cálculo de impuestos, se genera TmpTaxWorkTrans y, si procede, se genera TaxUncommitted . Durante la contabilización de impuestos, se genera TaxTrans .

Agregar puntos de interrupción

Para agregar puntos de interrupción, siga estos pasos:

  1. Agregue extensiones y puntos de interrupción en insert() y update() en las extensiones como se muestra a continuación.

    • 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. Como alternativa, puede agregar puntos de interrupción directamente cuando TaxUncommitted no esté incluido.

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

Reproducción y depuración

Una vez establecidos los puntos de interrupción, cada cambio de persistencia de datos es visible durante la depuración. Para encontrar la causa principal de una columna incorrecta de TaxTrans, TaxUncommitted o TmpTaxWorkTrans, revise y anote los siguientes elementos:

  • Último punto de interrupción donde la columna es correcta.
  • Primer punto de interrupción donde la columna es incorrecta.
  • Lo que sucede entre esos dos puntos.

Determinar si existe la personalización

Si ha completado los pasos de las secciones anteriores pero no ha podido resolver el problema, determine si existe la personalización. Si no existe ninguna personalización, póngase en contacto con Soporte técnico de Microsoft para obtener ayuda.