Autor Thema: Modifikation der Funktion HOLIDAY  (Gelesen 10040 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline Fussel0804

  • Entwickler
  • *****
  • Beiträge: 274
    • Profil anzeigen
    • E-Mail
Modifikation der Funktion HOLIDAY
« am: 13. Januar 2011, 21:37:55 »
Hallo,

Ich möchte in meiner Visualisierung gewisse Ereignisse anzeigen und dafür die Funktion HOLIDAY etwas zweckentfremden.

Den FB und den DB von Holiday kopieren und als z.B. Ereignis abspeichern.
In den EREIGNIS DB eine Reihe von Ereignissen eintragen.
Der EREIGNIS FB soll dann am aktuellen Tag das Tagesereignis und am Tag zuvor das morgige Ereignis ausgeben.
Pro Tag kommt nur ein Ereignis vor.

Das Bit Holiday benötige ich nicht, dafür aber Bit "EREIGNIS MORGEN" und Bit "EREIGNIS HEUTE"
Ebenso die beiden Strings "EREIGNIS MORGEN" und String "EREIGNIS HEUTE"
Die Eingänge Freitag, Samstag und Sonntag benötige ich ebenfalls nicht, ebenfalls nicht die Landesauswahl.
Auch die Berechnung von "OSTERN" wird dann ja nicht benötigt.


Das ganze hört sich zwar jetzt etwas viel an, aber vielleicht hat ja jemand die zündende Idee und kann das mal so eben auf dem "Nichts" schreiben.
Leider bin ich nicht fit genug, den Quellcode so zu modifizieren, dass es klappt.

Besten Dank bereits im voraus.

PS: Macht weiter so, die OSCAT.LIB ist spitze.

Offline peewit

  • Moderator
  • *****
  • Beiträge: 2 378
    • Profil anzeigen
Re:Modifikation der Funktion HOLIDAY
« Antwort #1 am: 13. Januar 2011, 23:21:37 »
hallo

ich hoffe ich habe deine wünsche richtig interpretiert !

habe versucht wie gewünscht "aus dem nichts" etwas zu programmieren

das wertet zumindest die ereignisse aus holiday aus, brauchst du denn noch andere , wenn ja, bitte beispiel, was du genau machen willst
entweder du passt dir selber in deiner oscat-version die holiday-tabelle an, oder wir machen wirklich einen custom_holiday der mit user-daten arbeitet
brauchst du denn überhaupt die definierten feiertage, oder hast du nur selbstgemachte ereignisse

das ist zumindest der erste schritt

siehe anhang


gruss peewit

------------------------
FUNCTION_BLOCK EVENT_OUTLOOK
VAR_INPUT
   DATE_IN : DATE;
   COUNTRY : INT;
END_VAR
VAR_OUTPUT
   TODAY : BOOL;
   TODAY_EVENT : STRING(30);
   TOMORROW : BOOL;
   TOMORROW_EVENT : STRING(30);
END_VAR
VAR
   HOLIDAY_1 : HOLIDAY;
   HOLIDAY_2 : HOLIDAY;
   last_date : DATE;
END_VAR

IF DATE_IN <> last_date THEN
      HOLIDAY_1(DATE_IN:=DATE_IN,COUNTRY:=COUNTRY , Y=>TODAY , NAME=>TODAY_EVENT);
      HOLIDAY_2(DATE_IN:=DATE_ADD(DATE_IN,1,0,0,0),COUNTRY:=COUNTRY , Y=>TOMORROW , NAME=>TOMORROW_EVENT);
   last_date := DATE_IN;
END_IF;



[gelöscht durch Administrator]
« Letzte Änderung: 13. Januar 2011, 23:56:22 von peewit »

Offline Fussel0804

  • Entwickler
  • *****
  • Beiträge: 274
    • Profil anzeigen
    • E-Mail
Re:Modifikation der Funktion HOLIDAY
« Antwort #2 am: 14. Januar 2011, 11:52:53 »
Danke.

Du hast mich genau richtig verstanden.

Die Funktion Holiday werde ich weiterhin benutzen, jedoch als eigenständige Funktion.

Die 2. Ereignisserien nenne ich jetzt mal "CUSTOM_ACTIVITIES".

Ich nutze die OSCAT.LIB in meiner privaten Hausautomatisierung mit einem in der Wand eingelassenem Panel PC.
Darauf läuft meine Visualisierung.

In dieser "CUSTOM_ACTIVITIES will ich Ereignisse wie den aktuellen Müllkalender oder sonstige Tagesereignisse eintragen.
Ich weis, jetzt werden einige sagen, das kann man doch auch in einem Outlook oder so etwas realisieren.

Besten Dank schon mal.
Ich werde das ganze gleich heute abend testen.

Offline Fussel0804

  • Entwickler
  • *****
  • Beiträge: 274
    • Profil anzeigen
    • E-Mail
Re:Modifikation der Funktion HOLIDAY
« Antwort #3 am: 14. Januar 2011, 14:52:46 »
Könntest du mir bitte eine .lib datei hochladen, da ich unter Siemens-Step7 keinen SCL Editor habe.

Danke

Offline peewit

  • Moderator
  • *****
  • Beiträge: 2 378
    • Profil anzeigen
Re:Modifikation der Funktion HOLIDAY
« Antwort #4 am: 14. Januar 2011, 16:13:22 »
hallo

ich arbeite nur auf codesys und pcworx/multiprog

vielleicht kann dir jemand anderer bezüglich step7 aushelfen.....

Offline Fussel0804

  • Entwickler
  • *****
  • Beiträge: 274
    • Profil anzeigen
    • E-Mail
Re:Modifikation der Funktion HOLIDAY
« Antwort #5 am: 16. Januar 2011, 13:12:56 »
Hallo an alle.

Wer kann mir den CODE in Step7 AWL umschreiben?

Besten Dank.

Offline hugo

  • Global Moderator
  • *****
  • Beiträge: 2 150
    • Profil anzeigen
Re:Modifikation der Funktion HOLIDAY
« Antwort #6 am: 18. Januar 2011, 23:57:44 »
Hallo Leute
das nächste release der oscat wird einen neuen baustein EVENTS beinhalten der das gewünschte macht

Offline Fussel0804

  • Entwickler
  • *****
  • Beiträge: 274
    • Profil anzeigen
    • E-Mail
Re:Modifikation der Funktion HOLIDAY
« Antwort #7 am: 19. Januar 2011, 15:47:16 »
Danke euch allen.
Ihr seid echt spitze.

Gibt es schon einen voraussichtlicchhen Termin, wann das sein wird?

Gibt es schon was neues von 3.20 unter S7?

Gruß Fussel

Offline hugo

  • Global Moderator
  • *****
  • Beiträge: 2 150
    • Profil anzeigen
Re:Modifikation der Funktion HOLIDAY
« Antwort #8 am: 19. Januar 2011, 16:59:51 »
die 3.21 soll innerhalb der nächsten 4 wochen erscheinen