我自己写了一个函数,我还是第一次写函数,各位高手请指教!
procedure SetCmbDict2(myComBox: TComboBox; iDictEntry :integer;iDictEntry2 :integer);
var
MyQuery :TAdoQuery;
SQLCode,StrTemp: string;
i: integer;
begin
try
MyQuery:= TadoQuery.Create(nil);
try
with MyQuery do
begin
Connection := Adocon;
if Active then Close;
SQL.Clear;
SQLCode := ' set rowcount 0 select subentry,dict_entry, dict_prompt'
+ ' from run..dictionary '
+ ' where dict_entry = ' + IntTostr(iDictEntry)
+ ' or dict_entry = ' + IntTostr(iDictEntry2)
+ ' and subentry != -1 '
+ ' and access_level != 3 '
+ ' order by subentry';
SQL.Add(SQLCode);
Open;
if not MyQuery.IsEmpty then
begin
with myComBox do
begin
Items.Clear;
for i := 0 to MyQuery.RecordCount - 1 do
begin
strTemp := FieldByName('dict_entry').Asstring + '.' + FieldByName('subentry').Asstring + '.' + FieldByName('dict_prompt').AsString;
myComBox.Items.Add(strTemp);
myComBox.ItemIndex :=0;
MyQuery.Next;
end;
end;
end;
end;
except
MyQuery.Free;
end;
finally
MyQuery.Free;
end;
end;
请各位高手帮我看看错在那里?