Die Business-Objekt GeneralJournalEntryLines enthält die GL Transaktion Linien Exact Online. Aus Performancetuninggründen ändern wir unsere Skripts, die Daten von Exact Online in unsere On-Premise-Datenbank kopieren, um nur die Änderungen zu berücksichtigen, die statt einer vollständigen Kopie möglich sind.Fehlende Inhalt des Feldes CreatorFullName und ModifierFullName in GeneralJournalEntryLines
jedoch eine Abfrage auf GeneralJournalEntries mit GeneralJournalEntryLines verbunden gibt manchmal einen Nullwert in CreatorFullName und ModifiedFullName.
Ich habe versucht, neue Zeilen mit diesem Problem zu reproduzieren, sondern diejenigen funktionieren.
Ist dies eine Beschädigung der Datenbank? Oder ein Mitschuld an meiner Seite?
Die Exact Online-Abfrage ist:
use <DIVISION CODE>
select GE.Created GE_Created
,GE.Division GE_Division
,GE.EntryID GE_EntryID
,GE.EntryNumber GE_EntryNumber
,GE.FinancialPeriod GE_FinancialPeriod
,GE.FinancialYear GE_FinancialYear
,GE.JournalCode GE_JournalCode
,GE.Modified GE_Modified
,GE.Reversal GE_Reversal
,GE.Status GE_Status
,GE.Type GE_Type
,GL.AccountCode GL_AccountCode
,GL.AmountDC GL_AmountDC
,GL.AmountVATDC GL_AmountVATDC
,GL.AssetCode GL_AssetCode
,GL.CostCenter GL_CostCenter
,GL.CostUnit GL_CostUnit
,GL.CreatorFullName GL_CreatorFullName
,GL.Date GL_Date
,GL.Description GL_Description
,GL.GLAccountCode GL_GLAccountCode
,GL.LineNumber GL_LineNumber
,GL.ModifierFullName GL_ModifierFullName
,GL.OurRef GL_OurRef
,GL.ProjectCode GL_ProjectCode
,GL.Quantity GL_Quantity
,GL.VATBaseAmountDC GL_VATBaseAmountDC
,GL.VATCode GL_VATCode
,GL.VATPercentage GL_VATPercentage
,GL.VATType GL_VATType
from ExactOnlineREST..GeneralJournalEntries GE
inner join ExactOnlineREST..GeneralJournalEntryLines GL
on GE.EntryID=GL.EntryID
where GE.Status <> 50
or (GE.Status = 50 and ((GE.FinancialYear*100) + GE.FinancialPeriod = 201501 and GE.Modified > '09/01/2017 14:03:09'))
or (GE.Status = 50 and ((GE.FinancialYear*100) + GE.FinancialPeriod = 201502 and GE.Modified > '09/01/2017 14:03:09'))
or (GE.Status = 50 and ((GE.FinancialYear*100) + GE.FinancialPeriod = 201503 and GE.Modified > '09/01/2017 14:03:09'))
or (GE.Status = 50 and ((GE.FinancialYear*100) + GE.FinancialPeriod = 201504 and GE.Modified > '09/01/2017 14:03:09'))
or (GE.Status = 50 and ((GE.FinancialYear*100) + GE.FinancialPeriod = 201505 and GE.Modified > '09/01/2017 14:03:08'))
or (GE.Status = 50 and ((GE.FinancialYear*100) + GE.FinancialPeriod = 201506 and GE.Modified > '09/01/2017 14:03:08'))
or (GE.Status = 50 and ((GE.FinancialYear*100) + GE.FinancialPeriod = 201507 and GE.Modified > '09/01/2017 14:27:27'))
or (GE.Status = 50 and ((GE.FinancialYear*100) + GE.FinancialPeriod = 201508 and GE.Modified > '09/01/2017 14:27:27'))
or (GE.Status = 50 and ((GE.FinancialYear*100) + GE.FinancialPeriod = 201509 and GE.Modified > '09/01/2017 14:27:27'))
or (GE.Status = 50 and ((GE.FinancialYear*100) + GE.FinancialPeriod = 201510 and GE.Modified > '09/01/2017 14:27:26'))
or (GE.Status = 50 and ((GE.FinancialYear*100) + GE.FinancialPeriod = 201511 and GE.Modified > '09/01/2017 14:27:27'))
or (GE.Status = 50 and ((GE.FinancialYear*100) + GE.FinancialPeriod = 201512 and GE.Modified > '09/01/2017 14:27:26'))
local export results as "D:\Invantive\data\uit_EOL\40570GeneralJournals.csv" format csv
local exit
So verschwindet Ihre Audit-Geschichte? –
@PatrickHofman ja, es scheint so. Es sei denn, Sie registrieren die Beziehungs-GUID mit dem Namen in einer anderen Tabelle, indem Sie alle neuen Datensätze in der Benutzertabelle von Exact Online registrieren. Seltsam, würde erwarten, dass Benutzer deaktiviert statt gelöscht werden, aber vielleicht deutsche Gesetzgebung oder so. –