Files
SDL/SDL/Creditsafe/usrcntlVAT_ATEZ.vb
2025-04-28 16:22:23 +02:00

215 lines
8.2 KiB
VB.net

Public Class usrcntlVAT_ATEZ
Dim sql As New VERAG_PROG_ALLGEMEIN.SQL
Dim user, pw As String
Dim land As String
Public dataTable As New DataTable()
Public va As VAT
Dim uidDefault As String
Public createCostumer As Boolean = False
Sub New()
InitializeComponent()
End Sub
Sub New(_UID As String, _name As String, _land As String, _PLZ As String, _Strasse As String, _Ort As String)
InitializeComponent()
uidDefault = _UID
_name = _name.Replace(Chr(34), "") 'Anführungszeichen entfernen
_name = _name.Replace(Chr(176), "") '° entfernen
txtFirma.Text = _name
txtPLZ.Text = _PLZ
txtOrt.Text = _Ort
txtStrasse.Text = _Strasse
land = _land
End Sub
Private Sub init()
'cboLand.changeItem(land)
'initDataTable()
btnUebernehmen.Enabled = False
Cursor = Cursors.Default
If uidDefault <> "" Then
uidDefault = uidDefault.Replace(" ", "")
uidDefault = uidDefault.Trim()
If uidDefault.ToUpper.StartsWith("ATU") Then
uidDefault = uidDefault.Replace("ATU", "")
txtUID.Text = "ATU " & uidDefault
Else
txtUID.Text = uidDefault
End If
End If
End Sub
Sub initDataTable()
dataTable.Columns.Add("currency", GetType(String))
dataTable.Columns.Add("invoice_id", GetType(String))
dataTable.Columns.Add("seller_VAT_id", GetType(String))
dataTable.Columns.Add("seller_address_city", GetType(String))
dataTable.Columns.Add("seller_address_country", GetType(String))
dataTable.Columns.Add("seller_address_postcode", GetType(String))
dataTable.Columns.Add("seller_address_street", GetType(String))
dataTable.Columns.Add("seller_name", GetType(String))
dataTable.Columns.Add("status", GetType(String))
dataTable.Columns.Add("invoice_date", GetType(DateTime))
End Sub
Sub initDGV(dt As DataTable)
dgvVAT.DataSource = dt
If dgvVAT.Columns.Count > 0 Then
With dgvVAT
.RowHeadersWidth = 10
.Columns("currency").HeaderText = "Währung"
.Columns("invoice_id").HeaderText = "Rechnungs-Nr"
.Columns("seller_VAT_id").HeaderText = "UID-Nr"
.Columns("seller_VAT_id").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.Columns("seller_address_city").Width = 100
.Columns("seller_address_city").HeaderText = "Nr"
.Columns("seller_address_country").Visible = False
.Columns("seller_address_country").HeaderText = "Land"
.Columns("seller_address_postcode").Width = 100
.Columns("seller_address_postcode").HeaderText = "PLZ"
.Columns("seller_address_street").Width = 100
.Columns("seller_address_street").HeaderText = "Strasse"
.Columns("seller_name").Width = 100
.Columns("seller_name").HeaderText = "Verkäufer"
.Columns("status").Width = 100
.Columns("status").HeaderText = "Status"
.Columns("invoice_date").Width = 100
.Columns("invoice_date").HeaderText = "Rechnungsdatum"
End With
For Each row As DataGridViewRow In dgvVAT.Rows
If Not IsDBNull(row.Cells("status").Value) Then
Dim akiv As String = (row.Cells("status").Value.ToString).ToLower
If akiv = "active" Then
row.DefaultCellStyle.BackColor = Color.LightGreen
ElseIf akiv = "nonactive" Then
row.DefaultCellStyle.BackColor = Color.IndianRed
Else
row.DefaultCellStyle.BackColor = Color.LightYellow
End If
End If
Next
End If
End Sub
Private Sub btnUebernehmen_Click(sender As Object, e As EventArgs) Handles btnUebernehmen.Click
Dim o As Form = Me.FindForm
' If Me.Parent.GetType() Is GetType(Form) Then o = Me.FindForm
For Each row As DataGridViewRow In dgvVAT.SelectedRows
va = New VAT(IIf(IsDBNull(row.Cells("currency").Value), "", row.Cells("currency").Value),
IIf(IsDBNull(row.Cells("invoice_id").Value), "", row.Cells("invoice_id").Value),
IIf(IsDBNull(row.Cells("seller_VAT_id").Value), "", row.Cells("seller_VAT_id").Value),
IIf(IsDBNull(row.Cells("seller_address_city").Value), "", row.Cells("seller_address_city").Value),
IIf(IsDBNull(row.Cells("seller_address_country").Value), "", row.Cells("seller_address_country").Value),
IIf(IsDBNull(row.Cells("seller_address_postcode").Value), "", row.Cells("seller_address_postcode").Value),
IIf(IsDBNull(row.Cells("seller_address_street").Value), "", row.Cells("seller_address_street").Value),
IIf(IsDBNull(row.Cells("seller_name").Value), "", row.Cells("seller_name").Value),
IIf(IsDBNull(row.Cells("total_VAT_amount").Value), "", row.Cells("total_VAT_amount").Value),
IIf(IsDBNull(row.Cells("invoice_date").Value) Or Not IsDate(row.Cells("invoice_date").Value), Nothing, CDate(row.Cells("invoice_date").Value)),
IIf(IsDBNull(row.Cells("status").Value), "", row.Cells("status").Value))
Next
If va.status.ToLower <> "success" Then
Dim a As MsgBoxResult = MsgBox("Die Rechnung " & va.invoice_id & " besitzt den Status: " & va.status & vbNewLine & "Trotzdem fortfahren?", vbYesNo)
If a = vbYes Then
o.DialogResult = DialogResult.OK
Exit Sub
Else
o.DialogResult = DialogResult.None
End If
Else
lblWarning.Text = ""
o.DialogResult = DialogResult.OK
Exit Sub
End If
End Sub
Public Class VAT
Public Property currency As String
Public Property invoice_id As String
Public Property seller_VAT_id As String
Public Property seller_address_city As String
Public Property seller_address_country As String
Public Property seller_address_postcode As String
Public Property seller_address_street As String
Public Property seller_name As String
Public Property invoice_date As Date
Public Property total_VAT_amount As String
Public Property status As String
Public Sub New(_currency As String, _invoice_id As String, _seller_VAT_id As String, _seller_address_city As String, _seller_address_country As String, _seller_address_postcode As String, _seller_address_street As String, _seller_name As String, _total_VAT_amount As String, _invoice_date As DateTime, _status As String)
currency = _currency
invoice_id = _invoice_id
seller_VAT_id = _seller_VAT_id
seller_address_city = _seller_address_city
seller_address_country = _seller_address_country
seller_address_postcode = _seller_address_postcode
seller_address_street = _seller_address_street
seller_name = _seller_name
total_VAT_amount = _total_VAT_amount
invoice_date = _invoice_date
status = _status
End Sub
End Class
Private Sub dgvCreditsafe_SelectionChanged(sender As Object, e As EventArgs) Handles dgvVAT.SelectionChanged
If dgvVAT.SelectedRows.Count <> 1 Then
btnUebernehmen.Enabled = False
Else
btnUebernehmen.Enabled = True
End If
End Sub
Private Sub usrcntlCreditsafe_Load(sender As Object, e As EventArgs) Handles Me.Load
init()
End Sub
Private Sub dgvCreditsafe_CellDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvVAT.CellDoubleClick
If dgvVAT.SelectedRows.Count = 1 Then
btnUebernehmen.PerformClick()
End If
End Sub
End Class