feature_steuerschlüsselcheck im Kunden und Rechnung
This commit is contained in:
@@ -543,9 +543,9 @@ Public Class usrCntlFaktAbrechnung
|
||||
FirmaTmp = "VERAGIMEX"
|
||||
End If
|
||||
|
||||
'If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||
' FirmaTmp = "AMBAR"
|
||||
'End If
|
||||
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
|
||||
FirmaTmp = "AMBAR"
|
||||
End If
|
||||
|
||||
Select Case FirmaTmp
|
||||
Case "VERAG"
|
||||
@@ -832,7 +832,10 @@ Public Class usrCntlFaktAbrechnung
|
||||
Label7.Text = If(AD.UstIdGeprüft IsNot Nothing, "geprüft am: " & AD.UstIdGeprüft, "-")
|
||||
' RECHNUNG.RechnungsUstIdGeprüft = If(AD.UstIdGeprüft IsNot Nothing, "geprüft am: " & CDate(AD.UstIdGeprüft).ToShortDateString, Nothing)
|
||||
RECHNUNG.RechnungsUstIdGeprüft = AD.UstIdGeprüft
|
||||
|
||||
End If
|
||||
|
||||
|
||||
If kdFirmaRechnungAn.KdNr_value > 0 And kdFirmaRechnungAn.KdData_KUNDE IsNot Nothing Then
|
||||
Dim KD As VERAG_PROG_ALLGEMEIN.cKunde = kdFirmaRechnungAn.KdData_KUNDE
|
||||
Dim KUNDE_ERW As VERAG_PROG_ALLGEMEIN.cKundenErweitert = kdFirmaRechnungAn.KdData_KUNDE_ERW
|
||||
@@ -885,6 +888,7 @@ Public Class usrCntlFaktAbrechnung
|
||||
getValues()
|
||||
'initDGVRechnungenPositionen()
|
||||
przRefreshDGV_Positionen()
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub cboRechnungAn_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboRechnungAn.SelectedIndexChanged
|
||||
@@ -925,6 +929,7 @@ Public Class usrCntlFaktAbrechnung
|
||||
txtRechnungAnOrt.Text = txtAbsenderOrt.Text
|
||||
If kdFirmaAbsender.KdData_KUNDE_ERW IsNot Nothing Then txtRechnungAnZusatz.Text = If(kdFirmaAbsender.KdData_KUNDE_ERW.kde_AdressZusatz, "") Else txtRechnungAnZusatz.Text = ""
|
||||
If kdFirmaAbsender.KdData_KUNDE IsNot Nothing Then
|
||||
|
||||
If RECHNUNG IsNot Nothing AndAlso RECHNUNG.ForceSteuerschlüssel IsNot Nothing Then
|
||||
cboSteuerschlüssel.changeItem(RECHNUNG.ForceSteuerschlüssel)
|
||||
Else
|
||||
@@ -2825,6 +2830,9 @@ Public Class usrCntlFaktAbrechnung
|
||||
|
||||
|
||||
Private Sub btnOK_Click(sender As Object, e As EventArgs) Handles btnOK.Click
|
||||
|
||||
If Not checkUIDNR() Then Exit Sub
|
||||
|
||||
saveMe()
|
||||
End Sub
|
||||
|
||||
@@ -3324,6 +3332,7 @@ Nächste_Textzeile_lesen:
|
||||
End Sub
|
||||
' RECHNUNG.DruckDatumZeit
|
||||
Private Sub Button9_Click(sender As Object, e As EventArgs) Handles Button9.Click
|
||||
If Not checkUIDNR() Then Exit Sub
|
||||
If RECHNUNG.Sammelrechnung <> "0" Then MsgBox("Nur bei Einzelrechnung möglich!") : Exit Sub
|
||||
If RECHNUNG.Status <> 0 OrElse vbYes = MsgBox("Möchten Sie das PDF erstellen?" & vbNewLine & "Es wird eine Rechnungsnummer vergeben, die Rechnung gilt somit als gedruckt und kann nicht mehr bearbeitet werden.", vbYesNoCancel) Then
|
||||
If RECHNUNG.Status <> 0 OrElse saveMe() Then
|
||||
@@ -3367,6 +3376,7 @@ Nächste_Textzeile_lesen:
|
||||
End Sub
|
||||
|
||||
Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click, Button16.Click
|
||||
If Not checkUIDNR() Then Exit Sub
|
||||
If RECHNUNG.Sammelrechnung <> "0" Then MsgBox("Nur bei Einzelrechnung möglich!") : Exit Sub
|
||||
If RECHNUNG.Status <> 0 OrElse saveMe() Then
|
||||
' Anhänge sichern, falls geändert
|
||||
@@ -4069,4 +4079,22 @@ Nächste_Textzeile_lesen:
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Private Function checkUIDNR() As Boolean
|
||||
|
||||
If cboSteuerschlüssel._value IsNot Nothing AndAlso IsNumeric(cboSteuerschlüssel._value) Then
|
||||
|
||||
Dim check As Integer = cAllgemein.checkSteuerschluessel(cboFiliale._value, RECHNUNG.RechnungsLandKz, RECHNUNG.RechnungsUstIdKz, RECHNUNG.RechnungsUstIdNr, RECHNUNG.RechnungsUstIdGeprüft)
|
||||
If check >= 0 Then
|
||||
If IsNumeric(cboSteuerschlüssel._value) AndAlso CInt(txtSteuersatz._value) <> check Then
|
||||
If Not vbYes = MsgBox("Falscher Steuertyp!" & vbNewLine & " Steuerschlüssel mit " & IIf(check = 2, "20 %", check & " %") & " sollte hinterlegt werden." & vbNewLine & "Trotzdem speichern?", vbYesNo) Then
|
||||
Return False
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
Return True
|
||||
|
||||
End Function
|
||||
End Class
|
||||
74
SDL/kunden/usrcntlKundeBearbeitenFull.Designer.vb
generated
74
SDL/kunden/usrcntlKundeBearbeitenFull.Designer.vb
generated
@@ -93,6 +93,8 @@ Partial Class usrcntlKundeBearbeitenFull
|
||||
Me.tbFiskal = New System.Windows.Forms.TabPage()
|
||||
Me.UsrCntlKundeFiskaldaten1 = New SDL.usrCntlKundeFiskaldaten()
|
||||
Me.tbVerrechnung = New System.Windows.Forms.TabPage()
|
||||
Me.Label101 = New System.Windows.Forms.Label()
|
||||
Me.txtAbwZZVL = New VERAG_PROG_ALLGEMEIN.MyTextBox()
|
||||
Me.cbxSndDatenAusSTB = New System.Windows.Forms.CheckBox()
|
||||
Me.Label95 = New System.Windows.Forms.Label()
|
||||
Me.cbxSammelrechnungBerichtLeistungsdetails = New System.Windows.Forms.CheckBox()
|
||||
@@ -337,8 +339,6 @@ Partial Class usrcntlKundeBearbeitenFull
|
||||
Me.cboFirma = New VERAG_PROG_ALLGEMEIN.MyComboBox()
|
||||
Me.cboAuswahl = New VERAG_PROG_ALLGEMEIN.MyComboBox()
|
||||
Me.DataGridViewTextBoxColumn2 = New System.Windows.Forms.DataGridViewTextBoxColumn()
|
||||
Me.txtAbwZZVL = New VERAG_PROG_ALLGEMEIN.MyTextBox()
|
||||
Me.Label101 = New System.Windows.Forms.Label()
|
||||
Me.tbcntrDetails.SuspendLayout()
|
||||
Me.tbAbfertigung.SuspendLayout()
|
||||
Me.tbcntrAbf.SuspendLayout()
|
||||
@@ -1111,6 +1111,40 @@ Partial Class usrcntlKundeBearbeitenFull
|
||||
Me.tbVerrechnung.Text = "Verrechnung"
|
||||
Me.tbVerrechnung.UseVisualStyleBackColor = True
|
||||
'
|
||||
'Label101
|
||||
'
|
||||
Me.Label101.AutoSize = True
|
||||
Me.Label101.Location = New System.Drawing.Point(191, 53)
|
||||
Me.Label101.Name = "Label101"
|
||||
Me.Label101.Size = New System.Drawing.Size(50, 13)
|
||||
Me.Label101.TabIndex = 42
|
||||
Me.Label101.Text = "abw. ZZ:"
|
||||
'
|
||||
'txtAbwZZVL
|
||||
'
|
||||
Me.txtAbwZZVL._DateTimeOnly = False
|
||||
Me.txtAbwZZVL._numbersOnly = True
|
||||
Me.txtAbwZZVL._numbersOnlyKommastellen = ""
|
||||
Me.txtAbwZZVL._numbersOnlyTrennzeichen = True
|
||||
Me.txtAbwZZVL._Prozent = False
|
||||
Me.txtAbwZZVL._ShortDateNew = False
|
||||
Me.txtAbwZZVL._ShortDateOnly = False
|
||||
Me.txtAbwZZVL._TimeOnly = False
|
||||
Me.txtAbwZZVL._TimeOnly_Seconds = False
|
||||
Me.txtAbwZZVL._value = ""
|
||||
Me.txtAbwZZVL._Waehrung = False
|
||||
Me.txtAbwZZVL._WaehrungZeichen = True
|
||||
Me.txtAbwZZVL.ForeColor = System.Drawing.Color.Red
|
||||
Me.txtAbwZZVL.Location = New System.Drawing.Point(191, 66)
|
||||
Me.txtAbwZZVL.MaxLength = 10
|
||||
Me.txtAbwZZVL.MaxLineLength = -1
|
||||
Me.txtAbwZZVL.MaxLines_Warning = ""
|
||||
Me.txtAbwZZVL.MaxLines_Warning_Label = Nothing
|
||||
Me.txtAbwZZVL.Name = "txtAbwZZVL"
|
||||
Me.txtAbwZZVL.Size = New System.Drawing.Size(60, 20)
|
||||
Me.txtAbwZZVL.TabIndex = 41
|
||||
Me.txtAbwZZVL.TextAlign = System.Windows.Forms.HorizontalAlignment.Right
|
||||
'
|
||||
'cbxSndDatenAusSTB
|
||||
'
|
||||
Me.cbxSndDatenAusSTB.AutoSize = True
|
||||
@@ -1611,7 +1645,7 @@ Partial Class usrcntlKundeBearbeitenFull
|
||||
Me.cboAbf_Steuerschluessel.FormattingEnabled = True
|
||||
Me.cboAbf_Steuerschluessel.Location = New System.Drawing.Point(527, 88)
|
||||
Me.cboAbf_Steuerschluessel.Name = "cboAbf_Steuerschluessel"
|
||||
Me.cboAbf_Steuerschluessel.Size = New System.Drawing.Size(48, 21)
|
||||
Me.cboAbf_Steuerschluessel.Size = New System.Drawing.Size(105, 21)
|
||||
Me.cboAbf_Steuerschluessel.TabIndex = 9
|
||||
'
|
||||
'cboAbf_Sammelrechnung
|
||||
@@ -4523,40 +4557,6 @@ Partial Class usrcntlKundeBearbeitenFull
|
||||
Me.DataGridViewTextBoxColumn2.HeaderText = "E-Mail"
|
||||
Me.DataGridViewTextBoxColumn2.Name = "DataGridViewTextBoxColumn2"
|
||||
'
|
||||
'txtAbwZZVL
|
||||
'
|
||||
Me.txtAbwZZVL._DateTimeOnly = False
|
||||
Me.txtAbwZZVL._numbersOnly = True
|
||||
Me.txtAbwZZVL._numbersOnlyKommastellen = ""
|
||||
Me.txtAbwZZVL._numbersOnlyTrennzeichen = True
|
||||
Me.txtAbwZZVL._Prozent = False
|
||||
Me.txtAbwZZVL._ShortDateNew = False
|
||||
Me.txtAbwZZVL._ShortDateOnly = False
|
||||
Me.txtAbwZZVL._TimeOnly = False
|
||||
Me.txtAbwZZVL._TimeOnly_Seconds = False
|
||||
Me.txtAbwZZVL._value = ""
|
||||
Me.txtAbwZZVL._Waehrung = False
|
||||
Me.txtAbwZZVL._WaehrungZeichen = True
|
||||
Me.txtAbwZZVL.ForeColor = System.Drawing.Color.Red
|
||||
Me.txtAbwZZVL.Location = New System.Drawing.Point(191, 66)
|
||||
Me.txtAbwZZVL.MaxLength = 10
|
||||
Me.txtAbwZZVL.MaxLineLength = -1
|
||||
Me.txtAbwZZVL.MaxLines_Warning = ""
|
||||
Me.txtAbwZZVL.MaxLines_Warning_Label = Nothing
|
||||
Me.txtAbwZZVL.Name = "txtAbwZZVL"
|
||||
Me.txtAbwZZVL.Size = New System.Drawing.Size(60, 20)
|
||||
Me.txtAbwZZVL.TabIndex = 41
|
||||
Me.txtAbwZZVL.TextAlign = System.Windows.Forms.HorizontalAlignment.Right
|
||||
'
|
||||
'Label101
|
||||
'
|
||||
Me.Label101.AutoSize = True
|
||||
Me.Label101.Location = New System.Drawing.Point(191, 53)
|
||||
Me.Label101.Name = "Label101"
|
||||
Me.Label101.Size = New System.Drawing.Size(50, 13)
|
||||
Me.Label101.TabIndex = 42
|
||||
Me.Label101.Text = "abw. ZZ:"
|
||||
'
|
||||
'usrcntlKundeBearbeitenFull
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||
|
||||
@@ -533,7 +533,7 @@ Public Class usrcntlKundeBearbeitenFull
|
||||
|
||||
KUNDE.Euroeinführung = isLeerNothing(txtAbf_Euroeinführung._value)
|
||||
|
||||
KUNDE.Steuerschlüssel = cboAbf_Steuerschluessel._value
|
||||
|
||||
KUNDE.Währungscode = isLeerNothing(cboAbf_Waehrung._value)
|
||||
KUNDE.Sammelrechnung = cboAbf_Sammelrechnung._value
|
||||
|
||||
@@ -678,8 +678,20 @@ Public Class usrcntlKundeBearbeitenFull
|
||||
|
||||
|
||||
|
||||
If cboAbf_Steuerschluessel._value IsNot Nothing AndAlso IsNumeric(cboAbf_Steuerschluessel._value) Then
|
||||
Dim check As Integer = cAllgemein.checkSteuerschluessel(cboFiliale._value, ADRESSE.LandKz, ADRESSE.UstIdNr, ADRESSE.UstIdNr, ADRESSE.UstIdGeprüft)
|
||||
If check >= 0 Then
|
||||
If CInt(cboAbf_Steuerschluessel._value) <> check Then
|
||||
If vbYes = MsgBox("Falscher Steuertyp!" & vbNewLine & " Steuerschlüssel mit " & IIf(check = 2, "20 %", check & " %") & " sollte hinterlegt werden." & vbNewLine & "Trotzdem speichern?", vbYesNo) Then
|
||||
KUNDE.Steuerschlüssel = cboAbf_Steuerschluessel._value
|
||||
Else
|
||||
KUNDE.Steuerschlüssel = Nothing
|
||||
End If
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
UsrCntlKundeFiskaldaten1.loadinClass(FISKAL, KUNDE_ERW)
|
||||
|
||||
|
||||
@@ -177,6 +177,83 @@ Public Class cAllgemein
|
||||
Return "AT"
|
||||
End Function
|
||||
|
||||
Public Shared Function checkSteuerschluessel(firmenID As Integer, landKz As String, Optional UIDLandKz As String = "", Optional UstIdNr As String = "", Optional UstIdGeprüft As Object = Nothing) As Integer
|
||||
|
||||
If firmenID = "" Then Return -1
|
||||
|
||||
Dim FIRMA_TMP = New VERAG_PROG_ALLGEMEIN.cFirmen(firmenID)
|
||||
Dim isEU As Boolean = False
|
||||
Dim sql As New SQL
|
||||
|
||||
|
||||
|
||||
Select Case FIRMA_TMP.Firma_LandKz
|
||||
|
||||
Case "AT"
|
||||
|
||||
If landKz = "A" Then Return 2
|
||||
|
||||
isEU = sql.getValueTxtBySql("select MitgliedslandEU from Währungstabelle where landkz = '" & landKz & "'", "FMZOLL",)
|
||||
|
||||
If isEU Then
|
||||
If UIDLandKz <> "" AndAlso UstIdNr <> "" AndAlso UstIdGeprüft IsNot Nothing Then
|
||||
Return 0
|
||||
Else
|
||||
Return 2
|
||||
End If
|
||||
End If
|
||||
|
||||
Case "DE"
|
||||
|
||||
If landKz = "D" Then Return 19
|
||||
|
||||
isEU = sql.getValueTxtBySql("select MitgliedslandEU from Währungstabelle where landkz = '" & landKz & "'", "FMZOLL",)
|
||||
|
||||
If isEU Then
|
||||
If UIDLandKz <> "" AndAlso UstIdNr <> "" AndAlso UstIdGeprüft IsNot Nothing Then
|
||||
Return 0
|
||||
Else
|
||||
Return 19
|
||||
End If
|
||||
End If
|
||||
|
||||
Case "GB"
|
||||
|
||||
If landKz = "GB" Then Return 20
|
||||
|
||||
isEU = sql.getValueTxtBySql("select MitgliedslandEU from Währungstabelle where landkz = '" & landKz & "'", "FMZOLL",)
|
||||
|
||||
If isEU Then
|
||||
If UIDLandKz <> "" AndAlso UstIdNr <> "" AndAlso UstIdGeprüft IsNot Nothing Then
|
||||
Return 0
|
||||
Else
|
||||
Return 20
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
|
||||
'Case "TR"
|
||||
|
||||
' If landKz = "TR" Then Return 20
|
||||
|
||||
' isEU = sql.getValueTxtBySql("select MitgliedslandEU from Währungstabelle where landkz = '" & landKz & "'", "FMZOLL",)
|
||||
|
||||
' If isEU Then
|
||||
' If UIDLandKz <> "" AndAlso UstIdNr <> "" AndAlso UstIdGeprüft IsNot Nothing Then
|
||||
' Return 0
|
||||
' Else
|
||||
' Return 20
|
||||
' End If
|
||||
' End If
|
||||
|
||||
|
||||
End Select
|
||||
|
||||
Return -1
|
||||
|
||||
End Function
|
||||
|
||||
Public Shared Sub _TRANSLATE(o As System.Windows.Forms.Control)
|
||||
_TRANSLATE(o, o, _LAN)
|
||||
End Sub
|
||||
@@ -492,4 +569,5 @@ Public Class cNCTS_GUARANTEES
|
||||
If getSlashList <> "" Then getSlashList = getSlashList.Substring(0, getSlashList.Length - 3)
|
||||
End Function
|
||||
|
||||
|
||||
End Class
|
||||
|
||||
Reference in New Issue
Block a user