Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
1 / 1 / 0
Регистрация: 13.06.2018
Сообщений: 35
1

Вывод отчета из Delphi в Excel через ADOQuery

13.06.2018, 23:18. Показов 2370. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ребятки, помогите пожалуйста, может я тупой просто, но нужно вывести отчет из Delphi в Excel из запроса в ADOQuery
Запрос SQL
T-SQL
1
2
SELECT Спецификация_расходов.[ИД_Спецификации], Спецификация_расходов.Обозначение_расходов, Спецификация_расходов.Количество, Спецификация_расходов.Сумма, Спецификация_расходов.ИД_Расхода, Спецификация_расходов.ИД_Вида,Расходы.Дата
FROM Спецификация_расходов INNER JOIN Расходы on(Спецификация_расходов.ИД_Расхода=Расходы.ИД_Расхода)
Проверял в самом MSSQL, там все выводит хорошо, но в делфи выводит не до конца, а если быть точным, то пропускает столбец один и дальше съезжает уже по значениям.
Код с выводом
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
var
Index: Integer;
Excel,Sheet: Variant;
begin
  Excel := CreateOleObject('Excel.Application');
  Excel.Application.EnableEvents := false;
  Excel.Workbooks.Open(GetCurrentDir() + '\Тесты.xlsx');
  Excel.Visible := true;
  Sheet:=Excel.WorkBooks[1].WorkSheets['Отчет'];
  Excel.Range['A5']:='№';
  Excel.Range['B5']:='Наименование закупки';
  Excel.Range['C5']:='Сумма';
  Excel.Range['E5']:='Количество';
  Excel.Range['F5']:='Номер расхода';
  Excel.Range['G5']:='Номер вида расходов';
  Excel.Range['H5']:='Дата закупки';
  Excel.Range['C1']:=dbeNumber.Text;
  Excel.Range['A18']:='Сотрудник: ' + dblLN.Text + '  ' +dblFN.Text + '  ' + dblPat.Text;
  Index:=6;//строчка, с которой начинается заполнение
   with DM.Query do begin //первая строчка в таблице
   repeat
   DM.Query.First;
   Sheet.Cells[Index,1]:= DM.Query.Fields.Fields[0].AsString;
   Sheet.Cells[Index,2]:= DM.Query.Fields.Fields[1].AsString;
   Sheet.Cells[Index,3]:= DM.Query.Fields.Fields[2].AsString;
   Sheet.Cells[Index,4]:= DM.Query.Fields.Fields[3].AsString;
   Sheet.Cells[Index,5]:= DM.Query.Fields.Fields[4].AsString;
   Sheet.Cells[Index,6]:= DM.Query.Fields.Fields[5].AsString;
   Sheet.Cells[Index,7]:= DM.Query.Fields.Fields[6].AsString;
   Inc(Index);//следующая строка в таблице
   DM.Query.Next;
   until eof
  Excel.Application.Quit;
end;
Плюс скрины как выводятся данные в SQL и Excel
Миниатюры
Вывод отчета из Delphi в Excel через ADOQuery   Вывод отчета из Delphi в Excel через ADOQuery  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.06.2018, 23:18
Ответы с готовыми решениями:

Связал таблицы в AdoQuery через Sql запрос, для отчета. Сам отчет делаю в FastReport
Связал таблицы в AdoQuery через Sql запрос, для отчета. Сам отчет делаю в FastReport. Но при...

Создание отчета из таблицы Delphi в Excel
Здравствуйте. Помоги пожалуйста, у меня база данных по учету комп.техники, и мне нужно создать...

Запрос по дате через AdoQuery (Delphi DateTimePicker1)
Доброго времени суток! Не могу написать запрос в AdoQuery2 для вывода тех дат которые равны ...

Предварительный просмотр отчета через Excel
Здравствуйте, проблема:подскажите как в Delphi перед выгрузкой в Excel выводить предварительный...

1
5860 / 4588 / 1448
Регистрация: 14.04.2014
Сообщений: 20,357
Записей в блоге: 20
14.06.2018, 14:32 2
ну, если посмотреть внимательно, то можно найти колонку D
1
14.06.2018, 14:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.06.2018, 14:32
Помогаю со студенческими работами здесь

Создание отчета в Delphi через FastReport
Ребят,срочно! 16 защита диплома, не могу через fast report сделать отчет. В общем, есть 2 таблицы,...

Вывод отчета через word
Здравствуйте, возникла такая проблема... я делаю вывод отчетов через word, нужно сделать...

Delphi 7. Вывод отчета в Excel
Ребят такая загвоздка у меня. Как с делфи с сетки грид вывести инфу в excel так что бы excel...

Создание листа в Excel через ADOQuery
Как создать (добавить) новый лист в Excel через ADOQuery???


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru