Ciao a tutti,
Come posso impostare il DataReport invece di verticale in orizzantale?
Ciao a tutti,
Come posso impostare il DataReport invece di verticale in orizzantale?
Ciao x69asterix !
Basta impostare Orientation = rptOrientLandscape, così:
codice:'Imposta i margini del Report: With Me .Orientation = rptOrientLandscape .TopMargin = 720 .BottomMargin = 1440 .LeftMargin = 100 .RightMargin = 100 .ReportWidth = 11400 'Imposta larghezza del Report: If Me.WindowState = vbNormal Then .Width = Screen.Width .Height = Screen.Height .Left = (Screen.Width - .Width) / 2 .Top = (Screen.Height - .Height) / 2 End If End With![]()
LM
Originariamente inviato da LMondi
Ciao x69asterix !
Basta impostare Orientation = rptOrientLandscape, così:
codice:'Imposta i margini del Report: With Me .Orientation = rptOrientLandscape .TopMargin = 720 .BottomMargin = 1440 .LeftMargin = 100 .RightMargin = 100 .ReportWidth = 11400 'Imposta larghezza del Report: If Me.WindowState = vbNormal Then .Width = Screen.Width .Height = Screen.Height .Left = (Screen.Width - .Width) / 2 .Top = (Screen.Height - .Height) / 2 End If End With![]()
LMondi,
questo code lo inserisco dove?
questo code vale anke in anteprima di stampa?
Il codice lo devi inserire nel modulo del DataReport, ed é OK anche per l'anteprima.
Ciao.
LM
ciao LMondi,
ti riporto quanto descritto da un tuo post precedente, per avere delle spiegazioni, in merito di come aggiornare un datareport, le mie perplessità nascono dal fatto ke usi Public Sub ke nel mio code [vb6] non sono presenti, quindi è possibile avere delle info di come operare?
Public Sub rptForm_Load()?
.rsCommandE1, forse è il nome ke assegni al Aggiungi Command??
RptContoE1??
questi sono i miei dubbi.
Cmq x aggiornarlo in tempo reale questo code si presta anke x vb6?
![]()
"Preso da un post precedente"
Il grave difetto di DataReport è quello di Non aggiornare i dati, ... almeno se non si usa qualche accorgimento!
Dunque per raggiungero lo scopo di visualizzare e stampare le modifiche che si apportano ai file si deve chiudere e riaprire la connessione. Ti posto questo esempio di codice in uso nei miei programmi.
code:--------------------------------------------------------------------------------Nel Modulo del DataEnvinment:
Private Sub DataEnvironment_Initialize()
'Si connette con stringa di connessione ed attiva la connessione:
With DataEnvironment1.ConnectionE1
.ConnectionString = DataConnessione
.Open
End With
End Sub
'---------------------------------------------
Private Sub DataEnvironment_Terminate()
'Chiude la connessione ed azzera i riferimenti:
With DataEnvironment1.ConnectionE1
.Close
End With
Unload Me
End Sub
--------------------------------------------------------------------------------
code:--------------------------------------------------------------------------------Nel modulo del DataReport:
'Visualizza e stampa il report:
Public Sub rptForm_Load()
On Error Resume Next
Load DataEnvironment1
'Verifica e se del caso Apre ed aggiorna il recorset:
With DataEnvironment1
If .rsCommandE1.State = 0 Then
.rsCommandE1.Open
.rsCommandE1.MoveFirst
End If
End With
.... .... ....
'Visualizza il Reportper la stampa:
'DataEnvironment1.rsCommandE1.Update
RptContoE1.Refresh
RptContoE1.Show vbModal
'Chiude il recorset ed annulla la connessione:
With DataEnvironment1
If .rsCommandE1.State <> 0 Then
.rsCommandE1.Close
End If
End With
'Rinvia all'evento Terminate del DataEnvironment
per chiudere la connessione:
Unload DataEnvironment1
End Sub
--------------------------------------------------------------------------------
Spero che ti sia utile, a questa soluzione ci sono arrivato dopo vari tentativi, così tiene conto delle variazioni salvate nel db.
Ciao
Ciao x69asterix !
Dunque ti dico subito che il codice che hai postato l'ho inserito io tempo fa ed è l'unico modo che ho escogitato per fare sì che il db si aggiorni con le modifiche riportate nella Form di VB, prima della stampa. Nei miei programmi funziona bene.
Poi le altre domande:
- Public Sub lo uso perché il comando stampa avviene sul FrmMain (barra delle icone o menù Stampa)del programma, mentre il codice é esposto in un modulo bas. Se il tuo codice è riportato nello stesso modulo della Frm ove risiede il comando stampa, puoi mettere Private Sub.
- RptContoE1 é il nome della Frm del DataReport (ove ai posto i commands).
- .rsCommandE1 é il nome dato al commands (command Name del DataEnvironment).
In fine ti confermo che il codice l'ho scritto per VB6.
Più in generale per l'aggiornamento, la cosa è abbastanza semplice e tutto sommato anche lineare. Prima di ogni stampa si deve chiudere e riaprire la connessione.
Ciao.
LM
ok grazie x le info riguardante l'aggiornamento del report, senti oggi ho notato ke al momento della compilazione mi và in errore in .Orientation = rptOrientLandscapeOriginariamente inviato da LMondi
Ciao x69asterix !
Basta impostare Orientation = rptOrientLandscape, così:
codice:'Imposta i margini del Report: With Me .Orientation = rptOrientLandscape .TopMargin = 720 .BottomMargin = 1440 .LeftMargin = 100 .RightMargin = 100 .ReportWidth = 11400 'Imposta larghezza del Report: If Me.WindowState = vbNormal Then .Width = Screen.Width .Height = Screen.Height .Left = (Screen.Width - .Width) / 2 .Top = (Screen.Height - .Height) / 2 End If End With![]()
è possibile ke vada in errore xkè non ho installato nessuna stampante?, oggi stò lavarondo col notebook!, cmq prima della compilazione tutto funziona. Pvroverò sul pc fisso, poi ti faccio sapere.
Il codice che ho postato é in uso in in programma fatto con VB6, e ... funziona.
Ciao!
LM
Ciao a tutti,
scusate ma sto provando anch'io ad orientare il report ma mi va in errore sul .Orientation :master:
in che punto va inserito quel codice?
si riferisce ad un datareport di vb6 standard?
grazie
simofe