гороскоп на сегодня у скорпиона любовный гороскоп совместимости любовный гороскоп на 2017 рак девушка подробнее на этой странице нажмите чтобы увидеть больше ссылка на подробности любовный гороскоп гороскоп совместимости совместимость знаков в любви любовный гороскоп любовный гороскоп гороскоп совместимости парень козерог девушка весы гороскоп совместимость гороскоп на месяц любовный рак гороскоп на след неделю девы любовный гороскоп женщина рыба мужчина весы совместимость гороскоп совместимости он телец она овен совместимость любовный увидеть больше гороскоп дева любовный на сегодня и завтра гороскоп основываясь на этих данных на этой странице гороскоп на совместимость телец и рыбы рак гороскоп весы стрелец совместимость на 2017 год гороскоп ссылка сегодня гороскоп совместимость по гороскопу женщина телец мужчина рак совместимость гороскоп секс гороскоп совместимости читать больше гороскоп любовный на сегодня козерогу гороскоп любовный на завтра для стрельца гороскоп любовный на месяц рыбы женщина совместимость гороскопа лев и овен нажмите для продолжения любовный гороскоп двух львов гороскоп неделю гороскоп стрелец женщина и весы мужчина совместимость в браке гороскоп совместимости весы жен овен муж подробнее на этой странице сексуальный гороскоп близнецы женщин гороскоп совместимости она водолей он телец основываясь на этих данных совместимость по гороскопу близнецы скорпион гороскоп совместимости рак и козерог на 2017 гороскоп козы на 2017 любовный гороскоп на завтра лев любовный женщина одинокая перейти увидеть больше совместимость по гороскопу рыба и дева гороскоп женщины любовный гороскоп скорпиона на 2017 год мужчина гороскоп пифагора совместимости знаков зодиака привожу ссылку любовный гороскоп на рыб сегодня по ссылке гороскоп таблица совместимости по годам сексуальный гороскоп водолея и овна любовный гороскоп на месяц для овнов гороскоп совместимости рыбы женщина и рак мужчина совместимость нажмите чтобы увидеть больше гороскоп совместимости по луне и солнцу вот ссылка гороскоп на совместимость женщина телец любовный гороскоп на месяц весы 2017 гороскоп дева телец совместимость совместимость гороскопов лев скорпион посетить страницу гороскоп совместимости знаков зодиаков таблица фото гороскоп совместимости рыба тигр любовный гороскоп женщина козерог 2017 любовный гороскоп козерог на сегодня женщина любовный гороскоп для девы на сегодня и завтра гороскоп стрелец на завтра женщина любовный составить любовный любовный гороскоп водолей на 2017 гороскоп совместимости по знакам зодиака овен и водолей

Форумы HiProg.com - MS ACCESS, VBA, VB

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

ник: Чайник2007
Может это поможет покопайся.
----------------------------------
Модуль переустановки "принтерных" настроек всех отчетов под текущий принтер по умолчанию


Ситуация:
.... у разработчика (отчетов), допустим был:
HP LaserJet с EconoMode = OFF,
у пользователя же, некий:
Epson Stylus COLOR и уже EconoMode = ON
...и не смотря на это "ON" отчеты все равно расходуют чернила "На полную катушку". К тому же, то - что пишут эти драйвера за 94-й байт свойства PrtDevMode (мне) абсолютно неизвестно.
На эту тему сочинилось такое решение:


'===============================================================
'es 17.01.04
'Модуль ПЕРЕУСТАНОВКИ "принтерных" настроек всех отчетов
'под текущий принтер по умолчанию т.е. с настроек принтера разработчика
'на настройки принтера пользователя
'===============================================================
Private Type str_DEVMODE
RGB As String * 94
End Type
'===============================================================
Private Type type_DEVMODE
strDeviceName As String * 16
intSpecVersion As Integer
intDriverVersion As Integer
intSize As Integer
intDriverExtra As Integer
lngFields As Long
intOrientation As Integer
End Type

Public Sub jsResetAllReportsToDefPrinter()
'Смена у всех отчетов настроек принтера с "зашитых внутри отчета"
' на текущий принтер по умолчанию и его настройки
' затирает только данные по принтеру - поля и ориентация остаются прежними
'===============================================================
Dim dbs As Database, ctr As Container, doc As Document
Dim objReport As Report
Dim OldOrientation As Integer 'Для запоминания старой ориентации _
т.к. она (ориентация) входит в Свойство PrtDevMode отчета _
кое собираемся переписывать по новой

On Error GoTo jsResetAllReportsToDefPrinterErr
'Выключ. отображение процесса
Application.Echo False
Set dbs = CurrentDb
Set ctr = dbs.Containers!Reports
'цикл по всем отчетам
For Each doc In ctr.Documents
'открытие отчета в режиме редакции
DoCmd.OpenReport doc.Name, acViewDesign
Set objReport = Reports(doc.Name)

'отображение инфы о тек. отчете в Status Bar
SysCmd acSysCmdSetStatus, "Обрабатываю Отчет - " & doc.Name

'Запоминаем старую ориентацию для последующего восстановления (см. функцию ниже)...
OldOrientation = jsReportOrientationSetGet(objReport, True)
'Зачистка данных о принтере в отчете
objReport.PrtDevMode = Null
objReport.PrtDevNames = Null
'Закрытие отчета с сохранением "пустого принтера"
DoCmd.Close acReport, doc.Name, acSaveYes

'Если до этого у отчета была ориентация LandsCape
' то восстанавливаем ее, причем отчет уже "берет"
' принтер по умолчанию, при повторном открытии
If OldOrientation = 2 Then
'открытие отчета в режиме редакции
DoCmd.OpenReport doc.Name, acViewDesign
Set objReport = Reports(doc.Name)

'Debug.Print objReport.Name
'Восстанавливаем LandsCape ориентацию (см. функцию ниже)
' если была Portrait то восстанавливать нет необходимости
' т.к. она уже установлена по умолчанию
jsReportOrientationSetGet objReport
'Закрытие отчета с сохранением
DoCmd.Close acReport, doc.Name, acSaveYes
End If
Next doc
SysCmd (acSysCmdClearStatus)
'Включаем отображение процесса на экране обратно
Application.Echo True
Exit Sub
jsResetAllReportsToDefPrinterErr:
Application.Echo True
MsgBox "Процедура [jsResetAllReportsToDefPrinter] привела к ошибке:" & vbCrLf & _
Err.Description & vbCrLf & " Err#" & Err.Number & vbCrLf & _
"При обработке Отчета - " & doc.Name, vbCritical
End Sub

'===============================================================
Private Function jsReportOrientationSetGet(objCurReport As Report, _
Optional GetOnly As Boolean) As Integer
'Вспомогательная функция ,в зависимости от параметра GetOnly,
'ИЛИ :
'Возвращает код ориентации отчета
' Portrait = 1
' LandsCape= 2
'ИЛИ если GetOnly=False (по умолчанию):
' делает ориентацию открытого отчета = LandsCape
Dim DevString As str_DEVMODE
Dim DM As type_DEVMODE
Dim strDevModeExtra As String

On Error GoTo jsReportOrientationSetGetErr
If Not IsNull(objCurReport.PrtDevMode) Then
strDevModeExtra = objCurReport.PrtDevMode
DevString.RGB = strDevModeExtra
LSet DM = DevString
jsReportOrientationSetGet = DM.intOrientation
'Если только задано параметром то вносим изменения в отчет
If GetOnly = False Then
'Меняем ориентацию = LandsCape
DM.intOrientation = 2
LSet DevString = DM
Mid(strDevModeExtra, 1, 94) = DevString.RGB
objCurReport.PrtDevMode = strDevModeExtra
End If
End If
Exit Function
jsReportOrientationSetGetErr:
If GetOnly = True Then
strDevModeExtra = "При определении ориентации Отчета - " & _
objCurReport.Name
Else
strDevModeExtra = "При установке ориентации Отчета - " & _
objCurReport.Name
End If
MsgBox "Процедура [jsReportOrientationSetGet] привела к ошибке:" & vbCrLf & _
Err.Description & vbCrLf & " Err#" & Err.Number & vbCrLf & _
strDevModeExtra, vbCritical
End Function


Ваше имя:

Пароль:

Цитировать: [quote][/quote] Код: [code][/code]
Жирный: [b][/b] Наклонный: [i][/i]
URL: [url][/url] 

Сообщение:

 Размер файла не более 50 Кбт. Большие файлы можно размещать на www.slil.ru

Прикрепить:

 

Для вставки смайлов в текст щелкните по значку.