Ich krieg im moment über eine http post anfrage über ein php file, daten, die parse ich dann und füg sie in ein Chart ein
Code: Alles auswählen
procedure TForm1.anfrage(start, ende: TDate);
var
http: THTTPSend;
resultstream: TStringStream;
startdate, endedate, submitstring, getstring, analysestring: string;
analyselist: TStringList;
posi, i: integer;
insertdate: longint;
Fmt : TFormatSettings;
insertparameter: integer;
insertwert: double;
//maxwert, minwert: double;
//maxdate, mindate: longint;
begin
http := THTTPSend.Create;
resultstream := TStringStream.Create('');
startdate := '"' + FormatDateTime('yyyy-mm-dd%20hh:nn:ss', start) + '"';
endedate := '"' + FormatDateTime('yyyy-mm-dd%20hh:nn:ss', ende) + '"';
submitstring := http://www.server.de/getdata.php';
http.ProxyHost := ProxyHost;
http.ProxyPort := ProxyPort;
http.ProxyUser := ProxyUser;
http.ProxyPass := ProxyPass;
http.HTTPMethod('Post', submitstring);
SynEdit1.Lines.LoadFromStream(http.Document);
analyselist := TStringList.Create;
getstring := Synedit1.Lines.Text;
posi := pos('<start>', getstring) + length('<start>') - 1;
Delete(getstring, 1, posi);
posi := pos('<ende/>', getstring);
Delete(getstring, posi, length(getstring));
posi := pos('#', getstring);
while posi > 0 do
begin
analyselist.Add(copy(getstring, 1, posi - 1));
Delete(getstring, 1, posi);
posi := pos('#', getstring);
end;
chart1.AutoSize:=false;
maxwert := 0;
minwert := 100000;
maxwert := 0;
minwert := 1000000000000000000;
for i := 0 to analyselist.Count - 1 do
begin
analysestring := analyselist[i];
posi := pos(';', analysestring);
fmt.ShortDateFormat:='yyyy-mm-dd';
fmt.DateSeparator :='-';
fmt.LongTimeFormat :='hh:nn:ss';
fmt.TimeSeparator :=':';
insertdate := DateTimeToUnix(StrToDateTime(copy(analysestring, 1, posi - 1), fmt));
Delete(analysestring, 1, posi);
posi := pos(';', analysestring);
insertparameter := StrToInt(copy(analysestring, 1, posi - 1));
Delete(analysestring, 1, posi);
posi := pos(';', analysestring);
insertwert := StrtoFloat(stringreplace((copy(analysestring, 1, posi - 1)), '.', ',', [] ));
Delete(analysestring, 1, posi);
graphen[insertparameter].AddXY(insertdate, insertwert);
if insertwert > maxwert then
maxwert := insertwert;
if insertwert < minwert then
minwert := insertwert;
if insertdate > maxdate then
maxdate := insertdate;
if insertdate < mindate then
mindate := insertdate;
end;
chart1.Repaint;
//chart1.Extent.XMax := maxdate;
//chart1.Extent.XMin := mindate;
Kann mir evtl jemand helfen?