while not Qry_out_storage_detail.Eof dobegin
   if JustifyQuantity( Qry_out_storage_detail.fieldbyname('goods_id').AsString,Qry_out_storage_detail.fieldbyname('goods_quantity').AsInteger) then
    begin
          if application.MessageBox(pchar('当前有销售数量比库存大的数据,名称['+Qry_out_storage_detail.fieldbyname('goods_name').asstring +'],规格['+Qry_out_storage_detail.fieldbyname('goods_specification').asstring +'],片序['+Qry_out_storage_detail.fieldbyname('px').asstring +'],库存数量为:'+inttostr(nCurrcount)+';是否继续填写?'),'系统提示',mb_yesno)=idno then            begin
                 if nCurrcount<=0 then
                   begin
                 Qry_out_storage_detail.Delete;
                  怎么样才能直接跳到最后一条(Qry_out_storage_detail.NEXT语句)                     end;             end;
         end;               if Qry_goods.Active then
         Qry_goods.Close;
         Qry_goods.ParamByName('goods_name').AsString:=Trim(DBGD_out_storage_detail.Fields[1].AsString);
         Qry_goods.ParamByName('goods_specification').AsString:=Trim(DBGD_out_storage_detail.Fields[2].AsString)+'%';
         Qry_goods.ParamByName('goods_place').AsString:=Trim(DBGD_out_storage_detail.Fields[3].AsString);
         Qry_goods.ParamByName('goods_subject').AsString:=Trim(DBGD_out_storage_detail.Fields[0].AsString);
         Qry_goods.Open;
Qry_out_storage_detail.NEXT;
END;

解决方案 »

  1.   

    当我判断我不要的记录后用Qry_out_storage_detail.DELETE删除记录后,直接再判断一下而不用退出循环
      

  2.   

    Qry_out_storage_detail.next下一条
    Qry_out_storage_detail.last最后一条
    Qry_out_storage_detail.piror上一条
    Qry_out_storage_detail.first第一条
      

  3.   

    begin
                     if nCurrcount<=0 then
                       begin
                     Qry_out_storage_detail.Delete;
                      怎么样才能直接跳到最后一条(Qry_out_storage_detail.NEXT)语句 中间的不不执行                   end;             end;
             end;
      

  4.   

    看得累了。。
    才明白,你是要跳出循环。while true do
      begin
      
       break;//跳出来了。 ^_^
     end;BTW:
    Qry_out_storage_detail.next下一条
    Qry_out_storage_detail.last最后一条
    Qry_out_storage_detail.piror上一条
    Qry_out_storage_detail.first第一条这样的操作也是可行的。只是只要一句:
    Qry_out_storage_detail.last最后一条
    qry_out_storage_detail.next;
      

  5.   

    各位大哥,我不是要跳出循环,我是在DBGRID中输入了多条记录,并且判断记录是否符合要求,不符合的自动删除,符合的留下,比如我有10条记录,第一条符合,第二条不符合,第三条不符合,其余都符合,我输入完10记录后,点一下'填写'按钮就可以实现输入的10条记录中第二、三条不符合的自己动删除,其余八条保留在DBGRID中,所以我要判断完第一条后,判断第二条时可以自动删除,并回头再次判断第三条。
      

  6.   

    table.first;
    for i:=0 to table.recordcount-1 do
    begin
    if 满足删除条件 then
    table.delete;
    end;