212 lines
6.7 KiB
VB.net
212 lines
6.7 KiB
VB.net
Imports System.Data.SqlClient
|
|
Imports System.Drawing
|
|
Imports System.IO
|
|
Imports System.Windows.Forms
|
|
|
|
Public Class frmFirmenuebersicht
|
|
|
|
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
|
|
|
|
|
Private Sub frminterneEmailBenachrichtigungen_Load(sender As Object, e As EventArgs) Handles Me.Load
|
|
|
|
VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM = True
|
|
|
|
loadDGVMailbenachrichtigungen()
|
|
|
|
End Sub
|
|
|
|
|
|
Sub loadDGVMailbenachrichtigungen()
|
|
Try
|
|
|
|
Me.Cursor = Cursors.WaitCursor
|
|
|
|
Dim TopMax = If(IsNumeric(MyTextBox2.Text), " TOP " & MyTextBox2.Text, "")
|
|
Dim sqlstr As String = ""
|
|
|
|
|
|
sqlstr &= " Select [Firma_ID] ,[Firma_Bez],Replace([Firma_Firmenbuch],'Firmenbuch: ', '') as Firma_Firmenbuch,Replace([Firma_UID],'UID: ', '') as Firma_UID ,Replace([Firma_EORI],'EORI: ', '') as Firma_EORI,[Firma_Bankverbindung1],[Firma_BLZ1],[Firma_KTO1],Replace([Firma_IBAN1],'IBAN: ', '') as Firma_IBAN1, Replace([Firma_BIC1],'BIC: ', '') as Firma_BIC1,[Firma_Bankverbindung2],[Firma_BLZ2],[Firma_KTO2],[Firma_IBAN2],[Firma_BIC2],[Firma_Ort],[Firma_Straße],[Firma_Telefon],[Firma_Telefax],[Firma_E-Mail],[Firma_Webadresse]
|
|
,[Firma_LandKz],[Firmengruppe],[Firma_Warenort],[Firma_E_Mail_Mahnungen],[Firma_Steuernummer] ,[Firma_PLZ],[Firma_Logo],[Firma_Logo_Erweitert] from tblFirma "
|
|
|
|
With dgvFirmen
|
|
|
|
.SET_SQL(sqlstr, "FMZOLL")
|
|
.LOAD()
|
|
showDGVPruefungsobjekte()
|
|
End With
|
|
|
|
Catch ex As Exception
|
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, "")
|
|
End Try
|
|
Me.Cursor = Cursors.Default
|
|
End Sub
|
|
Sub showDGVPruefungsobjekte()
|
|
|
|
With dgvFirmen
|
|
|
|
If .ColumnCount = 0 Then Me.Cursor = Cursors.Default : Exit Sub
|
|
.RowHeadersVisible = False
|
|
.ReadOnly = True
|
|
.SelectionMode = DataGridViewSelectionMode.FullRowSelect
|
|
.MultiSelect = False
|
|
|
|
.Columns("Firma_Logo").Visible = False
|
|
.Columns("Firma_Logo_Erweitert").Visible = False
|
|
'.Columns("inaktivMA").Visible = False
|
|
|
|
.Columns("Firma_ID").Width = 40
|
|
'.Columns("mb_object").HeaderText = "Benachrichtigung"
|
|
|
|
|
|
'.Columns("Mitarbeiter").MinimumWidth = 100
|
|
'.Columns("Mitarbeiter").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
|
|
|
'.Columns("mb_beschreibung").MinimumWidth = 100
|
|
'.Columns("mb_beschreibung").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
|
'.Columns("mb_beschreibung").HeaderText = "Info"
|
|
|
|
'.Columns("Emails").MinimumWidth = 100
|
|
'.Columns("Emails").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
|
'.Columns("Emails").HeaderText = "EMail an"
|
|
|
|
'.Columns("Anzahl").Width = 50
|
|
'.Columns("Anzahl").HeaderText = "# Empf."
|
|
|
|
'.Columns("Firma_Bez").Width = 150
|
|
'.Columns("Firma_Bez").HeaderText = "Firma"
|
|
|
|
'.Columns("mb_aktiv").Width = 40
|
|
'.Columns("mb_aktiv").HeaderText = "Aktiv"
|
|
|
|
|
|
For Each col As DataGridViewColumn In dgvFirmen.Columns
|
|
|
|
col.HeaderText = col.HeaderText.Replace("Firma_", "")
|
|
|
|
Next
|
|
|
|
|
|
End With
|
|
End Sub
|
|
|
|
Private Sub dgvFirmen_SelectionChanged(sender As Object, e As EventArgs) Handles dgvFirmen.SelectionChanged
|
|
|
|
If dgvFirmen.SelectedRows.Count = 1 Then
|
|
pbLogo.SizeMode = PictureBoxSizeMode.Zoom
|
|
pbLogoMail.SizeMode = PictureBoxSizeMode.Zoom
|
|
|
|
pbLogo.Image = BytesToImage(dgvFirmen.SelectedRows(0).Cells("Firma_Logo").Value)
|
|
pbLogoMail.Image = BytesToImage(dgvFirmen.SelectedRows(0).Cells("Firma_Logo_Erweitert").Value)
|
|
|
|
lblFirma.Text = dgvFirmen.SelectedRows(0).Cells("Firma_Bez").Value
|
|
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Private Function BytesToImage(value As Object) As Image
|
|
|
|
If value Is Nothing OrElse IsDBNull(value) Then
|
|
Return Nothing
|
|
End If
|
|
|
|
Dim bytes As Byte() = TryCast(value, Byte())
|
|
|
|
If bytes Is Nothing OrElse bytes.Length = 0 Then
|
|
Return Nothing
|
|
End If
|
|
|
|
Try
|
|
Using ms As New MemoryStream(bytes)
|
|
Using img As Image = Image.FromStream(ms, True, True)
|
|
Return New Bitmap(img)
|
|
End Using
|
|
End Using
|
|
|
|
Catch ex As ArgumentException
|
|
'MessageBox.Show("Die gespeicherten Daten sind kein gültiges Bild." &
|
|
' vbCrLf &
|
|
' "Bytes: " & bytes.Length)
|
|
Return Nothing
|
|
End Try
|
|
|
|
End Function
|
|
|
|
Private Sub PictureBox1_Click(sender As Object, e As EventArgs) Handles PictureBox1.Click, PictureBox2.Click
|
|
|
|
|
|
|
|
If dgvFirmen.SelectedRows.Count <> 1 Then Exit Sub
|
|
|
|
Dim Firma As New cFirmen(CInt(dgvFirmen.SelectedRows(0).Cells("Firma_ID").Value))
|
|
|
|
Dim bild As Byte() = BildDateiLaden()
|
|
If bild Is Nothing Then Exit Sub
|
|
|
|
Dim spalte As String = ""
|
|
Dim vorhandenesBild As Byte() = Nothing
|
|
|
|
Select Case DirectCast(sender, PictureBox).Name
|
|
|
|
Case "PictureBox1"
|
|
spalte = "Firma_Logo"
|
|
vorhandenesBild = Firma.Firma_Logo
|
|
|
|
Case "PictureBox2"
|
|
spalte = "Firma_Logo_Erweitert"
|
|
vorhandenesBild = Firma.Firma_Logo_Erweitert
|
|
|
|
End Select
|
|
|
|
If vorhandenesBild IsNot Nothing AndAlso vorhandenesBild.Length > 0 Then
|
|
|
|
Dim antwort = MessageBox.Show(
|
|
"Es ist bereits ein Logo vorhanden." & vbCrLf & "Möchten Sie dieses überschreiben?", "Logo überschreiben", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
|
|
|
|
If antwort = DialogResult.No Then
|
|
Exit Sub
|
|
End If
|
|
|
|
End If
|
|
|
|
|
|
Using con As SqlConnection = SQL.GetNewOpenConnectionFMZOLL()
|
|
|
|
Using cmd As New SqlCommand(
|
|
$"UPDATE tblFirma SET {spalte}=@Bild WHERE Firma_ID=@Firma_ID", con)
|
|
|
|
cmd.Parameters.Add("@Bild", SqlDbType.VarBinary, -1).Value = bild
|
|
cmd.Parameters.Add("@Firma_ID", SqlDbType.Int).Value = Firma.Firma_ID
|
|
|
|
cmd.ExecuteNonQuery()
|
|
|
|
End Using
|
|
|
|
End Using
|
|
|
|
|
|
MessageBox.Show("Logo wurde gespeichert.", "Erfolgreich", MessageBoxButtons.OK, MessageBoxIcon.Information)
|
|
|
|
End Sub
|
|
|
|
|
|
|
|
Public Function BildDateiLaden() As Byte()
|
|
|
|
Using ofd As New OpenFileDialog()
|
|
ofd.Title = "Bild auswählen"
|
|
ofd.Filter = "Bilddateien|*.jpg;*.jpeg;*.png;*.bmp;*.gif;*.webp|Alle Dateien|*.*"
|
|
ofd.Multiselect = False
|
|
|
|
If ofd.ShowDialog() = DialogResult.OK Then
|
|
Return File.ReadAllBytes(ofd.FileName)
|
|
End If
|
|
End Using
|
|
|
|
Return Nothing
|
|
End Function
|
|
|
|
|
|
|
|
End Class |