Files
SDL/SDL/Formulare/KDFormulare/FormulareBaukasten/usrcntlVorauskasse.vb

845 lines
37 KiB
VB.net

Imports DocumentFormat.OpenXml.Drawing.Diagrams
Imports VERAG_PROG_ALLGEMEIN
Public Class usrcntlVorauskasse
Implements FormualrInterface
'IMPORTAVISO_AG
Public Event CHANGED(name, value)
Public Event KDNR_CHANGED(kdnr)
Public Event DELETE(c As Control)
Public Event MOVE_UP(c As Control)
Public Event MOVE_DOWN(c As Control)
Dim FV_ID = -1
Public KdNR As Integer = -1
Public KdFirma As String = ""
Public SENDUNG As VERAG_PROG_ALLGEMEIN.cSendungen = Nothing
Public AVISO As VERAG_PROG_ALLGEMEIN.cAviso = Nothing
Public ROLLE As String = ""
Dim VK_ID = -1
Dim SQL As New SQL
Sub New()
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
End Sub
Sub New(param() As Object)
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
If param.Length > 0 AndAlso param(0) IsNot Nothing Then KdNR = param(0)
If param.Length > 1 Then KdFirma = param(1)
If param.Length > 2 Then SENDUNG = param(2)
If param.Length > 3 Then AVISO = param(3)
If param.Length > 4 Then ROLLE = param(4)
If param.Length > 5 Then VK_ID = param(5)
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
End Sub
Public Sub ChangeKDNr(kdnr As Integer) _
Implements FormualrInterface.ChangeKDNr
initKdNR(kdnr)
End Sub
'Dim KdNR As Integer = -1
Sub initControlsHandler()
For Each c In Me.Controls
Select Case c.GetType.ToString
Case GetType(VERAG_PROG_ALLGEMEIN.MyTextBox).ToString
AddHandler DirectCast(c, VERAG_PROG_ALLGEMEIN.MyTextBox).Leave, Sub()
RaiseEvent CHANGED(c.name, c.text)
End Sub
Case GetType(VERAG_PROG_ALLGEMEIN.MyComboBox).ToString
AddHandler DirectCast(c, VERAG_PROG_ALLGEMEIN.MyComboBox).SelectedIndexChanged, Sub()
RaiseEvent CHANGED(c.name, c._value)
End Sub
Case GetType(TextBox).ToString
AddHandler DirectCast(c, TextBox).Leave, Sub()
RaiseEvent CHANGED(c.name, c.text)
End Sub
End Select
Next
For Each c In pnlBottom.Controls
Select Case c.GetType.ToString
Case GetType(VERAG_PROG_ALLGEMEIN.MyTextBox).ToString
AddHandler DirectCast(c, VERAG_PROG_ALLGEMEIN.MyTextBox).Leave, Sub()
initBerechnung()
End Sub
End Select
Next
For Each c In Panel5.Controls
Select Case c.GetType.ToString
Case GetType(VERAG_PROG_ALLGEMEIN.MyTextBox).ToString
AddHandler DirectCast(c, VERAG_PROG_ALLGEMEIN.MyTextBox).Leave, Sub()
initBerechnung()
End Sub
End Select
Next
End Sub
Private Sub btn_Click(sender As Object, e As EventArgs) Handles btn.Click
Dim kdsrch As New SDL.frmKundenSuche
'Panel1.Enabled = False
If kdsrch.ShowDialog(Me) = System.Windows.Forms.DialogResult.OK Then
If IsNumeric(kdsrch.kundenNrSearch.Text) Then
initKdNR(kdsrch.kundenNrSearch.Text)
RaiseEvent KDNR_CHANGED(KdNR)
End If
End If
' Panel1.Enabled = True
End Sub
Public Sub initSND()
If VK_ID > 0 Then
Dim VK As New VERAG_PROG_ALLGEMEIN.cVorauskasse(VK_ID)
If VK IsNot Nothing Then setValues(VK) Else setDefault()
initBerechnung()
Else
setDefault()
If SENDUNG IsNot Nothing Then
txtWarenbez.Text = If(SENDUNG.tblSnd_Warenbezeichnung, "")
txtAnzVerp.Text = If(SENDUNG.tblSnd_Colli, "")
txtGewicht.Text = If(SENDUNG.tblSnd_Gewicht, "")
txtAbsender.Text = If(SENDUNG.tblSnd_Absender, "")
If SENDUNG.AbfertigungsNr > 0 Then
' txtAbfertigungsNr.Text = SENDUNG.FilialenNr & "/" & SENDUNG.AbfertigungsNr
txtAbfertigungsNr.Text = SENDUNG.AbfertigungsNr
If SENDUNG.FilialenNr > 0 Then
cboFiliale.changeItem(SENDUNG.FilialenNr)
Dim VK = VERAG_PROG_ALLGEMEIN.cVorauskasse.LOADByFilialeAbfNr(SENDUNG.FilialenNr, SENDUNG.AbfertigungsNr, ROLLE)
If VK IsNot Nothing Then setValues(VK) Else setDefault()
initBerechnung()
End If
End If
If Not IsNumeric(If(SENDUNG.tblSnd_Frachtkosten, "")) And Not IsNumeric(If(SENDUNG.tblSnd_FrachtkostenNichtEU, "")) Then
txtFrachtkostenAusl._value = CDbl(SENDUNG.tblSnd_FrachtkostenGesamt)
ElseIf IsNumeric(If(SENDUNG.tblSnd_Frachtkosten, "")) Then
txtFrachtkostenAusl._value = CDbl(SENDUNG.tblSnd_FrachtkostenNichtEU)
txtFrachtkostenInl._value = CDbl(SENDUNG.tblSnd_Frachtkosten)
End If
If If(SENDUNG.tblSnd_WarenwertWaehrung, "") = "EUR" AndAlso IsNumeric(If(SENDUNG.tblSnd_Warenwert, "")) Then
lblRechnungsbetrag._value = CDbl(SENDUNG.tblSnd_Warenwert)
End If
End If
If AVISO IsNot Nothing Then
txtLKWKennz.Text = If(AVISO.LKW_Nr, "")
txtUnternehmer.Text = If(AVISO.Frächter, "")
cbxLKWWartet.Checked = (AVISO.Status = VERAG_PROG_ALLGEMEIN.cGlobal.Status_Ankunft)
End If
End If
End Sub
Public Sub initKdNR(KdNR)
If KdNR > 0 Then
Me.KdNR = KdNR
Dim KUNDE As New VERAG_PROG_ALLGEMEIN.cKunde(KdNR)
Dim ADRESSE As New VERAG_PROG_ALLGEMEIN.cAdressen(KdNR)
txtFirma.Text = If(ADRESSE.Name_1, "") & If(If(ADRESSE.Name_2, "") <> "", " " & ADRESSE.Name_2, "")
txtAdresse1.Text = If(ADRESSE.Straße, "")
txtAdresse2.Text = (If(ADRESSE.LandKz, "") & " " & If(ADRESSE.PLZ, "") & " " & If(ADRESSE.Ort, "")).ToString.Trim
txtUid.Text = If(ADRESSE.UstIdKz, "") & If(ADRESSE.UstIdNr, "")
txtEori.Text = If(KUNDE.EORITIN, "")
txtTel.Text = If(ADRESSE.Telefon, "")
txtFax.Text = If(ADRESSE.Telefax, "")
txtEmail.Text = If(ADRESSE.E_Mail, "")
' txtAnsprechpartnerVERAG.Text = If(ADRESSE.Ansprechpartner, "")
cbxSVS.Checked = KUNDE.SVS
Else
txtFirma.Text = KdFirma
End If
initKdNrLbl()
End Sub
Sub initKdNrLbl()
If KdNR > 0 Then
LinkLabel1.Visible = True
Button2.Visible = True
LinkLabel3.Visible = True
btnOffertladen.Visible = True
btnOffertladen.Enabled = CInt(SQL.getValueTxtBySql("Select count([LeistungsNr]) From Offertenpositionen WHERE KundenNr='" & KdNR & "' and OffertenNr='1'", "FMZOLL")) > 0
Else
LinkLabel1.Visible = False
Button2.Visible = False
LinkLabel3.Visible = False
btnOffertladen.Visible = False
End If
End Sub
Private Sub btnDel_Click(sender As Object, e As EventArgs) Handles btnDel.Click
RaiseEvent DELETE(Me)
End Sub
Private Sub btnup_Click(sender As Object, e As EventArgs) Handles btnUp.Click
RaiseEvent MOVE_UP(Me)
End Sub
Private Sub btnDown_Click(sender As Object, e As EventArgs) Handles btnDown.Click
RaiseEvent MOVE_DOWN(Me)
End Sub
Public Function ValidValues(ByRef err) As Boolean
ValidValues = True
If Not IsNumeric(cboFiliale._value) Then err &= "Vorauskasse: Filiale auswählen!" & vbNewLine : cboFiliale.Focus() : ValidValues = False
If Not IsNumeric(txtAbfertigungsNr.Text) Then err &= "Vorauskasse: AbfertigungsNr. auswählen!" & vbNewLine : txtAbfertigungsNr.Focus() : ValidValues = False
End Function
Private Sub usrcntlVollmacht_AT_Load(sender As Object, e As EventArgs) Handles Me.Load
lblRechnungsbetrag._value = 0
cboSprache.Items.Clear()
cboSprache.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Deutsch", "DE"))
cboSprache.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Englisch", "EN"))
cboSprache.changeItem("DE")
If CDate(Now.ToShortDateString) >= CDate("01.07.2020") And CDate(Now.ToShortDateString) <= CDate("31.12.2020") Then
txtEustProzent.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("0%", "0"))
'txtEustProzent.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("5%", "0,05"))
'txtEustProzent.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("16%", "0,16"))
txtEustProzent.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("7%", "0,07"))
txtEustProzent.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("19%", "0,19"))
txtEustProzent.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("20%", "0,20"))
txtEustProzent.changeItem("0,19")
' txtEustProzent.changeItem("0,16")
Else
txtEustProzent.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("0%", "0"))
txtEustProzent.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("7%", "0,07"))
txtEustProzent.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("10%", "0,10"))
txtEustProzent.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("19%", "0,19"))
txtEustProzent.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("20%", "0,20"))
txtEustProzent.changeItem("0,19")
End If
cboFirma.Items.Clear()
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "UNISPED"
cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("UNISPED Speditions GmbH", "21"))
cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("UNISPED Deutschland Speditions GmbH", "22"))
cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("UNISPED Zollservice GmbH", "23"))
cboFirma.changeItem("22")
Case "IMEX"
cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("IMEX Customs Service GmbH", "20"))
cboFirma.changeItem("20")
Case "AMBAR"
cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AMBAR", "24"))
cboFirma.changeItem("24")
'Case "XXX"
' cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG-UNISPED LTD", "26"))
' cboFirma.changeItem("26")
Case Else
cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG Spedition AG", "1"))
cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG Customs Service GmbH", "11"))
cboFirma.changeItem("1")
End Select
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("BREXIT", "AVISO") Then
cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG-UNISPED LTD", "26"))
End If
cboFiliale.fillWithSQL(" SELECT FilialenNr, Grenzstelle FROM Filialen WHERE Fil_Status='A' ORDER BY FilialenNr ", , "FMZOLL", True)
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "IMEX" : cboFiliale._allowedValuesFreiText = {"5501"}
Case "ATILLA" : cboFiliale._allowedValuesFreiText = {"4801"}
End Select
initControlsHandler()
txtAnsprechpartnerVERAG.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME
initBerechnung()
If IsNumeric(VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_durchwahl) Then
txtDW.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_durchwahl
End If
initKdNR(KdNR)
initSND()
End Sub
Private Sub pic_Click(sender As Object, e As EventArgs) Handles pic.Click
FormularManagerNEU.genPDF(Me, True)
End Sub
Private Sub MyTextBox1_TextChanged(sender As Object, e As EventArgs) Handles txtHerrFrau.TextChanged
End Sub
Sub initSteuersatz()
Dim bool_steuerberechnung = True
If cboFirma._value <> "" Then
Dim FIRMA_TMP = New VERAG_PROG_ALLGEMEIN.cFirmen(cboFirma._value)
' MsgBox(FIRMA_TMP.Firma_LandKz)
Select Case FIRMA_TMP.Firma_LandKz
Case "A", "AT"
If txtAdresse2.Text.StartsWith("TR") Or txtAdresse2.Text.StartsWith("SRB") Or txtAdresse2.Text.StartsWith("GB") Then
txtMwstProzent._value = 0
ElseIf txtUid.Text.Trim = "" OrElse txtUid.Text.ToUpper.StartsWith("AT") Then
'If txtMwstProzent._value = "" Then
txtMwstProzent._value = 0.2
'End If
Else
txtMwstProzent._value = 0
bool_steuerberechnung = False
End If
Case "GB"
If txtAdresse2.Text.StartsWith("A") Or txtAdresse2.Text.StartsWith("D") Or txtAdresse2.Text.StartsWith("TR") Then
txtMwstProzent._value = 0
ElseIf txtUid.Text.Trim = "" OrElse txtUid.Text.ToUpper.StartsWith("GB") Then
'If txtMwstProzent._value = "" Then
txtMwstProzent._value = 0.2
'End If
Else
txtMwstProzent._value = 0
bool_steuerberechnung = False
End If
Case Else '"D"
If txtAdresse2.Text.StartsWith("TR") Or txtAdresse2.Text.StartsWith("SRB") Or txtAdresse2.Text.StartsWith("GB") Then
txtMwstProzent._value = 0
ElseIf txtUid.Text.Trim = "" OrElse txtUid.Text.ToUpper.StartsWith("DE") Then
'If txtMwstProzent._value = "" Then
txtMwstProzent._value = 0.19
' End If
Else
txtMwstProzent._value = 0
bool_steuerberechnung = False
End If
End Select
End If
If bool_steuerberechnung Then
txtMwstProzent.Visible = True
txtMWST.Visible = True
Label14.Visible = True
Else
txtMwstProzent.Visible = False
txtMWST.Visible = False
Label14.Visible = False
txtMWST.Visible = False
End If
End Sub
Sub initBerechnung()
initSteuersatz()
' MsgBox(lblRechnungsbetrag.Text)
' MsgBox(lblRechnungsbetrag._value)
' MsgBox(Vl(lblRechnungsbetrag))
txtZwischensumme._value = Vl(lblRechnungsbetrag) + Vl(txtFrachtkostenAusl)
txtZoll._value = Math.Round(Vl_proz(txtZollProzent) * Vl(txtZwischensumme), 2)
txtSumme._value = Vl(txtZwischensumme) + Vl(txtZoll) + Vl(txtFrachtkostenInl) + Vl(txtEustSonstBetrag)
txtEUST._value = Math.Round((Vl(txtEustProzent) * Vl(txtSumme)), 2)
txtZoll2._value = Vl(txtZoll)
txtEust2._value = Vl(txtEUST)
'----------------------------------------------------------------
If True Then 'BERECHNUNG SVS aus Rechnungsbetrag
If cbxSVS.Checked AndAlso
IsNumeric(lblRechnungsbetrag._value) AndAlso lblRechnungsbetrag._value > 0 Then
txtSvs._value = cFakturierung.fktSVSRVS(lblRechnungsbetrag._value, "EUR")
Else
txtSvs._value = 0
End If
End If
Dim zwTMP As Double =
Vl(txtVerzollungskosten) +
Vl(txtWeitereTarifPos) +
Vl(txtATLAS) +
Vl(txtClearing) +
Vl(txtKorrRechnung) +
Vl(txtUebersetzungRg) +
Vl(txtAviso) +
Vl(txtSvs) +
Vl(txtSonstigeKosten) +
Vl(txtPapierePorti)
' Vl(txtMWST) +
'Vl(txtPapierePorti)
txtMWST._value = Math.Round((Vl(txtMwstProzent) * zwTMP), 2)
txtGesamtsumme._value =
Vl(txtZoll2) +
Vl(txtEust2) +
Vl(txtAndereAbgabenBetrag) +
zwTMP +
Vl(txtMWST)
'----------------------------------------------------------------
End Sub
Function Vl(s As VERAG_PROG_ALLGEMEIN.MyTextBox) As Double
If IsNumeric(s._value) Then : Return Math.Round(CDbl(s._value), 2)
Else : s._value = 0 : End If
Return 0
End Function
Function Vl(s As VERAG_PROG_ALLGEMEIN.MyComboBox) As Double
If IsNumeric(s._value) Then : Return Math.Round(CDbl(s._value), 2)
Else : s._value = 0 : End If
Return 0
End Function
Function Vl_proz(s As VERAG_PROG_ALLGEMEIN.MyTextBox) As Double
If IsNumeric(s._value) Then : Return CDbl(s._value)
Else : s._value = 0 : End If
Return 0
End Function
Private Sub txtUid_TextChanged(sender As Object, e As EventArgs) Handles txtUid.TextChanged
initBerechnung()
End Sub
Private Sub txtEustProzent_SelectedIndexChanged(sender As Object, e As EventArgs) Handles txtEustProzent.SelectedIndexChanged
initBerechnung()
End Sub
Private Sub lblRechnungsbetrag_ValueChanged() Handles lblRechnungsbetrag.ValueChanged
initBerechnung()
End Sub
Private Sub MyComboBox2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboFirma.SelectedIndexChanged
cboSprache.Visible = False
Label17.Visible = False
If txtEustProzent._value <> "0" Then ' Wenn =, soll das bleiben
'Dim FIRMA_TMP = New VERAG_PROG_ALLGEMEIN.cFirmen(cboFiliale._value)
'Select Case FIRMA_TMP.Firma_LandKz
lblWaehrung.Text = "EUR"
Select Case cboFirma._value
Case "11",
txtEustProzent.changeItem("0,20")
Case "26"
txtEustProzent.changeItem("0,20")
lblWaehrung.Text = "GBP"
Case "24"
cboSprache.Visible = True
Label17.Visible = True
txtEustProzent.changeItem("0,19")
Case Else
'If CDate(Now.ToShortDateString) >= CDate("01.07.2020") And CDate(Now.ToShortDateString) <= CDate("20.12.2020") Then
' txtEustProzent.changeItem("0,16")
'Else
' txtEustProzent.changeItem("0,19")
'End If
txtEustProzent.changeItem("0,19")
End Select
End If
initBerechnung()
End Sub
Private Sub pnlBottom_Paint(sender As Object, e As PaintEventArgs) Handles pnlBottom.Paint
End Sub
Private Sub btnSaveFD_Click(sender As Object, e As EventArgs) Handles btnSaveFD.Click
If txtVorlage.Text = "" Then MsgBox("Bitte ein Vorlagenbezeichnung eingeben!") : Exit Sub
Dim FV As cFormularVorlagen
If FV_ID > -1 Then
If MsgBox("Möchten Sie die Vorlage überschreiben?", vbYesNoCancel) <> MsgBoxResult.Yes Then Exit Sub
FV = New cFormularVorlagen(FV_ID)
Else
FV = New cFormularVorlagen
FV.tblform_art = Me.GetType.ToString
FV.tblform_begriff = txtVorlage.Text
End If
FV.tblform_KundenNr = If(KdNR > 0, KdNR, Nothing)
FV.tblform_Sachbearbeiter = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
FV.tblform_letzeAenderung = Now
If FV.SAVE() Then
getValues(FV)
If FV.SAVE_VALUES() Then initControlsSave(FV)
End If
End Sub
Sub getValues(ByVal FV As cFormularVorlagen)
FV.VALUES.Clear()
For Each c In Me.Controls
Select Case c.GetType.ToString
Case GetType(VERAG_PROG_ALLGEMEIN.MyTextBox).ToString, GetType(TextBox).ToString
FV.VALUES.Add(New cFormularVorlagenValues(FV.tblform_id, c.name, c.text))
Case GetType(VERAG_PROG_ALLGEMEIN.MyComboBox).ToString
FV.VALUES.Add(New cFormularVorlagenValues(FV.tblform_id, c.name, If(c._value IsNot Nothing, c._value, "")))
End Select
Next
For Each c In pnlBottom.Controls
Select Case c.GetType.ToString
Case GetType(VERAG_PROG_ALLGEMEIN.MyTextBox).ToString, GetType(VERAG_PROG_ALLGEMEIN.MyComboBox).ToString
FV.VALUES.Add(New cFormularVorlagenValues(FV.tblform_id, c.name, If(c._value IsNot Nothing, c._value, "")))
End Select
Next
End Sub
Private Sub Button1_Click_1(sender As Object, e As EventArgs) Handles Button1.Click
Dim f As New frmFormularvorlageSuche(Me.GetType.ToString)
If f.ShowDialog(Me) = DialogResult.OK Then
If f.FV IsNot Nothing Then
txtVorlage.Text = f.FV.tblform_begriff
initControlsSave(f.FV)
For Each v In f.FV.VALUES
If Me.Controls(v.tblfv_name) IsNot Nothing Then
Select Case Me.Controls(v.tblfv_name).GetType.ToString
Case GetType(VERAG_PROG_ALLGEMEIN.MyTextBox).ToString, GetType(TextBox).ToString
Me.Controls(v.tblfv_name).text = v.tblfv_wert
Case GetType(VERAG_PROG_ALLGEMEIN.MyComboBox).ToString
Me.Controls(v.tblfv_name)._value = v.tblfv_wert
End Select
ElseIf pnlBottom.Controls(v.tblfv_name) IsNot Nothing Then
pnlBottom.Controls(v.tblfv_name)._value = v.tblfv_wert
'TEXTBOX ÜBERSCHREIBEN, DAMIT NICHT FALSCHER WERT, cbo ok, da MWST % nicht geändert
Select Case pnlBottom.Controls(v.tblfv_name).GetType.ToString
Case GetType(VERAG_PROG_ALLGEMEIN.MyTextBox).ToString
pnlBottom.Controls(v.tblfv_name)._value = 0
End Select
End If
Next
End If
Else
End If
End Sub
Sub initControlsSave(FV As cFormularVorlagen)
If FV IsNot Nothing Then
Me.KdNR = If(FV.tblform_KundenNr IsNot Nothing, FV.tblform_KundenNr, -1)
FV_ID = FV.tblform_id
btnDelFD.Visible = True
lklEintragAufheben.Visible = True
txtVorlage.Enabled = False
Else
Me.KdNR = -1
FV_ID = -1
txtVorlage.Enabled = True
txtVorlage.Text = ""
btnDelFD.Visible = False
lklEintragAufheben.Visible = False
End If
initKdNrLbl()
End Sub
Private Sub lklEintragAufheben_LinkClicked(sender As Object, e As LinkLabelLinkClickedEventArgs) Handles lklEintragAufheben.LinkClicked
initControlsSave(Nothing)
End Sub
Private Sub btnDelFD_Click(sender As Object, e As EventArgs) Handles btnDelFD.Click
If FV_ID > 0 Then
Dim FV As New cFormularVorlagen(FV_ID)
If MsgBox("Möchten Sie die Vorlage wirklich löschen?", vbYesNoCancel) = MsgBoxResult.Yes Then
If FV.DELETE() Then
initControlsSave(Nothing)
End If
End If
End If
End Sub
Private Sub LinkLabel1_LinkClicked(sender As Object, e As LinkLabelLinkClickedEventArgs) Handles LinkLabel1.LinkClicked
If KdNR > 0 Then
Dim f As New frmKundenUebersichtZOLL(KdNR)
f.selectedTAB = "Offerte"
f.Show(Me)
End If
End Sub
Private Sub LinkLabel3_LinkClicked(sender As Object, e As LinkLabelLinkClickedEventArgs) Handles LinkLabel3.LinkClicked
Me.KdNR = -1
initKdNrLbl()
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
If KdNR > 0 Then
Dim f As New frmKundenUebersichtZOLL(KdNR)
f.ShowDialog(Me)
End If
End Sub
Private Sub btnStandardPreiseLaden_Click(sender As Object, e As EventArgs) Handles btnStandardPreiseLaden.Click
If FormularManagerNEU.saveVorauskasse(Me) Then
lblCRsaved.Text = "(gespeichert)"
lblCRsaved.ForeColor = Color.Green
End If
End Sub
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
Dim vk As New frmVorauskasse
vk.Show(Me)
End Sub
Private Sub txtAbfertigungsNr_TextChanged(sender As Object, e As EventArgs) Handles txtAbfertigungsNr.Leave
If txtAbfertigungsNr.Text.Length > 8 Then Exit Sub
If txtAbfertigungsNr.Text.Length <= 6 Then
If IsNumeric(txtAbfertigungsNr.Text) Then
txtAbfertigungsNr.Text = Now.ToString("yy") & CInt(txtAbfertigungsNr.Text).ToString("000000")
End If
End If
End Sub
Private Sub cbxSVS_CheckedChanged(sender As Object, e As EventArgs) Handles cbxSVS.CheckedChanged
If cbxSVS.Checked Then
txtSvs.Enabled = True
txtSvs._value = 0
Else
txtSvs.Enabled = False
End If
initBerechnung()
End Sub
Sub getValues(ByRef VK As VERAG_PROG_ALLGEMEIN.cVorauskasse)
VK.vk_Rolle = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(ROLLE)
VK.vk_Anrede = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtHerrFrau.Text)
VK.vk_Firmenwortlauf = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtFirma.Text)
VK.vk_Aresse1 = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtAdresse1.Text)
VK.vk_Adresse2 = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtAdresse2.Text)
VK.vk_UID = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtUid.Text)
VK.vk_EORI = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtEori.Text)
VK.vk_Tel = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtTel.Text)
VK.vk_Fax = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtFax.Text)
VK.vk_Email = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtEmail.Text)
VK.vk_RgNr = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtRechnungsnummern.Text)
VK.vk_Absender = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtAbsender.Text)
VK.vk_ATREUR1 = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtATUEur1.Text)
VK.vk_Fraechter = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtUnternehmer.Text)
VK.vk_Anzahl = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtAnzVerp.Text)
VK.vk_Warenbezeichnung = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtWarenbez.Text)
VK.vk_Colli = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtGewicht.Text)
VK.vk_FaStNr = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtFaStNr.Text)
VK.vk_LKW = txtLKWKennz.Text
VK.vk_Berechnung_Rechnungsbetrag = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(lblRechnungsbetrag._value)
VK.vk_Berechnung_FrachtkostAusland = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtFrachtkostenAusl._value)
VK.vk_Berechnung_ZollProz = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtZollProzent._value)
VK.vk_Berechnung_FrachtkostInland = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtFrachtkostenInl._value)
VK.vk_Berechnung_AbgabenSonst_Bez = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtEustSonstText.Text)
VK.vk_Berechnung_AbgabenSonst_Betrag = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtEustSonstBetrag._value)
VK.vk_Berechnung_EUSTProz = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtEustProzent._value)
VK.vk_Berechnung_KostenSonst_Bez = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtAndereAbgabenText.Text)
VK.vk_Berechnung_KostenSonst_Betrag = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtAndereAbgabenBetrag._value)
VK.vk_Berechnung_Verzollung = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtVerzollungskosten._value)
VK.vk_Berechnung_jeWeitere = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtWeitereTarifPos._value)
VK.vk_Berechnung_ATLAS = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtATLAS._value)
VK.vk_Berechnung_Clearing = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtClearing._value)
VK.vk_Berechnung_korrRg = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtKorrRechnung._value)
VK.vk_Berechnung_Übersetzung = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtUebersetzungRg._value)
VK.vk_Berechnung_Aviso = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtAviso._value)
VK.vk_Berechnung_SVS = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtSvs._value)
VK.vk_Berechnung_SonstigeKosten = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtSonstigeKosten._value)
VK.vk_Berechnung_SonstigeKostenText = VERAG_PROG_ALLGEMEIN.SQL.isNullNothing(txtSonstigeKostenText.Text)
VK.vk_Berechnung_PP = VERAG_PROG_ALLGEMEIN.SQL.isNullNothingDbl(txtPapierePorti._value)
End Sub
Sub setValues(ByVal VK As VERAG_PROG_ALLGEMEIN.cVorauskasse)
ROLLE = If(VK.vk_Rolle, "")
txtHerrFrau.Text = If(VK.vk_Anrede, "")
txtFirma.Text = If(VK.vk_Firmenwortlauf, "")
txtAdresse1.Text = If(VK.vk_Aresse1, "")
txtAdresse2.Text = If(VK.vk_Adresse2, "")
txtUid.Text = If(VK.vk_UID, "")
txtEori.Text = If(VK.vk_EORI, "")
txtTel.Text = If(VK.vk_Tel, "")
txtFax.Text = If(VK.vk_Fax, "")
txtEmail.Text = If(VK.vk_Email, "")
txtRechnungsnummern.Text = If(VK.vk_RgNr, "")
txtAbsender.Text = If(VK.vk_Absender, "")
txtATUEur1.Text = If(VK.vk_ATREUR1, "")
txtUnternehmer.Text = If(VK.vk_Fraechter, "")
txtAnzVerp.Text = If(VK.vk_Anzahl, "")
txtWarenbez.Text = If(VK.vk_Warenbezeichnung, "")
txtGewicht.Text = If(VK.vk_Colli, "")
txtFaStNr.Text = If(VK.vk_FaStNr, "")
txtLKWKennz.Text = If(VK.vk_LKW, "")
lblRechnungsbetrag._value = If(VK.vk_Berechnung_Rechnungsbetrag, "")
txtFrachtkostenAusl._value = If(VK.vk_Berechnung_FrachtkostAusland, "")
txtZollProzent._value = If(VK.vk_Berechnung_ZollProz, "")
txtFrachtkostenInl._value = If(VK.vk_Berechnung_FrachtkostInland, "")
txtEustSonstText.Text = If(VK.vk_Berechnung_AbgabenSonst_Bez, "")
txtEustSonstBetrag._value = If(VK.vk_Berechnung_AbgabenSonst_Betrag, "")
txtEustProzent._value = If(VK.vk_Berechnung_EUSTProz, "")
txtAndereAbgabenText.Text = If(VK.vk_Berechnung_KostenSonst_Bez, "")
txtAndereAbgabenBetrag._value = If(VK.vk_Berechnung_KostenSonst_Betrag, "")
txtVerzollungskosten._value = If(VK.vk_Berechnung_Verzollung, "")
txtWeitereTarifPos._value = If(VK.vk_Berechnung_jeWeitere, "")
txtATLAS._value = If(VK.vk_Berechnung_ATLAS, "")
txtClearing._value = If(VK.vk_Berechnung_Clearing, "")
txtKorrRechnung._value = If(VK.vk_Berechnung_korrRg, "")
txtUebersetzungRg._value = If(VK.vk_Berechnung_Übersetzung, "")
txtAviso._value = If(VK.vk_Berechnung_Aviso, "")
txtSvs._value = If(VK.vk_Berechnung_SVS, "")
txtSonstigeKosten._value = If(VK.vk_Berechnung_SonstigeKosten, "")
txtSonstigeKostenText.Text = If(VK.vk_Berechnung_SonstigeKostenText, "Sonstige Kosten")
txtPapierePorti._value = If(VK.vk_Berechnung_PP, "")
End Sub
Sub setDefault()
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "AMBAR"
offertenvonKundenladen(True)
'txtVerzollungskosten._value = 112
'txtATLAS._value = 10
'' txtClearing._value = 40
'txtClearing._value = 0
'txtAviso._value = 20
'txtSonstigeKosten._value = 40
'txtSonstigeKostenText.Text = "Sonstige Kosten"
'txtPapierePorti._value = 10
Case "VERAG", "IMEX"
offertenvonKundenladen(True)
'txtVerzollungskosten._value = 93
'txtATLAS._value = 8
'txtClearing._value = 40
'txtAviso._value = 20
'txtSonstigeKosten._value = 40
'txtSonstigeKostenText.Text = "Sonstige Kosten"
'txtPapierePorti._value = 10
End Select
End Sub
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
Dim f As New frmVorauskasse_ZollBerechnen
If f.ShowDialog(Me) = DialogResult.OK Then
If f.GesamtBetrag > 0 Then
txtEustSonstText.Text = "ZOLL"
txtAndereAbgabenText.Text = "ZOLL"
txtEustSonstBetrag._value = f.GesamtBetrag
txtAndereAbgabenBetrag._value = f.GesamtBetrag
End If
End If
End Sub
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
Dim f As New frmVorauskasse_ZollBerechnen
If f.ShowDialog(Me) = DialogResult.OK Then
If f.GesamtBetrag > 0 Then
' txtEustSonstText.Text = "EUST"
txtAndereAbgabenText.Text = "EUST"
' txtEustSonstBetrag._value = f.GesamtBetrag
txtAndereAbgabenBetrag._value = f.GesamtBetrag
End If
End If
End Sub
Private Sub txtAdresse2_TextChanged(sender As Object, e As EventArgs) Handles txtAdresse2.TextChanged
initSteuersatz()
End Sub
Private Sub btnFremdWaehrungBerechnen_Click(sender As Object, e As EventArgs) Handles btnFremdWaehrungBerechnen.Click
Dim f As New frmVorauskasse_FremdwaehrungBerechnen(SENDUNG)
If f.ShowDialog(Me) = DialogResult.OK Then
If CDbl(f.txtWarenwertUmrechnung.Text) <> 0 Then
lblRechnungsbetrag._value = f.txtWarenwertUmrechnung.Text
End If
End If
End Sub
Private Sub btnOffertladen_Click(sender As Object, e As EventArgs) Handles btnOffertladen.Click
offertenvonKundenladen(False)
'For Each row As DataRow In dt.Select("BerechnungsartNr = '8'")
' If row("LeistungsNr") = 60 Then txtVerzollungskosten.Text = row("Preis")
' If row("LeistungsNr") = 20 Then txtZoll._value = row("Preis")
End Sub
Private Sub offertenvonKundenladen(warnungunterduecken As Boolean)
Dim dt As DataTable
If SENDUNG Is Nothing Then
If Not warnungunterduecken Then MsgBox("Es ist keine Sendung hinterlegt, daher kann keine Abfertigungsart geladen werden und kein passendes Offert!")
Exit Sub
End If
dt = SQL.loadDgvBySql("SELECT [LeistungsNr], [Preis], [BerechnungsartNr] ,[Anzahl], BerechnungsartPosInkludiert FROM [Offertenpositionen] WHERE KundenNr='" & KdNR & "' and OffertenNr=(SELECT ISNULL(AO.ao_OffertenNr,-1) FROM tblAbfertigungsartOffertenstamm as AO WHERE AO.ao_Abfertigungsart='" & SENDUNG.tblSnd_Abfertigungsart_ID & "') and preis is not null order by LeistungsNr, Preis desc", "FMZOLL")
If dt.Rows.Count = 0 Then
If Not warnungunterduecken Then MsgBox("Es konnten keine Offertpositionen für Abfertigunsgart " & SENDUNG.tblSnd_Abfertigungsart_ID & " ermittelt werden!")
Exit Sub
End If
' wenn AnzahlPos angegeben, dann Berechnungsart = 10 verwenden,
If txtPos.Text <> "" AndAlso CInt(txtPos.Text) > 0 Then
For Each row As DataRow In dt.Select("BerechnungsartNr = '10'")
If row("LeistungsNr") = 340 Then
If IsDBNull(row("BerechnungsartPosInkludiert")) Then
txtWeitereTarifPos._value = row("Preis") * txtPos.Text
Exit For
End If
If row("BerechnungsartPosInkludiert") >= txtPos.Text Then
txtWeitereTarifPos._value = row("Preis") * 1
Exit For
Else
txtWeitereTarifPos._value = row("Preis") * (txtPos.Text - row("BerechnungsartPosInkludiert") + 1)
Exit For
End If
End If
Next
End If
For Each row As DataRow In dt.Select("Anzahl = '1'")
If row("LeistungsNr") = 348 Then txtAviso._value = row("Preis")
If row("LeistungsNr") = 340 Then txtVerzollungskosten._value = row("Preis")
If row("LeistungsNr") = 324 Then txtATLAS._value = row("Preis")
If row("LeistungsNr") = 440 Then txtPapierePorti._value = row("Preis")
Next
initBerechnung()
End Sub
End Class