Funktionsblok TIMESWITCH_ADD

Funktionsblokken TIMESWITCH_ADD opretter eller ændrer en begivenhed i en tidsrelæ.

Bemærk: Tidsrelæet skal være gemt i samme element.

Tip: For at ændre en begivenhed kan alle værdier læses ved hjælp af funktionsblokken TIMESWITCH_GET.

Indgang ADD

Indgangen opretter eller ændrer en begivenhed i kalenderen, ved en positiv flanke. Er indgangen altid sand, så oprettes begivenheden, når denne er slettet igen. Ændringer af en begivenhed registreres ikke.

Vigtigt: Oprettelse og samtidig sletning bør undgås, da dette kan belaste SSD'en meget.

Indgang TIMESWITCH

Her gemmes tidsrelæets database som en streng. Denne skal allerede eksistere som funktionsblokken TIMESWITCH. Bemærk også programmets rækkefølge, så denne funktionsblok initialiseres korrekt.

Indgang ID

Definerer ID'en som en streng for begivenheden. Dette gør det muligt at identificere den entydigt og forhindrer, at andre begivenheder skaber konflikt. ID'en bør kun bestå af bogstaver og tal. Store og små bogstaver tages i betragtning.

Bemærk: ID'en skal defineres entydigt for alle kalendere. En begivenhed kan kopieres af brugeren på visualiseringen til en anden kalender.

Indgang TITLE

Titel på begivenheden som en streng. Denne bør ikke indeholde linjeskift. Hvis indgangen ADD er sand, skrives hver ændring med det samme i kalenderen.

Indgang DT_START

Starttidspunktet for begivenheden i formatet DT#. Hvis indgangen ADD er sand, skrives hver ændring med det samme i kalenderen.

Tip: Skiftetiderne kan beregnes med funktionsblokkene MKTIME, STR2DT og EASTER_DATE.

Indgang DT_END

Sluttidspunktet for begivenheden i formatet DT#. Hvis indgangen ADD er sand, skrives hver ændring med det samme i kalenderen. Er sluttidspunktet mindre end DT_START, defineres DT_END som starttidspunkt.

Hvis indgangen ikke er defineret, antages den samme værdi som DT_START, og der oprettes en impuls ved begivenheden.

Indgang DIS

Indgangen deaktiverer begivenheden i kalenderen. Hvis indgangen ADD er sand, skrives hver ændring med det samme i kalenderen.

Indgang REPEAT

På indgangen kan gentagelserne defineres som en streng. Disse kan genereres eller deklareres som beskrevet ved hjælp af hjælpefunktionerne REPEAT_YEARLY, REPEAT_MONTHLY, REPEAT_WEEKLY, REPEAT_DAILY og REPEAT_HOURLY.

Strengen kan adskilles af et kolon som følger:

w:2:4:135

Det første tal (småt) definerer tidsintervallet for gentagelsen:

Forkortelse Tidsinterval
h Hver time
d Hver dag
w Hver uge
m Hver måned
y Hvert år

Det andet tal definerer intervallet som heltal for gentagelsen. Den mindste værdi er 1.

Det tredje tal definerer slutningen på gentagelsen. Her kan tre forskellige formater defineres:

  • Ingen værdi: Gentagelsen er uendelig.
  • Som et simpelt heltal: Gentagelsen slutter efter det definerede antal gentagelser.
  • Som dato YYYY-MM-DD: Gentagelsen stopper før datoen.

Det fjerde tal definerer ugedagene, hvor gentagelsen finder sted. Dette tal bruges kun ved definition af ugentlige eller månedlige gentagelser.

Ugentlige gentagelser

Der kontrolleres, om den aktuelle ugedag er til stede i tallet. Flere dage kan angives efter hinanden. Fx 135 for mandag, onsdag og fredag. Hvis ingen værdi er angivet (0 eller en tom streng), gentages der ikke på nogen dag.

Tal Ugedag
1 Mandag
2 Tirsdag
3 Onsdag
4 Torsdag
5 Fredag
6 Lørdag
7 Søndag
Månedlige gentagelser

Definerer, på hvilken ugedag begivenheden skal gentages. Der understøttes tal fra -1 til 4. 0 eller ingen deklaration gentager hver måned på samme dag, uafhængigt af ugedagen. Ugedagen overføres fra det første dato.

Værdi Beskrivelse
-1 Gentages på den sidste ugedag.
0 Gentages på samme dag. (Standard)
1 Gentages på den første ugedag.
2 Gentages på den anden ugedag.
3 Gentages på den tredje ugedag.
4 Gentages på den fjerde ugedag.

Udgang ERR

I tilfælde af fejl sættes udgangen til sand. Dette kan ske, hvis kalenderen ikke eksisterer eller ID'en ikke er defineret eller ugyldig.