Files
SDL/SDL/USTV/usrCntlUSTV.vb
2025-04-10 17:04:07 +02:00

1250 lines
74 KiB
VB.net

Imports System.ComponentModel
Imports com.sun.javadoc
Imports com.sun.xml.internal.bind.v2.model.core
Imports itextsharp.text.factories
Imports Microsoft.Office.Interop
Imports sun.swing
Imports VERAG_PROG_ALLGEMEIN
Public Class usrCntlUSTV
Dim kundenSQL As New kundenSQL
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Dim FUNC As New cProgramFunctions
Dim aktbtn As String = ""
Dim dgvInitWait As Boolean = False
Public kdNr As Integer = -1
Dim loaded As Boolean = False
Sub init(Optional kdNr As Integer = -1)
pnlFilter.AutoScroll = False
btnKundendatenaktualisieren.Enabled = False
' MsgBox(kdNr)
If kdNr > 0 Then
Me.kdNr = kdNr
KdSearchBox1.KdNr = kdNr
KdSearchBox1.Enabled = False
setInfo(kdNr)
Else
setInfo(KdSearchBox1.KdNr)
End If
btnPLOSEAlle.Enabled = KdSearchBox1.KdNr > 0
With dgvUSTV
.ClearSelection()
Dim topMax = ""
If cbxTopMax.Checked Then
If IsNumeric(txtMaxSrch.Text) Then
topMax = " TOP (" & txtMaxSrch.Text.Trim & ")"
Else
topMax = " TOP (200)"
End If
End If
.SET_SQL("SELECT " & topMax & " [UStVAn_ID],UStVAn_AntragArt,[UStVAn_KuNr],[UStVAn_Name],LandKz, UStVAn_BezugsNr, [UStVAn_ReDatVon], [UStVAn_ReDatBis] ,UStVAn_AntragEingereichtAm,[UStVAn_3470] ,[UStVAn_Währungscode],[UStVAn_USteuerbetrag],[UStVAn_Erstattungsbetrag],([UStVAn_USteuerbetrag] - [UStVAn_Erstattungsbetrag]) as UStVAn_Differenzbetrag,[UStVAn_USteuerbetragEUR],[UStVAn_ErstattungsbetragEUR],([UStVAn_USteuerbetragEUR] - [UStVAn_ErstattungsbetragEUR]) as UStVAn_DifferenzbetragEUR,[UStVAn_VZBetrag],[UStVAn_VZDatum],[UStVAn_Sachbearbeiter]
FROM [tblUStVAntrag] inner join [Länderverzeichnis für die Außenhandelsstatistik] on UStVAn_LandNr=Landnr
where 1=1 " & getWhere() & "
order by UStVAn_KuNr,UStVAn_Name,datepart(year,[UStVAn_ReDatVon] ) desc,LandKz,[UStVAn_ReDatVon] desc", "FMZOLL")
.LOAD()
loaded = True
.RowTemplate.Height = 20
.AllowUserToOrderColumns = False
.AllowUserToResizeRows = False
btnKundendatenaktualisieren.Enabled = KdSearchBox1.KdNr > 0 'AndAlso .RowCount > 0
If .Columns.Count > 0 Then
Dim DataGridViewCellStyleDate = New DataGridViewCellStyle()
DataGridViewCellStyleDate.Format = "MM/yyyy"
.Columns("UStVAn_ID").Visible = False
.Columns("UStVAn_AntragArt").HeaderText = "Art"
.Columns("UStVAn_AntragArt").MinimumWidth = 50
.Columns("UStVAn_KuNr").HeaderText = "KundenNr"
.Columns("UStVAn_Name").MinimumWidth = 70
.Columns("UStVAn_Name").HeaderText = "Firma"
.Columns("UStVAn_Name").Width = 200
' .Columns("UStVAn_Name").MinimumWidth = 150
' .Columns("UStVAn_Name").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.Columns("LandKz").Width = 60
.Columns("UStVAn_ReDatVon").HeaderText = "Von"
'.Columns("UStVAn_ReDatVon").DefaultCellStyle = DataGridViewCellStyleDate
.Columns("UStVAn_ReDatVon").Width = 100
.Columns("UStVAn_ReDatBis").HeaderText = "Bis"
'.Columns("UStVAn_ReDatBis").DefaultCellStyle = DataGridViewCellStyleDate
.Columns("UStVAn_ReDatBis").Width = 100
.Columns("UStVAn_BezugsNr").HeaderText = "BezugsNr"
.Columns("UStVAn_BezugsNr").Width = 100
.Columns("UStVAn_AntragEingereichtAm").HeaderText = "EingereichtAm"
.Columns("UStVAn_AntragEingereichtAm").Width = 100
.Columns("UStVAn_3470").HeaderText = "3470"
.Columns("UStVAn_3470").Width = 150
.Columns("UStVAn_3470").DefaultCellStyle.Format = "N2"
.Columns("UStVAn_3470").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
.Columns("UStVAn_Währungscode").HeaderText = "Währung"
.Columns("UStVAn_Währungscode").Width = 80
.Columns("UStVAn_USteuerbetrag").HeaderText = "USt-Betrag"
.Columns("UStVAn_USteuerbetrag").Width = 150
.Columns("UStVAn_USteuerbetrag").DefaultCellStyle.Format = "N2"
.Columns("UStVAn_USteuerbetrag").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
.Columns("UStVAn_Erstattungsbetrag").HeaderText = "Erstattung-Betrag"
.Columns("UStVAn_Erstattungsbetrag").Width = 150
.Columns("UStVAn_Erstattungsbetrag").DefaultCellStyle.Format = "N2"
.Columns("UStVAn_Erstattungsbetrag").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
.Columns("UStVAn_Differenzbetrag").HeaderText = "Differenz-Betrag"
.Columns("UStVAn_Differenzbetrag").Width = 150
.Columns("UStVAn_Differenzbetrag").DefaultCellStyle.Format = "N2"
.Columns("UStVAn_Differenzbetrag").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
.Columns("UStVAn_ErstattungsbetragEUR").HeaderText = "Erstattung-Betrag EUR"
.Columns("UStVAn_ErstattungsbetragEUR").Width = 150
.Columns("UStVAn_ErstattungsbetragEUR").DefaultCellStyle.Format = "N2"
.Columns("UStVAn_ErstattungsbetragEUR").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
.Columns("UStVAn_USteuerbetragEUR").HeaderText = "USt-Betrag EUR"
.Columns("UStVAn_USteuerbetragEUR").Width = 150
.Columns("UStVAn_USteuerbetragEUR").DefaultCellStyle.Format = "N2"
.Columns("UStVAn_USteuerbetragEUR").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
.Columns("UStVAn_DifferenzbetragEUR").HeaderText = "Differenz-Betrag EUR"
.Columns("UStVAn_DifferenzbetragEUR").Width = 150
.Columns("UStVAn_DifferenzbetragEUR").DefaultCellStyle.Format = "N2"
.Columns("UStVAn_DifferenzbetragEUR").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
.Columns("UStVAn_VZDatum").HeaderText = "Vorauszahlung Am"
.Columns("UStVAn_VZDatum").Width = 100
.Columns("UStVAn_VZBetrag").HeaderText = "Vorauszahlung-Betrag"
.Columns("UStVAn_VZBetrag").Width = 150
.Columns("UStVAn_VZBetrag").DefaultCellStyle.Format = "N2"
.Columns("UStVAn_VZBetrag").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
.Columns("UStVAn_Sachbearbeiter").HeaderText = "Sachbearbeiter"
.Columns("UStVAn_Sachbearbeiter").MinimumWidth = 150
.Columns("UStVAn_Sachbearbeiter").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
End If
Dim GesamtUSteuer As Double = 0
Dim GesamtErstattung As Double = 0
Dim Differnezbetrag As Double = 0
Dim Gesamt3470 As Double = 0
Dim GesamtVZBetrag As Double = 0
Dim VorschaubetrGes As Double = 0
Dim OPSaldo As Double = 0
Dim Risiko As Double = 0
Dim calcRisiko As Boolean = False
If KdSearchBox1.KdNr > 0 Then
Dim dt As New DataTable
dt = SQL.loadDgvBySql("SELECT Kunden.KundenNr as KundenNr, Kunden.UStV_SummeUmsatzsteuerbetragEUR, Kunden.UStV_SummeErstattungsbetragEUR, Kunden.UStV_Summe3470BetragEUR, Kunden.UStV_SummeVZBetragEUR, Kunden.UStV_SummeVorschaubetragEUR
FROM Kunden
WHERE Kunden.KundenNr = " & KdSearchBox1.KdNr, "FMZOLL")
OPSaldo = CInt((New SQL).getValueTxtBySql("SELECT isnull(sum(Gesamtausstand),0) FROM [Offene Posten] WHERE [Kontonummer]=" & KdSearchBox1.KdNr, "FMZOLL"))
calcRisiko = True
If dt.Rows.Count = 1 Then
GesamtUSteuer = dt.Rows(0).Item("UStV_SummeUmsatzsteuerbetragEUR")
GesamtErstattung = dt.Rows(0).Item("UStV_SummeErstattungsbetragEUR")
Gesamt3470 = dt.Rows(0).Item("UStV_Summe3470BetragEUR")
GesamtVZBetrag = dt.Rows(0).Item("UStV_SummeVZBetragEUR")
VorschaubetrGes = dt.Rows(0).Item("UStV_SummeVorschaubetragEUR")
Else
GesamtUSteuer = 0
GesamtErstattung = 0
Gesamt3470 = 0
GesamtVZBetrag = 0
VorschaubetrGes = 0
End If
'GesamtUSteuer = SQL.DLookup("isnull(sum(UStVAn_USteuerbetragEUR),0)", "tblUStVAntrag", "UStVAn_KuNr='" & KdSearchBox1.KdNr & "'", "FMZOLL", "0")
'GesamtErstattung = SQL.DLookup("isnull(sum(UStVAn_ErstattungsbetragEUR),0)", "tblUStVAntrag", "UStVAn_KuNr='" & KdSearchBox1.KdNr & "'", "FMZOLL", "0")
'Gesamt3470 = SQL.DLookup("isnull(sum(UStVAn_3470),0)", "tblUStVAntrag", "UStVAn_KuNr='" & KdSearchBox1.KdNr & "'", "FMZOLL", "0")
'GesamtVZBetrag = SQL.DLookup("isnull(sum(UStVAn_VZBetrag),0)", "tblUStVAntrag", "UStVAn_KuNr='" & KdSearchBox1.KdNr & "'", "FMZOLL", "0")
Else
For Each rows As DataGridViewRow In .Rows
If IsNumeric(rows.Cells("UStVAn_USteuerbetragEUR").Value) Then GesamtUSteuer += rows.Cells("UStVAn_USteuerbetragEUR").Value
If IsNumeric(rows.Cells("UStVAn_ErstattungsbetragEUR").Value) Then GesamtErstattung += rows.Cells("UStVAn_ErstattungsbetragEUR").Value
If IsNumeric(rows.Cells("UStVAn_3470").Value) Then Gesamt3470 += rows.Cells("UStVAn_3470").Value
If IsNumeric(rows.Cells("UStVAn_VZBetrag").Value) Then GesamtVZBetrag += rows.Cells("UStVAn_VZBetrag").Value
Next
VorschaubetrGes = 0
Risiko = 0
End If
Differnezbetrag = GesamtUSteuer - GesamtErstattung
If calcRisiko Then
Risiko = OPSaldo - Differnezbetrag - Gesamt3470 + GesamtVZBetrag - VorschaubetrGes
End If
txtSumUst.Text = GesamtUSteuer.ToString("C2")
txtSumErst.Text = GesamtErstattung.ToString("C2")
txtSumDiff.Text = Differnezbetrag.ToString("C2")
txt3470Betrag.Text = Gesamt3470.ToString("C2")
txtVZBetrag.Text = GesamtVZBetrag.ToString("C2")
txtVorschaubetrGes.Text = VorschaubetrGes.ToString("C2")
txtOPSaldo.Text = OPSaldo.ToString("C2")
txtRisiko.Text = Risiko.ToString("C2")
End With
End Sub
Function getWhere(Optional useJahr = True) As String
Dim whereStr = ""
'If KdSearchBox1.KdNr <= 0 Then Exit Sub
If useJahr Then
If cboJahr._value <> "" Then
If cboJahrBis._value <> "" Then
whereStr &= " AND UStVAn_ReDatVon>='01.01." & cboJahr._value & "' AND UStVAn_ReDatBis<='31.12." & cboJahrBis._value & "' "
Else
whereStr &= " AND UStVAn_ReDatVon>='01.01." & cboJahr._value & "' AND UStVAn_ReDatBis<='31.12." & cboJahr._value & "' "
End If
End If
End If
Select Case cbxEingereicht.CheckState
Case CheckState.Checked
whereStr &= " AND UStVAn_AntragEingereichtAm is not null "
Case CheckState.Unchecked
whereStr &= " AND UStVAn_AntragEingereichtAm is null "
Case CheckState.Indeterminate
End Select
Select Case cbxDifferenzbetrag.CheckState
Case CheckState.Checked
whereStr &= " AND ([UStVAn_USteuerbetrag]-[UStVAn_Erstattungsbetrag]) <> 0"
Case CheckState.Unchecked
whereStr &= " AND ([UStVAn_USteuerbetrag]-[UStVAn_Erstattungsbetrag]) = 0 "
Case CheckState.Indeterminate
End Select
If KdSearchBox1.KdNr > 0 Then whereStr &= " AND UStVAn_KuNr=" & KdSearchBox1.KdNr & " "
Return whereStr
End Function
Private Sub usrCntlUSTV_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' btnFilter.Left = Panel4.Width - btnFilter.Width
KdSearchBox1.initKdBox(Me.FindForm)
If kdNr > 0 Then
KdSearchBox1.KdNr = kdNr
KdSearchBox1.Enabled = False
End If
init()
cboJahr.Items.Clear()
cboJahr.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
For i = 0 To 10
cboJahr.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(Now.Year - i, Now.Year - i))
Next
cboJahr.changeItem(Now.Year - 1)
cboJahrBis.Items.Clear()
cboJahrBis.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
For i = 0 To 10
cboJahrBis.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(Now.Year - i, Now.Year - i))
Next
cboJahrBis.changeItem(Now.Year)
If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("MDM_USTVA_bearbeiten", Me.FindForm) Then
'FlatButton1.Enabled = False#
btnUSTVAloeschen.Enabled = False
btnNeuerUSTVA.Enabled = False
btnPLOSEAlle.Enabled = False
Else
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
btnUSTVAloeschen.Enabled = True
btnNeuerUSTVA.Enabled = True
Else
btnUSTVAloeschen.Enabled = True
btnNeuerUSTVA.Enabled = True
End If
End If
' Panel3.Height = Me.Height / 2 + 300
End Sub
Private Sub dgvUSTV_CellDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvUSTV.CellDoubleClick
If dgvUSTV.SelectedRows.Count > 0 Then
Dim f As New frmMDM_USTVAntrag(dgvUSTV.SelectedRows(0).Cells("UStVAn_ID").Value)
f.ShowDialog(Me)
dgvUSTV.RELOAD()
End If
End Sub
Private Sub cboJahr_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboJahr.SelectedIndexChanged, cboJahrBis.SelectedIndexChanged
If loaded = False Then Exit Sub
init()
End Sub
Private Sub KdSearchBox1_PropertyChanged(sender As Object, e As PropertyChangedEventArgs) Handles KdSearchBox1.PropertyChanged
If loaded = False Then Exit Sub
init()
End Sub
Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim dtNew As New DataTable
dtNew = TryCast(dgvUSTV.DataSource, DataTable)
If dtNew.Rows.Count > 0 Then
For Each col As DataColumn In dtNew.Columns
col.ColumnName = col.ColumnName.Replace("UStVAn_", "")
Next
cProgramFunctions.genExcelFromDT_NEW(dtNew, {"J1:N" & (dtNew.Rows.Count + 1)},,,,, True)
End If
End Sub
Private Sub Button8_Click_1(sender As Object, e As EventArgs) Handles Button8.Click
'Dim sqlStr = "SELECT [UStVAn_ID],[UStVAn_KuNr],[UStVAn_Name],LandKz,[UStVAn_ReDatVon],[UStVAn_ReDatBis] ,UStVAn_AntragEingereichtAm,[UStVAn_3470] ,[UStVAn_Währungscode],[UStVAn_USteuerbetrag],[UStVAn_Erstattungsbetrag],[UStVAn_USteuerbetragEUR],[UStVAn_ErstattungsbetragEUR],[UStVAn_Sachbearbeiter]
' FROM [tblUStVAntrag] inner join [Länderverzeichnis für die Außenhandelsstatistik] on UStVAn_LandNr=Landnr
' where 1=1 " & getWhere(False) & "
' AND cast( [UStVAn_USteuerbetragEUR] as decimal(17,2))-cast( [UStVAn_ErstattungsbetragEUR] as decimal(17,2))<>0
' AND UStVAn_AntragEingereichtAm is not null
' order by UStVAn_KuNr,UStVAn_Name,datepart(year,[UStVAn_ReDatVon] ) desc,LandKz,[UStVAn_ReDatVon] desc"
Dim sqlStr = "SELECT [UStVAn_ID] as ID,[UStVAn_KuNr] as KundenNr,[UStVAn_Name] as Kundename,Adressen.LandKz as Land_Kunde, case when UstIdKz is not null and UstIdNr is not null THEN UstIdKz +'' + UstIdNr ELSE isnull(Steuernummer,'') END as SteuerUIDNr, LfdA .LandKz Land_Antrag,cast([UStVAn_ReDatVon] as Date) as ReDatVon,cast([UStVAn_ReDatBis] as Date) as ReDatBis , cast(UStVAn_AntragEingereichtAm as Date) as EingereichtAm,[UStVAn_3470] as An3470 ,[UStVAn_Währungscode] as Währung,[UStVAn_USteuerbetrag] as Steuerbetrag,[UStVAn_Erstattungsbetrag] as Erstattungsbetrag,[UStVAn_USteuerbetragEUR] as SteuerbetragEUR,[UStVAn_ErstattungsbetragEUR] as ErstattungsbetragEUR,(cast([UStVAn_USteuerbetragEUR] as decimal(17,2)) - cast( [UStVAn_ErstattungsbetragEUR] as decimal(17,2))) as DifferenzbetragEUR, UStVAn_VZBetrag as Vorauszahlungsbetrag, [UStVAn_Sachbearbeiter] as Sachbearbeiter, UStVAn_AntragArt as Art, stnr.[StNrFürRückerstattungUSt] as SteuerNr
FROM [tblUStVAntrag]
inner join [Länderverzeichnis für die Außenhandelsstatistik] as LfdA on UStVAn_LandNr=Landnr
inner join Adressen on AdressenNr=UStVAn_KuNr
left join [tblSteuernummern] as stnr on stnr.AdressenNr = UStVAn_KuNr and stnr.LandNr=UStVAn_LandNr
where 1=1
AND cast( [UStVAn_USteuerbetragEUR] as decimal(17,2))-cast( [UStVAn_ErstattungsbetragEUR] as decimal(17,2))<>0
AND UStVAn_AntragEingereichtAm is not null
order by UStVAn_KuNr,UStVAn_Name,datepart(year,[UStVAn_ReDatVon] ) desc,LfdA .LandKz,[UStVAn_ReDatVon] desc"
Dim dt = SQL.loadDgvBySql(sqlStr, "FMZOLL")
If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then
cProgramFunctions.genExcelFromDT_NEW(dt, {"J1:N" & (dt.Rows.Count + 1)},,,,, True)
Else
MsgBox("Keine Daten!")
End If
End Sub
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
' If Not kdNr_filter Then
If dgvUSTV.SelectedCells.Count > 0 Then
If IsNumeric(dgvUSTV.CurrentRow.Cells("UStVAn_KuNr").Value) Then
cProgramFunctions.openKundenblatt(dgvUSTV.CurrentRow.Cells("UStVAn_KuNr").Value, Me.FindForm, True)
'Dim pf As New cProgramFunctions
'pf.openKundenblatt(dgvSDL.CurrentRow.Cells("KundenNr").Value)
End If
End If
' End If
End Sub
Private Sub btnPLOSEAlle_Click(sender As Object, e As EventArgs) Handles btnPLOSEAlle.Click
If Not ContextMenuStrip2.Items.ContainsKey("plose") Then
Dim plose = New ToolStripMenuItem() With {.Text = "Plose", .Name = "plose", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
ContextMenuStrip2.Items.Add(plose)
AddHandler plose.Click, AddressOf mnuItemAuftrauege_Clicked
End If
If IsDate(dgvUSTV.CurrentRow.Cells("UStVAn_ReDatVon").Value) Then
If DirectCast(dgvUSTV.CurrentRow.Cells("UStVAn_ReDatVon").Value, Date).Year >= 2025 Then 'wenn INFO von PLOSE WÄHRUNGSCODE IN INV_DATA, dann freischalten
If Not ContextMenuStrip2.Items.ContainsKey("ploseneu") Then
Dim plose = New ToolStripMenuItem() With {.Text = "Plose-NEUE LOGIK", .Name = "ploseneu", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
ContextMenuStrip2.Items.Add(plose)
AddHandler plose.Click, AddressOf mnuItemAuftrauege_Clicked
End If
End If
End If
If Not ContextMenuStrip2.Items.ContainsKey("rmc") Then
Dim rmc = New ToolStripMenuItem() With {.Text = "RMC", .Name = "rmc", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
AddHandler rmc.Click, AddressOf mnuItemAuftrauege_Clicked
ContextMenuStrip2.Items.Add(rmc)
End If
If Not ContextMenuStrip2.Items.ContainsKey("mse") Then
Dim mse = New ToolStripMenuItem() With {.Text = "MSE", .Name = "mse", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
AddHandler mse.Click, AddressOf mnuItemAuftrauege_Clicked
ContextMenuStrip2.Items.Add(mse)
End If
If Not ContextMenuStrip2.Items.ContainsKey("uta") Then
Dim uta = New ToolStripMenuItem() With {.Text = "UTA", .Name = "uta", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
AddHandler uta.Click, AddressOf mnuItemAuftrauege_Clicked
ContextMenuStrip2.Items.Add(uta)
End If
If Not ContextMenuStrip2.Items.ContainsKey("ids") Then
Dim ids = New ToolStripMenuItem() With {.Text = "IDS", .Name = "ids", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
AddHandler ids.Click, AddressOf mnuItemAuftrauege_Clicked
ContextMenuStrip2.Items.Add(ids)
End If
If Not ContextMenuStrip2.Items.ContainsKey("verag") Then
Dim verag = New ToolStripMenuItem() With {.Text = "VERAG", .Name = "verag", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
AddHandler verag.Click, AddressOf mnuItemAuftrauege_Clicked
ContextMenuStrip2.Items.Add(verag)
End If
ContextMenuStrip2.Show(Cursor.Position)
End Sub
Private Sub mnuItemAuftrauege_Clicked(sender As Object, e As EventArgs)
Try
If dgvUSTV.SelectedRows.Count > 0 Then
ContextMenuStrip1.Hide()
Dim item As ToolStripMenuItem = TryCast(sender, ToolStripMenuItem)
Me.Cursor = Cursors.WaitCursor
If KdSearchBox1.KdNr <= 0 Then Exit Sub
If cboJahr._value = "" Then Exit Sub
If cboJahrBis._value = "" Then Exit Sub
Dim cnt = SQL.getValueTxtBySql(" SELECT COUNT(*) FROM [tblUStVAntrag] where UStVAn_AntragEingereichtAm is null AND UStVAn_KuNr=" & KdSearchBox1.KdNr & " AND UStVAn_ReDatVon>='01.01." & cboJahr._value & "' AND UStVAn_ReDatBis<='31.12." & cboJahrBis._value & "'", "FMZOLL")
If cnt = 0 Then MsgBox("Keine einreichbaren Anträge gefunden!") : Exit Sub
If item IsNot Nothing Then
If item.Name = "plose" Or item.Name = "ploseneu" Then
If vbYes = MsgBox("Es werden " & item.Text & " Daten für " & cnt & " USTV-Anträge eingearbeitet. Möchten Sie fortfahren?", vbYesNoCancel) Then
For Each r As DataGridViewRow In dgvUSTV.Rows
If r.Cells("UStVAn_AntragEingereichtAm").Value Is DBNull.Value Then ' OrElse r.Cells("UStVAn_AntragEingereichtAm").Value = "" Then
'Dim Antrag_LandKz = SQL.DLookup("LandKz", "[Länderverzeichnis für die Außenhandelsstatistik]", "Landnr='" & r.Cells("UStVAn_LandNr").Value & "'", "FMZOLL")
frmMDM_USTVAntrag.loadUSTVFrom_PLOSE(r.Cells("UStVAn_ID").Value, r.Cells("LandKz").Value, False, IIf(item.Name = "ploseneu", True, False))
End If
Next
init()
MsgBox("Fertig!")
End If
ElseIf item.Name = "rmc" Then
If vbYes = MsgBox("Es werden " & item.Text & " Daten für " & cnt & " USTV-Anträge eingearbeitet. Möchten Sie fortfahren?", vbYesNoCancel) Then
For Each r As DataGridViewRow In dgvUSTV.Rows
If r.Cells("UStVAn_AntragEingereichtAm").Value Is DBNull.Value Then
frmMDM_USTVAntrag.loadUSTVFrom_RMC(r.Cells("UStVAn_ID").Value, r.Cells("LandKz").Value, False)
End If
Next
init()
MsgBox("Fertig!")
End If
ElseIf item.Name = "mse" Then
If vbYes = MsgBox("Es werden " & item.Text & " Daten für " & cnt & " USTV-Anträge eingearbeitet. Möchten Sie fortfahren?", vbYesNoCancel) Then
For Each r As DataGridViewRow In dgvUSTV.Rows
If r.Cells("UStVAn_AntragEingereichtAm").Value Is DBNull.Value Then
frmMDM_USTVAntrag.loadUSTVFrom_MSE(r.Cells("UStVAn_ID").Value, r.Cells("LandKz").Value, False)
End If
Next
init()
MsgBox("Fertig!")
End If
ElseIf item.Name = "uta" Then
If vbYes = MsgBox("Es werden " & item.Text & " Daten für " & cnt & " USTV-Anträge eingearbeitet. Möchten Sie fortfahren?", vbYesNoCancel) Then
For Each r As DataGridViewRow In dgvUSTV.Rows
If r.Cells("UStVAn_AntragEingereichtAm").Value Is DBNull.Value Then
frmMDM_USTVAntrag.loadUSTVFrom_UTA(r.Cells("UStVAn_ID").Value, r.Cells("LandKz").Value, False)
End If
Next
init()
MsgBox("Fertig!")
End If
ElseIf item.Name = "ids" Then
If vbYes = MsgBox("Es werden " & item.Text & " Daten für " & cnt & " USTV-Anträge eingearbeitet. Möchten Sie fortfahren?", vbYesNoCancel) Then
For Each r As DataGridViewRow In dgvUSTV.Rows
If r.Cells("UStVAn_AntragEingereichtAm").Value Is DBNull.Value Then
frmMDM_USTVAntrag.loadUSTVFrom_IDS(r.Cells("UStVAn_ID").Value, r.Cells("LandKz").Value, False)
End If
Next
init()
MsgBox("Fertig!")
End If
ElseIf item.Name = "verag" Then
If vbYes = MsgBox("Es werden " & item.Text & " Daten für " & cnt & " USTV-Anträge eingearbeitet. Möchten Sie fortfahren?", vbYesNoCancel) Then
For Each r As DataGridViewRow In dgvUSTV.Rows
If r.Cells("UStVAn_AntragEingereichtAm").Value Is DBNull.Value Then
If r.Cells("LandKz").Value = "AT" Then frmMDM_USTVAntrag.loadUSTVFrom_VERAG(r.Cells("UStVAn_ID").Value, r.Cells("LandKz").Value, False)
End If
Next
init()
MsgBox("Fertig!")
End If
Else
MsgBox("Funktion nicht implementiert!")
End If
End If
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
Me.Cursor = Cursors.Default
End Sub
Private Sub btn2_Click(sender As Object, e As EventArgs) Handles Button2.Click
If Not ContextMenuStrip3.Items.ContainsKey("dgv") Then
Dim dgv = New ToolStripMenuItem() With {.Text = "Übersicht anzeigen", .Name = "dgv", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
AddHandler dgv.Click, AddressOf mnuItem3_Clicked
ContextMenuStrip3.Items.Add(dgv)
End If
If Not ContextMenuStrip3.Items.ContainsKey("excel") Then
Dim excel = New ToolStripMenuItem() With {.Text = "Excelauswertung starten", .Name = "excel", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
ContextMenuStrip3.Items.Add(excel)
AddHandler excel.Click, AddressOf mnuItem3_Clicked
End If
If Not ContextMenuStrip3.Items.ContainsKey("mail") Then
Dim mail = New ToolStripMenuItem() With {.Text = "Email generieren", .Name = "mail", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
AddHandler mail.Click, AddressOf mnuItem3_Clicked
ContextMenuStrip3.Items.Add(mail)
End If
ContextMenuStrip3.Show(Cursor.Position)
End Sub
Private Sub btnMail_Click(sender As Object, e As EventArgs) Handles btnMail.Click
If Not ContextMenuStrip1.Items.ContainsKey("excel") Then
Dim excel = New ToolStripMenuItem() With {.Text = "Excelauswertung starten", .Name = "excel", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
ContextMenuStrip1.Items.Add(excel)
AddHandler excel.Click, AddressOf mnuItem_Clicked
End If
If Not ContextMenuStrip1.Items.ContainsKey("mail") Then
Dim mail = New ToolStripMenuItem() With {.Text = "Email generieren", .Name = "mail", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
AddHandler mail.Click, AddressOf mnuItem_Clicked
ContextMenuStrip1.Items.Add(mail)
End If
If Not ContextMenuStrip1.Items.ContainsKey("offeneAntraege") Then
Dim oa = New ToolStripMenuItem() With {.Text = "nicht eingearbeitet USTV-Anträge", .Name = "offeneAntraege", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
AddHandler oa.Click, AddressOf mnuItem_Clicked
ContextMenuStrip1.Items.Add(oa)
End If
ContextMenuStrip1.Show(Cursor.Position)
End Sub
Private Sub mnuItem_Clicked(sender As Object, e As EventArgs)
If dgvUSTV.SelectedRows.Count > 0 Then
ContextMenuStrip1.Hide()
Dim item As ToolStripMenuItem = TryCast(sender, ToolStripMenuItem)
If item IsNot Nothing Then
If item.Name = "excel" Then
excelAuswertung()
ElseIf item.Name = "mail" Then
mailmitExcelauswertung()
ElseIf item.Name = "offeneAntraege" Then
If dgvUSTV.SelectedRows(0) IsNot Nothing AndAlso IsDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatVon").Value) AndAlso IsDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatBis").Value) Then
If dgvUSTV.SelectedRows(0).Cells("UStVAn_KuNr").Value IsNot Nothing AndAlso dgvUSTV.SelectedRows(0).Cells("UStVAn_Name").Value IsNot Nothing Then
Dim frm As New frmUSTVoffeneAntraege(CDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatVon").Value), CDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatBis").Value), dgvUSTV.SelectedRows(0).Cells("UStVAn_KuNr").Value, IIf(IsDBNull(dgvUSTV.SelectedRows(0).Cells("UStVAn_Name").Value), "", dgvUSTV.SelectedRows(0).Cells("UStVAn_Name").Value))
frm.Show()
Else
Dim frm As New frmUSTVoffeneAntraege(CDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatVon").Value), CDate(dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatBis").Value))
frm.cbxAlleoffenen.Checked = True
frm.Show()
End If
Else
Dim frm As New frmUSTVoffeneAntraege()
frm.Show()
End If
Else
MsgBox("Funktion nicht implementiert!")
End If
End If
End If
End Sub
Private Function excelAuswertung(Optional ByRef filepath As String = "", Optional feedback As Boolean = False, Optional openExcel As Boolean = True) As Boolean
Dim sqlStr = "SELECT [UStVPo_ReDat] as InvoiceDate , [UStVPo_ReNr] As InvoiceNumber, antr.UStVAn_Name as Company, 'FR' as CountryOfRefund ,'EUR' as Currency ,[UStVPo_Leistender] as SupplierName, leist.[UstV_Leistender_Strasse] AS SupplierStreet, leist.[UstV_Leistender_StrasseNr] as SupplierStreetNumber, leist.[UstV_Leistender_PLZ] as SupplierPostalCode, leist.[UstV_Leistender_Stadt] as SupplierCity, leist.[UstV_Leistender_Land] as SupplierCountry, leist.[UstV_Leistender_UstNr] as SupplierVAT_TaxNumber, [UStVPo_Leistungsbezeichnung] as ExpenseCategory ,Round((1119/19*[UStVPo_USteuerbetragEUR]),2) as ExpenseGrossAmount, [UStVPo_USteuerbetragEUR] as ExpenseVATAmount,Round((100/19*[UStVPo_USteuerbetragEUR]),2) as ExpenseNetAmount
FROM [tblUStVPositionen]
inner Join [tblUStVLeistender] as leist on leist.UStV_Leistender = [tblUStVPositionen].[UStVPo_Leistender]
inner join [tblUStVAntrag] as antr on antr.UStVAn_ID = [tblUStVPositionen].UStVAn_ID
where [tblUStVPositionen].UStVAn_ID ='" & dgvUSTV.SelectedRows(0).Cells("UStVAn_ID").Value & "' ORDER BY UStVPo_ID"
Dim dt = SQL.loadDgvBySql(sqlStr, "FMZOLL")
'filepath = ""
If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then
filepath = VERAG_PROG_ALLGEMEIN.cProgramFunctions.genExcelFromDT_NEW(dt, {"N1:N" & (dt.Rows.Count + 1), "O1:O" & (dt.Rows.Count + 1), "P1:P" & (dt.Rows.Count + 1)},,,, openExcel)
Return True
Else
MsgBox("Keine Daten!")
Return False
End If
End Function
Private Sub mailmitExcelauswertung()
Try
If dgvUSTV.Columns.Count > 0 Then
Dim subject As String = ""
subject &= IIf(dgvUSTV.CurrentRow.Cells("UStVAn_Name").Value <> "", dgvUSTV.CurrentRow.Cells("UStVAn_Name").Value & "_", "")
'subject &= If(dgvUSTV.CurrentRow.Cells("UStVAn_LandKz").Value <> "", dgvUSTV.CurrentRow.Cells("UStVAn_LandKz").Value & "_")
If (dgvUSTV.CurrentRow.Cells("UStVAn_ReDatVon").Value IsNot Nothing AndAlso dgvUSTV.CurrentRow.Cells("UStVAn_ReDatBis").Value IsNot Nothing) Then
subject &= CDate(dgvUSTV.CurrentRow.Cells("UStVAn_ReDatVon").Value).ToShortDateString & "-" & CDate(dgvUSTV.CurrentRow.Cells("UStVAn_ReDatBis").Value).ToShortDateString
End If
Dim outl As New Outlook.Application
Dim Mail As Microsoft.Office.Interop.Outlook.MailItem
Mail = outl.CreateItem(0)
Dim filepath = ""
If excelAuswertung(filepath, False, False) Then
Mail.Attachments.Add(filepath, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue)
End If
Mail.Subject = subject
Dim TextHTML = ""
TextHTML &= "Ladies and Gentlemen,<br>"
TextHTML &= "<br>"
TextHTML &= "In the attachment we will send you the Excel list and the corresponding invoices for the VAT refund.<br>"
TextHTML &= "Please submit these invoices to the tax office.<br>"
TextHTML &= "We are always available to answer more questions.<br>"
TextHTML &= "Mit freundlichen Grüßen<br>"
TextHTML &= VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME & "<br>"
TextHTML &= "<br>"
Mail.HTMLBody = "<div style=""font-family:Calibri, Arial;font-size:15px;"">" & TextHTML & SDL.cFakturierung.getSignature("DE") & "</div>"
Mail.Display()
End If
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,, "Fehler beim Öffnen der Mail!")
End Try
End Sub
Private Sub cbxTopMax_CheckedChanged(sender As Object, e As EventArgs) Handles cbxTopMax.CheckedChanged
If loaded = False Then Exit Sub
init()
End Sub
Private Sub txtMaxSrch_TextChanged(sender As Object, e As EventArgs) Handles txtMaxSrch.Leave
If loaded = False Then Exit Sub
init()
End Sub
Private Sub cbxEingereicht_CheckedChanged(sender As Object, e As EventArgs) Handles cbxEingereicht.CheckStateChanged, cbxDifferenzbetrag.CheckStateChanged
If loaded = False Then Exit Sub
init()
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles btnKundendatenaktualisieren.Click
Dim ok As Boolean = False
Me.Cursor = Cursors.WaitCursor
Try
VERAG_PROG_ALLGEMEIN.cMDMFunctionsAllgemein.setSchnittstellen(
VERAG_PROG_ALLGEMEIN.cAllgemein.PARAMS.GET_PARAMETER_VALUE_BOOL("Schnittstelle_PLOSE"),
False,
VERAG_PROG_ALLGEMEIN.cAllgemein.PARAMS.GET_PARAMETER_VALUE_BOOL("Schnittstelle_MSE_alt"),
VERAG_PROG_ALLGEMEIN.cAllgemein.PARAMS.GET_PARAMETER_VALUE_BOOL("Schnittstelle_MSE_neu"),
VERAG_PROG_ALLGEMEIN.cAllgemein.PARAMS.GET_PARAMETER_VALUE_BOOL("Schnittstelle_IDS_alt"),
VERAG_PROG_ALLGEMEIN.cAllgemein.PARAMS.GET_PARAMETER_VALUE_BOOL("Schnittstelle_IDS_neu"),
VERAG_PROG_ALLGEMEIN.cAllgemein.PARAMS.GET_PARAMETER_VALUE_BOOL("Schnittstelle_UTA_alt"),
VERAG_PROG_ALLGEMEIN.cAllgemein.PARAMS.GET_PARAMETER_VALUE_BOOL("Schnittstelle_UTA_neu"),
VERAG_PROG_ALLGEMEIN.cAllgemein.PARAMS.GET_PARAMETER_VALUE_BOOL("Schnittstelle_PLOSE_NEU")
)
If VERAG_PROG_ALLGEMEIN.cMDMFunctionsAllgemein.Update_UStVASummenNeuBerechnen(KdSearchBox1.KdNr) Then
ok = VERAG_PROG_ALLGEMEIN.cMDMFunctionsAllgemein.UStVAKunden_SummenNeuBerechnen(KdSearchBox1.KdNr)
End If
Catch ex As Exception
Me.Cursor = Cursors.Default
End Try
If ok Then
'MsgBox("Kundendaten wurden aktualisiert!")
init()
End If
Me.Cursor = Cursors.Default
End Sub
Private Sub btnNeuerUSTVA_Click(sender As Object, e As EventArgs) Handles btnNeuerUSTVA.Click
If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("MDM_USTVA_bearbeiten", Me.FindForm) Then
MsgBox("Nicht berechtigt!")
Exit Sub
End If
Dim frm = New frmMDM_USTVAntrag(IIf(KdSearchBox1.KdNr_value > 0, KdSearchBox1.KdNr_value, -1), "AT", Nothing, Nothing)
frm.ShowDialog()
End Sub
Private Sub btnUSTVAloeschen_Click(sender As Object, e As EventArgs) Handles btnUSTVAloeschen.Click
If Not dgvUSTV.SelectedRows.Count = 0 Then
If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("MDM_USTVA_bearbeiten", Me.FindForm) Then
MsgBox("Nicht berechtigt!")
Exit Sub
End If
If vbYes = MsgBox("Möchten Sie den " & dgvUSTV.SelectedRows(0).Cells("LandKz").Value & " Antrag von " & dgvUSTV.SelectedRows(0).Cells("UStVAn_Name").Value & "( " & dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatVon").Value & " - " & dgvUSTV.SelectedRows(0).Cells("UStVAn_ReDatBis").Value & ") wirklich löschen?", vbYesNoCancel) Then
Dim del_antrag As New cUSTVAntrag(dgvUSTV.SelectedRows(0).Cells("UStVAn_ID").Value)
If del_antrag.UStVAn_AntragEingereichtAm IsNot Nothing Then
MsgBox("Dieser Antrag wurde bereits eingereicht. Der Antrag kann nicht gelöscht werden.",, "UStV-Antrag " & del_antrag.UStVAn_ID)
Exit Sub
End If
If del_antrag.UStVAn_3470 IsNot Nothing AndAlso CDbl(del_antrag.UStVAn_3470) > 0 Then
MsgBox("Dieser Antrag enthält einen 3470-Betrag. Der Antrag kann nicht gelöscht werden.",, "UStV-Antrag " & del_antrag.UStVAn_ID)
Exit Sub
End If
If del_antrag.UStVAn_VZBetrag IsNot Nothing AndAlso CDbl(del_antrag.UStVAn_VZBetrag) > 0 Then
MsgBox("Dieser Antrag enthält einen VZ-Betrag. Der Antrag kann nicht gelöscht werden.",, "UStV-Antrag " & del_antrag.UStVAn_ID)
Exit Sub
End If
If del_antrag.UStVAn_Erstattungsbetrag IsNot Nothing AndAlso CDbl(del_antrag.UStVAn_Erstattungsbetrag) > 0 Then
MsgBox("Dieser Antrag enthält einen Erstattungsbetrag. Der Antrag kann nicht gelöscht werden.",, "UStV-Antrag " & del_antrag.UStVAn_ID)
Exit Sub
End If
For Each pos In del_antrag.POSITIONEN
If pos.UStVPo_SchnittstellenNr > 0 Then
MsgBox("Antrag enthält Positionen, die über die Schnittstelle geladen wurden." & vbNewLine & "Positionen manuell löschen.")
Exit Sub
End If
Next
If del_antrag.DELETE() Then
init()
End If
End If
End If
End Sub
Private Sub btnVorschau_Click(sender As Object, e As EventArgs) Handles btnVorschau.Click
Dim sqlKunden = ""
Dim sqlKundenVERAG = ""
Dim sqlKundenMSENEU = ""
Dim sqlKundenIDSALT = ""
Dim sqlKundenIDSNEU = ""
Dim sqlKundenPLOSENEU = ""
If KdSearchBox1.KdNr > 0 Then
sqlKunden = " AND Adressen.AdressenNr = " & KdSearchBox1.KdNr
sqlKundenVERAG = " AND RechnungsKundenNr = " & KdSearchBox1.KdNr
sqlKundenMSENEU = " AND partner_customer_number = " & KdSearchBox1.KdNr
sqlKundenIDSALT = " AND tblDieselArchiv.KdNrVERAG = " & KdSearchBox1.KdNr
sqlKundenIDSNEU = " AND [tblIDSTransactionsNew].KdNrVERAG = " & KdSearchBox1.KdNr
sqlKundenPLOSENEU = " AND tblPLOSE_Inv_Data.plInv_PLOSEKundennummer = " & KdSearchBox1.KdNr
End If
Dim qryUStVVorschau_VERAG As String = "SELECT 'VERAG' as LF, tblTrdinInvoice.RechnungsKundenNr, tblSteuernummern.LandNr, [Länderverzeichnis für die Außenhandelsstatistik].LandKz, YEAR(tblTrdinInvoice.Rechnungsdatum) AS Jahr, MONTH(tblTrdinInvoice.Rechnungsdatum) as Monat, SUm(tblTrdinInvoice.SteuerbetragLokal) AS Steuerbetrag, 'EUR' as Waehrung
FROM tblTrdinInvoice
INNER JOIN tblSteuernummern ON tblTrdinInvoice.RechnungsKundenNr = tblSteuernummern.AdressenNr
INNER JOIN [Länderverzeichnis für die Außenhandelsstatistik] ON tblSteuernummern.LandNr = [Länderverzeichnis für die Außenhandelsstatistik].LandNr
WHERE tblSteuernummern.LandNr = 38 AND tblTrdinInvoice.Rechnungsdatum >=
CASE
WHEN GETDATE() > CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-06-30' AS DATE)
THEN CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-01-01' AS DATE)
ELSE CAST(CAST(YEAR(GETDATE()) - 1 AS VARCHAR) + '-01-01' AS DATE)
END
AND tblTrdinInvoice.SteuerbetragLokal <> 0 AND tblTrdinInvoice.UStVAn_ID IS NULL AND tblSteuernummern.UStV = 1 " & sqlKundenVERAG & "
GROUP BY tblTrdinInvoice.RechnungsKundenNr, tblSteuernummern.LandNr,[Länderverzeichnis für die Außenhandelsstatistik].LandKz, YEAR(tblTrdinInvoice.Rechnungsdatum), MONTH(tblTrdinInvoice.Rechnungsdatum)
/*ORDER BY tblTrdinInvoice.RechnungsKundenNr, tblSteuernummern.LandNr, YEAR(tblTrdinInvoice.Rechnungsdatum), MONTH(tblTrdinInvoice.Rechnungsdatum)*/"
Dim qryUStVVorschau_IDS_ALT As String = "SELECT 'IDS' as LF, tblDieselArchiv.KdNrVERAG AS RechnungsKundenNr, tblSteuernummern.LandNr, [Länderverzeichnis für die Außenhandelsstatistik].LandKz, year(tblDieselArchiv.[Year Month Day]) AS Jahr, Month(tblDieselArchiv.[Year Month Day]) AS Monat, SUM(tblDieselArchiv.[VAT Amount]) AS Steuerbetrag, 'EUR' as Waehrung FROM tblDieselArchiv
INNER JOIN tblSteuernummern ON tblDieselArchiv.KdNrVERAG = tblSteuernummern.AdressenNr
INNER JOIN tbl_IDS_Länder ON tbl_IDS_Länder.LandNr = tblSteuernummern.LandNr AND tblDieselArchiv.[Outlet Country Code] = tbl_IDS_Länder.OutletCountryCode
INNER JOIN [Länderverzeichnis für die Außenhandelsstatistik] ON tblSteuernummern.LandNr = [Länderverzeichnis für die Außenhandelsstatistik].LandNr
WHERE tblDieselArchiv.[Year Month Day] >=
CASE
WHEN GETDATE() > CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-06-30' AS DATE)
THEN CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-01-01' AS DATE)
ELSE CAST(CAST(YEAR(GETDATE()) - 1 AS VARCHAR) + '-01-01' AS DATE)
END
AND tblDieselArchiv.[VAT Amount] <> 0 AND tblDieselArchiv.UStVAn_ID IS NULL AND tblSteuernummern.UStV = 1 " & sqlKundenIDSALT & "
GROUP BY
tblDieselArchiv.KdNrVERAG, tblSteuernummern.LandNr, [Länderverzeichnis für die Außenhandelsstatistik].LandKz, Year(tblDieselArchiv.[Year Month Day]), Month(tblDieselArchiv.[Year Month Day])
/*ORDER BY tblDieselArchiv.KdNrVERAG, tblSteuernummern.LandNr, Year(tblDieselArchiv.[Year Month Day]), Month(tblDieselArchiv.[Year Month Day])*/
"
Dim qryUStVVorschau_MSE_ALT As String = "SELECT 'MSE' as LF,tblSteuernummern.AdressenNr AS RechnungsKundenNr, tblSteuernummern.LandNr, [Länderverzeichnis für die Außenhandelsstatistik].LandKz, Year(tblMSETransactionsArchiv.[Invoice Date]) AS Jahr, Month(tblMSETransactionsArchiv.[Invoice Date]) AS Monat, CAST(ROUND(SUM(tblMSETransactionsArchiv.[Original VAT Amount]) / dbo.fktEUROKurs(tblMSETransactionsArchiv.[Original Currency], tblMSETransactionsArchiv.[Invoice Date]), 2) AS DECIMAL(18, 2)) AS Steuerbetrag, 'EUR' as Waehrung FROM tblSteuernummern
INNER JOIN Adressen ON tblSteuernummern.AdressenNr = Adressen.AdressenNr
INNER JOIN tblMSETransactionsArchiv ON Adressen.MSEKundenNr = tblMSETransactionsArchiv.[Customer ID]
INNER JOIN [Länderverzeichnis für die Außenhandelsstatistik] ON tblMSETransactionsArchiv.[Transaction Country] = [Länderverzeichnis für die Außenhandelsstatistik].LandKz AND tblSteuernummern.LandNr = [Länderverzeichnis für die Außenhandelsstatistik].LandNr
WHERE tblSteuernummern.UStV = 1 AND tblMSETransactionsArchiv.UStVAn_ID IS NULL " & sqlKunden & "
GROUP BY
tblSteuernummern.AdressenNr,
tblSteuernummern.LandNr,
[Länderverzeichnis für die Außenhandelsstatistik].LandKz,
tblMSETransactionsArchiv.[Invoice Date],
tblMSETransactionsArchiv.[Invoice ID],
tblMSETransactionsArchiv.[Original Currency]
HAVING
tblMSETransactionsArchiv.[Invoice Date] >=
CASE
WHEN GETDATE() > CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-06-30' AS DATE)
THEN CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-01-01' AS DATE)
ELSE CAST(CAST(YEAR(GETDATE()) - 1 AS VARCHAR) + '-01-01' AS DATE)
END
AND SUM(tblMSETransactionsArchiv.[Original VAT Amount]) <> 0
/*ORDER BY tblSteuernummern.AdressenNr, tblSteuernummern.LandNr, tblMSETransactionsArchiv.[Invoice Date], tblMSETransactionsArchiv.[Invoice ID]*/"
Dim qryUStVVorschau_UTA_ALT As String = "SELECT 'UTA' as LF,tblSteuernummern.AdressenNr AS RechnungsKundenNr, tblSteuernummern.LandNr, [Länderverzeichnis für die Außenhandelsstatistik].LandKz, Year(tblUTAArchiv.Rechnungsdatum) as Jahr,Month(tblUTAArchiv.Rechnungsdatum) as Monat , SUM(tblUTAArchiv.Gesamtbetrag_Umsatzsteuer_in_Darstellwährung) AS Steuerbetrag, 'EUR' as Waehrung FROM tblSteuernummern
INNER JOIN Adressen ON tblSteuernummern.AdressenNr = Adressen.AdressenNr
INNER JOIN tblUTAArchiv ON Adressen.UTAKundenNr = tblUTAArchiv.Kundennummer
INNER JOIN [Länderverzeichnis für die Außenhandelsstatistik] ON tblUTAArchiv.Lieferland = [Länderverzeichnis für die Außenhandelsstatistik].LandKz_ISO_3 AND tblSteuernummern.LandNr = [Länderverzeichnis für die Außenhandelsstatistik].LandNr
WHERE tblSteuernummern.UStV = 1 AND tblUTAArchiv.UStVAn_ID IS NULL " & sqlKunden & "
GROUP BY
tblSteuernummern.AdressenNr,
tblSteuernummern.LandNr,
[Länderverzeichnis für die Außenhandelsstatistik].LandKz,
tblUTAArchiv.Rechnungsdatum
HAVING
tblUTAArchiv.Rechnungsdatum >=
CASE
WHEN GETDATE() > CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-06-30' AS DATE)
THEN CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-01-01' AS DATE)
ELSE CAST(CAST(YEAR(GETDATE()) - 1 AS VARCHAR) + '-01-01' AS DATE)
END
AND SUM(tblUTAArchiv.Gesamtbetrag_Umsatzsteuer_in_Darstellwährung) <> 0
/*ORDER BY tblSteuernummern.AdressenNr, tblSteuernummern.LandNr, tblUTAArchiv.Rechnungsdatum*/"
Dim qryUStVVorschau_IDS_NEU As String = "SELECT 'IDS_' as LF, [tblIDSTransactionsNew].KdNrVERAG AS RechnungsKundenNr,tblSteuernummern.LandNr, [Länderverzeichnis für die Außenhandelsstatistik].LandKz, year([tblIDSTransactionsNew].[YearMonthDay]) AS Jahr, Month([tblIDSTransactionsNew].[YearMonthDay]) AS Monat, SUM([tblIDSTransactionsNew].[VATAmount]) AS Steuerbetrag, 'EUR' as Waehrung
FROM tblIDSTransactionsNew
INNER JOIN dbo.tblSteuernummern ON [tblIDSTransactionsNew].KdNrVERAG = dbo.tblSteuernummern.AdressenNr
INNER JOIN dbo.tbl_IDS_Länder ON dbo.tblSteuernummern.LandNr = dbo.tbl_IDS_Länder.LandNr AND [tblIDSTransactionsNew].[OutletCountryCode] = dbo.tbl_IDS_Länder.OutletCountryCode
INNER JOIN [Länderverzeichnis für die Außenhandelsstatistik] ON tblSteuernummern.LandNr = [Länderverzeichnis für die Außenhandelsstatistik].LandNr
WHERE [tblIDSTransactionsNew].[YearMonthDay] >=
CASE
WHEN GETDATE() > CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-06-30' AS DATE)
THEN CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-01-01' AS DATE)
ELSE CAST(CAST(YEAR(GETDATE()) - 1 AS VARCHAR) + '-01-01' AS DATE)
END
AND [tblIDSTransactionsNew].[VATAmount] <> 0 AND [tblIDSTransactionsNew].UStVAn_ID IS NULL AND tblSteuernummern.UStV = 1 " & sqlKundenIDSNEU & "
GROUP BY
[tblIDSTransactionsNew].KdNrVERAG, tblSteuernummern.LandNr, [Länderverzeichnis für die Außenhandelsstatistik].LandKz, Year([tblIDSTransactionsNew].[YearMonthDay]) , Month([tblIDSTransactionsNew].[YearMonthDay])
/* ORDER BY [tblIDSTransactionsNew].KdNrVERAG, tblSteuernummern.LandNr, Year([tblIDSTransactionsNew].[YearMonthDay]), Month([tblIDSTransactionsNew].[YearMonthDay])*/"
Dim qryUStVVorschau_MSE_NEU As String = " select 'MSE_' as LF,cust.[partner_customer_number] as RechnungsKundenNr,'' as LandNr ,trans.transaction_country as LandKZ ,Year(bills.invoice_date) as Jahr,Month(bills.invoice_date) as Monat, sum(USteuer_EUR) as Steuerbetrag, 'EUR' as Waehrung
FROM [VERAG].[dbo].[tblMSESettlements] as bills
left join [VERAG].[dbo].[tblMSETransactions] as trans on bills.[transaction_id] = trans.[transaction_id]
left join [VERAG].[dbo].[tblMSECustomers] as cust on cust.partner_customer_number = trans.partner_haulier_id
left join [VERAG].[dbo].[tblMSEInvoices] as inv on inv.invoice_id = bills.invoice_number
left join dbo.tblSteuernummern on dbo.tblSteuernummern.AdressenNr = trans.partner_haulier_id
where bills.invoice_date >= CASE
WHEN GETDATE() > CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-06-30' AS DATE)
THEN CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-01-01' AS DATE)
ELSE CAST(CAST(YEAR(GETDATE()) - 1 AS VARCHAR) + '-01-01' AS DATE)
END
and inv.archiv <> 1 and dbo.tblSteuernummern.UStV = 1 and trans.charged = 1 AND inv.UStVAn_ID IS NULL " & sqlKundenMSENEU & "
group by cust.[partner_customer_number],trans.transaction_country, Year(bills.invoice_date) ,Month(bills.invoice_date)
HAVING SUM(USteuer_EUR) <> 0"
Dim qryUStVVorschau_UTA_NEU As String = "SELECT 'UTA_' as LF,tblSteuernummern.AdressenNr AS RechnungsKundenNr, tblSteuernummern.LandNr, [Länderverzeichnis für die Außenhandelsstatistik].LandKz, Year(tblUTAImportNew.Rechnungsdatum) as Jahr,Month(tblUTAImportNew.Rechnungsdatum) as Monat , SUM(tblUTAImportNew.Gesamtbetrag_Umsatzsteuer_in_Darstellwährung) AS Steuerbetrag, 'EUR' as Wahrung FROM tblSteuernummern
INNER JOIN Adressen ON tblSteuernummern.AdressenNr = Adressen.AdressenNr
INNER JOIN tblUTAImportNew ON Adressen.UTAKundenNr = tblUTAImportNew.Kundennummer
INNER JOIN [Länderverzeichnis für die Außenhandelsstatistik] ON tblUTAImportNew.Lieferland = [Länderverzeichnis für die Außenhandelsstatistik].LandKz_ISO_3 AND tblSteuernummern.LandNr = [Länderverzeichnis für die Außenhandelsstatistik].LandNr
WHERE tblSteuernummern.UStV = 1 AND tblUTAImportNew.UStVAn_ID IS NULL " & sqlKunden & "
GROUP BY
tblSteuernummern.AdressenNr,
tblSteuernummern.LandNr,
[Länderverzeichnis für die Außenhandelsstatistik].LandKz,
tblUTAImportNew.Rechnungsdatum
HAVING
tblUTAImportNew.Rechnungsdatum >=
CASE
WHEN GETDATE() > CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-06-30' AS DATE)
THEN CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-01-01' AS DATE)
ELSE CAST(CAST(YEAR(GETDATE()) - 1 AS VARCHAR) + '-01-01' AS DATE)
END
AND SUM(tblUTAImportNew.Gesamtbetrag_Umsatzsteuer_in_Darstellwährung) <> 0
/*ORDER BY tblSteuernummern.AdressenNr, tblSteuernummern.LandNr, tblUTAImportNew.Rechnungsdatum*/"
Dim qryUStVVorschau_PLOSE_NEUE_LOGIK As String = "SELECT 'PLOSE_' as LF, tblPLOSE_Inv_Data.plInv_PLOSEKundennummer AS RechnungsKundenNr, tblSteuernummern.LandNr, [Länderverzeichnis für die Außenhandelsstatistik].LandKz, year(tblPLOSE_Inv_Data.[plInv_SupplierRechnungsDatum]) AS Jahr, Month(tblPLOSE_Inv_Data.[plInv_SupplierRechnungsDatum]) AS Monat, SUM(tblPLOSE_Inv_Data.[plInv_MWSTBetrag]) AS Steuerbetrag, isnull(plInv_Currency,'') as Wahrung FROM tblPLOSE_Inv_Data
INNER JOIN Adressen ON tblPLOSE_Inv_Data.plInv_PLOSEKundennummer = Adressen.PLOSEKundenNr
INNER JOIN tblSteuernummern ON Adressen.AdressenNr = tblSteuernummern.AdressenNr
INNER JOIN [Länderverzeichnis für die Außenhandelsstatistik] ON tblSteuernummern.LandNr = [Länderverzeichnis für die Außenhandelsstatistik].LandNr
WHERE tblPLOSE_Inv_Data.plInv_SupplierRechnungsDatum >=
CASE
WHEN GETDATE() > CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-06-30' AS DATE)
THEN CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-01-01' AS DATE)
ELSE CAST(CAST(YEAR(GETDATE()) - 1 AS VARCHAR) + '-01-01' AS DATE)
END
AND tblPLOSE_Inv_Data.plInv_MWSTBetrag <> 0 AND tblPLOSE_Inv_Data.plInv_UStVAn_ID IS NULL AND tblSteuernummern.UStV = 1 " & sqlKunden & "
GROUP BY
tblPLOSE_Inv_Data.plInv_PLOSEKundennummer, tblSteuernummern.LandNr, [Länderverzeichnis für die Außenhandelsstatistik].LandKz, Year(tblPLOSE_Inv_Data.plInv_SupplierRechnungsDatum), Month(tblPLOSE_Inv_Data.plInv_SupplierRechnungsDatum), plInv_Currency
"
'plose_MWSTBetragWaehrungAbbuchung ist IMMER in EUR!!!!
Dim qryUStVVorschau_PLOSE_ALTE_LOGIK As String = " SELECT 'PLOSE' as LF, tblPLOSE_Details.plose_POLSEKundennummer AS RechnungsKundenNr, tblSteuernummern.LandNr, [Länderverzeichnis für die Außenhandelsstatistik].LandKz, year(tblPLOSE_Details.plose_RechnungsDatum) AS Jahr, Month(tblPLOSE_Details.plose_RechnungsDatum) AS Monat, SUM(tblPLOSE_Details.plose_MWSTBetragWaehrungAbbuchung) AS Steuerbetrag, 'EUR' as Wahrung FROM tblPLOSE_Details
INNER JOIN tblPLOSE_Produktbeschreibung ON [plp_ProductCode]=[plose_ProduktCode]
INNER JOIN Adressen ON tblPLOSE_Details.plose_POLSEKundennummer = Adressen.PLOSEKundenNr
INNER JOIN tblSteuernummern ON Adressen.AdressenNr = tblSteuernummern.AdressenNr AND tblSteuernummern.LandKZ = tblPLOSE_Produktbeschreibung.plp_Land
INNER JOIN [Länderverzeichnis für die Außenhandelsstatistik] ON tblSteuernummern.LandNr = [Länderverzeichnis für die Außenhandelsstatistik].LandNr
WHERE tblPLOSE_Details.plose_RechnungsDatum >=
CASE
WHEN GETDATE() > CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-06-30' AS DATE)
THEN CAST(CAST(YEAR(GETDATE()) AS VARCHAR) + '-01-01' AS DATE)
ELSE CAST(CAST(YEAR(GETDATE()) - 1 AS VARCHAR) + '-01-01' AS DATE)
END
AND tblPLOSE_Details.plose_MWSTBetragWaehrungAbbuchung <> 0 AND tblPLOSE_Details.UStVAn_ID IS NULL AND tblSteuernummern.UStV = 1 and plose_LieferantCode IN (1,7,9) " & sqlKunden & "
GROUP BY
tblPLOSE_Details.plose_POLSEKundennummer, tblSteuernummern.LandNr, [Länderverzeichnis für die Außenhandelsstatistik].LandKz, Year(tblPLOSE_Details.plose_RechnungsDatum), Month(tblPLOSE_Details.plose_RechnungsDatum)
"
Dim union As String = " UNION ALL "
Dim sqlQery = qryUStVVorschau_VERAG & union & qryUStVVorschau_IDS_ALT & union & qryUStVVorschau_UTA_ALT & union & qryUStVVorschau_IDS_NEU & union & qryUStVVorschau_UTA_NEU & union & qryUStVVorschau_MSE_NEU & union & qryUStVVorschau_MSE_ALT & union & qryUStVVorschau_PLOSE_ALTE_LOGIK & union & qryUStVVorschau_PLOSE_NEUE_LOGIK
Dim dtVorschau As DataTable = SQL.loadDgvBySql(sqlQery, "FMZOLL")
If dtVorschau.Columns.Contains("LandNr") Then dtVorschau.Columns.Remove("LandNr")
cProgramFunctions.genExcelFromDT_NEW(dtVorschau, {"G1:G" & (dtVorschau.Rows.Count + 1)},,,,, True)
End Sub
Private Sub setInfo(kdnr As Integer)
If kdnr > 0 Then
Panel1.BackColor = Color.FromArgb(240, 245, 255)
Dim KUNDE As New cKunde(kdnr)
Dim KUNDE_ERW As New cKundenErweitert(kdnr)
If KUNDE.Abfertigungsverbot Then Panel1.BackColor = Color.IndianRed
If KUNDE_ERW.kde_AnmerkungVZ IsNot Nothing Then
lblVZhint.Text = KUNDE_ERW.kde_AnmerkungVZ
Else
End If
lblVZKunde.Visible = KUNDE_ERW.kde_VZ
Else
lblVZKunde.Visible = False
lblVZhint.Text = ""
Panel1.BackColor = Color.FromArgb(240, 245, 255)
End If
End Sub
Private Sub mnuItem3_Clicked(sender As Object, e As EventArgs)
Dim item As ToolStripMenuItem = TryCast(sender, ToolStripMenuItem)
Dim sqlKunde = ""
Dim sqlKundeadmin = ""
If KdSearchBox1.KdNr > 0 Then
sqlKunde = " And A.AdressenNr = " & KdSearchBox1.KdNr
sqlKundeadmin = " AND [api_KundenNr] = " & KdSearchBox1.KdNr
End If
If item IsNot Nothing Then
If item.Name = "dgv" Then
Try
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
Dim frm As New Form
frm.Text = "Finanzamt-Bestätigung E-Mails"
Dim dgv As New DataGridView()
Dim dt As DataTable = SQL.loadDgvBySql(" select [api_datetime] as erstelltAm,[api_EMail] as An ,[api_EMailCC] as CC,[api_EMailBCC] as BCC,[api_EMailSubject] as Betreff,[api_EMailAttCnt] as Anzahl_Anhänge, [api_KundenNr] as KundenNr, [api_Username] as erstelltVon from [tblAPI] where [api_apiUArt] = 'FA-Bestaetigung' AND api_progName = 'SDL'" & sqlKundeadmin & " Order by api_datetime desc", "ADMIN")
dgv.DataSource = dt
If dgv IsNot Nothing Then
frm.Size = New Size(1000, 1000)
dgv.Size = New Size(frm.Size.Width - 10, frm.Size.Height - 10)
dgv.Dock = DockStyle.Fill
dgv.Anchor = AnchorStyles.Left
dgv.Anchor = AnchorStyles.Top
dgv.ReadOnly = True
frm.Controls.Add(dgv)
frm.StartPosition = FormStartPosition.CenterScreen
frm.ShowDialog()
If dgv.ColumnCount > 0 AndAlso dgv.Columns.Contains("An") Then dgv.Columns("An").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
End If
Catch ex As System.Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
End Try
Else
Dim f As New frmDatumsabfrage("Bitte Prüfdatum eingeben", False, True)
f.ShowDialog()
If f.DialogResult = DialogResult.OK Then
Dim pruefdatum As Date = CDate(f.Datum)
Dim sqlQery = "Select A.AdressenNr, A.[E-Mail], A.[E-Mail2], A.LandKz, A.Ordnungsbegriff, L.LandKz, S.StNrFürRückerstattungUSt, S.StNrGültigkeitsdatum, CAST('" & pruefdatum & "' AS DATE) AS Prüfdatum,
CASE
WHEN S.StNrGültigkeitsdatum > CAST('" & pruefdatum & "' AS DATE) THEN 1 ELSE 0
END AS Gültig
FROM [Länderverzeichnis für die Außenhandelsstatistik] L INNER JOIN (Adressen A INNER JOIN Währungstabelle W ON A.LandKz = W.LandKz INNER JOIN tblSteuernummern S ON A.AdressenNr = S.AdressenNr) ON L.LandNr = S.LandNr
WHERE S.StNrGültigkeitsdatum IS NOT NULL AND W.MitgliedslandEU = 0 " & IIf(sqlKunde <> "", sqlKunde, "") & IIf(f.cbxKunden.Checked, " AND A.AdressenNr between " & f.cboKundenkreis._value.Replace("-", " AND "), "")
Dim dtVorschau As DataTable = SQL.loadDgvBySql(sqlQery, "FMZOLL")
ContextMenuStrip3.Hide()
If dtVorschau.Rows.Count = 0 Then Exit Sub
If item.Name = "excel" Then
If dtVorschau.Columns.Contains("E-Mail") Then dtVorschau.Columns.Remove("E-Mail")
If dtVorschau.Columns.Contains("E-Mail2") Then dtVorschau.Columns.Remove("E-Mail2")
cProgramFunctions.genExcelFromDT_NEW(dtVorschau,,,,,, True)
ElseIf item.Name = "mail" Then
Dim displayView = New DataView(dtVorschau, "Gültig = 0", "AdressenNr", DataViewRowState.CurrentRows)
Dim distinctDT As DataTable = displayView.ToTable(True, "AdressenNr")
If distinctDT.Rows.Count = 0 Then
MsgBox("Zu diesem Datum sind alle FA-Bestätigung gültig!")
Exit Sub
End If
If Not vbYes = MsgBox("Es werden Emails für " & distinctDT.Rows.Count & " unterschiedliche/n Kunden erstellt." & vbNewLine & "Möchten Sie fortfahren?", vbYesNoCancel) Then Exit Sub
For Each row In distinctDT.Rows
Dim dt_Data_selected = dtVorschau.Select("AdressenNr ='" & row.Item(0) & "' AND Gültig = 0").CopyToDataTable
Try
Dim outl As New Outlook.Application
Dim Mail As Microsoft.Office.Interop.Outlook.MailItem
Mail = outl.CreateItem(0)
Mail.Subject = "PDV UVERENJA"
Dim TextHTML = ""
TextHTML &= "Postovani,<br>"
TextHTML &= "<br>"
TextHTML &= "isteklo nam je staro porezno Uvjerenje i potrebno je da nam dostavite hitno nova za sljedece zemlje.<br><br>"
Dim attachmentSRB As Boolean = False
Dim attachmentBIH As Boolean = False
Dim attachmendSK As Boolean = False
For Each r In dt_Data_selected.Rows
If Not IsDBNull(r.item("LandKZ1")) Then
Select Case r.item("LandKZ1")
Case "HU" : TextHTML &= "<li><b>" & r.item("LandKZ1") & " (Na uverenju mora biti naveden datum kad ste registrovani kao PDV obaveznik, prevedite na Madarski, potpis sluzbene osobe ne smije biti faksimil mora bit vlastorucan)</li></b><br><br>"
Case "SI" : TextHTML &= "<li><b>" & r.item("LandKZ1") & " (Na uverenju mora biti naveden datum kad ste registrovani kao PDV obaveznik, prevedite na Slovenacki)</li></b><br><br>"
Case "LU" : TextHTML &= "<li><b>" & r.item("LandKZ1") & " (Na uverenju obavezno navedite sifru djelatnosti 4941, prevesti na Engleski)</li></b><br><br>"
Case "SK" : TextHTML &= "<li><b>" & r.item("LandKZ1") & " (Na uverenju mora biti naveden datum kad ste registrovani kao PDV obaveznik, prevedite na Engleski)</li></b><br><br>" : attachmendSK = True
Case "RO" : TextHTML &= "<li><b>" & r.item("LandKZ1") & " (Na uverenju mora biti naveden datum kad ste registrovani kao PDV obaveznik, prevedite na Rumonski)</li></b><br><br>"
Case "HR" : TextHTML &= "<li><b>" & r.item("LandKZ1") & " (Na uverenju mora biti naveden datum kad ste registrovani kao PDV obaveznik, prevedite na Hrvatski)</li></b><br><br>"
Case Else
TextHTML &= "<li><b>" & r.item("LandKZ1") & " (prevod na Engleski)</li></b><br><br>"
End Select
End If
If Not IsDBNull(r.item("LandKZ")) Then
Select Case r.item("LandKZ")
Case "SRB" : attachmentSRB = True
Case "BIH" : attachmentBIH = True
End Select
End If
Next
TextHTML &= "<br><br>Molim Vas da nam original uverenja + prijevod dostavite pojedinacno za svaku zemlju, znaci koliko zemalja toliko uverenja I prevoda.<br><br>"
TextHTML &= "U privitku se nalazi primjer uverenja (u smislu sadrzaja)<br><br>"
TextHTML &= "za pitanja stojim na raspolaganju!<br><br>"
TextHTML &= "Mit freundlichen Grüßen<br>"
TextHTML &= VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME & "<br>"
TextHTML &= "<br>"
Mail.HTMLBody = "<div style=""font-family:Calibri, Arial;font-size:15px;"">" & TextHTML & SDL.cFakturierung.getSignature("DE") & "</div>"
If Not IsDBNull(dt_Data_selected.Rows(0).Item("E-Mail")) Then Mail.To &= dt_Data_selected.Rows(0).Item("E-Mail") & ";"
'If Not IsDBNull(dt_Data_selected.Rows(0).Item("E-Mail2")) Then Mail.To &= dt_Data_selected.Rows(0).Item("E-Mail2") & ";"
If attachmentSRB Then
Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "VORLAGEN", "SONSTIGE", "MDM", "", "SRB_FA_BESTAETIGUNG")
Dim filepath = DS.GET_TOP1_PATH(False)
If filepath <> "" Then Mail.Attachments.Add(filepath, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue)
End If
If attachmentBIH Then
Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "VORLAGEN", "SONSTIGE", "MDM", "", "BIH_FA_BESTAETIGUNG")
Dim filepath = DS.GET_TOP1_PATH(False)
If filepath <> "" Then Mail.Attachments.Add(filepath, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue)
End If
If attachmentBIH And attachmendSK Then
Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "VORLAGEN", "SONSTIGE", "MDM", "", "SVK_FA_BESTAETIGUNG")
Dim filepath = DS.GET_TOP1_PATH(False)
If filepath <> "" Then Mail.Attachments.Add(filepath, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue)
End If
Mail.Display()
Dim API = VERAG_PROG_ALLGEMEIN.cAPI.INSERT_API(VERAG_PROG_ALLGEMEIN.cAPI_INOUT.OUT, VERAG_PROG_ALLGEMEIN.cAPI_Type.MAIL, VERAG_PROG_ALLGEMEIN.cAPI_ART.SDL_OUT_FA, "FA-Bestaetigung",,, row.Item(0))
API.api_EMail = Mail.To
API.api_EMailSubject = Mail.Subject
API.api_EMailText = TextHTML
API.api_EMailAttCnt = Mail.Attachments.Count
API.SAVE()
Catch ex As Exception
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,, "Fehler beim Öffnen der Mail!")
End Try
Next
End If
End If
End If
End If
End Sub
End Class