Giuseppe
2009-03-31 15:37:38 UTC
Salve a tutti.
Ho necessità di inserire nella form "frmanagrafica" un pulsante che mi
stampi in automatico l'etichetta con la stampante Dymo LabelWriter400.
Ho creato un report con i dati che mi servono e sul campo IdAnagrafica
dell'origine dati del report nei criteri ho messo =forms!
[frmAnagrafica]![idanagrafica].
I dati del report sono giusti, ma ho problemi nella dimensione del
report e sul far memorizzare al report la stampante da utilizzare. Ho
trovato in questo NG un vecchio post di Jason con il seguente codice:
in un modulo ho messo:
Declare Function WriteProfileString& Lib "kernel32" Alias
"WriteProfileStringA" (ByVal lpszSection As String, ByVal lpszKeyName
As
String, ByVal lpszString As String)
Public Sub SetDefaultPrinter(s As String)
'imposta la stampante passata come argomento a predefinita
On Error GoTo Esci
Dim x As Long
If IsNull(s) Or s = "" Then Exit Sub
x = WriteProfileString("windows", "device", vbNullString)
DoEvents
x = WriteProfileString("windows", "device", s)
DoEvents
Esci:
End Sub
mentre su apertura report:
stamp = LeggiIni("PrnTermica", "Prn") & "," & LeggiIni("PrnTermica",
"Par1") & "," & LeggiIni("PrnTermica", "Par2")
SetDefaultPrinter (stamp)
Sleep 3000
'//Il risultato è stamp = "Prn=DYMO LabelWriter 400,winspool,Ne02"
Quando tento di aprire il report, mi apre il Vba e mi evidenzia
LeggiIni dicendomi
Errore di compilazione:
Sun o function non definita
Cosa manca?
N.B. sto utilizzando Access 2007 ma il file è in formato Access 2003.
Ciao.
Giuseppe.
Ho necessità di inserire nella form "frmanagrafica" un pulsante che mi
stampi in automatico l'etichetta con la stampante Dymo LabelWriter400.
Ho creato un report con i dati che mi servono e sul campo IdAnagrafica
dell'origine dati del report nei criteri ho messo =forms!
[frmAnagrafica]![idanagrafica].
I dati del report sono giusti, ma ho problemi nella dimensione del
report e sul far memorizzare al report la stampante da utilizzare. Ho
trovato in questo NG un vecchio post di Jason con il seguente codice:
in un modulo ho messo:
Declare Function WriteProfileString& Lib "kernel32" Alias
"WriteProfileStringA" (ByVal lpszSection As String, ByVal lpszKeyName
As
String, ByVal lpszString As String)
Public Sub SetDefaultPrinter(s As String)
'imposta la stampante passata come argomento a predefinita
On Error GoTo Esci
Dim x As Long
If IsNull(s) Or s = "" Then Exit Sub
x = WriteProfileString("windows", "device", vbNullString)
DoEvents
x = WriteProfileString("windows", "device", s)
DoEvents
Esci:
End Sub
mentre su apertura report:
stamp = LeggiIni("PrnTermica", "Prn") & "," & LeggiIni("PrnTermica",
"Par1") & "," & LeggiIni("PrnTermica", "Par2")
SetDefaultPrinter (stamp)
Sleep 3000
'//Il risultato è stamp = "Prn=DYMO LabelWriter 400,winspool,Ne02"
Quando tento di aprire il report, mi apre il Vba e mi evidenzia
LeggiIni dicendomi
Errore di compilazione:
Sun o function non definita
Cosa manca?
N.B. sto utilizzando Access 2007 ma il file è in formato Access 2003.
Ciao.
Giuseppe.