Skip to main content
Skip table of contents

Begriffserklärung für Gateways

In der Beschreibung der Gateways werden verschiedene Begriffe verwendet, welche hier näher erläutert werden:

SmartSync Unterstützung

Begriff der Pipelinesteuerung (primär im Staging)

Die Pipeline kann mehrmals gestartet werden, bei jedem Start prüft ein Step, welche Mandanten / Geschäftsjahre schon erfolgreich übernommen wurden und nur noch die unerledigten Mandanten werden für den neuen Lauf aktiviert.

Vorteile

  • der zweite Lauf holt nur noch den Rest und beginnt nicht die ganze Arbeit noch einmal

  • falls der erste Lauf schon erfolgreich war, tut der zweite Lauf gar nichts mehr

Anwendungsfälle:

  • Prozess bricht manchmal ab → Prozess abends und früh starten, der Morgenlauf holt dann das, was der Abendlauf nicht geschafft hatte

  • Der Server geht planmäßig abends 22.00 Uhr offline und startet morgens 5.00 Uhr wieder → Prozess 19.00 starten und 5.15 Uhr starten, der Abendlauf holt was er schafft, der Morgenlauf holt den Rest

  • Pipeline jede Stunde starten lassen → es werden immer nur die Mandanten aktualisiert, welche älter als X h sind

Bedenken

  • wenn das Staging diese Funktionalität implementiert, sollte die Datenbereitstellung das auch tun - oder sehr schnell sein, damit sie immer auf dem Gesamtbestand laufen kann

Implementierungsbeispiel (ab Zeile 22)

SQL
-- Steuerungstabelle zunächst komplett inaktiv schalten
UPDATE  staging.tDATEVCONNECT_Steuerungstabelle 
	SET  Activate_FIN	= 0
		,Activate_KOST	= 0
		,Activate_OP	= 0
		,Activate_AV	= 0
		,Delete_Data	= 0
    WHERE 
        DATEV_SystemID = '{{DatenquellenID}}';

-- Mandantenaktivierung mit SmartSync (in Zeile 22 implementiert)
UPDATE 
    staging.tDATEVCONNECT_Steuerungstabelle 
	SET  Activate_FIN	= 1
		,Activate_KOST	= 1
		,Activate_OP	= 0
		,Activate_AV	= 0

	WHERE	
            DATEV_SystemID  = '{{DatenquellenID}}'
		AND fiscal_year_id	>= (YEAR(GETDATE())-1) * 10000 + 101        -- das aktuelle Jahr und das Vorjahr
		-- SmartSync Konfiguration
		AND 
			CASE 
				-- für den Abendlauf werden alle Mandanten aktiviert (ggf. Zeitverschiebung UTC bedenken)
				WHEN DATEPART(hh,GETDATE()) > 15 THEN 1							
				-- für den Morgenlauf werden nur die Mandanten aktiviert, die in den letzten 15h noch nicht aktualisiert wurden
				WHEN DATEPART(hh,GETDATE()) < 8  THEN IIF(DATEDIFF(HOUR, Last_Data_Extraction, GETDATE())< 15,0,1)	
				ELSE 0
			END = 1     

Dynamische Zeitauswahl

Begriff der Pipelinesteuerung

Die Pipeline kann so konfiguriert werden, dass die zu extrahierenden Jahre dynamisch aktualisiert werden.

Anwendungsfälle:

  • extrahiere immer das aktuelle Jahr und das Vorjahr

  • extrahiere immer das aktuelle Jahr und zwei Vorjahre

Implementierungsbeispiel (Zeile 21)

SQL
-- Steuerungstabelle zunächst komplett inaktiv schalten
UPDATE  staging.tDATEVCONNECT_Steuerungstabelle 
	SET  Activate_FIN	= 0
		,Activate_KOST	= 0
		,Activate_OP	= 0
		,Activate_AV	= 0
		,Delete_Data	= 0
    WHERE 
        DATEV_SystemID = '{{DatenquellenID}}';

-- Mandantenaktivierung mit Dynamischer Zeitauswahl (in Zeile 21 implementiert)
UPDATE 
    staging.tDATEVCONNECT_Steuerungstabelle 
	SET  Activate_FIN	= 1
		,Activate_KOST	= 1
		,Activate_OP	= 0
		,Activate_AV	= 0

	WHERE	
            DATEV_SystemID  = '{{DatenquellenID}}'
		AND fiscal_year_id	>= (YEAR(GETDATE())-1) * 10000 + 101        -- das aktuelle Jahr und das Vorjahr    

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.