Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.20;
Скачать: CL | DM;

Вниз

DBGridEh и копирование   Найти похожие ветки 

 
fynjy1984 ©   (2005-02-03 08:52) [0]

При копировании строки из DBGridEh по CTRL+Ins и дальнейшей вставки (SHIFT+Ins) в другое место этой же таблицы все числовые значения вставляются нормально, а строковые не вставляются (остаются пустые поля), может кто знает как поправить.


 
jack128 ©   (2005-02-03 09:09) [1]

Я руками все поля копировал:

procedure TBaseDBElementFrame.btnCopyClick(Sender: TObject);
begin
 if FValidCopyBookmark then
 begin
   IbDataSet.FreeBookmark(FCopyBookmark);
   FValidCopyBookmark := False;
 end;
 if not IbDataSet.Active then Exit;
 FCopyBookMark := IbDataSet.GetBookmark;
 FValidCopyBookmark := True;
 btnPaste.Enabled := True;
end;

procedure TBaseDBElementFrame.IBDataSetBeforeClose(DataSet: TDataSet);
begin
 if FValidCopyBookmark then
 begin
   IbDataSet.FreeBookmark(FCopyBookmark);
   FValidCopyBookmark := False;
 end;
end;

procedure TBaseDBElementFrame.btnPasteClick(Sender: TObject);
var
 Values: array of Variant;
 CurBookMark: TBookMark;
 i: Integer;
begin
 if FValidCopyBookmark then
 begin
   CurBookMark := IbDataSet.GetBookmark;
   IbDataSet.DisableControls;
   try
     IbDataSet.GotoBookmark(FCopyBookmark);
     SetLength(Values, IbDataSet.FieldCount);
     for i := 0 to Length(Values) - 1 do
       Values[i] := IbDataSet.Fields[i].Value;
     IbDataSet.GotoBookmark(CurBookmark);
   finally
     IbDataSet.EnableControls;
     IbDataSet.FreeBookmark(CurBookmark);
   end;
   if not (IbDataSet.State in dsEditModes) then
     IbDataSet.Append;
   for i := 0 to IbDataSet.FieldCount - 1 do
     if IbDataSet.Fields[i].FieldName <> "ID" then
       IbDataSet.Fields[i].Value := Values[i];
 end;
end;



Страницы: 1 вся ветка

Текущий архив: 2005.02.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.03 c
3-1106027922
dark
2005-01-18 08:58
2005.02.20
Мастера Дельфи как избавиться от ошибки Duplicate resource(s)???


4-1104869339
Michael5
2005-01-04 23:08
2005.02.20
Как открыть файл под именем (с правами) другого пользователя?


3-1106044778
Sectey
2005-01-18 13:39
2005.02.20
Отслеживание Print на клиенте (ADO)


6-1102708946
=alexlp=
2004-12-10 23:02
2005.02.20
Как узнать активен ли TServerSocket.


1-1107760505
Homa_Programer
2005-02-07 10:15
2005.02.20
инсталлятор