Funksjonsblokk TIMESWITCH_ADD

Funksjonsblokken TIMESWITCH_ADD oppretter eller endrer en hendelse i en tidsrelé.

Merk: Tidsreléen må være lagret i samme element.

Tips: For å endre en hendelse kan alle verdier leses ved hjelp av funksjonsblokken TIMESWITCH_GET.

Inngang ADD

Inngangen oppretter eller endrer en hendelse i kalenderen, ved en positiv flanke. Hvis inngangen alltid er sant, så blir hendelsen, når denne slettes, opprettet på nytt. Endringer av en hendelse blir ikke oppdaget.

Viktig: Oppretting og samtidig sletting bør unngås, da dette kan belaste SSD-en mye.

Inngang TIMESWITCH

Her lagres tidsrelé-databasen som en streng. Denne må allerede eksistere som funksjonsblokken TIMESWITCH. Vær også oppmerksom på rekkefølgen i programmet, slik at denne funksjonsblokken initialiseres korrekt.

Inngang ID

Definerer ID-en som en streng for hendelsen. Dette gjør det mulig å identifisere den unikt og hindrer at andre hendelser skaper konflikt. ID-en bør bare bestå av bokstaver og tall. Store og små bokstaver blir tatt hensyn til.

Merk: ID-en bør være definert unikt for alle kalendere. En hendelse kan kopieres av brukeren på visualiseringen til en annen kalender.

Inngang TITLE

Tittelen på hendelsen som en streng. Denne bør ikke inneholde linjeskift. Hvis inngangen ADD er sant, blir enhver endring umiddelbart skrevet til kalenderen.

Inngang DT_START

Starttidspunktet for hendelsen i formatet DT#. Hvis inngangen ADD er sant, blir enhver endring umiddelbart skrevet til kalenderen.

Tips: Skiftetider kan beregnes med funksjonsblokkene MKTIME, STR2DT og EASTER_DATE.

Inngang DT_END

Sluttidspunktet for hendelsen i formatet DT#. Hvis inngangen ADD er sant, blir enhver endring umiddelbart skrevet til kalenderen. Hvis sluttidspunktet er mindre enn DT_START, så defineres DT_END som starttidspunkt.

Hvis inngangen ikke er definert, så antas samme verdi som DT_START og det genereres en puls for hendelsen.

Inngang DIS

Inngangen deaktiverer hendelsen i kalenderen. Hvis inngangen ADD er sant, blir enhver endring umiddelbart skrevet til kalenderen.

Inngang REPEAT

På inngangen kan gjentakelser defineres som en streng. Disse kan genereres med hjelpefunksjonene REPEAT_YEARLY, REPEAT_MONTHLY, REPEAT_WEEKLY, REPEAT_DAILY og REPEAT_HOURLY eller deklareres som beskrevet.

Strengen kan bygges opp, adskilt av et kolon, som følger:

w:2:4:135

Det første sifferet (litt) definerer tidsintervallet for gjentakelsen:

Forkortelse Tidsintervall
h Hver time
d Daglig
w Ukentlig
m Månedlig
y Årlig

Det andre sifferet definerer intervallet som en hel tallverdi for gjentakelsen. Den minste verdien er 1.

Det tredje sifferet definerer slutten på gjentakelsen. Her kan tre forskjellige formater defineres:

  • Ingen verdi: Gjentakelsen er uendelig.
  • Som en enkel hel tallverdi: Gjentakelsen slutter etter det definerte antall gjentakelser.
  • Som et datoformat YYYY-MM-DD: Gjentakelsen slutter før datoen.

Det fjerde sifferet definerer ukedagene som gjentakelsen skjer på. Dette sifferet brukes bare ved definering av ukentlige eller månedlige gjentakelser.

Ukentlige Gjentakelser

Det sjekkes om den aktuelle ukedagen er til stede i tallet. Flere dager kan angis enkelt etter hverandre. For eksempel 135 for mandag, onsdag og fredag. Hvis ingen verdi er angitt (0 eller en tom streng), så gjentas det ikke på noen dag.

Tall Ukedag
1 Mandag
2 Tirsdag
3 Onsdag
4 Torsdag
5 Fredag
6 Lørdag
7 Søndag
Månedlige Gjentakelser

Definerer hvilken ukedag hendelsen skal gjentas på. Støttet er tall fra -1 til 4. 0 eller ingen deklarasjon gjentar hver måned på samme dag, uavhengig av ukedag. Ukedagen overføres fra det første datoen.

Verdi Beskrivelse
-1 Gjentar på siste ukedag.
0 Gjentar på samme dag. (Standard)
1 Gjentar på første ukedag.
2 Gjentar på andre ukedag.
3 Gjentar på tredje ukedag.
4 Gjentar på fjerde ukedag.

Utgang ERR

I tilfelle av feil, settes utgangen til sant. Dette kan skje hvis kalenderen ikke eksisterer eller ID-en ikke er definert eller ugyldig.