procedure TFormzzxxgl.Button2Click(Sender: TObject);
 var                       //从分拣调度表中查询在该站点是否有需要中转的单子
 station:string;
begin
  dm.fjddxx.Close;
  dm.fjddxx.CommandText:='select * from fjddxx';
  dm.fjddxx.Open;
  dm.fjddxx.First;
  while dm.fjddxx.Eof=false do
  begin
    station:=dm.fjddxx.fieldbyname('下一站点').AsString;
    if station=trim(trim(combobox1.Text)+trim(combobox2.Text))then
    begin
       DBCombobox1.Items.Add(dm.fjddxx.fieldbyname('运单号').AsString);
    end;
       dm.fjddxx.Next;
  end;
  //没有件要处理时提示
  if dbcombobox1.Items.Count<0 then
    messagebox(handle,'没有需要中转的快件','中转处理', mb_iconstop);
end;

解决方案 »

  1.   

      dm.fjddxx.Close; 
      dm.fjddxx.CommandText:='select * from fjddxx'; 
      dm.fjddxx.Open; 
      dm.fjddxx.First; 
     if dm.fjddxx.IsEmpty then
      messagebox(handle,'没有需要中转的快件','中转处理', mb_iconstop);
     else
     begin
       while not dm.fjddxx.Eof do
        begin
          station:=dm.fjddxx.fieldbyname('下一站点').AsString;
          if station=trim(trim(combobox1.Text)+trim(combobox2.Text))then  //如果查询有数据,看这是否符合条件
          begin
             DBCombobox1.Items.Add(dm.fjddxx.fieldbyname('运单号').AsString);
          end;
           dm.fjddxx.Next;
        end;
      end;//循环的时候最好加上
    dateSet.DisableControls;
    ...
    dataset.EnableControls;
      

  2.   

    DBCombobox1.Items.Add(dm.fjddxx.fieldbyname('运单号').AsString); 
    设置断点,看上面这句是否执行了