Форум: "Базы";
Текущий архив: 2006.06.11;
Скачать: [xml.tar.bz2];
ВнизНеправильно записывает из базы в EXel Найти похожие ветки
← →
Сергей И (2006-04-17 18:10) [0]1 Godex EZ-2 203dpi qqqqqqq \\ST-52 sergey 17.04.2006
2 Godex EZ-2 203dpi qqqqqqq \\ST-52 sergey 17.04.2006
3 Godex EZ-2 203dpi qqqqqqq \\ST-52sergey 17.04.2006
4 hp LaserJet 1320 PCL qqq l \\192.168.0.90 oleg17.04.2006
имеются вот такие данные(смотри выше) в базе данных
когда я пытаюсь записать из в файл exel то получается чтото, такое ->>
Godex EZ-2 203dpi Спартак.xls \\192.168.0.90 oleg17.04.2006
Godex EZ-2 203dpi Спартак.xls \\192.168.0.90 oleg17.04.2006
Godex EZ-2 203dpi Спартак.xls \\192.168.0.90 oleg17.04.2006
hp LaserJet 1320 PCL Спартак.xls \\192.168.0.90 oleg17.04.2006
hp LaserJet 1320 PCL Спартак.xls \\192.168.0.90 oleg17.04.2006
а вот сам код перезаписи из базы в exel
->>
function save_file(dbgrid:tdbgrid; FileName: string):boolean;
const
xlWBATWorksheet = -4167;
var
Row, Col: Integer;
XLApp, Sheet: OLEVariant;
begin
form1.DBGrid1.DataSource.DataSet.First;
Result := False;
XLApp := CreateOleObject("Excel.Application");
try
XLApp.Visible := False;
XLApp.Workbooks.Add(xlWBatWorkSheet);
Sheet := XLApp.Workbooks[1].WorkSheets[1];
Sheet.Name := "Otchet";
for col := 0 to form1.DBGrid1.Columns.Count -1 do
begin
for row := 0 to form1.DBGrid1.DataSource.DataSet.RecordCount do
begin
Sheet.Cells[row+1,col+1] :=form1.DBGrid1.Fields[col].AsString ;
form1.DBGrid1.DataSource.DataSet.next;
end;end;
try
XLApp.Workbooks[1].SaveAs(path+FileName);
Result := True;
except
end;
finally
if not VarIsEmpty(XLApp) then
begin
XLApp.DisplayAlerts := False;
XLApp.Quit;
XLAPP := Unassigned;
Sheet := Unassigned;
end;
end;
end;
в чем дело подскажите?
← →
Сергей И (2006-04-18 08:25) [1]Удалено модератором
Примечание: Создание пустых сообщений
← →
Сергей И (2006-04-18 10:18) [2]Может быть не втой последовательности перебираю записи базы данных?
← →
Johnmen © (2006-04-18 10:25) [3]Естественно, ошибка в неверном вложении циклов. Или же в отсутствии First для начала цикла по записям.
А также ошибка в верхней границе цикла по записям.
← →
_RusLAN © (2006-04-18 10:36) [4]Сергей И (17.04.06 18:10)
hp LaserJet 1320 PCL Спартак.xls \\192.168.0.90 oleg17.04.2006
hp LaserJet 1320 PCL Спартак.xls \\192.168.0.90 oleg17.04.2006
form1.DBGrid1.DataSource.DataSet.RecordCount - 1
← →
Сергей И (2006-04-18 10:37) [5]А что точно не так не подскажешь?
← →
_RusLAN © (2006-04-18 10:45) [6]Сергей И (17.04.06 18:10)
form1.DBGrid1.Columns.Count -1
DBGrid может содержать статические поля(вроде так они называются) и их количество и порядок может не соответствовать набору данных
← →
Сергей И (2006-04-18 10:48) [7]Все спасибо я разобрался!
← →
_RusLAN © (2006-04-18 10:49) [8]лучше
перебирать записи НД.
а во вложеном цыкле пробегать по полям
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2006.06.11;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.01 c