0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 24
1

Скрыть пустые поля в отчете

09.04.2018, 23:37. Показов 6094. Ответов 41
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ребят, подскажите, пожалуйста, что не так? В запросе необходимо скрыть пустые поля. Посмотрите базу, сделала, что смогла, но не работает( надеюсь на вашу помощь.
Вложения
Тип файла: rar ПРИКАЗ 302-Н — копия.rar (102.8 Кб, 29 просмотров)
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.04.2018, 23:37
Ответы с готовыми решениями:

Скрыть пустые поля в отчете
Добрый день, я уже видел, что данные темы уже поднимались, но как то мне ничего не помогло. Бьюсь...

Как скрыть пустые поля в отчете?
Здравствуйте. Нужна помощь начинающему. Есть таблица и отчет по данной таблице. Необходимо скрыть...

Как скрыть пустые строки в отчете?
Доброго времени суток всем форумчянам. Помогите пожалуйста чайнику искал везде толком...

Подсчитать пустые поля в отчете
Здравствуйте. Создаю первую более-менее серьезную базу данных. Нужно создать отчет. Он на половину...

41
10465 / 5450 / 1375
Регистрация: 05.10.2016
Сообщений: 15,434
10.04.2018, 00:02 2
Цитата Сообщение от Yuliana19 Посмотреть сообщение
В запросе необходимо скрыть пустые поля. Посмотрите базу, сделала, что смогла, но не работает
В каком запросе? (их у вас 2)
Где вы хотите получить результат и по каким параметрам = НЕПОНЯТНО!
А можно поподробнее пожалуйста?

Добавлено через 4 минуты
Yuliana19, вообще , желательно что-бы пользователь вводил параметр которого не знает, именно тогда приложение будет работать наиболее не эффективно.
0
0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 24
10.04.2018, 00:43  [ТС] 3
Результат нужен в отчете, там где сумма по врачам равна нулю, совсем не выводить это поле и его надпись, там есть в отчете на обработке событий Области данных то, что я хотела бы видеть (в моем понимании), но почему-то не работает. Запрос, на котором формируется отчет "запрос1 копия.

Добавлено через 5 минут
И как это можно реализовать без пропусков в отчете, так как полей в отчете около 50, а нужных ( т.е. не пустых) будет ну максимум 10.
Пока пробовала только только на одном поле в отчете sum_врач1 и надписи к нему, чтобы оно если пустое не вводились на печать и его не видно было при предварительном просмотре, но не вышло.
0
10465 / 5450 / 1375
Регистрация: 05.10.2016
Сообщений: 15,434
10.04.2018, 00:43 4
Yuliana19, т.е. отчёт должен всегда выводить 0 записей? - Так!?
0
0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 24
10.04.2018, 00:47  [ТС] 5
Он должен выводить : лог - 6
Невролог - 2,
Хирург - 3, а там, где пустое поле по специалисту - не было ни поля ни надписи.
0
10465 / 5450 / 1375
Регистрация: 05.10.2016
Сообщений: 15,434
10.04.2018, 00:54 6
Цитата Сообщение от Eugene-LS Посмотреть сообщение
должен всегда выводить 0 записей?
Ладно.
Это я зло пошутил так ... Но вы то же даёте материал.... (как не следует)
Скажите точно что вы хотите получить в отчёте, пожалуйста.
Добрые форумчане что нибудь придумают. (может и я в силу своих слабых навыков)

Добавлено через 5 минут
Цитата Сообщение от Yuliana19 Посмотреть сообщение
Он должен выводить : лог - 6
Невролог - 2,
Хирург - 3, а там, где пустое поле по специалисту - не было ни поля ни надписи.
Сформируйте правило пожалуйста (на основе имеющихся данных).
0
Модератор
Эксперт MS Access
11957 / 4825 / 779
Регистрация: 07.08.2010
Сообщений: 14,132
Записей в блоге: 4
10.04.2018, 06:51 7
Цитата Сообщение от Yuliana19 Посмотреть сообщение
Посмотрите базу, сделала, что смогла, но не работает( надеюсь на вашу помощь.
не могу открыть архив --перезипуйте другой программой, например ZIP
0
0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 24
10.04.2018, 12:04  [ТС] 8
Добрый день! Посмотрите пожалуйста код, может быть он не верен?

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Private Sub ОбластьДанных_Format(Cancel As Integer, FormatCount As Integer)
If Me.Sum_ВРАЧ1 = 0 Then
Me.Sum_ВРАЧ1.Visible = False
Me.Sum_ВРАЧ1_Надпись.Visible = False
Else
Me.Sum_ВРАЧ1.Visible = True
Me.Sum_ВРАЧ1_Надпись.Visible = True
 
End If
 
End Sub
Миниатюры
Скрыть пустые поля в отчете  
Вложения
Тип файла: zip ПРИКАЗ 302-Н.zip (256.6 Кб, 15 просмотров)
0
Модератор
Эксперт MS Access
6009 / 2837 / 693
Регистрация: 12.06.2016
Сообщений: 7,598
10.04.2018, 12:38 9
Yuliana19,

Код у Вас синтаксически верен, хотя все это можно записать короче.
Visual Basic
1
2
Me.Sum_ВРАЧ1.Visible = Me.Sum_ВРАЧ1 <> 0
Me.Sum_ВРАЧ1_Надпись.Visible = Me.Sum_ВРАЧ1.Visible
Только все равно останутся пустые места,
поэтому лучше решать эту задачу вообще по-другому.

а) Преобразовать Sum_ВРАЧ1_Надпись в поле.
б) Поле Sum_ВРАЧ1 переименовать, например, в Sum_ВРАЧ1_Поле.
в) Задать полям Sum_ВРАЧ1_Поле и Sum_ВРАЧ1_Надпись свойства Расширение и Сжатие "Да".
г) Свойство Данные для поля Sum_ВРАЧ1_Поле задать так: =IIf(Sum_ВРАЧ1=0;Null; Sum_ВРАЧ1)
д) Свойство Данные для поля Sum_ВРАЧ1_Надпись задать так: =IIf(Sum_ВРАЧ1_Поле Is Null;Null; "нужный текст")

И посмотрите, что получится.
4
10465 / 5450 / 1375
Регистрация: 05.10.2016
Сообщений: 15,434
10.04.2018, 14:18 10
Yuliana19, у вас слишком мало параметров вводимых пользователем при открытии (всего один) - сделайте 4-5 и будет уже конкретно не удобно!
Если не знаете как - я подскажу с удовольствием!
(Из сборника вредных советов es)
0
0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 24
10.04.2018, 15:53  [ТС] 11
Capi!СПАСИБО ОГРОМНОЕ!!! Как раз то, что нужно!!! Очень благодарна!

Добавлено через 1 час 24 минуты
Capi, ЕЩЕ один небольшой вопрос, все сделала по вашему совету, только вот там где были надписи все равно пустое место остается, а том где были поля там все хорошо работает, все поднимается на пустые места, т.е. встают друг за другом.
0
Модератор
Эксперт MS Access
6009 / 2837 / 693
Регистрация: 12.06.2016
Сообщений: 7,598
10.04.2018, 16:00 12
А надписи в поля преобразованы?
0
0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 24
10.04.2018, 16:11  [ТС] 13
ДА, ВСЕ ВРОДЕ СДЕЛАЛА
Вложения
Тип файла: zip ПРИКАЗ 302-Н_1в.zip (180.7 Кб, 18 просмотров)
0
0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 24
10.04.2018, 16:25  [ТС] 14
Capi, выложила базу, посмотрите пож-та, как время у вас будет)

Добавлено через 1 минуту
Capi, отчет "Копия запрос 2"
0
Модератор
Эксперт MS Access
6009 / 2837 / 693
Регистрация: 12.06.2016
Сообщений: 7,598
10.04.2018, 17:25 15
Yuliana19,

Сейчас базу смотреть не могу.

Попробуйте для надписи задать
=IIf(Sum_ВРАЧ1=0;Null; "нужный текст")

Добавлено через 2 минуты
Посмотреть смогу только в формате не новее Access2007.
0
0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 24
10.04.2018, 22:54  [ТС] 16
Capi, сохранила в 2000) с 0 тоже не получается
Вложения
Тип файла: zip ПРИКАЗ 302-Н_1в.zip (89.4 Кб, 10 просмотров)
0
Модератор
Эксперт MS Access
6009 / 2837 / 693
Регистрация: 12.06.2016
Сообщений: 7,598
10.04.2018, 23:29 17
Yuliana19,

Хорошо. Посмотрю.
0
Модератор
Эксперт MS Access
6009 / 2837 / 693
Регистрация: 12.06.2016
Сообщений: 7,598
11.04.2018, 00:50 18
Лучший ответ Сообщение было отмечено alvk как решение

Решение

1. Разделу отчета "Область данных" нужно было задать Сжатие Да.
2. Поля и надписи не были выравнены по верхнему краю, из-за этого размер пустоты еще увеличивался.

А также - все поля подстановки в таблицах имеют размер списка 57,79см.
Это приводит к серии диагностических сообщений при открытии этих таблиц.
Уже по этой причине от полей подстановки следовало бы избавиться.
Но есть и еще много причин для избавления от полей подстановки.
Но здесь мы не это обсуждаем.

Короче, смотрите отчет [Копия Копия Запрос2].
Вложения
Тип файла: zip ПРИКАЗ 302-Н_1в_NEW.zip (75.7 Кб, 65 просмотров)
2
1 / 1 / 0
Регистрация: 06.10.2013
Сообщений: 25
03.01.2020, 15:50 19
Capi, хочу реализовать таким же способом вывод в отчете поля скидка, перед итоговой суммой, выводить или не выводить ячейку со скидкой, в зависимости от того есть ли скидка или нет,

прописал в данные ячеек
для Названия =IIf([Скидка] Is Null;Null;"Скидка"),
для поля Скидки =IIf(Sum([Цена за шт]*[Кол-во])>=500;Sum([Цена за шт]*[Кол-во])*0,05;IIf(Sum([Цена за шт]*[Кол-во])>=400;Sum([Цена за шт]*[Кол-во])*0,04;IIf(Sum([Цена за шт]*[Кол-во])>=300;Sum([Цена за шт]*[Кол-во])*0,03;IIf(Sum([Цена за шт]*[Кол-во])>=200;Sum([Цена за шт]*[Кол-во])*0,02;Null)))),

все работает, скидка выводится если имеется и не выводится если отсутствует,
но при этом ячейки остаются, а хотелось бы как в вашем примере, поджимать итоговую сумму к верху.

Что я упускаю? Почему пустые поля остаются?
0
Модератор
Эксперт MS Access
6009 / 2837 / 693
Регистрация: 12.06.2016
Сообщений: 7,598
03.01.2020, 16:21 20
Цитата Сообщение от EvgenStor Посмотреть сообщение
Что я упускаю? Почему пустые поля остаются?
Это сделали?
Цитата Сообщение от Capi Посмотреть сообщение
в) Задать полям Sum_ВРАЧ1_Поле Скидки и Sum_ВРАЧ1_Надпись Название свойства Расширение и Сжатие "Да".
1
03.01.2020, 16:21
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.01.2020, 16:21
Помогаю со студенческими работами здесь

Убрать пустые поля в отчете при открывании
Доброго времени суток. Подскажите пожалуйста, как скрывать пустые поля в отчете? Поясняю. ...

Как сумировать смешанные (пустые и со значением) поля в отчете?
Добрый вечер! Вопрос. Есть БД и 3 отчета. В каждом отчете я суммирую поле (Цифровое, целое, имена...

Убрать поля в запросе (скрыть поля в отчете скд)
В запросе я создаю временную таблицу. В ней сгруппировав поля получаю нужную таблицу. Но некоторые...

Сумма в отчете поля при разных значениях поля со списком
Добрый всем день! Подскажите, пожалуйста, в следующем. Есть отчет. Источник - таблица . Выводятся...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru