Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 17 su 17
  1. #11
    Ho cercato di modificare quato mi hai scritto sul mio prgetto, le xxxx io le ho sostituite in questo modo, ma mi restituisce 2 errore:

    Private Sub StampaToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles StampaToolStripMenuItem.Click
    Dim risp As DialogResult

    risp = MessageBox.Show("Vuoi stampare solo per il periodo indicato?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question)

    If risp = Windows.Forms.DialogResult.Yes Then
    Dim rep1 As New CrystalReport1
    Dim data As String
    Dim Rpt As New CrystalDecisions.CrystalReports.Engine.ReportDocum ent
    Dim DOp As New CrystalDecisions.Shared.DiskFileDestinationOptions

    data = Date.Now.Year.ToString


    Me.InterventiTableAdapter.FillByData(Me.ClientiDat aSet.Interventi, Me.m_ParametroData1, Me.m_ParametroData2)
    rep1.SetDataSource = ClientiDataSet


    DOp.DiskFileName = Application.StartupPath & "\" & data & ".pdf"
    With rep1.ExportOptions
    .DestinationOptions = DOp
    .ExportDestinationType = CrystalDecisions.Shared.ExportDestinationType.Disk File
    .ExportFormatType = CrystalDecisions.Shared.ExportFormatType.PortableD ocFormat
    End With
    rep1.Export()

    MessageBox.Show("File salvato con successo in " & DOp.DiskFileName, "NOTIFICA", MessageBoxButtons.OK, MessageBoxIcon.Information)
    Process.Start(Application.StartupPath & "\" & data & ".pdf")

    Else
    Dim rep1 As New CrystalReport1
    Dim data As String
    Dim Rpt As New CrystalDecisions.CrystalReports.Engine.ReportDocum ent
    Dim DOp As New CrystalDecisions.Shared.DiskFileDestinationOptions

    data = Date.Now.Year.ToString



    Me.InterventiTableAdapter.Fill(Me.ClientiDataSet.I nterventi)
    rep1.SetDataSource = (ClientiDataSet)


    DOp.DiskFileName = Application.StartupPath & "\" & data & ".pdf"
    With rep1.ExportOptions
    .DestinationOptions = DOp
    .ExportDestinationType = CrystalDecisions.Shared.ExportDestinationType.Disk File
    .ExportFormatType = CrystalDecisions.Shared.ExportFormatType.PortableD ocFormat
    End With
    rep1.Export()

    MessageBox.Show("File salvato con successo in " & DOp.DiskFileName, "NOTIFICA", MessageBoxButtons.OK, MessageBoxIcon.Information)
    Process.Start(Application.StartupPath & "\" & data & ".pdf")
    End If
    End Sub

    Nello specifico su rep1.datasource = ClientiDataSource mi restituisce questo errore, non dovevo modificare quanto mi avevi scritto e usare precisamente quello che dicevi tu?

    Errore 1 Risoluzione dell'overload non riuscita perché nessun 'SetDataSource' accessibile accetta questo numero di argomenti. C:\Documents and Settings\Stefano Giometti\Documenti\Gestionale\Gestionale\Gestional e\IntTecnici.vb 37 13 Gestionale

  2. #12
    Aspe, ho risolto quel problema così: rep1.SetDataSource(ClientiDataSet)

    Solo non mi funziona, ora te hai selezionato quanto segue:
    adp.Fill12(ds1.XXXXXXXXXXXX, Me.DateTimePicker1.Value.ToString("dd/MM/yyyy"), Me.DateTimePicker2.Value.ToString("dd/MM/yyyy"))

    Ma quello che hai scritto è il filtro dove scegli te la data? Perchè la data da filtrare, l'ho fatta fare ad un form con delle textbox, devo sostituire qualcosa?

    Scusami se sono duro ma è per capire in modo da poter personalizzare e apprendere....

    Grazie mille

  3. #13
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    77
    allora il databse che usi come si chiama la tabella come si chiama la query lai creata ??????

  4. #14
    Il database si Chiama Clienti
    La tabella si chiama Interventi
    la fill l'ho creata e si chiama FillByData
    Il lasso di tempo, lo ricavo da un form chiamato FrmDataInt dove all'interno ci sono 2 textbox (textbox1 e textbox2) dove dò l'inizio e la fine del periodo.

    Ti serviva altro? Se manca altro per renderti conto della situazione chiedi pure.

  5. #15
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    77
    te per complicarti la vita sei un genio aspetta dopo te lo sistemo vado a cena oggi giornata dura

  6. #16
    Ragazzi, ho risolto in un certo qual modo usando questo metodo:

    Dim drawFont As New Font("Verdana", 12, FontStyle.Regular) ' imposti il carattere
    Dim fontalto As New Font("Verdana", 12, FontStyle.Bold)
    Dim i, x As Integer
    Dim distanza As Integer = 80 ' distanza fissa righe
    Dim altezza As Integer = 80
    Dim a, y As Integer

    i = Me.DataGridView1.Rows.Count - 1 'conto il numero di righe del datagrid
    a = Me.DataGridView1.Rows.Count + 1
    For y = 0 To a
    For x = 0 To i 'il datagrid contiene 3 colonne (nella parentesi dopo item vengono indicati il numero della colonna, la riga che scorre con x)
    e.Graphics.DrawString("Report Interventi dal " + m_ParametroData1 + " al " + m_ParametroData2, fontalto, Brushes.Black, 500, 30)
    e.Graphics.DrawString("Ragione Sociale", fontalto, Brushes.Black, 30, 70)
    e.Graphics.DrawString("Data Intervento", fontalto, Brushes.Black, 230, 70)
    e.Graphics.DrawString("Tecnico", fontalto, Brushes.Black, 400, 70)
    e.Graphics.DrawString("Descrizione Intervento", fontalto, Brushes.Black, 500, 70)
    e.Graphics.DrawString("Tempo", fontalto, Brushes.Black, 1100, 70)
    e.Graphics.DrawLine(Pens.Black, 10, 108 + (x * distanza), 1200, 108 + (x * distanza))
    e.Graphics.DrawLine(Pens.Black, 10, 70, 10, (y * altezza))
    e.Graphics.DrawLine(Pens.Black, 229, 70, 229, (y * altezza))
    e.Graphics.DrawLine(Pens.Black, 390, 70, 390, (y * altezza))
    e.Graphics.DrawLine(Pens.Black, 490, 70, 490, (y * altezza))
    e.Graphics.DrawLine(Pens.Black, 1095, 70, 1095, (y * altezza))
    e.Graphics.DrawString(Me.DataGridView1.Item(0, x).Value, drawFont, Brushes.Black, 30, 110 + (x * distanza))
    e.Graphics.DrawString(Me.DataGridView1.Item(1, x).Value, drawFont, Brushes.Black, 250, 110 + (x * distanza))
    e.Graphics.DrawString(Me.DataGridView1.Item(2, x).Value, drawFont, Brushes.Black, 400, 110 + (x * distanza))
    e.Graphics.DrawString(Me.DataGridView1.Item(3, x).Value, drawFont, Brushes.Black, 500, 110 + (x * distanza))
    e.Graphics.DrawString(Me.DataGridView1.Item(4, x).Value, drawFont, Brushes.Black, 1100, 110 + (x * distanza))
    'e.Graphics.DrawString(Me.DataGridView1.Item(5, x).Value, drawFont, Brushes.Black, 400, 10 + (x * distanza))
    Next x
    Next y
    End Sub

    Funzina tutto regolarmente, ma se volessi dare dei margini al testo da stampare in questione:
    e.Graphics.DrawString(Me.DataGridView1.Item(4, x).Value, drawFont, Brushes.Black, 1100, 110 + (x * distanza))

    per capirci, questa riga mi stampa la descrizione dell'intervento che chiaramente è di lunghezza variabile, come devo modificare il codice?

    PS: la pagina è orienata per orizzotale

  7. #17
    Raga, tutto fatto, ho perfezionato il metodo di NOKIA6 e tutto funziona alla meraviglia.

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 © 2026 vBulletin Solutions, Inc. All rights reserved.