按时间先后排序后开算,可以试着设一个表示开始的B:boolean,读到开始就B:=true,读到其它就B:=false;{开始算时间差加起来等等}
至于分process,直接用集合、数组或者stringlist搞定。三个XXX为一组可以把它们用什么符号(比如*)连接起来做标识字符串放到stringlist做标识。没记错的话stringlist可以用作类似于INI的功能的。
总体来说应该不算难事,楼主要有信心。
至于分process,直接用集合、数组或者stringlist搞定。三个XXX为一组可以把它们用什么符号(比如*)连接起来做标识字符串放到stringlist做标识。没记错的话stringlist可以用作类似于INI的功能的。
总体来说应该不算难事,楼主要有信心。
但是卡在不知該如何把一樣的NUM_PS及PROCESS時間加總起來...
請各位指導...謝謝!!while not Adoquery1.Eof do
begin
status:=adoquery1.fieldbyname('status').AsString;
if (status='AA') then
begin
timeA:=adoquery1.fieldbyname('datetime').Asdatetime;
chkA:=adoquery1.fieldbyname('chk').AsString;
end;
if ((status='BB') or (status='CC')) then
begin
timeBC:=adoquery1.fieldbyname('datetime').Asdatetime;
chkB:=adoquery1.fieldbyname('chk').AsString;
chkC:=adoquery1.fieldbyname('chk').AsString;
end;
if(((chkA=chkB)or(chkA=chkC))and((chkA<>'')and(chkB<>'')and(chkc<>'')))then
begin
time:=(MinutesBetween(timeA,timeBC));
chkA:=''; chkB:=''; chkC:='';
end;
Adoquery1.Next;
end;
在記錄數據的同時多加一個階段流水號字段(欄位)...後續就可以輕易以 SQL 做統計!