procedure TDataupdateform.BitBtn1Click(Sender: TObject);
begin
 with UpdatedataModule.t_student do
 begin
   if spinedit1.Text='' then
   begin
     showmessage('请输入学号:');
     spinedit1.SetFocus;
     exit;
   end;
   if not locate('sno',vararrayof([spinedit1.text]),[loPartialKey]) then
   begin
      showmessage('无此记录,不能修改!');
      exit;
   end;
   edit;
   fieldbyname('name').asstring:=edit1.text;
   fieldbyname('sno').asstring:=spinedit1.text;
   fieldbyname('sex').asstring:=edit3.text;
   fieldbyname('age').asstring:=edit4.text;
   fieldbyname('entrance').asdatetime:=datetimepicker1.date;
   post;
   showmessage('修改成功!');
 end;
end;
locate('sno',vararrayof([spinedit1.text]),[loPartialKey])
报错“Undeclared identifier: 'LopartialKey'”

解决方案 »

  1.   

    你可以先定义一个变量
    var
      searchpwd : TLocateoptions;
      locatesuccess : boolean;
    begin
      searchpwd := [LopartialKey];
      locatesuccess := locate('sno',vararrayof([spinedit1.text]),searchpwd);  
       
      

  2.   

    最终调试成功!谢谢各位鼎立相注助!
    unit dataupdateunit;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, Buttons, Spin, ComCtrls,DB;//定义DB.
    .
    .
    .
    .var
      dataupdateform: Tdataupdateform;
      searchpwd:TLocateoptions;
    implementationuses UpdatedataModuleunit;{$R *.dfm}procedure Tdataupdateform.BitBtn1Click(Sender: TObject);
    begin
    with UpdatedataModule.t_student do
     begin
       if spinedit1.Text='' then
       begin
         showmessage('请输入学号:');
         spinedit1.SetFocus;
         exit;
       end;
       searchpwd:=[LopartialKey];
       if not locate('sno',vararrayof([spinedit1.text]),searchpwd) then
       begin
          showmessage('无此记录,不能修改!');
          exit;
       end;
       edit;
       fieldbyname('name').asstring:=edit1.text;
       fieldbyname('sno').asstring:=spinedit1.text;
       fieldbyname('sex').asstring:=edit3.text;
       fieldbyname('age').asstring:=edit4.text;
       fieldbyname('entrance').asdatetime:=datetimepicker1.date;
       post;
       showmessage('修改成功!');
     end;
    end;