Access 2002

Значение true


А как определить, будет ли отчет напечатан на принтере, используемом по умолчанию? В предыдущих версиях Access сделать это было довольно трудно (как производилась такая проверка, описано в Приложении В). Получить ответ на данный вопрос в Access 2002 намного проще. Для этого предназначено свойство UseDefaultPrinter, которое принимает значение True, если документ подготовлен для печати на принтере, используемом по умолчанию, или значение False в противном случае. В следующем примере зто свойство позволяет определить, нужно ли при печати отчета сменить принтер, используемый по умолчанию.

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

Чтобы можно было получить доступ к свойствам отчета, таковой открывается в режиме предварительного просмотра, не отображаясь на экране (скрытый отчет; возможность загружать скрытые отчеты появилась только в Access 2002). Затем в коде считывается имя принтера и выполняется проверка того, является ли этот принтер используемым по умолчанию (информация хранится в свойстве UseDefaultPrinter доступном для чтения и записи в режиме конструктора и только для чтения во всех остальных случаях). Если отчет направляется на принтер, используемый по умолчанию, в форме устанавливается флажок Print to Default Printer и становится доступной кнопка Print to Chosen Destination. После этого отчет закрывается.

Флажок Change Default Printer недоступен, если отчет подготовлен для печати на принтере, который не является принтером по умолчанию. В этом случае изменение принтера Access по умолчанию не может повлиять на выбор выводного устройства. Значит, вы должны либо напечатать отчет на указанном принтере, либо выбрать другой.

Комментарии закрыты