powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как узнать реальную высоту поля в отчете?
25 сообщений из 108, страница 3 из 5
Как узнать реальную высоту поля в отчете?
    #39056462
Банджо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__Michelle, да, но все таки не все ими определяется, пришлось немного повозиться чтобы навести красоту )
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056474
Банджо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Однако проверил по .Top - получается что высота страницы на 14000.
Поля страницы по 2 см.

Почему у вас 7800 указано, от чего это зависит и что брать за опору?
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056476
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А я думаю (это сугубо мое мнение) что надо отказаться от кода VBA и не скрывать какие-бы то ни было поля, а исключить их вывод еще на уровне RecordSource
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056490
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в примере Michelle:
-отчет не имеет источника данных
-в области данных 6 полей (в том что перенос будет правильно работать она сомневается-и прально делает)
при правильно сделанном отчете (источник, 1 поле в области данных все работает как надо-без изменений каких-либо свойств-только расширение)
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056491
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdkuА я думаю (это сугубо мое мнение) что надо отказаться от кода VBA и не скрывать какие-бы то ни было поля, а исключить их вывод еще на уровне RecordSourceРечь идет не о скрытии полей, а о их расширении и разрывах полей между страницами.
Наполнение полей может быть разным, отсюда и разная заполненность страницы.
Банджо__Michelle, да, но все таки не все ими определяется, пришлось немного повозиться чтобы навести красоту ) Вот сделали бы моим способом, и возиться бы не пришлось.
Think Different, как говорится.)))
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056494
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Банджо,
процедура ОбластьДанных_Print у меня в примере не корректна, надо бы так
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
Private Sub ОбластьДанных_Print(Cancel As Integer, PrintCount As Integer)
h = Me.Controls("Поле1").Height
For i = 2 To 13
   h = h + Me.Controls("Поле" & i).Height
   If h > 9000 Then Me.Controls("КонецСтраницы" & i - 1).Visible = True: h = Me.Controls("Поле" & i).Height Else Me.Controls("КонецСтраницы" & i - 1).Visible = False
   r(i - 1) = Me.Controls("КонецСтраницы" & i - 1).Visible
Next i
If j = 0 Then j = 1: Cancel = True
End Sub



где 9000 - приблизительная высота страницы минус сумма высоты верхнего и нижнего поля (при альбомной её ориентации)
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056498
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdkuв примере Michelle:
-отчет не имеет источника данных
-в области данных 6 полей (в том что перенос будет правильно работать она сомневается-и прально делает)
при правильно сделанном отчете (источник, 1 поле в области данных все работает как надо-без изменений каких-либо свойств-только расширение)Чего-чего?
Какая разница, откуда поступили данные - из запроса или заданы в конструкторе?
В том, что мой способ будет работать правильно, я не сомневаюсь. Где увидели мои сомнения?
Кто сказал, что "правильно сделанный отчет, это одно поле в области данных"?
Абсолютно неверно.
Не только бухгалтерия существует.
Не делали Вы, похоже, медицинских документов...
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056499
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Банджо....Мне нужно знать реальную высоту поля чтобы вычислить какие поля переносить на другую страницу.Все это делается когда расширение устанавливается в "ДА".
Все уже сделано до нас.Не изобретайте велосипед
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056508
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdkuв примере Michelle:
......
-в области данных 6 полей
............Единственное ограничение моего способа состоит в том, что
максимальное количество уровней группировки в отчете - 10,
поэтому, с учетом заголовков и примечаний, можно иметь максимум только 21 поле по вертикали.
Но вряд ли этого не хватит.)))
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056514
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемая Michelle
__MichelleВидимо, не очень действует, когда ОбластьДанных имеет несколько полей по вертикали.Вот Ваши сомнения.
Вот Ваша база см.Таблица 1
Насчет одного поля в области данных беру свои слова обратно (извиняюсь-правильнее "чаще всего")
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056516
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdkuУважаемая Michelle
__MichelleВидимо, не очень действует, когда ОбластьДанных имеет несколько полей по вертикали.Вот Ваши сомнения.
Вот Ваша база см.Таблица 1
Насчет одного поля в области данных беру свои слова обратно (извиняюсь-правильнее "чаще всего") Это сказано мной не о моем способе , а о стандартном методе - Не разрывать "Да" для области данных.
Именно поэтому и появились другие решения.
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056517
Банджо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
guest_rusimport, а можно обойтись одним КС и через .Top сделать? Так вроде красивее и вроде бы можно..

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
Private Sub ОбластьДанных_Print(Cancel As Integer, PrintCount As Integer)
Break = 0
For i = 1 To 14
   If Break = 0 And Me.Controls("Name" & i).Top > 14000 Then Break = Me.Controls("Name" & i - 1).Top - 20
Next i
If j = 0 Then j = 1: Cancel = True
End Sub


То есть если топ вылез за страницу, то просто присвоить Break топ предыдущего.

Но на формате дальше что-то ломается - выводит первую пустую страницу и вторую, первая пропадает

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
Private Sub ОбластьДанных_Format(Cancel As Integer, FormatCount As Integer)
Me!КонецСтраницы.Visible = False
Break = 0
..................
If Break > 0 Then
Me.Controls("КонецСтраницы").Top = Break
Me.Controls("КонецСтраницы").Visible = True
End Sub



Можно это поправить?

зы я верно понимаю что J - запускает отчет дважды?

зызы Мишель, группы как-то имхо немного заплаточно выглядят, с нормальным кодом красивее )
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056519
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdkuВот Ваша база см.Таблица 1У меня Таблицы 1 не было.
Посмотреть не могу.
Можете сбросить в Ac2000?
Интересно, что там мне приписано...)))
И вообще интересно.
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056521
Банджо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__MichelleНе делали Вы, похоже, медицинских документов...
Мишель - неужели коллега? )
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056522
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БанджоМишель, группы как-то имхо немного заплаточно выглядят, с нормальным кодом красивее )Ну-ну.
Дело вкуса.
Смешно, конечно...
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056525
Банджо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__MichelleБанджоМишель, группы как-то имхо немного заплаточно выглядят, с нормальным кодом красивее )Ну-ну.
Дело вкуса.
Смешно, конечно...
Да мне просто страшно все это снова разбирать-собирать ))
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056527
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Банджо__Michelleпропущено...
Ну-ну.
Дело вкуса.
Смешно, конечно...
Да мне просто страшно все это снова разбирать-собирать ))Так бы и сказали.
А то "заплаточно".

Еще посмотрим, как код сваяете.
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056529
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Банджо,
в примере отчет открывается последовательно два раза потому, что видимость разрывов страниц устанавливается на этапе форматирования отчета и при PrintCount=1 ещё не задана, поэтому после первого открытия отчета значения видимости разрывов страниц сохраняются в глобальной переменной и задаются при повторном открытии отчета на этапе форматирования
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056546
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Просьба.

Пожалуйста, переведите, кто может, базу 18171918 в 2000-ый.
И сбросьте сюда.

Надеюсь, не очень затруднит.
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056555
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__MichelleПросьба.

Пожалуйста, переведите, кто может, базу 18171918 в 2000-ый.
И сбросьте сюда.

Надеюсь, не очень затруднит.
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056560
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_rusimport,

Большое спасибо!
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056573
Банджо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
guest_rusimportБанджо,
в примере отчет открывается последовательно два раза потому, что видимость разрывов страниц устанавливается на этапе форматирования отчета и при PrintCount=1 ещё не задана, поэтому после первого открытия отчета значения видимости разрывов страниц сохраняются в глобальной переменной и задаются при повторном открытии отчета на этапе форматирования
Да, спасибо,я так и понял.
Вот только переменная j у меня обнуляется на втором открытии почему-то ..
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056576
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sdkuВот Ваша база см.Таблица 1Посмотрела.
Вы сделали отчет Таблица 1, ленточный, с одним полем в области данных, с запретом разрыва.
Что это доказывает? Да ничего.
Стандартный случай, уже обговоренный, никаких неясностей не содержит.
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056599
Банджо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
нашел ошибку, переменная передается, отчет не работает. Более того, разъехались все поля в отчете ))
...
Рейтинг: 0 / 0
Как узнать реальную высоту поля в отчете?
    #39056622
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
__MichellesdkuВот Ваша база см.Таблица 1У меня Таблицы 1 не было.
Посмотреть не могу.
Можете сбросить в Ac2000?
Интересно, что там мне приписано...)))
И вообще интересно.Проверил-в архиве mdb
(Вам ничего не приписано-в таблице1 данные и она является источником отчета в облДанных которого поле этой таблицы с расширением "ДА")
Поле не разрывается-переносится целиком-может я чё не понимаю, но разве не этого хотел ТС?
...
Рейтинг: 0 / 0
25 сообщений из 108, страница 3 из 5
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как узнать реальную высоту поля в отчете?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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