请各位帮忙看看是怎么回事? 郁闷呀,快来帮帮我啊(200分)

  • 主题发起人 主题发起人 cndsb
  • 开始时间 开始时间
C

cndsb

Unregistered / Unconfirmed
GUEST, unregistred user!
Km:=trim(edtkmbm.Text);
DM.ADOQueryCostChart.Close;
DM.ADOQueryCostChart.SQL.Clear;
DM.ADOQueryCostChart.SQL.Add('select '+km+',hsdata from cost');
DM.ADOQueryCostChart.Open;
DM.ADOQueryCostChart.First;
for i:=1 to DM.ADOQueryCostChart.RecordCount do
begin
DBChartCost.Series[0].DataSource:=DM.ADOQueryCostChart;
DBChartCost.Series[0].YValues.ValueSource:=km ; // 'Y轴数据所在字段';
DBchartcost.Series[0].XValues.ValueSource:='hsdata' ; // 'X轴数据所在字段';
DBchartcost.Series[0].XLabelsSource:='hsdata'; // 'X轴数据所在字段';
DM.ADOQueryCostChart.Next;
end;

以上代码中第一次执行成功,第二次执行就提示找不到第一次的字段了,提示: project test.exe raised exception class EDatabaseError with message
' ADOQueryCostChart:Field '**' not found',其中**为第一次查询过的字段名。。
但是若只查询不赋给DBCHART就可以,
或者SELECT '+km+',hsdata from cost这儿的'+km+' 改为*也可以。
并且'+KM'这儿只能是一对单引号,才能作为变量使用。
 
罗辑错误...
 
楼上的,请说具体点呀,我急呢
 
我没写过此类的东东 只是凭感觉而已 错了不要怪我啊 呵呵
你吧代码调整下:
Km:=trim(edtkmbm.Text);
DM.ADOQueryCostChart.Close;
DM.ADOQueryCostChart.SQL.Clear;
DM.ADOQueryCostChart.SQL.Add('select '+km+',hsdata from cost');
DM.ADOQueryCostChart.Open;

DBChartCost.Series[0].DataSource:=DM.ADOQueryCostChart;

DM.ADOQueryCostChart.First;
for i:=1 to DM.ADOQueryCostChart.RecordCount do
begin

DBChartCost.Series[0].YValues.ValueSource:=km ; // 'Y轴数据所在字段';
DBchartcost.Series[0].XValues.ValueSource:='hsdata' ; // 'X轴数据所在字段';
DBchartcost.Series[0].XLabelsSource:='hsdata'; // 'X轴数据所在字段';
DM.ADOQueryCostChart.Next;
end;
 
to yuzi_82,这样也不行
不过真心谢谢你
 
再调整了啊
加个TDataSource
Km:=trim(edtkmbm.Text);
DM.ADOQueryCostChart.Close;
DM.ADOQueryCostChart.SQL.Clear;
DM.ADOQueryCostChart.SQL.Add('select '+km+',hsdata from cost');
DM.ADOQueryCostChart.Open;
'-----
DataSource1.dataset:= DM.ADOQueryCostChart;

DM.ADOQueryCostChart.First;
for i:=1 to DM.ADOQueryCostChart.RecordCount do
begin
DBChartCost.Series[0].DataSource:=DataSource1;
DBChartCost.Series[0].YValues.ValueSource:=km ; // 'Y轴数据所在字段';
DBchartcost.Series[0].XValues.ValueSource:='hsdata' ; // 'X轴数据所在字段';
DBchartcost.Series[0].XLabelsSource:='hsdata'; // 'X轴数据所在字段';
DM.ADOQueryCostChart.Next;
end;
 
你加我QQ吧,376430458
 
在open前修改DBChart1.Series[0].YValues.ValueSource := km
 
罗辑错误...
 
多人接受答案了。
 
后退
顶部