Newsgroup: it.comp.appl.access
Titolo: Scelta dell cassetto stampante da VB

Salve,
in un programma di stampe grafiche per as400 quando ricevo una
richiesta di stampa da un utente individuo il nome della stampante e
la rendo la stampante predefinita, poi lancio normlamente la stampa
nel seguente modo:
Dim stDocName As String
stDocName = nomereport
DoCmd.OpenReport stDocName, acNormal
Vi è la possibilità di scegliere il cassetto dal quale prelevare la
carta?
Non vorrei creare 4 REPORT identici uno per il cassetto 1 , uno per il
cassetto 2 , uno per il cassetto 3 e uno per il bypass
Grazie per l'attenzione

 Grazie per l'attenzione
Vedi:
www.donkarl.com/it?FAQ5.1
--
sv
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

> 
www.donkarl.com/it?FAQ5.1
Ti ringrazio,
ho provato nel seguente modo
1) ho creato la funzione:
Sub setPaperSource(rptName As String, CASSETTO As Integer)
   Dim Rpt As Report
   Dim dm As zwtDeviceMode
   Dim DevString As zwtDevModeStr
   Dim DevModeExtra As String
    DoCmd.SetWarnings False
   ' Set Paper Tray for page 1
   DoCmd.OpenReport rptName, acViewDesign
   Set Rpt = Reports(rptName)
   DevModeExtra = Rpt.PrtDevMode
   DevString.RGB = DevModeExtra
   LSet dm = DevString
   dm.dmDefaultSource = CASSETTO                     ' è la variavile
contenente il numero del cassetto dal quale prelevare la carta.
   LSet DevString = dm
   Mid$(DevModeExtra, 1, 68) = DevString.RGB
   Rpt.PrtDevMode = DevModeExtra
   DoCmd.Save acReport, Rpt.Name
   DoCmd.SelectObject acReport, Rpt.Name, True
   DoCmd.PrintOut acPages, 1, 1
   DoCmd.Close
End Sub
2) ho creato un pulsante
Private Sub Comando0_Click()
Call setPaperSource("PROVA CASSETTO", 2)
End Sub
Funziona correttamente ma con il run-time  dà errore e si chiude
l'applicazione,
perchè non ha la possibilità di andare in modalità struttura del
report.
C'è un modo per modificare il codice leggermete senza andare in
modalità struttura.
Grazie per l'attenzione

 End Sub


Non hai detto qual'è la tua versione di Access.
Da XP in poi c'è l'oggetto Printer..
Vedi:
http://support.microsoft.com/?kbid=284286


 Vedi:
http://support.microsoft.com/?kbid=284286
Ti ringrazio ancora,
E' la seconda volta che leggo il tuo messaggio quando sono arrivato
alle tue conclusioni ...:-)
Non avevo letto l'articolo ma cercando nei vari post sono arrivato a
questo codice:
Sub SCEGLI_CASSETTO_E_STAMPA(rptName As String, CASSETTO As Integer)
Dim Rpt As Report
DoCmd.OpenReport rptName, acViewPreview, , , acHidden
Set Rpt = Reports(rptName)
    With Rpt.Printer
        .PaperBin = CASSETTO
    End With
    DoCmd.OpenReport rptName, acViewNormal
    DoCmd.Close acReport, rptName, acSaveNo
End Sub
Private Sub Comando0_Click()
Call SCEGLI_CASSETTO_E_STAMPA("PROVA CASSETTO", 2)
End Sub
Questa funzione in una prima analisi sembra funzionare correttamente,
e verrà inserita in
un motorino di stampe grafiche per as400.
Vi è un modo per evitare che il report venga aperto o che venga aperto
in modo nascosto?
acHidden doveva nascondere il report..invece si apre e si chiude..
Ti ringrazio molto per la tua attenzione

 Vedi:
http://support.microsoft.com/?kbid=284286
Ti ringrazio ancora,
E' la seconda volta che leggo il tuo messaggio quando sono arrivato
alle tue conclusioni ...:-)
Non avevo letto l'articolo ma cercando nei vari post sono arrivato a
questo codice:
Sub SCEGLI_CASSETTO_E_STAMPA(rptName As String, CASSETTO As Integer)
Dim Rpt As Report
DoCmd.OpenReport rptName, acViewPreview, , , acHidden
Set Rpt = Reports(rptName)
    With Rpt.Printer
        .PaperBin = CASSETTO
    End With
    DoCmd.OpenReport rptName, acViewNormal
    DoCmd.Close acReport, rptName, acSaveNo
End Sub
Private Sub Comando0_Click()
Call SCEGLI_CASSETTO_E_STAMPA("PROVA CASSETTO", 2)
End Sub
Questa funzione in una prima analisi sembra funzionare correttamente,
e verr� inserita in
un motorino di stampe grafiche per as400.
Vi � un modo per evitare che il report venga aperto o che venga aperto
in modo nascosto?
acHidden doveva nascondere il report..invece si apre e si chiude..
Ti ringrazio molto per la tua attenzione
-------------------------------------------
Prova solo ad iconizzare il report:
DoCmd.OpenReport rptName, acViewPreview, , , acIcon
Ciao, Carlo

 Ciao, Carlo
Purtroppo non cambia nulla... fa il solito lampo...( apre e chiude
rapidamente)
Grazie