Главная страница
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.052 c
1-1106937254
Saimon
2005-01-28 21:34
2005.02.20
Кириллица в латиницу и инверсия регистра.


4-1104130031
KostR
2004-12-27 09:47
2005.02.20
Как при помощи Delphi передать данные с микроконторллера на ЭВМ


1-1106386797
Саша
2005-01-22 12:39
2005.02.20
Блокировка папок


4-1104517983
Zahar
2004-12-31 21:33
2005.02.20
Программа дефрагментации диска


3-1106415836
Mortal
2005-01-22 20:43
2005.02.20
Вопрос про Rave Reports