Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 04.05.2014
Сообщений: 25
1

Формирование отчета

31.05.2014, 12:11. Просмотров 616. Ответов 2
Метки нет (Все метки)

У меня есть БД, с данными о студентах, также и о его родителях. Когда я вывожу данные на печать то в строке с данными о студенте выводится лишь одна запись с данными его родителях. Это ладно если один родитель а если два.
Код для вывода следующий:
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
procedure TForm8.Button2Click(Sender: TObject);
begin
memo1.Lines.Clear;
memo1.Lines.Add('<html>');
memo1.Lines.Add('<head>');
memo1.Lines.Add('<title>Отчет(список группы)</title>');
memo1.Lines.Add('<style>');
memo1.Lines.Add('table {');
memo1.Lines.Add('width: 100%; /* Ширина таблицы */');
memo1.Lines.Add(' border-collapse: collapse; /* Убираем двойные линии между ячейками */');
memo1.Lines.Add('}');
memo1.Lines.Add('td, th {');
memo1.Lines.Add('padding: 3px; /* Поля вокруг содержимого таблицы */');
memo1.Lines.Add('border: 1px solid #000; /* Параметры рамки */');
memo1.Lines.Add('}');
memo1.Lines.Add('th {');
memo1.Lines.Add('background: #afd792; /* Цвет фона */');
memo1.Lines.Add('color: #333; /* Цвет текста */');
memo1.Lines.Add('}');
memo1.Lines.Add('tbody tr:hover {');
memo1.Lines.Add(' background: #afd792; /* Цвет фона при наведении */');
memo1.Lines.Add('color: #fff; /* Цвет текста при наведении */');
memo1.Lines.Add('}');
memo1.Lines.Add('</style>');
memo1.Lines.Add('<body>');
memo1.Lines.Add('Список студентов группы "'+datamodule2.Группы.FieldByName('Наименование').AsString+'"');
memo1.Lines.Add('<table');
memo1.Lines.Add('<tr>');
memo1.Lines.Add('<th>Фамилия</th>');
memo1.Lines.Add('<th>Имя</th>');
memo1.Lines.Add('<th>Отчество</th>');
memo1.Lines.Add('<th>День рождения</th>');
memo1.Lines.Add('<th>Пол</th>');
memo1.Lines.Add('<th>Город</th>');
memo1.Lines.Add('<th>Адрес</th>');
memo1.Lines.Add('<th>Фактический адрес</th>');
memo1.Lines.Add('<th>Школа</th>');
memo1.Lines.Add('<th>Инвалидность</th>');
memo1.Lines.Add('<th>Армия</th>');
memo1.Lines.Add('<th>Фамилия родителя</th>');
memo1.Lines.Add('<th>Имя родителя</th>');
memo1.Lines.Add('<th>Отчество родителя</th>');
memo1.Lines.Add('<th>Вид родства</th>');
memo1.Lines.Add('<th>Телефон</th>');
memo1.Lines.Add('<th>Место работы</th>');
memo1.Lines.Add('</tr>');
datamodule2.Студенты.First;
while not datamodule2.Студенты.eof do begin
memo1.Lines.Add('<tr><td>'+(datamodule2.Студенты.FieldByName('Фамилия').AsString)+'</td>');
memo1.Lines.Add('<td>'+(datamodule2.Студенты.FieldByName('Имя').AsString)+'</td>');
memo1.Lines.Add('<td>'+(datamodule2.Студенты.FieldByName('Отчество').AsString)+'</td>');
memo1.Lines.Add('<td>'+(datamodule2.Студенты.FieldByName('Дата_рождение').AsString)+'</td>');
memo1.Lines.Add('<td>'+(datamodule2.Студенты.FieldByName('Пол').AsString)+'</td>');
memo1.Lines.Add('<td>'+(datamodule2.Студенты.FieldByName('Город').AsString)+'</td>');
memo1.Lines.Add('<td>'+(datamodule2.Студенты.FieldByName('Адрес').AsString)+'</td>');
memo1.Lines.Add('<td>'+(datamodule2.Студенты.FieldByName('Фактический_адрес').AsString)+'</td>');
memo1.Lines.Add('<td>'+(datamodule2.Студенты.FieldByName('Школа').AsString)+'</td>');
memo1.Lines.Add('<td>'+(datamodule2.Студенты.FieldByName('Инвалидность').AsString)+'</td>');
memo1.Lines.Add('<td>'+(datamodule2.Студенты.FieldByName('Армия').AsString)+'</td>');
memo1.Lines.Add('<td>'+(datamodule2.Родители.FieldByName('Фамилия').AsString)+'</td>');
memo1.Lines.Add('<td>'+(datamodule2.Родители.FieldByName('Имя').AsString)+'</td>');
memo1.Lines.Add('<td>'+(datamodule2.Родители.FieldByName('Отчество').AsString)+'</td>');
memo1.Lines.Add('<td>'+(datamodule2.Родители.FieldByName('Вид_родства').AsString)+'</td>');
memo1.Lines.Add('<td>'+(datamodule2.Родители.FieldByName('Телефон').AsString)+'</td>');
memo1.Lines.Add('<td>'+(datamodule2.Родители.FieldByName('Место_работы').AsString)+'</td></tr>');
datamodule2.Студенты.Next;
end;
memo1.Lines.Add('</table>');
memo1.Lines.Add('</body>');
memo1.Lines.Add('</html>');
if savedialog1.Execute then
Memo1.Lines.SaveToFile(savedialog1.FileName);
end;
0
Миниатюры
Формирование отчета  
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.05.2014, 12:11
Ответы с готовыми решениями:

Формирование отчета
Добрый день! Люди добрые подскажите кто чем может. У меня есть 2 вопроса. Есть БД Access, в...

Формирование отчета...горю...
Привет всем программистам и тем, кто только учится!)) голову сломала, ночью уже сниться, а потом...

SQL запрос формирование отчета
Уважаемые программисты, не могу разобраться с такой задачей. Таблица: поля такие источник | ...

Формирование отчета за определенный промежуток времени
Добрый день! Делаю отчет за определенный промежуток времени. Выдает ошибку &quot;Unterminated string&quot;...

2
Эксперт Pascal/Delphi
1091 / 580 / 119
Регистрация: 13.02.2009
Сообщений: 3,299
31.05.2014, 14:08 2
Почитал бы литература . отчет из Delphi можно через RaveRaport , QuickRep , FastReport кто вам посоветовал HTML
0
0 / 0 / 0
Регистрация: 04.05.2014
Сообщений: 25
31.05.2014, 14:25  [ТС] 3
Rove report там такая же каша и т.д
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.05.2014, 14:25

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

Формирование отчета под разными пользователями. Нет прав доступа к полю отчёта.
Добрый день! Как может быть такая штука - захожу под одним пользователем, запускаю отчёт, всё...

Формирование отчета
Здравствуйте! Никак не могу разобраться. Я создал отчет с нуля. Мне нужно при выборе элемента...

Формирование отчета
Всем здравствуйте, подскажите, пожалуйста, как сформировать в отчете 1с 8.3 количество единиц...

Формирование отчёта
Добрый день, есть форма из которой надо вывести некоторые данные, всё вроде работало но сейчас...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.