Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di x69asterix
    Registrato dal
    Jan 2005
    Messaggi
    1,303

    [vb6] DataReport e formato di stampa

    Ciao a tutti,
    Come posso impostare il DataReport invece di verticale in orizzantale?

  2. #2
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    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

  3. #3
    Utente di HTML.it L'avatar di x69asterix
    Registrato dal
    Jan 2005
    Messaggi
    1,303
    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?

  4. #4
    Utente di HTML.it L'avatar di x69asterix
    Registrato dal
    Jan 2005
    Messaggi
    1,303
    In entrambi!!

  5. #5
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Il codice lo devi inserire nel modulo del DataReport, ed é OK anche per l'anteprima.
    Ciao.
    LM

  6. #6
    Utente di HTML.it L'avatar di x69asterix
    Registrato dal
    Jan 2005
    Messaggi
    1,303
    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

  7. #7
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    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

  8. #8
    Utente di HTML.it L'avatar di x69asterix
    Registrato dal
    Jan 2005
    Messaggi
    1,303
    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
    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 = rptOrientLandscape
    è 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.

  9. #9
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Il codice che ho postato é in uso in in programma fatto con VB6, e ... funziona.
    Ciao!
    LM

  10. #10
    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

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.