Test-PartnerSchedule

EulandaXtools — Funktionsreferenz

Test-PartnerSchedule

ÜBERSICHT

Prüft, ob für einen Partner zum aktuellen Zeitpunkt ein Datenaustausch gestartet werden darf.

SYNTAX

Test-PartnerSchedule [-Schedule] <hashtable> [<CommonParameters>]

BESCHREIBUNG

Diese Funktion entscheidet, ob ein automatisiertes Ereignis wie z.B. ein `Upload`oder `Download` von Geschäftsnachrichten wie EDIFACT, gemäß dem übergebenen Zeitplan ausgeführt werden darf. Sie eignet sich insbesondere zur Steuerung von Partnerprozessen, etwa für den Austausch von `INVOIC`-, `ORDERS`-, `ORDRSP`-Dateien usw. Der Zeitplan `Schedule` kann feste Tageszeiten beispielsweise `09:00` oder `15:00` und/oder ein Wiederholungsintervall in Minuten enthalten. Entscheidend ist dabei, ob eine der Bedingungen zwischen dem letzten Ereignis und jetzt erfüllt wird.

Der Ablauf ist wie folgt:

1. Wenn die Prüfung fester Tageszeiten aktiviert ist `useFixedTimes`, wird geprüft, ob eine dieser definierten Zeiten zwischen dem letzten Zugriff `lastAccess` und dem aktuellen Zeitpunkt liegt. Falls ja, gibt die Funktion `true` zurück.

2. Trifft dies nicht zu oder ist die feste Zeitprüfung deaktiviert, wird geprüft, ob seit dem letzten Zugriff das definierte Intervall `intervalMinutes` überschritten wurde. Wenn ja, gibt die Funktion ebenfalls `true` zurück.

Andernfalls gibt die Funktion `false` zurück.

PARAMETER

-Schedule

Type: hashtable

Hashtable, die den Zeitplan definiert. Erwartete Schlüssel:

AUSGABEN

bool

Gibt `true` zurück, wenn ein Zugriff aktuell erlaubt ist, andernfalls `false`.

BEISPIELE

# Prüft, ob seit dem letzten Zugriff ein definierter fester Zeitpunkt, `09:00` oder `15:00`, erreicht wurde oder 120 Minuten vergangen sind.
$Schedule = @{
  useFixedTimes = $true
  fixedTimes = @('09:00', '15:00')
  intervalMinutes = 120
  lastAccess = '2025-01-01T08:00:00'
}
Test-PartnerSchedule -Schedule $Schedule
# Prüft, ob seit dem letzten Zugriff mindestens 30 Minuten vergangen sind.
$Schedule = @{
  intervalMinutes = 30
  lastAccess = '2025-01-01T14:00:00'
}
Test-PartnerSchedule -Schedule $Schedule

HINWEISE