Форум программистов, компьютерный форум, киберфорум
Базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
0 / 0 / 0
Регистрация: 08.08.2007
Сообщений: 184
1

Как при открытии или печати отчета вывести "Нет данных", если в источнике нет записей?

15.12.2007, 07:32. Показов 1984. Ответов 10
Метки нет (Все метки)

Как при открытии или печати отчета вывести 'НЕТ ДАННЫХ' если в источнике нет записей ?
Если нет записей, то отчет пустой, а на месте Sum-полей выдает #ОШИБКА.
Как проверить, есть ли хоть одна запись и если нет, то выдать сообщение и закрыть отчет ?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.12.2007, 07:32
Ответы с готовыми решениями:

Вывести сообщение "Есть", если в массиве присутствует ноль и "Нет", если нуля нет
Заполните массив из 10 элементов случайными числами и вывести сообщение "Есть", если в массиве...

Ввести один из символов "Y" или "n". При вводе "Y" вывести на экран слово "Да", а при вводе "n" слово "нет"
1.Ввести один из символов "Y" или "n". При вводе "Y" вывести на экран слово "Да", а при вводе...

Вывести решения уравнения, если их число конечно, "NO", если решений нет, и "INF", если их бесконечно много
Задача с условным оператором. Решить в целых числах уравнение ax + b = 0. Входные данные...

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

10
AiK
15.12.2007, 23:07 2
if @@rowcount <> 0
0 / 0 / 1
Регистрация: 30.11.2006
Сообщений: 510
16.12.2007, 06:42 3
в таком случае bof И eof одновременно равны true
0
0 / 0 / 0
Регистрация: 30.05.2007
Сообщений: 86
16.12.2007, 16:09 4
Если это про аксесс, то там у отчета есть такое событие 'Отсутствие данных'
0
0 / 0 / 0
Регистрация: 08.08.2007
Сообщений: 184
16.12.2007, 18:07  [ТС] 5
Я использовал стандартный обработчик 'Отсутствие данных'.
В нем написал вывод MsgBox('Данные для отчета отсутствуют'),
После этой message все равно отчет (пустой) открывается.(а этого не нужно).
Я добавил команду DoCmd.CancelEvent после MsgBox.
Теперь после MsgBox выводится еще один message: Прервано выполнение макрокоманды OpenReport.
Как при отсутствии данных для отчета, просто выдать MsgBox('Данные для отчета отсутствуют') и все. Отчет при этом открываться не должен.
0
0 / 0 / 0
Регистрация: 30.05.2007
Сообщений: 86
17.12.2007, 09:35 6
В событии 'Отсутствие данных' вот такая маленькая процедурка:
Visual Basic
1
2
3
4
Private Sub Report_NoData(Cancel As Integer)
    MsgBox('Данные для отчета отсутствуют') 
    Cancel = True
End Sub
0
0 / 0 / 0
Регистрация: 08.08.2007
Сообщений: 184
17.12.2007, 18:08  [ТС] 7
Все равно после моего message появляется следом за ней 'Прервано выполнение макрокоманды OpenReport'
0
YURA
18.12.2007, 05:54 8
Перед вызовом отчета поместить on error resume next
После его вызова, если это конечно необходимо - вернуть установки перехвата ошибок(on error goto 0, например)
msd
18.12.2007, 11:06 9
Тупой вариант: вместо Cancel сделать Close. Тогда прерывания макрокоманды не возникнет.
Tania
18.12.2007, 12:28 10
Ну что, akula, получилось ? Должно было получиться, т.к. все толково люди объяснили
0 / 0 / 0
Регистрация: 08.08.2007
Сообщений: 184
18.12.2007, 19:45  [ТС] 11
Ну все получилось.
Тема закрыта!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.12.2007, 19:45

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Дана строка, в котором есть слово "да" или слово "нет". Если в нем есть слово "нет", то удалить его
Дана строка, в котором есть слово &quot;да&quot; или слово &quot;нет&quot;. Если в нем есть слово &quot;нет&quot;, то удалить его...

Даны числа "x" и "z", если их сумма кратна 3, то вывести "1", если нет, то 0
Даны числа &quot;x&quot; и &quot;z&quot;, если их сумма кратна 3, то вывести &quot;1&quot;, если нет, то 0.

Если запустил Иванов, вывести строку: "Нет доступа", если Петров - "Не сегодня". Для остальных - информация о каталоге запуска bat-файла
Создать командный файл при вызове, которого указать фамилию запускающего. Если запустил Иванов, то...

вывести "YES" – если введенные слова являются анаграммами друг друга, "NO" – если нет
Даны два слова на отдельных строках. Слова состоят из строчных латинских букв и цифр. ребуется...

Ввести слово, вывести "ДА" если первый и последний символ совпадает, в противном случае вывести "НЕТ"
Ввести слово, вывести &quot;ДА&quot; если первый и последний символ совпадает, в противном случае вывести...

Вывести на экран "да", если числа имеют одинаковые знаки, в противном случае вывести "нет"
2.Даны действительные числа a и b. Вывести на экран &quot;да&quot;, если эти числа имеют одинаковые знаки, в...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.