Condividi tramite


Il valore del campo non è corretto in TaxTrans

Se un valore di campo in TaxTrans non è corretto, utilizza le informazioni in questo articolo per provare a risolvere il problema.

Panoramica dei valori

Il seguente elenco mostra come TaxTrans, TaxUncommitted, e TmpTaxWorkTrans sono set di dati simili, ma funzionano in modo diverso.

  • TaxTrans è il risultato finale della transazione fiscale registrata mantenuto nel database.
  • TaxUncommitted è il risultato intermedio dell'imposta calcolata mantenuto nel database (se applicabile), che verrà utilizzato successivamente nella registrazione.
  • TmpTaxWorkTrans è il risultato temporaneo dell'imposta calcolata nella tabella in memoria (Tipo di tabella = InMemory).

Se si trova la causa radice di una colonna TaxTrans non corretta, è stata rilevata anche la causa radice di una colonna TaxUncommitted o TmpTaxWorkTrans non corretta perché le tre colonne vengono copiate tra loro.

In genere, durante il calcolo delle imposte, TmpTaxWorkTrans viene generato e quindi, se applicabile, TaxUncommitted viene generato. Durante la registrazione delle imposte, TaxTrans viene generato.

Aggiungere punti di interruzione

Per aggiungere punti di interruzione, completa i passaggi seguenti.

  1. Aggiungere estensioni e punti di interruzione in insert() e update() nelle estensioni, come illustrato di seguito.

    • 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. In alternativa, è possibile aggiungere punti di interruzione direttamente quando TaxUncommitted non è incluso.

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

Riprodurre ed eseguire il debug

Dopo aver impostato i punti di interruzione, ogni modifica alla persistenza dei dati è visibile durante il debug. Per trovare la causa principale di una colonna errata di TaxTrans, TaxUncommitted, o TmpTaxWorkTrans, rivedi e prendi nota dei seguenti elementi:

  • L'ultimo punto di interruzione in cui la colonna è corretta.
  • Il primo punto di interruzione in cui la colonna è errata.
  • Cosa succede tra questi due punti.

Determinare se esiste la personalizzazione

Se sono stati completati i passaggi nelle sezioni precedenti ma non è stato possibile risolvere il problema, determinare se la personalizzazione esiste. Se non esiste alcuna personalizzazione, contattare il supporto Microsoft per assistenza.