filter originalrechnungen
This commit is contained in:
@@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
|
||||
' übernehmen, indem Sie "*" eingeben:
|
||||
' <Assembly: AssemblyVersion("1.0.*")>
|
||||
|
||||
<Assembly: AssemblyVersion("1.3.7.4")>
|
||||
<Assembly: AssemblyFileVersion("1.3.7.4")>
|
||||
<Assembly: AssemblyVersion("1.3.7.5")>
|
||||
<Assembly: AssemblyFileVersion("1.3.7.5")>
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
Imports System.Reflection
|
||||
Imports Microsoft.Office.Interop
|
||||
Imports VERAG_PROG_ALLGEMEIN
|
||||
|
||||
Public Class usrcntlFremdrechnungen
|
||||
Dim KUNDE As New cKunden
|
||||
@@ -332,6 +333,9 @@ Public Class usrcntlFremdrechnungen
|
||||
Dim SQLWhere = " between '" & dat_Sum_Von.Value.ToShortDateString & "' and '" & dat_Sum_Bis.Value.ToShortDateString & "'"
|
||||
|
||||
If cbx.Checked AndAlso aktLieferant <> "IDS" AndAlso KUNDE IsNot Nothing Then
|
||||
Dim erw As New cKundenErweitert(KUNDE.KundenNr)
|
||||
If erw.kde_keineMWSt Then Return SQLWhere
|
||||
|
||||
SQLWhere &= "AND ("
|
||||
'ORIGINAL-RECHNUNG senden wenn:
|
||||
'1. wenn die Rechnung in dem Land in dem er ansässig ist ausgestellt wurde (rumän. Kunde – Rechnung ausgestellt in Rumänien = z.B. IDS in RO getankt…)
|
||||
@@ -412,6 +416,8 @@ Public Class usrcntlFremdrechnungen
|
||||
Dim SQLWhere = ""
|
||||
|
||||
If cbx.Checked AndAlso KUNDE IsNot Nothing Then
|
||||
Dim erw As New cKundenErweitert(KUNDE.KundenNr)
|
||||
If erw.kde_keineMWSt Then Return SQLWhere
|
||||
SQLWhere &= "AND ("
|
||||
'ORIGINAL-RECHNUNG senden wenn:
|
||||
'1. wenn die Rechnung in dem Land in dem er ansässig ist ausgestellt wurde (rumän. Kunde – Rechnung ausgestellt in Rumänien = z.B. IDS in RO getankt…)
|
||||
@@ -434,38 +440,38 @@ Public Class usrcntlFremdrechnungen
|
||||
|
||||
'2. wenn die Rechnung die Summe NULL aufweist
|
||||
Select Case aktLieferant
|
||||
Case "IDS" : If Not alle Then SQLWhere &= " OR [AmminclVAT] = 0" 'IDS
|
||||
End Select
|
||||
Case "IDS" : If Not alle Then SQLWhere &= " OR [AmminclVAT] = 0" 'IDS
|
||||
End Select
|
||||
|
||||
'3. Rechnungen der Länder in denen der Kunde keine MWST erstattet bekommt (auch nicht auf Diesel -> IDS)
|
||||
If land <> "" AndAlso dtkeineMWST.Rows.Count > 0 Then
|
||||
Dim dtkeineMWST_IDS As DataTable = dtkeineMWST.Select("Lieferant = '' AND Land = '" & landKZiso2 & "'").CopyToDataTable
|
||||
Dim counter = 0
|
||||
Dim landBez As String = ""
|
||||
For Each row As DataRow In dtkeineMWST_IDS.Rows
|
||||
landBez &= "'" & row.Item("Erstattungsland") & "'"
|
||||
counter = counter + 1
|
||||
If (dtkeineMWST_IDS.Rows.Count <> 0 And counter <> dtkeineMWST_IDS.Rows.Count) Then landBez &= ","
|
||||
Next
|
||||
SQLWhere &= " OR " & land & " in (" & landBez & ")"
|
||||
End If
|
||||
|
||||
|
||||
|
||||
'4. Rechnungen der Länder, in denen der Kunde selber MWST beantragt
|
||||
If land <> "" AndAlso dtKundeMWST.Rows.Count > 0 Then
|
||||
Dim counter = 0
|
||||
Dim landBez As String = ""
|
||||
For Each row As DataRow In dtKundeMWST.Rows
|
||||
landBez &= "'" & row.Item("LandKz") & "'"
|
||||
counter = counter + 1
|
||||
If (dtKundeMWST.Rows.Count <> 0 And counter <> dtKundeMWST.Rows.Count) Then landBez &= ","
|
||||
Next
|
||||
SQLWhere &= " OR " & land & " in (" & landBez & ")"
|
||||
End If
|
||||
SQLWhere &= ")"
|
||||
'3. Rechnungen der Länder in denen der Kunde keine MWST erstattet bekommt (auch nicht auf Diesel -> IDS)
|
||||
If land <> "" AndAlso dtkeineMWST.Rows.Count > 0 Then
|
||||
Dim dtkeineMWST_IDS As DataTable = dtkeineMWST.Select("Lieferant = '' AND Land = '" & landKZiso2 & "'").CopyToDataTable
|
||||
Dim counter = 0
|
||||
Dim landBez As String = ""
|
||||
For Each row As DataRow In dtkeineMWST_IDS.Rows
|
||||
landBez &= "'" & row.Item("Erstattungsland") & "'"
|
||||
counter = counter + 1
|
||||
If (dtkeineMWST_IDS.Rows.Count <> 0 And counter <> dtkeineMWST_IDS.Rows.Count) Then landBez &= ","
|
||||
Next
|
||||
SQLWhere &= " OR " & land & " in (" & landBez & ")"
|
||||
End If
|
||||
|
||||
|
||||
|
||||
'4. Rechnungen der Länder, in denen der Kunde selber MWST beantragt
|
||||
If land <> "" AndAlso dtKundeMWST.Rows.Count > 0 Then
|
||||
Dim counter = 0
|
||||
Dim landBez As String = ""
|
||||
For Each row As DataRow In dtKundeMWST.Rows
|
||||
landBez &= "'" & row.Item("LandKz") & "'"
|
||||
counter = counter + 1
|
||||
If (dtKundeMWST.Rows.Count <> 0 And counter <> dtKundeMWST.Rows.Count) Then landBez &= ","
|
||||
Next
|
||||
SQLWhere &= " OR " & land & " in (" & landBez & ")"
|
||||
End If
|
||||
SQLWhere &= ")"
|
||||
End If
|
||||
|
||||
Return SQLWhere
|
||||
|
||||
End Function
|
||||
|
||||
Reference in New Issue
Block a user