Charlotte Foust
cfoust at infostatsystems.com
Thu Jan 30 19:12:00 CST 2003
Make sure you have at least service pack 2 installed on Win 2k. I
believe there are some known issues with Win2k and printers, although
I've never encountered them personally.
Charlotte Foust
-----Original Message-----
From: Tom Keatley [mailto:tom at piedpiper.com.au]
Sent: Thursday, January 30, 2003 4:49 PM
To: accessd at databaseadvisors.com
Subject: [AccessD] PRTDEVMODE a request to check code.....
Hi all...
I have made posts over the last few days ALL concerning Access reports
slipping into LETTERSIZE when they should be A4. You guys have made
various suggestions (thanks) mostly concerning the use of the PRTDEVMODE
property.
The problem is ....I have been using that for some time ....I am
migrating this database from Win95 to Win2000 and the problem didnt
appear to be there in Win95. I send single page reports at the rate of
one every couple of seconds and there could be a hundred reports in a
single session. The problem of slipping into lettersize may happen on
the 1st or the 50th.
Desperation is beginning to creep in as I am starting to feel I will
never solve this one and I will have to stick with Win95 with this DB
I would really appreciate it if someone could have a look at the code I
am using to see if there are any possible problems that could cause this
occasional dropout......please find code below
Thanks in advance
Regards
Tom Keatley
Option Compare Database
Option Explicit
' Code for PrtDevMode property.
==========================================
Type str_DEVMODE
RGB As String * 94
End Type
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
intPaperSize As Integer
intPaperLength As Integer
intPaperWidth As Integer
intScale As Integer
intCopies As Integer
intDefaultSource As Integer
intPrintQuality As Integer
intColor As Integer
intDuplex As Integer
intResolution As Integer
intTTOption As Integer
intCollate As Integer
strFormName As String * 16
lngPad As Long
lngBits As Long
lngPW As Long
lngPH As Long
lngDFI As Long
lngDFr As Long
End Type
Sub chgDEvmode(ByVal strReportName As String, ByVal intCopies As Integer
)
Dim DevString As str_DEVMODE
Dim DM As type_DEVMODE
Dim strDevModeExtra As String
Dim rpt As Report
Echo (False)
DoCmd.OpenReport strReportName, acDesign
Set rpt = Reports(strReportName)
If Not IsNull(rpt.PrtDevMode) Then
strDevModeExtra = rpt.PrtDevMode
DevString.RGB = strDevModeExtra
LSet DM = DevString
DM.intPaperSize = 9 'intUserPaperSize
DM.intCopies = intCopies
DM.lngFields = DM.lngFields Or DM.intPaperSize Or DM.intCopies
LSet DevString = DM
Mid(strDevModeExtra, 1, 94) = DevString.RGB
rpt.PrtDevMode = strDevModeExtra
End If
DoCmd.Close acReport, strReportName, acSaveYes
Echo (True)
Set rpt = Nothing
End Sub
_______________________________________________
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com