Salvare Documento pdf tabella MySQL

giovedì 03 luglio 2014 - 23.05
Tag Elenco Tags  VB.NET  |  .NET 4.0  |  Visual Studio 2010  |  MySQL 5.5

Mau67 Profilo | Expert

Buona sera al forum,
dovrei salvare in una tabella dei documenti pdf generati dal programma in una tabella mysql da un mio programma in visual studio 2012, tramite stored procedure

Questo è il codice che uso per generare il pdf
'Creo la cartella
System.IO.Directory.CreateDirectory(AppDomain.CurrentDomain.BaseDirectory + "\Cartella Sanitaria\cartella")
'Esporto il report in PDF
rpt.ExportToDisk(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat, AppDomain.CurrentDomain.BaseDirectory + "\Cartella Sanitaria\cartella.pdf")

Connection.Open()
Dim trans As MySqlTransaction
trans = Connection.BeginTransaction()

Try
Dim par As MySqlParameter = New MySqlParameter()
Dim cmd As MySqlCommand = New MySqlCommand()
'Inizia la transazione
cmd.Transaction = trans
cmd.Connection = Connection
cmd.CommandType = CommandType.StoredProcedure
cmd.CommandText = "Report_Cartella_SanitariaAddUpdate"
cmd.Parameters.AddWithValue("@_Codice_Fiscale", m_ParametroID_CF_Lavoratore)
cmd.Parameters.AddWithValue("@_Data_Visita", m_ParametroData_Visita) <<<<<<<<Qui mi genera un errore Di Data too long
Dim fs As FileStream = New FileStream(AppDomain.CurrentDomain.BaseDirectory + "\Cartella Sanitaria\cartella.pdf", FileMode.Open, FileAccess.Read)
Dim dati() As Byte = New Byte((fs.Length) - 1) {}
fs.Read(dati, 0, CType(fs.Length, Integer))
fs.Close()

Dim par1 As MySqlParameter = cmd.Parameters.Add("@_Report_Cartella_Sanitaria", MySqlDbType.Blob)
par1.Value = dati
'par1 = cmd.Parameters.Add("@_Firma", MySqlDbType.LongText)
'par1.Value = Path.GetFileName(txtFilepath.Text)

''seconda query
'cmd.CommandText = Sql
'cmd.ExecuteNonQuery()

cmd.ExecuteNonQuery()
'eseguo la transazione
trans.Commit()
MessageBox.Show("Aggiornamento Eseguito Correttamente", "", MessageBoxButtons.OK, MessageBoxIcon.Information)
Catch ex As MySqlException
'se si sono verificati errori faccio il rollback
trans.Rollback()
MessageBox.Show("Aggiornamento fallito" + ControlChars.CrLf + ex.ToString, "", MessageBoxButtons.OK, MessageBoxIcon.Warning)
Finally
'chiudiamo sempre le connessioni!
Connection.Close()
End Try
Dim proc As New Process
'Apro il mio file
Process.Start(AppDomain.CurrentDomain.BaseDirectory + "\Cartella Sanitaria\cartella.pdf")
'Chiudo ed elimino il processo'
proc.Close()
proc.Dispose()

Grazie
Mau67
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5