печать подчиненного отчета

svetlanaK
Дата: 27.11.2006 17:58:20
Добрый день! вот такой вопрос возник. Есть отчет с большим количеством полей. Поскольку это количество изначально ограничено - я разбила отчет на два - главнй и подчиненный. то есть в одном отчете (половинка) в области данных добавлен другой отчет - его вторая половинка. И вроде бы все на экране прекрасно, расчет происходит, данные на экране видно, а как только я хочу напечатать - так вместо второй половинки (подчиненного как бы отчета) только пустографка(((Чего только не далала! Обработка событий есть и в том и другом, и вместе писала, и раздельно! и в разные области запихивала...толку чуть. И как-то странно - раз напечатает, раз - нет...Помогите, пожалуйста! может, есть другие варианты разбиения моего отчета, подскажите, кто сталкивался с подобной проблемой!!!
nibbles
Дата: 28.11.2006 09:30:37
Было такое - причин может быть масса. Как минимум четыре:
1. событие print для одной и той же области печати может произойти более одного раза - при отображении на экране и, собственно, печати.
2. в случае, если отчет использует данные форм (в условии фильтрации или еще где-то), то при закрытии этих форм и последующей печати отчета эти данные для отчета становятся недоступными (непосредственно перед печатью отчет может запросить данные еще раз)
3. до момента печати данные, используемые в отчете, должны быть доступны, т.е. временную таблицу, на которой сидит отчет, можно удалять или очищать только после того, как отчет будет отправлен на печать.
4. в случае разрыва области данных на несколько страниц событие format для одного и того же экземпляра области данных происходит несколько раз - в моменты перехода указателя на эти страницы.

Попробуйте сразу отправить отчет на печать (или в файл SNP с помощью DoCmd.OutputTo) минуя стадию предварительного просмотра - сильно подозреваю, что пустографки в этом случае не будет. Если не поможет, то пример базы с данными, отчетом и пусковым кодом - в студию.
svetlanaK
Дата: 28.11.2006 13:13:07
Действительно, если отправить на печать сразу - минуя просмотр (делаю событие кнопки печати - макрос, в котором пишу - просмотр отчет) - то да, печатает. Проясню кое-что. Есть база данных, где поля - тип вагона, дата,дорога отправки и т д. Я делаю несколько запросов в нее, и на основе дальнейшей обработки этих запросов формирую поля в отчете - по горизонтали - дороги (17 шт) по вертикали - типы вагонов (тоже немало). но все умещается в оду страницу. Но полей больше 754.. потому и делю пополам. В обаботке события принт главного отчета пишу программу для 1 половинки, в обработке 2-ого (тоже репорт принт) - для подотчета. Вместе писать тоже пробовала, поля главного Me![поле1], подотчета - Report_F4_низ![поле1]. Ни так ни этак не помогает - только просмотр, печать через раз. А как вообще правильно?? изивините, если напрягаю, просто ни в одной из моих книг не нашла ответа на свои вопросы и спросить не у кого... не понимаю каким обраом перед печатью у меня вторая половина исчезает...какое событие ее очищает, и почему первая остается...
nibbles
Дата: 28.11.2006 14:33:21
если время поджимает, то пользуйтесь - DoCmd.OutputTo - эффект тот же, будто отправили на печать, но будет отображаться на экране в предварительном просмотре в Snapshot Viewer
если время не пожимает, то делайте облегченный вариант базы с минимумом данных и функций, жмите раром и выкладывайте на форум - будем вместе думать... на пальцах тяжело понять, что там у вас не работает.
svetlanaK
Дата: 29.11.2006 09:51:22
Спасибо Вам за соучастие и внимание к моей проблеме. пыталась все урезать по максимуму..все равно 300 кб в раре((( ну ничего, буду дальше думать. наверное что-то читать надо, где-то у меня логика хромает.