Author Topic: Suche Script  (Read 1715 times)

Antenne

  • Regular
  • *
  • Posts: 136
    • View Profile
Re: Suche Script
« Reply #30 on: December 29, 2007, 21:16:25 »
Was soll ich sagen - es funktioniert :)

Ich glaub, damit wurde jetzt ein zweiter Kaffee fällig...

flashlighter

  • Regular
  • *
  • Posts: 643
    • ICQ Messenger - 289125779
    • View Profile
    • http://www.flashlighter.de
    • Email
Re: Suche Script
« Reply #31 on: December 29, 2007, 23:39:31 »
nene, einer reicht ;)

Antenne

  • Regular
  • *
  • Posts: 136
    • View Profile
Re: Suche Script
« Reply #32 on: February 17, 2008, 16:07:56 »
Hallo zusammen,

ich hole mein Thema mal wieder hervor.
Also nachdem das Script mit Hilfe von flashlighter wunderbar geklappt hat, ist mir jetzt im täglichen Einsatz eine Sache aufgefallen:

Ich führe das Script aus und alle Songs, die bis xx:55 Uhr nicht mehr ausgespielt werden können, werden gelb markiert. So soll es ja auch sein.
Wenn die Playlist allerdings über eine Sendestunde geht, werden auch alle weiteren Songs markiert, die in den nächsten Sendestunden eingeplant sind.
Gibt es da denn eine Möglichkeit, *nur* die Songs bis 5 vor und sonst keine weiteren zu markieren oder muss ich mir immer Playlisten erstellen, die nur eine Stunde lang dauern?

Schönes WE!

flashlighter

  • Regular
  • *
  • Posts: 643
    • ICQ Messenger - 289125779
    • View Profile
    • http://www.flashlighter.de
    • Email
Re: Suche Script
« Reply #33 on: February 17, 2008, 16:18:36 »
Hi,

du willst quasi das bisherige invertieren? Dass Songs markiert werden, die noch in dieser Stunde geschafft werden?

grüße, michi

Antenne

  • Regular
  • *
  • Posts: 136
    • View Profile
Re: Suche Script
« Reply #34 on: February 17, 2008, 16:57:27 »
Hi,

du willst quasi das bisherige invertieren? Dass Songs markiert werden, die noch in dieser Stunde geschafft werden?

grüße, michi

Hmm...nein, nicht direkt. Also grundsätzlich sind bei mir alle Songs, die noch folgen hellgelb markiert - und die, die bis :55 nicht mehr reinpassen, werden gelb markiert.
Und ich suche nun nach einer Möglichkeit, dass immer nur die Songs (der Song?!) markiert werden, die in die laufende Sendestunde nicht mehr reinpassen - die übrigen (in den nächsten Stunden) sollen ganz normal bleiben.
Also im Prinzip soll nur der letzte Song, der zu lang ist, markiert werden.

flashlighter

  • Regular
  • *
  • Posts: 643
    • ICQ Messenger - 289125779
    • View Profile
    • http://www.flashlighter.de
    • Email
Re: Suche Script
« Reply #35 on: February 17, 2008, 17:07:07 »
okay, nur den ersten Song markieren, der nichtmehr reinpasst... das lässt sich machen...

Poste mal bitte den Code, der gerade funktioniert, dann erweiter ich das kurz.

grüße, michi

Antenne

  • Regular
  • *
  • Posts: 136
    • View Profile
Re: Suche Script
« Reply #36 on: February 17, 2008, 17:29:05 »
Code: [Select]
var nextHour: TDateTime;
    jetzigeStunde: Integer;
    jetzt: TDateTime;
    sekBisNextHour: Integer;
    i: Integer;
    summe: Integer;
begin
jetzigeStunde := StrToInt(FormatDateTime('h', now));
jetzt:=now;
nextHour :=Date;
nextHour := nextHour + EncodeTime(jetzigeStunde,0,0,0) + 0.03819444444;
sekBisNextHour := Round((nextHour-jetzt)*86400);
summe:=0;
  for i:=0 to CurrentPlaylist.GetCount-1 do begin
    summe:=summe+CurrentPlaylist.GetItem(i).GetEffectiveDuration/10000000;
    if summe > (sekBisNextHour) then begin
      CurrentPlaylist.GetItem(i).SetColor(clYellow);
    CurrentPlaylist.GetItem(i).SetColored(true);
    end;
  end;
end.

flashlighter

  • Regular
  • *
  • Posts: 643
    • ICQ Messenger - 289125779
    • View Profile
    • http://www.flashlighter.de
    • Email
Re: Suche Script
« Reply #37 on: February 17, 2008, 18:02:15 »
Code: [Select]
var nextHour: TDateTime;
    jetzigeStunde: Integer;
    jetzt: TDateTime;
    sekBisNextHour: Integer;
    i: Integer;
    summe: Integer;
    farbig: boolean; //
begin
farbig:=false;
jetzigeStunde := StrToInt(FormatDateTime('h', now));
jetzt:=now;
nextHour :=Date;
nextHour := nextHour + EncodeTime(jetzigeStunde,0,0,0) + 0.03819444444;
sekBisNextHour := Round((nextHour-jetzt)*86400);
summe:=0;
  for i:=0 to CurrentPlaylist.GetCount-1 do begin
    summe:=summe+CurrentPlaylist.GetItem(i).GetEffectiveDuration/10000000;
    if (summe > (sekBisNextHour)) and (farbig = false) then begin
      CurrentPlaylist.GetItem(i).SetColor(clYellow);
      CurrentPlaylist.GetItem(i).SetColored(true);
      farbig:=true;
    end;
  end;
end.
(ungetestet)

Antenne

  • Regular
  • *
  • Posts: 136
    • View Profile
Re: Suche Script
« Reply #38 on: February 17, 2008, 18:05:03 »
Haut hin - ich danke dir!