| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Как напечатать форму с полями из текстового файла |
| Автор: Sliva 29.5.2009, 17:09 | ||
| Привет! Помогите, пожалуйста, в моей проблеме! Есть текстовый файл вида: 000:111:сумма:ФИО Мне нужно распечатать каждого человека с выданной ему суммой, я пробовала использовать Quick report, но у меня не получается, потому что у меня получается "вытащить" qrStringsBand только одно текстовое поле
а с суммой не получается. Помогите, пожалуйста или подскажите лучший вариант Очень надеюсь на вашу помощь! |
| Автор: Alkash 29.5.2009, 17:18 |
| qrStrBand - это что? |
| Автор: Sliva 29.5.2009, 17:26 | ||
это компонент TQRStringsBand в Quick report для текстовых записей |
| Автор: Sliva 29.5.2009, 18:58 | ||
Делаю теперь так:
Но ПЕЧАТАЕТ только первую сумму :( помогите, пожалуйста! В чем моя ошибка????? |
| Автор: Keeper89 29.5.2009, 21:39 |
| QuickRep1NeedData вызывается один раз? |
| Автор: Sliva 29.5.2009, 21:46 |
| Да, один раз, причем ошибка вот в чем. Получается в отчете: Иванов И.И. 1000 ПетровП.П. 1000 Сидоров С.С. 1000 .... Иванов И.И. 2000 ПетровП.П. 2000 Сидоров С.С. 2000 ... Иванов И.И. 3000 ПетровП.П. 3000 Сидоров С.С. 3000? а должно быть: Иванов И.И. 1000 ПетровП.П. 2000 Сидоров С.С. 3000 OnneedData вызываю 1 раз уже после OnPreview. Мне кажется, что где-то здесь и ошибка. |
| Автор: Keeper89 29.5.2009, 22:08 | ||
А если переписать так:
Насколько я вижу что-то заполняется еще в Preview, а потом вызывается еще раз. З.Ы. Дополните фрагмент кода. чтобы он был относительно самостоятельным. Например что такое kol? Плюс объясните вкратце что делает каждая процедура, потому что мне кажется у вас идет дублирование вывода. |
| Автор: Sliva 29.5.2009, 23:21 | ||||||||
Если так переписать, то весь список с фамилиями будет выведен 1 раз, но сумма у каждого будет стоять последняя :( В Preview заполняются фамилии, а kol - количество всех людей.
Ну а на форме с самим отчетом стоит только:
Мне тоже кажется, что здесь дублирование, но я не пойму - где :( Помогите, пожалуйста! |
| Автор: Keeper89 29.5.2009, 23:54 | ||||
А зачем нужна строка
в QuickRep1NeedData? Я бы переписал так: (попробуйте)
|
| Автор: Sliva 30.5.2009, 10:58 |
| Я попробовала, результат такой же Может быть, я не в том месте заполняю фамилии и это надо делать не в Preview? Я пробовала заполнять фамилии в событии OnNeedData, но снова получилось неправильно. Помогите, пожалуйста! |
| Автор: Akella 30.5.2009, 11:06 |
| Возьми какой нибудь MemDataSet. Загрузи в него всё, и подключи к отчёту. |
| Автор: Sliva 30.5.2009, 12:39 |
| Я ни разу не использовала этот компонент (MemDataSet) :( На какой вкладке он находится и есть ли там стандартные методы загрузки - типа LoadFromFile? |
| Автор: Keeper89 30.5.2009, 12:55 |
| Проект прикрепить можете? |
| Автор: Sliva 30.5.2009, 13:46 |
| Прикрепила |
| Автор: Sliva 30.5.2009, 14:05 |
| А это пример файла из которого я беру фио и суммы |
| Автор: Keeper89 30.5.2009, 14:13 |
| У меня вообще пустой отчет выводится, ни ФИО, ничего. |
| Автор: Sliva 30.5.2009, 14:18 |
| Я прикрепила еще текстовый файл, его надо открыть и потом нажать на печать удостоверений. |
| Автор: Keeper89 30.5.2009, 16:26 | ||
Повозился, кое-что получилось.
На всякий случай прикрепляю измененный проект. |
| Автор: Sliva 30.5.2009, 16:34 |
| о!!!!!!!!!!!!!!!!!!!!!! СПАСИБО ОГРОМННЕЙШЕЕ!!!!!!!!!!! Получается, что не нужно было заполнять qrStringsBand??? |
| Автор: Keeper89 30.5.2009, 16:51 |
| Ну не то что бы не надо. Я сам никогда не работал с QuickReport (отчеты в Word для меня привычнее), но по-моему надо создавать один Band и через добавление данных в QuickRep1NeedData он сам "расксерит" их в необходимом кол-ве. Что я и сделал, собственно. |