Обсуждение возникших проблем, предложений и ошибок UniDAC компонентов
-
Akella
- Сообщения: 217
- Зарегистрирован: Пн 02 апр 2012 14:41
Сообщение
Akella » Ср 11 апр 2012 22:00
Есть предложение добавить новое свойство с именем FBN. Т.е. чтобы параллельно с FieldByName можно было бы использовать FBN
Пример
Код: Выделить всё
UniQuery1.FBN('user_name').AsString := 'Вася Пупкин';
это сократит код
-
AndreyZ
- Devart Team
- Сообщения: 328
- Зарегистрирован: Чт 08 сен 2011 13:18
Сообщение
AndreyZ » Чт 12 апр 2012 09:53
Здравствуйте,
Вы можете создать свой класс унаследованный от TUniQuery и добавить метод FBN в него. Например:
Код: Выделить всё
TMyUniQuery = class(TUniQuery)
public
function FBN(const FieldName: string): TField;
end;
function TMyUniQuery.FBN(const FieldName: string): TField;
begin
Result := FieldByName(FieldName);
end;
procedure TMainForm.BitBtnClick(Sender: TObject);
var
q: TMyUniQuery;
begin
q := TMyUniQuery.Create(nil);
try
q.Connection := UniConnection;
q.SQL.Text := 'select * from table';
q.Open;
q.Edit;
q.FBN('fieldname').AsString := 'dfsf';
q.Post;
finally
q.Free;
end;
end;
-
Akella
- Сообщения: 217
- Зарегистрирован: Пн 02 апр 2012 14:41
Сообщение
Akella » Чт 12 апр 2012 11:05
Но тогда я не смогу использовать компонент в дизайне?
Мне придётся создавать, уничтожать и настраивать его в коде? Это не очень удобно.
-
AndreyZ
- Devart Team
- Сообщения: 328
- Зарегистрирован: Чт 08 сен 2011 13:18
Сообщение
AndreyZ » Чт 12 апр 2012 15:22
Вы можете создать свой компонент (используя главное меню Delphi->Component->New Component) унаследованный от TUniQuery с любой необходимой Вам функциональностью и установить его (используя главное меню Delphi->Component->Install Component). В этом случае Вы сможете использовать его как в run-time так и в design-time.