Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.024 c
1-1107156918
vasili
2005-01-31 10:35
2005.02.20
РАБОТА с объектом ActionToolBar, XPColorMap1 и прочим


4-1105004843
Molchanov
2005-01-06 12:47
2005.02.20
Имя модуля, загрузившего DLL


3-1106265319
ataker
2005-01-21 02:55
2005.02.20
Програмное создание поля Field в базе данных


3-1106054433
zunder
2005-01-18 16:20
2005.02.20
DBGrid с поддержкой перемещения записей(строк)


1-1107116061
newid
2005-01-30 23:14
2005.02.20
помогите сделать временную копию объекта




   Наверх