powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Где объединять поля, в отчете или в запросе?
12 сообщений из 12, страница 1 из 1
Где объединять поля, в отчете или в запросе?
    #39952918
didgik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть некая прога в которой надо генерировать некие реестры.
Поля в табличке допустим такие: Правовая форма( Юр. лицо, ИП, Физ лицо); Имя; Отчество; Фамилия.
В отчете упрощенно есть три колонки. Юр ФИО, ИП ФИО, Физ ФИО. То есть, в зависимости от поля "Правовая форма", в соответствующую Колонку пишутся объединенные поля Имя; Отчество; Фамилия.
В проге соответственно есть запрос, который достает инфу, есть DBGrid который отображает инфу и есть отчет в FastReport который печатает инфу.
Есть два пути.
1. В запросе объединяем по условию поля и в итоге у нас, возвращается три поля допустим ЮРФИО, ИПФИО и ФИЗФИО.
2. Запрос простой, а поля объединяем при выводе в гриде и в отчете.

Вот думаю на каком варианте остановиться.
...
Рейтинг: 0 / 0
Где объединять поля, в отчете или в запросе?
    #39952926
didgik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пока писал, запутался сам )
В общем проблема вот в чем. Есть две проги. Обе должны выдавать идентичный отчет.
Первая прога с простым гридом с двумя полями (условно) Правовая форма и ФИО. Работает по второму способу, т.е. Простой запрос и логика в отчете.
Вторая прога со сложным гридом, идентичным отчету, т.е. три колонки. Юр ФИО, ИП ФИО, Физ ФИО и работает по первому способу, т.е. логика в запросе, а в гриде и отчете просто поля.
Соответственно внесение изменений при сохранении идентичности в обеих прогах стало несколько напряжно.
Надо привести к общему знаменателю.
...
Рейтинг: 0 / 0
Где объединять поля, в отчете или в запросе?
    #39952935
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
didgik
Вот думаю на каком варианте остановиться

На первом. А если не хочешь на первом - тогда на втором.
Код больше, меньше "ля-ля".
...
Рейтинг: 0 / 0
Где объединять поля, в отчете или в запросе?
    #39952936
didgik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ъъъъъ
didgik
Вот думаю на каком варианте остановиться

На первом. А если не хочешь на первом - тогда на втором.
Код больше, меньше "ля-ля".


Я пока остановился на двух. А надо на одном.
...
Рейтинг: 0 / 0
Где объединять поля, в отчете или в запросе?
    #39952946
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
didgik
Я пока остановился на двух. А надо на одном.

Буриданов осёл умер, не написав ни строчки кода.
...
Рейтинг: 0 / 0
Где объединять поля, в отчете или в запросе?
    #39952958
Gerasimenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
didgik,

авторЕсть два пути.
1. В запросе объединяем по условию поля и в итоге у нас, возвращается три поля допустим ЮРФИО, ИПФИО и ФИЗФИО.
2. Запрос простой, а поля объединяем при выводе в гриде и в отчете.

Если отталкиваться от стандартных контролов:
Лично я предпочитаю получать конечные данные на сервере, то бишь первый вариант.
При втором варианте, в зависимости от поставленной задачи придется использовать либо ADODataset1.FieldByName('NameField').OnGetText либо вычисляемое поле, либо писать доп код в DrawColumnCell + заморачиваться на экспорт куда нибудь: что ни есть хорошо.
Вы же не в StringGrid выводить будите результаты запросов?
...
Рейтинг: 0 / 0
Где объединять поля, в отчете или в запросе?
    #39953078
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
didgik> Я пока остановился на двух. А надо на одном.

А зачем (и кому?) надо? Чтобы код идентичный
поддерживать проще было или о чём речь?

P.S. В отчёте "объединять" можно и нужно,
а в гриде - нельзя. Правда, можно в датасете
вычисляемое поле, но тут уже возникают
вопросы типа почему вообще 3 колонки
вместо одной (как выглядело бы логичнее).
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Где объединять поля, в отчете или в запросе?
    #39953089
didgik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам
didgik> Я пока остановился на двух. А надо на одном.

А зачем (и кому?) надо? Чтобы код идентичный
поддерживать проще было или о чём речь?

P.S. В отчёте "объединять" можно и нужно,
а в гриде - нельзя. Правда, можно в датасете
вычисляемое поле, но тут уже возникают
вопросы типа почему вообще 3 колонки
вместо одной (как выглядело бы логичнее).

Надо мне. Поддерживать идентичность отчетов в двух прогах. Попробую сделать общий модуль для этого.

А три колонки, ну такое ТЗ.
...
Рейтинг: 0 / 0
Где объединять поля, в отчете или в запросе?
    #39953215
KreatorXXI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
didgik,

конечно первый вариант. Запрос он и есть запрос. А грид - сегодня этот грид, завтра другой.
...
Рейтинг: 0 / 0
Где объединять поля, в отчете или в запросе?
    #39953248
Beltar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Любые объединения на как можно более позднем этапе. Потому что объединять легко, разделять трудно.
...
Рейтинг: 0 / 0
Где объединять поля, в отчете или в запросе?
    #39953297
Vlad074
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сейчас в своей работе (именно для FastReport) выбираю второй вариант - вся логика в отчете.

Специфика такая, что ранее сделанные отчеты уже не должны отображаться по другому, и сложно изменить запрос, приходится хранить все эти ранее сделанные объединенные поля.
...
Рейтинг: 0 / 0
Где объединять поля, в отчете или в запросе?
    #39953307
didgik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad074
Сейчас в своей работе (именно для FastReport) выбираю второй вариант - вся логика в отчете.

Специфика такая, что ранее сделанные отчеты уже не должны отображаться по другому, и сложно изменить запрос, приходится хранить все эти ранее сделанные объединенные поля.


Да, еслиб не надо было выводить тоже самое в гриде.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Где объединять поля, в отчете или в запросе?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]