powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
17 сообщений из 17, страница 1 из 1
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32246940
demyan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема следующая: программно создается отчет с помощью CreateReportControl, так вот когда создаваемые элементы подходят к концу страницы надо переходить на новую. Иначе получается следующий геморой: макс. длина отчета гдето 30000 с лишним (в координатах подставляемых в CreateReportControl) и дальше элементы просто не создаются - некуда их пихать места нет. Такая же проблема возникает, если допустим попробовать создать автоматом отчет из таблицы содержащей большое количество полей (допустим больше 30-40). Может кто подскажет чего делать.
...
Рейтинг: 0 / 0
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32247009
demyan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну неужели никто не знает ?
...
Рейтинг: 0 / 0
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32247017
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может я чего-то не понимаю, а что такое "новая страница отчета" в конструкторе?
...
Рейтинг: 0 / 0
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32247029
demyan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Конструктор вручную не используется - добавление полей идет программно и когда количество элементов на странице отчета переваливает за лист надо както переходить на новый лист, открывать новую страницу - типа переход страницы чтоли !!? Ну вот допустим создай таблицу из 50 полей и попробуй создать отчет на ее основе - ассеss скажет что элементы не влезают.
...
Рейтинг: 0 / 0
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32247032
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С какой это стати они не влезают?
Попробуй в тетрис поиграть. Авось сумеешь нормально хоть 150 полей в отчет запихнуть.
...
Рейтинг: 0 / 0
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32247036
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как я понимаю, больше нельзя. См. спецификации форм и отчетов ограничение по высоте 55.87=31678 твипов. Способ борьбы который я знаю - создание еще одного отчета и всовывание его подчиненным.
...
Рейтинг: 0 / 0
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32247043
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще один способ - распихать все по разным разделам отчета.
...
Рейтинг: 0 / 0
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32247101
demyan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все это хорошо - но допустим есть таблица в 100 полей и на ее основе генерится отчет - в ширину эти поля не влезут в один отчет - ну и как тогда быть ? Если пихать в подчиненный - то ограничения теже, а распихать по разделам - это как это ? Можно ли как то программно сделать переход на новую страницу - создать новую страницу отчета или нет ?
...
Рейтинг: 0 / 0
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32247108
demyan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хорошо - чтобы не было вопросов - приведу код - который генерит отчет - побробуйте заменить в цикле увеличить переменную с 30 ну допустим до 50-60 и вы поймете в чем дело !

ОтчПост1 и ОтчПост_Шаблон - просто можно пустые отчеты.

Код: plaintext
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.
Private Sub Кнопка29_Click()
Dim frm As Form
Dim rep As Report
    Dim ctlLabel As Label
    Dim ctlText As TextBox
    Dim intLabelX As Variant, intLabelY As Variant
    Dim intLabelX1_1 As Variant, intLabelY1_1 As Variant
    Dim intLabelX1_2 As Variant, intLabelY1_2 As Variant
    Dim intLabelZ As Variant
    Dim i As Integer

    
    DoCmd.DeleteObject acReport,  "ОтчПост1" 
    DoCmd.CopyObject ,  "ОтчПост1" , acReport,  "ОтчПост_Шаблон" 
        
    DoCmd.OpenReport  "ОтчПост1" , acDesign
    
    Set rep = Reports![ОтчПост1]

    intLabelX1_2 =  2800 
    
    For i =  6  To  30 
     Set ctlLabel = CreateReportControl(rep.Name, acLabel, acHeader, , , intLabelX1_2, _
                                   1000 ,  1000 ,  600 )
     Set ctlText = CreateReportControl(rep.Name, acTextBox, acDetail, , , intLabelX1_2, _
                                  0 ,  1000 ,  300 )
     intLabelX1_2 = intLabelX1_2 +  1000 
     
    Next
    
    DoCmd.Save acReport,  "ОтчПост1" 
    DoCmd.Close acReport,  "ОтчПост1" , acSavePrompt
    DoCmd.OpenReport  "ОтчПост1" , acViewPreview
    
End Sub
...
Рейтинг: 0 / 0
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32247114
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну нет такого понятия "новая страница". Ограничения отчета - высота раздела 55.87 см, общая (всех разделов) - около 5 метров, ширина 55.87. Все. И никаких новых страниц. Как я понимаю, проблема в ширине, мой совет касался высоты, по разделам тоже.
...
Рейтинг: 0 / 0
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32247126
sasha_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а какого собственно ражна нужно 100 полей пихать в один отчет?
кто его прочитать-то сможет?
не проще ли разбить на несколько, по смыслу?
(Новая страница-это понятие из текстового редактора. В шаблоне страниц
не бывает, там только структура.)
...
Рейтинг: 0 / 0
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32247127
demyan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да проблема в ширине ! Может есть какое решение как это обойти - ну предложите способ - ведь встречался же кто с этим - как боролись с таким гемороем !

Буду безумно благодарен ! Разработка программы ушла в аут - все на этой фигне повисло !
...
Рейтинг: 0 / 0
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32247142
demyan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну есть такая необходимость чтобы он шел непрерывно в ширину. Насчет того что в отчетах нет страниц - я знаю - некоректно выразился просто про страницы. И все таки есть ли решение такого казуса. Нет я конечно понимаю, что можно считать количество полей и как только их станет слишком много - создавать новый отчет и пихать остатки туда - и так до окончания полей. Но это слишком проблемно - может всеже есть способ както разрядить данную ситуацию другими способами - или все таки нет ?
...
Рейтинг: 0 / 0
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32247146
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А на чем печатать эти полметра, на плоттере? Если склеивать - сделать два, три отчета.
...
Рейтинг: 0 / 0
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32247175
АлексейЕ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Разберись с таблицей. (100 полей. Зачем?)
или же выводи в Excel
...
Рейтинг: 0 / 0
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32247205
sasha_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>можно считать количество полей и как только их станет слишком много -
>создавать новый отчет и пихать остатки туда - и так до окончания полей
если отчет предполагается печатать на обычном принтере, то это самый
простой и приемлемый вариант, имхо.
...
Рейтинг: 0 / 0
Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
    #32248282
lobodava
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отчет в MS Access в данном случае не помошник.
Правильно АлексейЕ говорит - выводи отчет в Excel.
Возможностей для форматирования не в пример больше чем в MS Access, да и ширина такого отчёта почти не ограничена.
Делал я как-то длиннющую портянку с графиком работ шириной метра два и высотой в метр, которая каждый день вывешивалась на стенку на всеобщее обозрение. Из MS Access создавался новый Excel файл и форматировалься в зависимости от данных. Причём програмирование на Excel VBA это просто песня: включил макрос на запись, сделал интерактивно нужные операции, остановил запись макроса и смотришь как твои действия в коде выглядят-СУПЕР!!!
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как в отчете программно перейти на новую страницу. Люди помогите пожалуйста !!!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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