вытягивал мои волосы с помощью этого. Искал везде и не может заставить anythign работать. Вот мой сценарий:MS Access Subreport Группировка и сортировка вопросов
У меня есть отчет с несколькими вложенными отчетами из связанных таблиц. Я хотел бы сгруппировать субресурсы для сортировки по заданному полю на основе значения переменной SORT_BY и принудительного разрыва страницы для каждого значения. Т.е. группируйте подчиненный отчет по ItemDescription или ItemLocation. Переменная SORT_BY устанавливается из диалогового окна prefs пользователей. (ya, я использую его как константу, но пользователь может его изменить)
Теперь я хочу, чтобы пользователь мог просмотреть отчет до его печати. У меня есть отчет, запускаемый в режиме ReportView. Это позволяет мне помещать кнопку «Печать» и кнопку «Закрыть» в заголовке отчета (которые не печатаются). У меня он установлен таким образом, потому что пользователь заблокирован из обычной «ленты» и других элементов управления, поэтому я должен предоставить кнопки. Кнопки не отображаются в режиме PrintPreview.
Очевидно, что мне нужно выполнить это через VBA. Кажется, я не могу заставить настройки GroupLevel работать. Я пробовал функцию CreateGroupLevel безрезультатно. Пробовал с существующими группами и без существующих групп. Я попытался отказаться от идеи группы и попробовал отсортировать подзаголовки с использованием свойства OrderBy, и ничего не работает. Я схожу с ума.
Есть ли у кого-нибудь предложения ... кроме сдачи? :-)
UPDATE: Я пытался функцию CreateGrouplevel перед открытием основного доклада. т. е. откройте каждый отчет в представлении проекта, добавьте группу, закройте подчиненную форму и откройте основной отчет. Однако, когда я пытаюсь реализовать функцию CreateGroupLevel, я получаю сообщение об ошибке:
Ошибка времени выполнения '2154': Вы не можете вызвать эту функцию, когда открываются группа, сортировка и общая панель.
Я этого не понимаю. Вот мой код:
DoCmd.OpenReport strReport, acViewDesign
intGroupLevel = CreateGroupLevel(strReport, "FluorescentDescription", True, False)
DoCmd.Close acReport, strReport
Мысли?
OOOPS!
Хорошо, поэтому я понял, что ошибка «2154». Глупо, если вы все еще включили Группу, Сортировка, Общая панель при редактировании отчета, она будет автоматически включаться каждый раз, когда вы входите в Design View в этот отчет, пока вы физически не отключите его. Странный. Тем не менее, усевшись на это.
Итак, у вас есть подчиненный отчет в области сведений, и вы хотите изменить его в поле сортировки? Я правильно понял? – dwo
Исправить. Фактически, у меня будет несколько подписок в области подробностей. Я хотел бы иметь возможность установить «группу» или, по крайней мере, установить поле «сортировка» на основе переменной, заданной пользователем. Спасибо за ответ. – MultiGuy