Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
12 / 1 / 2
Регистрация: 02.02.2012
Сообщений: 122

Отчёт в FastReport. Заменить данные с другой таблицы

13.08.2015, 17:50. Показов 2667. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Впринципе, все данные в одной таблице, но есть одно поле id_user и там записаны только порядковые номера юзеров, а в другой таблицы записано его ФИО. Так вот в отчёте выводится вместо ФИО его порядковый номер...

Пробую через запрос:
SQL
1
SELECT * FROM bases INNER JOIN users ON bases.id_user=users.n WHERE bases.da LIKE '''+FormatDateTime('yyyy-mm', Dater.Date)+'%''
Вот, оно все равно мне номер юзера пишет...
Подскажите, как тот номер в отчете поменять на ФИО....
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.08.2015, 17:50
Ответы с готовыми решениями:

Выбрать данные из таблицы и заменить один столбец с id значениями из другой таблицы
Есть таблица A: A.ID | A.B_ID и таблица B: B.ID | B.TEXT где A.B_ID -> B.ID является указателем на соответствующую строку в...

Отчет в FastReport по выбранной дате из таблицы
var d,string; begin d:=DBGrid_History.SelectedField.Text; n:= edit1.Text; ADOQueryReport1.Active:=false; ...

Отчет FastReport не отображает новые данные
Здравствуйте, если запустить отчет FastReport, то он выводиться как и должно, но если не перезагружать приложение и добавить строчку в...

16
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,609
13.08.2015, 18:35
Цитата Сообщение от MT-11 Посмотреть сообщение
Вот, оно все равно мне номер юзера пишет
Что просишь, то и пишет.
ЗАПРАШИВАНИЕ МНОГОЧИСЛЕННЫХ ТАБЛИЦ ТАКЖЕ КАК ОДНОЙ
0
12 / 1 / 2
Регистрация: 02.02.2012
Сообщений: 122
14.08.2015, 08:37  [ТС]
northener, Что-то все равно я "вкурить" не могу... Если не трудно, дайте пример как это сделать...
0
11 / 11 / 7
Регистрация: 23.07.2015
Сообщений: 62
14.08.2015, 09:03
открой отчет в редакторе FastReport'a найди поле где должна быть фамилия, и замени ссылку на поле на id_user на ссылку на поле с его фамилией
0
12 / 1 / 2
Регистрация: 02.02.2012
Сообщений: 122
14.08.2015, 09:12  [ТС]
antojgo, Та делал я так, то оно мне выводит только первое ФИО с таблицы...
0
11 / 11 / 7
Регистрация: 23.07.2015
Сообщений: 62
14.08.2015, 11:55
в каждой записи выдает первую фамилию? если да то проверь запрос, что он выдает
или один раз вывел фамилию и дальше молчит?
сколько всего записей выдает запрос и выдает отчет?
0
12 / 1 / 2
Регистрация: 02.02.2012
Сообщений: 122
14.08.2015, 12:15  [ТС]
Да, выдает первую фамилию...
запрос у меня как в первом посте....

Для наглядности структура таблиц:
таблица bases:
1. n ------ счётчик (уникальное)
2. da ----- дата
3. id_user -- числовое
4. f4 ------- текст
5. f5 ------- текст
6. f6 ------- текст

таблица users
1. n ------ счётчик (уникальное)
2. names -- текст

вот нада чтоб с таблицы users поля names подменяло в поле is_user
0
11 / 11 / 7
Регистрация: 23.07.2015
Сообщений: 62
14.08.2015, 13:30
Цитата Сообщение от MT-11 Посмотреть сообщение
вот нада чтоб с таблицы users поля names подменяло в поле is_user
так в запросе пропиши
SQL
1
SELECT users.names AS is_user, ...
1
12 / 1 / 2
Регистрация: 02.02.2012
Сообщений: 122
14.08.2015, 14:22  [ТС]
Спасибо, но если так пропишу
SQL
1
SELECT users.names AS id_user, * FROM bases INNER JOIN users ON id_user=users.n  WHERE da LIKE '''+FormatDateTime('yyyy-mm', Dater.Date)+'%''
то дает ошибку
Миниатюры
Отчёт в FastReport. Заменить данные с другой таблицы  
0
11 / 11 / 7
Регистрация: 23.07.2015
Сообщений: 62
14.08.2015, 14:39
это говорит о том что в fqBase описано поле id_user с типом integer, но он получает значения типа WideMemo
пересоздай field в fqBase с новым типом и будет работать
но этот вариант - костыль, кто его знает где у тебя это поле используется
по хорошему надо проверять фастрепорт, почему там не выводятся фамилии
проверь,
Цитата Сообщение от MT-11 Посмотреть сообщение
Да, выдает первую фамилию...
только в первой строке или вкаждой строке первая фамилия?
0
12 / 1 / 2
Регистрация: 02.02.2012
Сообщений: 122
14.08.2015, 16:13  [ТС]
antojgo, Только что экспериментировал, короче, выдает ту фамилию в каждой записи на которой стоит курсор в таблице users. Если перед этим запросом поставить fqUser.First то везде первая фамилия....
0
11 / 11 / 7
Регистрация: 23.07.2015
Сообщений: 62
14.08.2015, 16:29
в отчете на какую query ссылается поле с фамилией, на fqUser или на ту где этот запрос
Цитата Сообщение от MT-11 Посмотреть сообщение
SELECT * FROM bases INNER JOIN users ON bases.id_user=users.n WHERE bases.da LIKE '''+FormatDateTime('yyyy-mm', Dater.Date)+'%''
?
0
12 / 1 / 2
Регистрация: 02.02.2012
Сообщений: 122
14.08.2015, 16:34  [ТС]
Ну на fqUser... или как
0
11 / 11 / 7
Регистрация: 23.07.2015
Сообщений: 62
14.08.2015, 16:42
как я понимаю основные данные для отчета берутся из fqBase (или другая кверя с запросом на который я ссылался в предыдущем сообщении), так?
если так то - значит и фамилию надо из него же брать
если нет, то плохой я телепат и выкладывай код
0
12 / 1 / 2
Регистрация: 02.02.2012
Сообщений: 122
14.08.2015, 16:48  [ТС]
Ну вроде все правильно...
вот код, на всяк-пожарное, вызова отчёта
Delphi
1
2
3
4
5
6
7
8
  fqBase.Close;
  fqBase.SQL.Clear;
  fqBase.SQL.Add('SELECT * FROM bases LEFT JOIN users ON id_user=users.n  WHERE da LIKE '''+FormatDateTime('yyyy-mm', Dater.Date)+'%''');
  fqBase.SQL.Add('order by da');
  fqBase.Open;
  fqBase.Active:=True;
  fqBase.First;
  rZMoutch.ShowReport();
Да, я тож так понимаю что нада брать фамилию из fqBase, но когда я подлючил базу к фастРепорту то там нету ссылки на фамилию, тобиш, есть только [frxDBDataset1."id_user"] а когда меняю id_user на names оно мне говорит что нету такого...
0
11 / 11 / 7
Регистрация: 23.07.2015
Сообщений: 62
14.08.2015, 16:51
Лучший ответ Сообщение было отмечено MT-11 как решение

Решение

запрос видимо правил после подключения квери к фастрепорту
обнови список полей у квери
обнови список полей в фастрепорте
1
12 / 1 / 2
Регистрация: 02.02.2012
Сообщений: 122
14.08.2015, 17:16  [ТС]
Ой, спасибо за помощь....
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.08.2015, 17:16
Помогаю со студенческими работами здесь

Отчет FastReport должен брать данные из БД Access
Доброго времени суток уважаемые коллеги:)...у меня появилась одна огромная проблема:wall: - и я решил обратиться за помощью к...

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

Заменить значение ключа из одной таблицы именем из другой таблицы в форме
Здравствуйте! Есть две таблицы. Одна таблица называется "Посуда" с полями "Ключ посуды" и "Наименование посуды". Эта...

Как заменить значения одной таблицы на id другой таблицы при совпадении значений?
как заменить значения одной таблицы на id другой таблицы при совпадении значений есть таблица в ней есть значения, эти значения...

Данные из таблицы в отчет по заданному времени
Пытаюсь вывести данные из таблицы в отчет по заданному времени. Запрос идеально работает, но через форму чтобы там не писал, выводит всю...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru