zum veranschaulichen habe ich jetzt mal ein paar Codeschnipsel beigefügt.
Code:
...
Str2.Text:=(Copy(htmlcode,48,999));
...
SetLength(Stoer1, Str2.Count );
for i := 0 to High(Stoer1) do
begin
Label6.Caption:=inttostr(i);
s:=Str2[i];
p1:=pos(':',s); //Teilbereich1 Störzeit
SubStr := Copy(s,1, p1+6);
delete(s, 1, p1+6);
p1:=pos('/',s); //Teilbereich2 Störbereich
SubStr2 := Copy(s,1, p1-1);
delete(s, 1, p1);
p1:=pos('/',s); //Teilbereich3 Störmeldung
SubStr3 := Copy(s,1, p1-1);
delete(s, 1, p1);
Stoer1[i, 0]:=Datetostr(now);
Stoer1[i, 1]:=Substr;
Stoer1[i, 2]:=Substr2;
Stoer1[i, 3]:=Substr3;
end;
...
setlength(Stoer2,length(Stoer1));
for i:=0 to High(Stoer1) do
begin
If (Stoer2[i, 1] <> Stoer1[i,1]) or (Stoer2[i, 4] <> Stoer1[i,4]) then
begin
Stoer2[i, 0]:=Stoer1[i, 0];
Stoer2[i, 1]:=Stoer1[i, 1];
Stoer2[i, 2]:=Stoer1[i, 2];
Stoer2[i, 3]:=Stoer1[i, 3];
...
end;
end;
...
Richtig
Stoer1 ist immer nur temporär solange eine Störung da ist oder nicht
Ich bin mir halt nicht sicher ob das überhaupt der richtige weg ist oder nicht ?
Ich muss halt mit dem String in STR2 arbeiten.
Der sieht wie folgt aus:
13:39:47/005/049/Störung Modul 02B ist ausgefallen
Ist die Störung behoben sollte sie so ungefähr in StoerDB stehen:
13.07.2017 | 13:39:47 | 005 | 049 | Störung Modul 02B ist ausgefallen | 13.07.2017 | 16:09:21
Nur irgendwie komme ich nicht mehr weiter