Files
SDL/SDL/kunden/frmNeuerKunde.vb

228 lines
12 KiB
VB.net

Public Class frmNeuerKunde
Dim kundenSQL As New kundenSQL
Public kdnr As Integer
Public username As String
Public tmpFiliale As Integer
Public openKd As Boolean = True
Public tmpKdName As String
Public timerIntervall = 1000
Public tmpKdNrKreis As Integer = -1
Private Sub frmNeuerKunde_Load(sender As Object, e As EventArgs) Handles Me.Load
Timer1.Interval = timerIntervall
lblError.Text = ""
sbLand.initSearchBox(Me.FindForm, " [LandKz] ,[Land] FROM [Währungstabelle]", {"LandKz", "Land"}, " 1=1 ", "LandKz", "LandKz", "LandKz", "FMZOLL", , 400, 200)
ComboBox1.fillWithSQL("SELECT [FilialenNr],[Grenzstelle] FROM [Filialen] ORDER BY FilialenNr", True, "FMZOLL")
TextBox1.Focus()
ComboBox2.Items.Clear()
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "IMEX"
ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("1000000-1099999: IMEX", "1000000-1099990"))
ComboBox2.changeItem("1000000-1099990")
ComboBox1.changeItem("5501")
Case "UNISPED"
ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("2000000-2099999: UNISPED", "2000000-2099990"))
ComboBox2.changeItem("2000000-2099990")
ComboBox1.changeItem("5601")
Case "AMBAR"
ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("3000000-3099999: AMBAR", "3000000-3099990"))
ComboBox2.changeItem("3000000-3099990")
ComboBox1.changeItem("5701")
Case "ATILLA"
ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 100000-199999: ATILLA", "100000-199999"))
ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 800000-899999: BREXIT", "800000-899999"))
ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 900000-999999: Sonstige", "900000-999999"))
'ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 700000-799999: ZOLL Abrechnung", "728000-799999"))
' ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 900000-999999: Sonstige", "900000-999999"))
ComboBox2.changeItem("100000-199999")
ComboBox1.changeItem("4801")
Case Else
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ATILLA_VERWALTUNG", "AVISO") Then
ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 100000-199999: ATILLA Bar/Sonstige", "100000-199999"))
End If
' ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 100000-199999: XXXXXX", "100000-199999"))
' ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 200000-299999: XXXXXX", "200000-299999"))
' ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 300000-399999: XXXXXX", "300000-399999"))
' ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 400000-499999: XXXXXX", "400000-499999"))
' ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 500000-599999: XXXXXX", "500000-599999"))
' ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 600000-699999: XXXXXX", "600000-699999"))
ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 500000-599999: EV - Kunden", "500000-599999"))
ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 700000-799999: ZOLL Abrechnung", "728000-799999"))
ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 5-stellig: Fiskal (keine Abrechnung)", "30000-49999"))
' ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 800000-899999: XXXXXX", "800000-899999"))
ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 800000-899999: BREXIT", "800000-899999"))
ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem(" 900000-999999: Sonstige", "900000-999999"))
' ComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("1000000-1099999: IMEX", "1000000-1099990"))
ComboBox2.changeItem("728000-799999")
End Select
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("Kundendaten_bearbeiten", Me) Or VERAG_PROG_ALLGEMEIN.cAllgemein.ABTEILUNG = "QS" Then
cboUstIdLand.Enabled = True
txtUstId.Enabled = True
txtEORI.Enabled = True
txtEORINL.Enabled = True
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("Kundendaten_bearbeiten", Me) Then
FlatButton3.Visible = True
End If
cboUstIdLand.fillWithSQL(" SELECT [Länderverzeichnis für die Außenhandelsstatistik].LandKz,[Länderverzeichnis für die Außenhandelsstatistik].LandBez " &
" FROM [Länderverzeichnis für die Außenhandelsstatistik] LEFT JOIN [Währungstabelle] ON [Länderverzeichnis für die Außenhandelsstatistik].LandNr = [Währungstabelle].[Währungsschlüssel] " &
" WHERE [Währungstabelle].[MitgliedslandEU] = 1 " &
" ORDER BY [Länderverzeichnis für die Außenhandelsstatistik].LandKz ", , "FMZOLL", True)
End If
If tmpFiliale > 0 And ComboBox1._value = "" Then ComboBox1._value = tmpFiliale
' If tmpKdNrKreis > 0 Then ComboBox2.SelectedIndex = tmpKdNrKreis
If tmpKdName <> "" Then TextBox1.Text = tmpKdName
End Sub
Private Sub FlatButton1_Click(sender As Object, e As EventArgs) Handles FlatButton1.Click
lblError.Text = ""
If TextBox1.Text = "" Then lblError.Text = "Bitte geben Sie einen Ordnungsbegriff ein!" : Exit Sub
If ComboBox1.Text = "" Then lblError.Text = "Bitte geben Sie die zuständige Filiale an!" : Exit Sub
If Not ComboBox2._value.Contains("-") Then lblError.Text = "Bitte geben Sie den Kundenkreis an!" : Exit Sub
If sbLand._value = "" Then lblError.Text = "Bitte geben Sie das Land an!" : Exit Sub
If txtOrt.Text = "" Then lblError.Text = "Bitte geben Sie den Ort an!" : Exit Sub
If txtPLZ.Text = "" Then lblError.Text = "Bitte geben Sie die PLZ an!" : Exit Sub
If txtStrasse.Text = "" Then lblError.Text = "Bitte geben Sie die Straße an!" : Exit Sub
'If Then lblError.Text = "Der Ordnungsbegriff existiert bereits - bitte geben Sie einen neuen Ordnungsbegriff ein!" : Exit Sub
Dim s_KdNr = ComboBox2._value.Split("-")
If username = "" Then username = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
kdnr = VERAG_PROG_ALLGEMEIN.cAdressen.getHoechsteKdNr(s_KdNr(0), s_KdNr(1)) '+ 1
If kdnr > 0 Then
Dim ADRESSE As New VERAG_PROG_ALLGEMEIN.cAdressen(kdnr)
ADRESSE.AdressenNr = kdnr
ADRESSE.Ordnungsbegriff = TextBox1.Text
ADRESSE.Name_1 = "* NEUKUNDE *"
ADRESSE.Eingegeben_am = Now.ToShortDateString
ADRESSE.Sachbearbeiter = username
ADRESSE.Straße = txtStrasse.Text
ADRESSE.Ort = txtOrt.Text
ADRESSE.LandKz = sbLand._value
ADRESSE.PLZ = txtPLZ.Text
ADRESSE.UstIdKz = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(cboUstIdLand._value)
ADRESSE.UstIdNr = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtUstId.Text)
Dim KUNDE As New VERAG_PROG_ALLGEMEIN.cKunde(kdnr)
KUNDE.KundenNr = kdnr
KUNDE.KundenNrZentrale = kdnr
KUNDE.FilialenNr = ComboBox1._value
KUNDE.Besonderheiten = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(MyRichTextBox1.Text)
KUNDE.Sachbearbeiter = username
KUNDE.Eingegeben_am = Now.ToShortDateString
KUNDE.EORITIN = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtEORI.Text)
KUNDE.EORITIN_NL = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtEORINL.Text)
Dim KUNDE_ERW As New VERAG_PROG_ALLGEMEIN.cKundenErweitert(kdnr)
KUNDE_ERW.kde_BesonderheitenNeu = 1
Dim err = ""
If Not ADRESSE.VALID(err, KUNDE) Then
lblError.Text = err
kdnr = -1 : Exit Sub
End If
If Not KUNDE.VALID(err) Then
lblError.Text = err
kdnr = -1 : Exit Sub
End If
If ADRESSE.SAVE(True) Then
If Not KUNDE.SAVE(True) Then
kundenSQL.doSQL("DELETE FROM Adressen WHERE AdressenNr=" & kdnr, "FMZOLL")
lblError.Text = "FEHLER beim Eintragen in die Tabelle 'Kunden'!"
kdnr = -1 : Exit Sub
End If
KUNDE_ERW.SAVE()
Else
lblError.Text = "FEHLER beim Eintragen in die Tabelle 'Adressen'!"
kdnr = -1 : Exit Sub
End If
End If
If False Then
' MsgBox(kdnr)
If kdnr > 0 Then
If Not kundenSQL.insertKundeVERAGAdressen(kdnr, TextBox1.Text, username, txtStrasse.Text, sbLand._value, txtPLZ.Text, txtOrt.Text, cboUstIdLand._value, txtUstId.Text) Then
lblError.Text = "FEHLER beim Eintragen in die Tabelle 'Adressen'!" : kdnr = -1 : Exit Sub
End If
If Not kundenSQL.insertKundeVERAGKunden(kdnr, DirectCast(ComboBox1.SelectedItem, VERAG_PROG_ALLGEMEIN.MyListItem).Value, username, txtEORI.Text, txtEORINL.Text) Then
'DELETE ADRESSEN
kundenSQL.doSQL("DELETE FROM Adressen WHERE AdressenNr=" & kdnr, "FMZOLL")
lblError.Text = "FEHLER beim Eintragen in die Tabelle 'Kunden'!" : kdnr = -1 : Exit Sub
End If
' If Not kundenSQL.insertKundeVERAGKundenSDL(kdnr, TextBox1.Text) Then
'lblError.Text = "FEHLER beim eintragen in die Tabelle 'Kunden' für SDL!" : Exit Sub
' End If
End If
End If
Panel1.Controls.Clear()
Label5.Visible = True
Timer1.Enabled = True
End Sub
Private Sub FlatButton2_Click(sender As Object, e As EventArgs) Handles FlatButton2.Click
kdnr = -1
Me.Close()
End Sub
Dim cntTimer = 0
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
Timer1.Enabled = False
'If cntTimer > 2 Then Timer1.Enabled = False
If openKd Then cProgramFunctions.openKundenblatt(kdnr, frmMain, True)
' Dim pf As New cProgramFunctions
' pf.openKundenblatt(kdnr, True)
cntTimer += 1
Me.Close()
End Sub
Private Sub TextBox1_KeyDown(sender As Object, e As KeyEventArgs) Handles TextBox1.KeyDown
If e.KeyCode = Keys.Return Then FlatButton1.PerformClick()
End Sub
Private Sub FlatButton3_Click(sender As Object, e As EventArgs) Handles FlatButton3.Click
openKd = True
FlatButton1.PerformClick()
End Sub
Private Sub lblError_Click(sender As Object, e As EventArgs) Handles lblError.Click
End Sub
Private Sub ComboBox2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox2.SelectedIndexChanged
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "VERAG"
If ComboBox2._value = "100000-199999" Then
ComboBox1.changeItem("4801")
ElseIf ComboBox2._value = "1000000-1999999" Then
ComboBox1.changeItem("5501")
Else
If ComboBox1._value = "4801" Then ComboBox1.changeItem("4803")
End If
End Select
End Sub
End Class