Imports VERAG_PROG_ALLGEMEIN Imports VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO Imports System.Data.OleDb Imports System.Data.SqlClient Imports System.Drawing.Printing Imports System.Linq.Expressions Public Class frmEintragAviso ' Public frmHilf As frmMain Dim ATILLA_NEUERAKTENDECKEL = True Dim Firmen As New cFirmenDAL Dim AvisoDAL As New cAvisoDAL Dim myAviso As New cAviso Dim AVISOFUNC As New AvisoStatusFunctions Dim ADMIN As New cADMIN Dim hÄnderung As Boolean = False Dim Neuanlage As Boolean = False Public EingangsDatum As Date = CDate("01.01.1990") Dim hStatus As Integer Dim showSendungsdetails As Boolean = False Dim hAdresse As String = "" Dim hCC As String = "" Public aktiv As Boolean = False 's Dim tmpId = -1 Public StartFromOUTLOOK = False Public AktenzetteldruckenVisible = False Public TMP_SND_Atilla As VERAG_PROG_ALLGEMEIN.cSendungen = Nothing Public ATT As List(Of String) Dim PROG As New cProgramFunctions Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL Public FIRMA_TMP As String = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA Public Sub New() InitializeComponent() Icon = VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO.GetProgrammIcon End Sub Private Sub frmEintragAviso_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing If FIRMA_TMP = "ATILLA" And myAviso.Status = VERAG_PROG_ALLGEMEIN.cGlobal.Status_Ankunft Then If myAviso.Frächter = "" Then MsgBox("Bei 'Ankunft' muss der Frächter angegeben werden!") e.Cancel = True End If End If End Sub Private Sub frmEintragAviso_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown 'Escape händisch abfangen und auf Abbruch-Taste legen If e.KeyCode = Keys.Escape Then btnAbbruch.PerformClick() End If If e.KeyCode = Keys.Return Then e.Handled = True End If End Sub Sub initAttachment() If ATT Is Nothing Then dgvAnhaenge.Visible = False : Exit Sub dgvAnhaenge.Rows.Clear() If ATT.Count = 0 Then ' btnSaveAttachments.Enabled = False Else dgvAnhaenge.Visible = True If FIRMA_TMP = "ATILLA" Then dgvAnhaenge.Visible = False 'dgvAnhaenge.Size = New Size(dgvAnhaenge.Size.Width, 70) 'dgvAnhaenge.Top += (dgvAnhaenge.Size.Height - 70) End If For Each a In ATT Dim display = a If a.Contains("\") Then Dim sp = a.Split("\") display = sp(sp.Count - 1) End If dgvAnhaenge.Rows.Add({display, a}) Next End If dgvAnhaenge.ClearSelection() End Sub Private Sub frmEintragAviso_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load 'If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("VERIMEX", "AVISO") Then ' MsgBox("Keine Berechtigung!") ' Me.Close() 'End If Me.CenterToParent() btnOK.Enabled = False kdFrächter.initKdBox(Me) kdAvisierer.initKdBox(Me) kdAuftraggeber.initKdBox(Me) Select Case FIRMA_TMP Case "ATILLA" cboGrenzstelle.Items.Clear() cboGrenzstelle.fillWithSQL("SELECT [grz_Grenzstelle],[grz_BezeichnungCBO] FROM tblGrenzstelle where [grz_Grenzstelle] IN ('SUB','NEU') AND grz_Aktiv=1 order by grz_Reihenfolge, grz_Grenzstelle", False, "AVISO", False) cboGrenzstelle.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("???", "???")) 'cboGrenzstelle.changeItem("") Case Else cboGrenzstelle.Items.Clear() cboGrenzstelle.fillWithSQL("SELECT [grz_Grenzstelle],[grz_BezeichnungCBO] FROM tblGrenzstelle where [grz_Firma]='" & FIRMA_TMP & "' OR grz_Cluster='" & VERAG_PROG_ALLGEMEIN.cAllgemein.CLUSTER & "' AND grz_Aktiv=1 order by grz_Reihenfolge, grz_Grenzstelle", False, "AVISO", True,, "ALLE") cboGrenzstelle.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("???", "???")) cboGrenzstelle.changeItem("") End Select cboTransportmittelart.Items.Clear() cboTransportmittelart.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", "")) cboTransportmittelart.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("LKW", "LKW")) cboTransportmittelart.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("SPRINTER", "SPRINTER")) cboTransportmittelart.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("CONTAINER", "CONTAINER")) cboTransportmittelart.changeItem("") sbLkwNationalitaet.initSearchBox(Me.FindForm, " [Code] ,[Description] as Land FROM tbl_DY_ZollDE_C0008_LaenderFull", {"Code", "Description"}, " (StartDate is null OR StartDate< GETDATE()) AND (EndDate is null OR EndDate> GETDATE()) ", "Code", "Code", "Code", "FMZOLL", , 400, 200) If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then ATILLA_NEUERAKTENDECKEL = True End If 'initDrucker() SDL.cProgramFunctions.initDrucker(cboPrinter) If StartFromOUTLOOK Then optSchriftlich.Checked = True End If cboFirma.Items.Clear() cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", "")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG", "VERAG")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("IMEX", "IMEX")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("UNISPED", "UNISPED")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AMBAR", "AMBAR")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("ATILLA", "ATILLA")) cboFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("FRONTOFFICE", "FRONTOFFICE")) cboFirma.changeItem(FIRMA_TMP) cboFirma.Enabled = False Select Case FIRMA_TMP Case "IMEX" txtSndFiskalAT.Visible = False lblFiskAT.Visible = False txtSndFiskalDE.Visible = False lblFiskDE.Visible = False Label1.Visible = True cboImEx.Visible = True 'txtBestimmungszollstelle.initSearchBox(Me.FindForm, "[basncd_dstnr] ,[basncd_dstnr] +' - ' + [basncd_name] +' (' +[basncd_alpha]+')' as displayPARAM,[basncd_dstnr] as Nr,[basncd_name] as Dienststelle,[basncd_alpha] as Land FROM basncd", {" [basncd_dstnr]", "basncd_name"}, " [basncd_gbdat] >= getdate() ", " basncd_alpha,[basncd_name]", "basncd_dstnr", "displayPARAM", "ATLAS", , 400, 200, {"displayPARAM", "basncd_dstnr"}) txtBestimmungszollstelle.initSearchBox(Me.FindForm, "[Code] ,[Code] as Nr,Description as Dienststelle,left(Code,2) as Land,[Code] +' - ' + [Description] +' (' +left(Code,2)+')' as display FROM [tbl_DY_ZollDE_C0141_Zollstellen]", {" [Code]", "Description"}, " (StartDate is null OR StartDate< GETDATE()) AND (EndDate is null OR EndDate> GETDATE()) ", " left(Code,2),[Description]", "Code", "display", "FMZOLL", , 400, 200, {"display", "Code"}) 'txtBestimmungszollstelle.Visible = True 'lblZA.Visible = True pnl.Visible = True Case "UNISPED" Label1.Visible = True cboImEx.Visible = True Case "AMBAR" txtSndFiskalAT.Visible = False lblFiskAT.Visible = False txtSndFiskalDE.Visible = False lblFiskDE.Visible = False Label1.Visible = True cboImEx.Visible = True ' txtBestimmungszollstelle.initSearchBox(Me.FindForm, "[basncd_dstnr] ,[basncd_dstnr] +' - ' + [basncd_name] +' (' +[basncd_alpha]+')' as displayPARAM,[basncd_dstnr] as Nr,[basncd_name] as Dienststelle,[basncd_alpha] as Land FROM basncd", {" [basncd_dstnr]", "basncd_name"}, " [basncd_gbdat] >= getdate() ", " basncd_alpha,[basncd_name]", "basncd_dstnr", "displayPARAM", "ATLAS", , 400, 200, {"displayPARAM", "basncd_dstnr"}) txtBestimmungszollstelle.initSearchBox(Me.FindForm, "[Code] ,[Code] as Nr,Description as Dienststelle,left(Code,2) as Land,[Code] +' - ' + [Description] +' (' +left(Code,2)+')' as display FROM [tbl_DY_ZollDE_C0141_Zollstellen]", {" [Code]", "Description"}, " (StartDate is null OR StartDate< GETDATE()) AND (EndDate is null OR EndDate> GETDATE()) ", " left(Code,2),[Description]", "Code", "display", "FMZOLL", , 400, 200, {"display", "Code"}) pnl.Visible = True Case "VERAG" Label1.Visible = True cboImEx.Visible = True cboImEx.Text = "IMPORT" Case "VERIMEX" cboFirma.Enabled = True End Select If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("VERIMEX", "AVISO") Then cboFirma.Enabled = True End If Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG Case "WAI" cboImEx.Visible = True Label1.Visible = True lblFiskAT.Visible = False txtSndFiskalAT.Visible = False Case "SBG" cbxSendungsvorlagen.Checked = False Case "NKD" lblFiskDE.Visible = False txtSndFiskalDE.Visible = False Case "SUB" txtSndFremd.Visible = True lblSndFremd.Visible = True Case "NEU" txtSndFremd.Visible = True lblSndFremd.Visible = True cboImEx.Visible = True Label1.Visible = True Case "AMB" txtSndFremd.Visible = True lblSndFremd.Visible = True cboImEx.Visible = True Label1.Visible = True Case "DTB" cboImEx.Visible = True Label1.Visible = True lblFiskAT.Visible = False txtSndFiskalAT.Visible = False End Select Select Case FIRMA_TMP Case "FRONTOFFICE" cbxSendungsvorlagen.Checked = False cbxPosNr.Checked = False End Select If VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME.Contains("ANNAHME") Then cbxSendungsvorlagen.Checked = False If VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME = "MAIL_USER" Then cbxSendungsvorlagen.Checked = False If VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME.Contains("PULT") Then cbxSendungsvorlagen.Checked = False If VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME.Contains("AVISO") Then cbxSendungsvorlagen.Checked = False AddHandler kdAvisierer.PropertyChanged, Sub() If kdAvisierer.KdNr_value > 0 Then btnAvisiererKd.Enabled = True Dim KUNDE_ERW = New VERAG_PROG_ALLGEMEIN.cKundenErweitert(kdAvisierer.KdNr_value) If KUNDE_ERW IsNot Nothing Then lblTeamAvisierer.Text = SQL.DLookup("team_bezeichnung", "tblTeams", "[team_id]='" & KUNDE_ERW.kde_TeamId & "'", "ADMIN", "") If lblTeamAvisierer.Text <> "" Then lblTeamAvisierer.Visible = True Else btnAvisiererKd.Enabled = False lblTeamAvisierer.Visible = False End If End Sub AddHandler kdFrächter.PropertyChanged, Sub() If kdFrächter.KdNr_value > 0 Then btnFraechterKd.Enabled = True Dim KUNDE_ERW = New VERAG_PROG_ALLGEMEIN.cKundenErweitert(kdFrächter.KdNr_value) If KUNDE_ERW IsNot Nothing Then lblTeamFraechter.Text = SQL.DLookup("team_bezeichnung", "tblTeams", "[team_id]='" & KUNDE_ERW.kde_TeamId & "'", "ADMIN", "") If lblTeamFraechter.Text <> "" Then lblTeamFraechter.Visible = True Else btnFraechterKd.Enabled = False lblTeamFraechter.Visible = False End If End Sub AddHandler kdAuftraggeber.PropertyChanged, Sub() If kdAuftraggeber.KdNr_value > 0 Then btnAuftraggeber.Enabled = True Else btnAuftraggeber.Enabled = False End If End Sub 'AuswahlCombos mit Daten befüllen ' cboFrächter.DataSource = Firmen.Anzeigen_cboFirmen("") 'cboFrächter.DisplayMember = "Firma" 'cboFrächter.ValueMember = "FirmaID" 'cboAuftraggeber.DataSource = Firmen.Anzeigen_cboFirmen("") ' cboAuftraggeber.DisplayMember = "Firma" ' cboAuftraggeber.ValueMember = "FirmaID" btnOK.Enabled = True If FIRMA_TMP = "ATILLA" Then cbxFrächterUnbekannt.Visible = True grpAktVerzollung.Visible = False cbxSendungsvorlagen.Visible = False Button3.Visible = False 'lblGrenze.Visible = False ' cboGrenzstelle.Visible = False cboGrenzstelle.changeItem(If(VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG, "SUB")) cbxAuftraggeberfurAlleSendungen.Visible = False If ATILLA_NEUERAKTENDECKEL Then UsrCntlEintragAvisoAtilla.Visible = True lblAenderungen.Visible = False txtÄnderungen.Visible = False cbxAktenzettelDrucken.Visible = True ': cbxAktenzettelDrucken.Checked = True --> checked, wenn ohne AVISO End If lblAtr.Visible = True kdAuftraggeber.Visible = True btnAuftraggeber.Visible = True lblAtrAvis.Visible = True End If Dim bearb As Boolean = VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("Avisodaten_verwalten", Me.FindForm) If cGlobal.Aktive_ID = 0 Then 'es erfolgt eine Neuanlage Neuanlage = True Me.Text = "Neuanlage LKW-Aviso" dtpDatum.Value = Now datVoraussichtlichesEintreffen.Value = Now.AddDays(-1) If cboFirma._value = "ATILLA" Then datVoraussichtlichesEintreffen.Value = Now 'Bei ATILLA gibt es meist kein voraussichtliches Eintreffdatum. dtpAvisoEingangDatum.Value = Now.Date dtpAvisoEingangZeit.Value = LeerDatum txtÄnderungen.Text = "Neuanlage von " & cGlobal.AktiverMitarbeiter.Mitarbeiter lblStatus.Text = "Neuanlage" optAvisoEingang.Checked = True kdAvisierer.Text = "" kdAuftraggeber.Text = "" kdFrächter.Text = "" If VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_abteilung <> "QS" Then If VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG <> "" Then cboGrenzstelle.changeItem(VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG) End If End If If FIRMA_TMP = "AMBAR" Then cboGrenzstelle.changeItem("AMB") End If Else If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("WARENORT", "AVISO") Then Me.Close() End If Me.Text = "Änderung LKW-Aviso" 'If myAviso.Status = cGlobal.Status_Ankunft Or myAviso.Status = cGlobal.Status_Freigegeben Then datVoraussichtlichesEintreffen.Visible = False txtInfo.Visible = False Label3.Visible = False 'ausgewählter Datensatz wird geladen grpAktVerzollung.Visible = False cbxSendungsvorlagen.Visible = False Button3.Visible = False myAviso = AvisoDAL.LesenAviso(cGlobal.Aktive_ID, "") 'Werte(zuweisen) dtpDatum.Value = myAviso.Datum If myAviso.Frächter_KdNr > 0 Then kdFrächter.KdNr = myAviso.Frächter_KdNr Else kdFrächter.Text = myAviso.Frächter End If If myAviso.Auftraggeber_KdNr > 0 Then kdAvisierer.KdNr = myAviso.Auftraggeber_KdNr Else kdAvisierer.Text = myAviso.Auftraggeber End If txtInfo.Text = myAviso.Info.Trim txtLKW_Nr.Text = myAviso.LKW_Nr sbLkwNationalitaet.SET_VALUE(myAviso.LKW_Nationalitaet) txtFahrerHandy.Text = If(myAviso.FahrerHandy, "") txtAvisiererAuftragsNr.Text = If(myAviso.KdAuftragsNr_Avisierer, "") If myAviso.VoraussichtlichesEintreffen IsNot Nothing Then datVoraussichtlichesEintreffen.Value = myAviso.VoraussichtlichesEintreffen Else datVoraussichtlichesEintreffen.Value = myAviso.Datum.AddDays(-1) End If txtÄnderungen.Text = myAviso.Änderungen.Trim optOhneAviso.Visible = False 'bei Änderung kann kein Eingang ohne Aviso erfolgen, da Datum bereits bei Anlage gesetzt optAvisoEingang.Checked = True 'bei Änderung kann kein Eingang ohne Aviso erfolgen... dtpAvisoEingangDatum.Visible = True dtpAvisoEingangZeit.Visible = True If myAviso.Telefonisch = "Telefon" Then optTelefonisch.Checked = True ElseIf myAviso.Telefonisch = "Schriftl." Then optSchriftlich.Checked = True Else optUnbekannt.Checked = True End If cboGrenzstelle.changeItem(myAviso.Grenzstelle) cboTransportmittelart.changeItem(myAviso.Transportmittelart) cboImEx.Text = If(myAviso.ImEx, "") hStatus = myAviso.Status If myAviso.Ankunft = LeerDatum Then dtpAnkunft.Value = Now.Date dtpAnkunftZeit.Value = Now Else dtpAnkunft.Value = myAviso.Ankunft dtpAnkunftZeit.Value = myAviso.Ankunft End If If myAviso.AvisoEingang = LeerDatum Then dtpAvisoEingangDatum.Value = dtpDatum.Value.Date dtpAvisoEingangZeit.Value = dtpDatum.Value Else dtpAvisoEingangDatum.Value = myAviso.AvisoEingang dtpAvisoEingangZeit.Value = myAviso.AvisoEingang End If If myAviso.Freigabe = LeerDatum Then dtpFreigabe.Value = Now.Date dtpFreigabeZeit.Value = Now Else dtpFreigabe.Value = myAviso.Freigabe dtpFreigabeZeit.Value = myAviso.Freigabe End If If myAviso.Vorbereitet = LeerDatum Then dtpVorbereitet.Value = Now.Date dtpVorbereitetZeit.Value = Now Else dtpVorbereitet.Value = myAviso.Vorbereitet dtpVorbereitetZeit.Value = myAviso.Vorbereitet End If If myAviso.Vorgeschrieben = LeerDatum Then dtpVorgeschrieben.Value = Now.Date dtpVorgeschriebenZeit.Value = Now Else dtpVorgeschrieben.Value = myAviso.Vorgeschrieben dtpVorgeschriebenZeit.Value = myAviso.Vorgeschrieben End If txtDauer.Text = Minuten_auf_Text(myAviso.Dauer) cbxHandling.Checked = myAviso.Handling cbxSammelakt.Checked = myAviso.Sammelakt txtSendungen.Text = myAviso.Sendungen_Gesamtanzahl If myAviso.Status <> cGlobal.Status_Erfasst Then txtInfo.Enabled = False 'optOhneAviso.Checked = txtÄnderungen.Text.Contains("Neuanlage Ankunft ohne Aviso") 'Status anzeigen Select Case hStatus Case cGlobal.Status_Ankunft lblStatus.Text = "Ankunft" If myAviso.Ankunft <> LeerDatum Then lblStatus.Text += " " & Format(myAviso.Ankunft, "dd.MM. HH:mm") lblStatus.ForeColor = Color.Blue optAnkunft.Checked = True Case cGlobal.Status_Erfasst lblStatus.Text = "erfasst" lblStatus.ForeColor = Color.Red optErfasst.Checked = True Case cGlobal.Status_Freigegeben lblStatus.Text = "Freigabe " & Format(myAviso.Freigabe, "dd.MM. HH:mm") lblStatus.ForeColor = Color.Green btnOK.Enabled = bearb optFreigegeben.Checked = True Case cGlobal.Status_NichtEingetroffen lblStatus.Text = "LKW nicht eingetroffen" lblStatus.ForeColor = Color.DarkGray btnOK.Enabled = bearb optNichtEingetroffen.Checked = True Case cGlobal.Status_Vorbereitet lblStatus.Text = "Vorbereitet" lblStatus.ForeColor = Color.Brown btnOK.Enabled = bearb optVorbereitet.Checked = True Case cGlobal.Status_Vorgeschrieben lblStatus.Text = "Vorgeschrieben" lblStatus.ForeColor = Color.Purple btnOK.Enabled = bearb optVorgeschrieben.Checked = True Case Else lblStatus.Text = "" End Select lblStatus.Text = " " & lblStatus.Text & " " 'für bessere farbliche Hervorhebung cboFirma.changeItem("") cboFirma.changeItem(myAviso.FIRMA) If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("AVISO_ZeitenBearbeiten", "SDL") Then panAdmin.Visible = bearb 'Administrator bekommt mehr Edit-Möglichkeiten End If 'Vorpapier laden UsrCntlAviso_Vorpapiere1.setVorpapiere(myAviso) ' If FIRMA_TMP = "IMEX" Then txtBestimmungszollstelle.SET_VALUE(If(myAviso.Zollstelle, "")) cbxWarenort.Checked = myAviso.Warenort ' End If If FIRMA_TMP = "ATILLA" Then cbxAktenzettelDrucken.Checked = AktenzetteldruckenVisible UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle1.SET_VALUE(If(myAviso.Durchgangszollstelle1, "")) UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle2.SET_VALUE(If(myAviso.Durchgangszollstelle2, "")) UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle3.SET_VALUE(If(myAviso.Durchgangszollstelle3, "")) UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle4.SET_VALUE(If(myAviso.Durchgangszollstelle4, "")) UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle5.SET_VALUE(If(myAviso.Durchgangszollstelle5, "")) UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle6.SET_VALUE(If(myAviso.Durchgangszollstelle6, "")) UsrCntlEintragAvisoAtilla.txtAusgangszstAndere.Text = "" If myAviso.Ausgangszollstelle IsNot Nothing Then For Each s In myAviso.Ausgangszollstelle.split(";") Select Case s Case "KA" : UsrCntlEintragAvisoAtilla.rbtnKaptainAndreevo.Checked = True Case "L" : UsrCntlEintragAvisoAtilla.rbtnLesovo.Checked = True Case "BB" : UsrCntlEintragAvisoAtilla.rbtnBatrovici.Checked = True Case "HR" : UsrCntlEintragAvisoAtilla.rbtnHorgos.Checked = True Case "TK" : UsrCntlEintragAvisoAtilla.rbtnTompa.Checked = True Case "T" : UsrCntlEintragAvisoAtilla.rbtnTrieste.Checked = True Case "KI" : UsrCntlEintragAvisoAtilla.rbtnKipi.Checked = True Case "TS" : UsrCntlEintragAvisoAtilla.rbtnTovarnik.Checked = True Case Else : If s <> "" Then UsrCntlEintragAvisoAtilla.rbtnAndere.Checked = True : UsrCntlEintragAvisoAtilla.txtAusgangszstAndere.Text = s End Select Next End If UsrCntlEintragAvisoAtilla.txtTransporttemp.Text = If(myAviso.TransportTemperatur, "") UsrCntlEintragAvisoAtilla.txtZugmaschine.Text = If(myAviso.Zugmaschine, "") Dim sndId = ADMIN.getValueTxtBySql("SELECT TOP 1 isnull(tblSnd_SendungID,-1) FROM [tblSendungen] WHERE [tblSnd_AvisoID]=" & myAviso.AvisoID, "AVISO") If IsNumeric(sndId) AndAlso sndId > 0 Then TMP_SND_Atilla = New VERAG_PROG_ALLGEMEIN.cSendungen(sndId) End If If TMP_SND_Atilla IsNot Nothing Then UsrCntlEintragAvisoAtilla.txtWarenbezeichnung.Text = If(TMP_SND_Atilla.tblSnd_Warenbezeichnung, "") UsrCntlEintragAvisoAtilla.txtColli.Text = If(TMP_SND_Atilla.tblSnd_Colli, "") UsrCntlEintragAvisoAtilla.txtGewicht.Text = If(TMP_SND_Atilla.tblSnd_Gewicht, "") UsrCntlEintragAvisoAtilla.txtAnmerkung.Text = If(TMP_SND_Atilla.tblSnd_Anmerkung, "") If TMP_SND_Atilla.tblSnd_AuftraggeberKdNr > 0 Then kdAuftraggeber.KdNr = TMP_SND_Atilla.tblSnd_AuftraggeberKdNr Else kdAuftraggeber.Text = TMP_SND_Atilla.tblSnd_Auftraggeber End If End If End If End If If bearb Then Me.Text += " (Verwaltung)" hÄnderung = False dtpDatum.Enabled = bearb 'nur Administrator darf Erfassungsdatum ändern/bearbeiten If Neuanlage Then dtpAvisoEingangDatum.Value = Now.Date dtpAvisoEingangZeit.Value = LeerDatum Else dtpAvisoEingangDatum.Enabled = bearb dtpAvisoEingangZeit.Enabled = bearb End If 'cbxEintreffenAus.fillWithSQL("SELECT [nctsr_dauer_in_tagen], [nctsr_von] FROM [tblNTCSRouten] ", False, "FMZOLL", False) initAttachment() End Sub Private Sub dgvAnhaenge_KeyDown(sender As Object, e As KeyEventArgs) Handles dgvAnhaenge.KeyDown If e.KeyCode = Keys.Delete Then If dgvAnhaenge.SelectedRows.Count > 0 Then For Each row In dgvAnhaenge.SelectedRows.Cast(Of DataGridViewRow)().OrderByDescending(Function(dgvr) dgvr.Index) ATT.RemoveAt(row.Index) Next 'ATT.RemoveAt(dgvAnhaenge.SelectedRows(0).Index) 'Inex-Rows = Index-Att initAttachment() End If End If End Sub Private Sub btnAbbruch_Click(sender As System.Object, e As System.EventArgs) Handles btnAbbruch.Click 'Irgendwas wurde geändert, deshalb ein Hinweis, ob auch wirklich abgebrochen werden soll 'If hÄnderung Then ' Dim antwort As MsgBoxResult = MsgBox("Wollen Sie wirklich abbrechen?" & vbCrLf & vbCrLf & "Alle Änderungen gehen dabei verloren.", CType(MsgBoxStyle.YesNo + MsgBoxStyle.Exclamation, MsgBoxStyle), ' "Dateneingabe wird abgebrochen") ' If antwort = vbNo Then ' Exit Sub ' End If 'End If Me.Close() End Sub Private Sub txtFeld_GotFocus(sender As Object, e As System.EventArgs) Handles txtLKW_Nr.GotFocus CType(sender, TextBox).SelectAll() End Sub 'Private Sub txtAviso_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) ' 'Es sind nur Zahleneingaben erlaubt ' Dim asc As Integer = Convert.ToInt32(e.KeyChar) ' Select Case asc ' 'Folgende Tasten sind erlaubt ' '8 = Rücktaste (Back) ' '13 = Enter ' '27 = Esc ' '48 To 57 = 0 bis 9 ' Case 8, 13, 27, 48 To 57 ' Case Else ' e.Handled = True ' End Select 'End Sub Private Sub btnOK_Click(sender As System.Object, e As System.EventArgs) Handles btnOK.Click Try If Not IsNumeric(txtSndFremd.Text) Then txtSndFremd.Text = "0" If Not IsNumeric(txtSndFiskalAT.Text) Then txtSndFiskalAT.Text = "0" If Not IsNumeric(txtSndFiskalDE.Text) Then txtSndFiskalDE.Text = "0" If Not IsNumeric(txtSendungen.Text) Then txtSendungen.Text = "0" If Not aktiv Then Exit Sub lblErr_Frächter.Visible = False lblErr_Avisierer.Visible = False lblErr_Grenzstelle.Visible = False lblErr_Uhrzeit.Visible = False lblErr_LKW.Visible = False lblErr_KdNr.Visible = False lblSendungsanzahl.Visible = False lblErrVorraussuchtlEintreffen.Visible = False If FIRMA_TMP = "VERIMEX" Then If cboFirma._value = "" Then MsgBox("Firma auswählen!", vbInformation) cboFirma.Focus() Exit Sub End If End If If CDate(dtpAvisoEingangDatum.Value) > Now Then MsgBox("Aviso-Datum darf nicht in der Zukunft liegen!", vbInformation) dtpAvisoEingangDatum.Focus() Exit Sub End If If optAvisoEingang.Checked Then If dtpAvisoEingangZeit.Value.Hour = 0 And dtpAvisoEingangZeit.Value.Minute = 0 Then ' MsgBox("Bitte eine gültige Uhrzeit bei Aviso-Eingang eingegeben (00:00 ist nicht erlaubt).", vbInformation) lblErr_Uhrzeit.Visible = True dtpAvisoEingangDatum.Focus() Exit Sub End If End If 'If Neuanlage Then ' If optAvisoEingang.Checked Then ' If optAvisoEingang.Checked Thensend ' If dtpAvisoEingangDatum.Value < Now.Date Then ' Dim antwort As MsgBoxResult = MsgBox("Das Aviso-Eingangsdatum liegt in der Vergangenheit. Wollen Sie den Eintrag trotzdem speichern?", CType(MsgBoxStyle.YesNo + MsgBoxStyle.Exclamation, MsgBoxStyle), ' "Aviso speichern") ' If antwort = vbNo Then ' dtpAvisoEingangDatum.Focus() ' Exit Sub ' End If ' End If ' End If 'End If If txtLKW_Nr.Text.Trim = "" Then ' MsgBox("Bitte die LKW-Nummer eingegeben.", vbInformation) lblErr_LKW.Visible = True txtLKW_Nr.Focus() Exit Sub End If If VERAG_PROG_ALLGEMEIN.cAllgemein.PARAMS.GET_PARAMETER_VALUE_BOOL("FIELDS_AVISO_Mandatory_FreachterKdNr") Then If Not cbxFrächterUnbekannt.Checked Then If kdFrächter.KdNr_value <= 0 Then kdFrächter.Focus() lblErr_KdNr.Visible = True Exit Sub End If End If End If If VERAG_PROG_ALLGEMEIN.cAllgemein.PARAMS.GET_PARAMETER_VALUE_BOOL("FIELDS_AVISO_Mandatory_AvisiererKdNr") Then If kdAvisierer.KdNr_value <= 0 Then kdAvisierer.Focus() lblErr_KdNr.Visible = True Exit Sub End If End If If FIRMA_TMP <> "ATILLA" Then If cboGrenzstelle._value.Trim = "" Then ' MsgBox("Bitte die Grenzstelle eingegeben.", vbInformation) lblErr_Grenzstelle.Visible = True cboGrenzstelle.Focus() Exit Sub End If End If If cGlobal.Aktive_ID = 0 Then ' nur wenn Neuanlage! If datVoraussichtlichesEintreffen.Visible AndAlso CDate(datVoraussichtlichesEintreffen.Value.ToShortDateString) < CDate(dtpDatum.Value.ToShortDateString) Then 'ohne Uhrzeit lblErrVorraussuchtlEintreffen.Visible = True datVoraussichtlichesEintreffen.Focus() Exit Sub End If End If If cboImEx.Visible Then 'cGlobal.AktiverMitarbeiter.Abteilung = "QS" Or cGlobal.AktiverMitarbeiter.Grenzstelle = "WAI" Then If cboImEx.Text.Trim = "" Then ' MsgBox("Bitte die Grenzstelle eingegeben.", vbInformation) lblErrImex.Visible = True cboImEx.Focus() Exit Sub End If End If If Neuanlage Then 'jetzt eine Prüfung, ob dieser LKW bereits vor kurzem erfasst wurde Dim hLKWCheck2 As String = AvisoDAL.Suche_LKWStatus(txtLKW_Nr.Text.Trim.Replace(" ", "").Replace("-", "")) If hLKWCheck2 <> "" Then Dim antwort As MsgBoxResult = MsgBox(hLKWCheck2 & vbCrLf & vbCrLf & "Wollen Sie den Eintrag trotzdem speichern?", CType(MsgBoxStyle.YesNo + MsgBoxStyle.Exclamation, MsgBoxStyle), "Aviso-Eintrag") If antwort = vbNo Then Exit Sub End If End If If hLKWCheck2 = "" Then 'jetzt eine Prüfung, ob dieser LKW bereits vor kurzem erfasst wurde Dim hLKWCheck As String = AvisoDAL.Suche_LKW(txtLKW_Nr.Text.Trim.Replace(" ", "").Replace("-", "")) If hLKWCheck <> "" Then Dim antwort As MsgBoxResult = MsgBox(hLKWCheck & vbCrLf & vbCrLf & "Wollen Sie den Eintrag trotzdem speichern?", CType(MsgBoxStyle.YesNo + MsgBoxStyle.Exclamation, MsgBoxStyle), "Aviso-Eintrag") If antwort = vbNo Then Exit Sub End If End If End If End If If Not cbxFrächterUnbekannt.Checked Then If kdFrächter.Text.Trim = "" Then 'MsgBox("Der Frächter muss ausgewählt werden.", vbInformation) lblErr_Frächter.Visible = True kdFrächter.Focus() Exit Sub End If End If 'Prüfung aufgehoben lt. Telefonat Siener 'nachsehen, ob der Frächter wirklich existiert 'Dim hVorhanden As Boolean = bereits_angelegt(cboFrächter.Text) 'If Not hVorhanden Then ' MsgBox("Der eingegebene Frächter existiert nicht. Entweder als neue Firma anlegen oder einen vorhandenen Frächter auswählen.", vbExclamation) ' cboFrächter.Focus() ' Exit Sub 'End If If kdAvisierer.Text.Trim = "" Then ' MsgBox("Der Avisierer muss ausgewählt werden.", vbInformation) lblErr_Avisierer.Visible = True kdAvisierer.Focus() Exit Sub End If 'nachsehen, ob der Auftraggeber wirklich existiert 'hVorhanden = bereits_angelegt(cboAuftraggeber.Text) 'If Not hVorhanden Then ' MsgBox("Der eingegebene Auftraggeber existiert nicht. Entweder als neue Firma anlegen oder einen vorhandenen Auftraggeber auswählen.", vbExclamation) ' cboAuftraggeber.Focus() ' Exit Sub 'End If 'If Not optTelefonisch.Checked And Not optSchriftlich.Checked Then ' MsgBox("Bitte auswählen, ob der Auftrag TELEFONISCH oder SCHRIFTLICH erfolgte.", vbInformation) ' optTelefonisch.Focus() ' Exit Sub ' End If If panAdmin.Visible Then If optFreigegeben.Checked Then If (dtpAnkunft.Value.Date + dtpAnkunftZeit.Value.TimeOfDay) >= (dtpFreigabe.Value.Date + dtpFreigabeZeit.Value.TimeOfDay) Then MsgBox("Bei Freigabe muss das Ankunftsdatum älter sein als das Freigabedatum.", vbExclamation) dtpAnkunft.Focus() Exit Sub End If End If If optVorbereitet.Checked Then If (dtpVorbereitet.Value.Date + dtpVorbereitetZeit.Value.TimeOfDay) >= (dtpAnkunft.Value.Date + dtpAnkunftZeit.Value.TimeOfDay) Then MsgBox("Bei Vorbereitet muss das Vorbereitet-Datum älter sein als das Ankunftsdatum.", vbExclamation) dtpVorbereitet.Focus() Exit Sub End If End If If optVorgeschrieben.Checked Then If (dtpVorgeschrieben.Value.Date + dtpVorgeschriebenZeit.Value.TimeOfDay) >= (dtpAnkunft.Value.Date + dtpAnkunftZeit.Value.TimeOfDay) Then MsgBox("Bei Vorgeschrieben muss das Vorgeschrieben-Datum älter sein als das Ankunftsdatum.", vbExclamation) dtpVorgeschrieben.Focus() Exit Sub End If End If End If Me.Cursor = Cursors.WaitCursor Dim aendart As String = "" Dim aendText As String = "" 'Werte zuweisen myAviso.Datum = dtpDatum.Value myAviso.LKW_Nr = txtLKW_Nr.Text.Trim.Replace(" ", "").Replace("-", "") myAviso.LKW_Nationalitaet = sbLkwNationalitaet._value myAviso.DakosyRef = SQL.isNullNothing(txtDyRef.Text.Trim) If datVoraussichtlichesEintreffen.Visible Then myAviso.VoraussichtlichesEintreffen = datVoraussichtlichesEintreffen.Value Else myAviso.VoraussichtlichesEintreffen = Nothing End If myAviso.FahrerHandy = If(txtFahrerHandy.Text.Trim <> "", txtFahrerHandy.Text.Trim, Nothing) myAviso.KdAuftragsNr_Avisierer = If(txtAvisiererAuftragsNr.Text.Trim <> "", txtAvisiererAuftragsNr.Text.Trim, Nothing) If cbxFrächterUnbekannt.Checked Then myAviso.Frächter = "" myAviso.Frächter_KdNr = -1 Else If kdFrächter.KdNr_value > 0 Then myAviso.Frächter = IIf(kdFrächter.KdName <> "", kdFrächter.KdName, kdFrächter.Text) myAviso.Frächter_KdNr = kdFrächter.KdNr_value Else myAviso.Frächter = kdFrächter.Text myAviso.Frächter_KdNr = -1 End If End If If kdAvisierer.KdNr_value > 0 Then myAviso.Auftraggeber = IIf(kdAvisierer.KdName <> "", kdAvisierer.KdName, kdAvisierer.Text) myAviso.Auftraggeber_KdNr = kdAvisierer.KdNr_value Else myAviso.Auftraggeber = kdAvisierer.Text myAviso.Auftraggeber_KdNr = -1 End If If myAviso.Frächter.Length > 50 Then myAviso.Frächter = myAviso.Frächter.Substring(0, 50) If myAviso.Auftraggeber.Length > 50 Then myAviso.Auftraggeber = myAviso.Auftraggeber.Substring(0, 50) ' myAviso.Frächter = IIf(kdFrächter.KdName <> "", kdFrächter.KdName, kdFrächter.Text) ' myAviso.Auftraggeber = IIf(kdAvisierer.KdName <> "", kdAvisierer.KdName, kdAvisierer.Text) ' myAviso.Frächter_KdNr = IIf(kdFrächter.KdNr_value > 0, kdFrächter.KdNr_value, "") ' myAviso.Auftraggeber_KdNr = IIf(kdAvisierer.KdNr_value > 0, kdAvisierer.KdNr_value, "") myAviso.Handling = cbxHandling.Checked If optTelefonisch.Checked Then myAviso.Telefonisch = "Telefon" ElseIf optSchriftlich.Checked Then myAviso.Telefonisch = "Schriftl." Else myAviso.Telefonisch = "" End If If optOhneAviso.Checked Then myAviso.Telefonisch = "" ' myAviso.Info = txtInfo.Text.Trim ' jetzt in Vermerke gespeichert!! myAviso.Info = "" If Neuanlage Then myAviso.letzterMitarbeiter = cGlobal.AktiverMitarbeiter.Mitarbeiter myAviso.TeamId = VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_teamId End If If FIRMA_TMP = "ATILLA" Then myAviso.Grenzstelle = "SUB" Else myAviso.Grenzstelle = cboGrenzstelle._value ' MsgBox(myAviso.Grenzstelle) End If myAviso.Transportmittelart = cboTransportmittelart._value 'If FIRMA_TMP = "AMBAR" Then ' myAviso.Grenzstelle = "AMB" 'End If ' myAviso.Buero = cboGrenzstelle.Text myAviso.ImEx = IIf(cboImEx.Visible, cboImEx.Text, "") If Neuanlage Then If optAvisoEingang.Checked Then myAviso.Änderungen = "Neuanlage von " & cGlobal.AktiverMitarbeiter.Mitarbeiter & " am " & Format(Now, "dd.MM.yyyy HH:mm") aendart = "Neuanlage" aendText = "Neuanlage von " & cGlobal.AktiverMitarbeiter.Mitarbeiter & " am " & Format(Now, "dd.MM.yyyy HH:mm") Else myAviso.Änderungen = "Neuanlage Ankunft ohne Aviso von " & cGlobal.AktiverMitarbeiter.Mitarbeiter & " am " & Format(Now, "dd.MM.yyyy HH:mm") ' myAviso.Grenzstelle = cGlobal.AktiverMitarbeiter.Grenzstelle aendart = "Neuanlage Ankunft ohne Aviso" aendText = "Neuanlage Ankunft ohne Aviso von " & cGlobal.AktiverMitarbeiter.Mitarbeiter & " am " & Format(Now, "dd.MM.yyyy HH:mm") End If Else myAviso.Änderungen = "Änderung per Eingabefenster von " & cGlobal.AktiverMitarbeiter.Mitarbeiter & " am " & Format(Now, "dd.MM.yyyy HH:mm") & vbCrLf & myAviso.Änderungen aendart = "Änderung per Eingabefenster" aendText = "Änderung per Eingabefenster von " & cGlobal.AktiverMitarbeiter.Mitarbeiter & " am " & Format(Now, "dd.MM.yyyy HH:mm") End If Dim DatAnkunftNow = AVISOFUNC.getAnkunftDateNow() If optAvisoEingang.Checked Then myAviso.AvisoEingang = dtpAvisoEingangDatum.Value.Date + dtpAvisoEingangZeit.Value.TimeOfDay Else 'ohne AVISO myAviso.AvisoEingang = Now myAviso.Ankunft = DatAnkunftNow myAviso.Status = cGlobal.Status_Ankunft End If 'Standardanlage OK, jetzt noch Admin Spezialfälle If panAdmin.Visible Then If optErfasst.Checked Then myAviso.Status = cGlobal.Status_Erfasst myAviso.Ankunft = LeerDatum myAviso.Freigabe = LeerDatum myAviso.Vorbereitet = LeerDatum myAviso.Vorgeschrieben = LeerDatum myAviso.Dauer = 0 End If If optNichtEingetroffen.Checked Then myAviso.Status = cGlobal.Status_NichtEingetroffen myAviso.Vorbereitet = LeerDatum myAviso.Ankunft = LeerDatum myAviso.Freigabe = LeerDatum myAviso.Vorgeschrieben = LeerDatum myAviso.Dauer = 0 End If If optAnkunft.Checked Then myAviso.Status = cGlobal.Status_Ankunft myAviso.Vorbereitet = dtpVorbereitet.Value.Date + dtpVorbereitetZeit.Value.TimeOfDay myAviso.Vorgeschrieben = dtpVorgeschrieben.Value.Date + dtpVorgeschriebenZeit.Value.TimeOfDay myAviso.Ankunft = dtpAnkunft.Value.Date + dtpAnkunftZeit.Value.TimeOfDay myAviso.Freigabe = LeerDatum myAviso.Dauer = 0 End If If optFreigegeben.Checked Then myAviso.Status = cGlobal.Status_Freigegeben myAviso.Ankunft = dtpAnkunft.Value.Date + dtpAnkunftZeit.Value.TimeOfDay myAviso.Freigabe = dtpFreigabe.Value.Date + dtpFreigabeZeit.Value.TimeOfDay myAviso.Vorbereitet = dtpVorbereitet.Value.Date + dtpVorbereitetZeit.Value.TimeOfDay myAviso.Vorgeschrieben = dtpVorgeschrieben.Value.Date + dtpVorgeschriebenZeit.Value.TimeOfDay myAviso.Dauer = CInt(DateDiff(DateInterval.Minute, myAviso.Ankunft, myAviso.Freigabe)) End If If optVorbereitet.Checked Then myAviso.Status = cGlobal.Status_Vorbereitet myAviso.Ankunft = LeerDatum myAviso.Vorbereitet = dtpVorbereitet.Value.Date + dtpVorbereitetZeit.Value.TimeOfDay myAviso.Freigabe = LeerDatum myAviso.Vorgeschrieben = LeerDatum myAviso.Dauer = 0 End If If optVorgeschrieben.Checked Then myAviso.Status = cGlobal.Status_Vorgeschrieben myAviso.Ankunft = LeerDatum myAviso.Vorbereitet = dtpVorbereitet.Value.Date + dtpVorbereitetZeit.Value.TimeOfDay myAviso.Vorgeschrieben = dtpVorgeschrieben.Value.Date + dtpVorgeschriebenZeit.Value.TimeOfDay myAviso.Freigabe = LeerDatum myAviso.Dauer = 0 End If End If If Neuanlage And cbxSendungsvorlagen.Checked Then Dim gesAnzahl = initSndAnzahl() myAviso.Sendungen_Gesamtanzahl = gesAnzahl If gesAnzahl <= 0 Then lblSendungsanzahl.Visible = True : Me.Cursor = Cursors.Default : Exit Sub txtSendungen.Focus() End If myAviso.Sammelakt = (myAviso.Sendungen_Gesamtanzahl > 1) 'cbxSammelakt.Checked End If myAviso.FIRMA = If(cboFirma._value <> "", cboFirma._value, FIRMA_TMP) myAviso.Cluster = If(VERAG_PROG_ALLGEMEIN.cAllgemein.CLUSTER, "") 'If myAviso.FIRMA = "IMEX" Then If myAviso.Grenzstelle = "???" Then myAviso.Zollstelle = SDL.cProgramFunctions.isLeerNothing(txtBestimmungszollstelle._value) Else myAviso.Zollstelle = Nothing End If myAviso.Warenort = If(pnl.Visible, cbxWarenort.Checked, False) 'End If If myAviso.FIRMA = "ATILLA" Then myAviso.Durchgangszollstelle1 = SDL.cProgramFunctions.isLeerNothing(UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle1._value) myAviso.Durchgangszollstelle2 = SDL.cProgramFunctions.isLeerNothing(UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle2._value) myAviso.Durchgangszollstelle3 = SDL.cProgramFunctions.isLeerNothing(UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle3._value) myAviso.Durchgangszollstelle4 = SDL.cProgramFunctions.isLeerNothing(UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle4._value) myAviso.Durchgangszollstelle5 = SDL.cProgramFunctions.isLeerNothing(UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle5._value) myAviso.Durchgangszollstelle6 = SDL.cProgramFunctions.isLeerNothing(UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle6._value) myAviso.Ausgangszollstelle = "" If UsrCntlEintragAvisoAtilla.rbtnKaptainAndreevo.Checked Then myAviso.Ausgangszollstelle &= "KA" & ";" If UsrCntlEintragAvisoAtilla.rbtnLesovo.Checked Then myAviso.Ausgangszollstelle &= "L" & ";" If UsrCntlEintragAvisoAtilla.rbtnBatrovici.Checked Then myAviso.Ausgangszollstelle &= "BB" & ";" If UsrCntlEintragAvisoAtilla.rbtnHorgos.Checked Then myAviso.Ausgangszollstelle &= "HR" & ";" If UsrCntlEintragAvisoAtilla.rbtnTompa.Checked Then myAviso.Ausgangszollstelle &= "TK" & ";" If UsrCntlEintragAvisoAtilla.rbtnTrieste.Checked Then myAviso.Ausgangszollstelle &= "T" & ";" If UsrCntlEintragAvisoAtilla.rbtnKipi.Checked Then myAviso.Ausgangszollstelle &= "KI" & ";" If UsrCntlEintragAvisoAtilla.rbtnTovarnik.Checked Then myAviso.Ausgangszollstelle &= "TS" & ";" If UsrCntlEintragAvisoAtilla.rbtnAndere.Checked Then myAviso.Ausgangszollstelle &= UsrCntlEintragAvisoAtilla.txtAusgangszstAndere.Text & ";" If myAviso.Ausgangszollstelle.ToString.EndsWith(";") Then myAviso.Ausgangszollstelle = myAviso.Ausgangszollstelle.ToString.Substring(0, myAviso.Ausgangszollstelle.ToString.Length - 1) myAviso.TransportTemperatur = SDL.cProgramFunctions.isLeerNothing(UsrCntlEintragAvisoAtilla.txtTransporttemp.Text) myAviso.Zugmaschine = SDL.cProgramFunctions.isLeerNothing(UsrCntlEintragAvisoAtilla.txtZugmaschine.Text) End If Dim tmpId = AvisoDAL.SpeichernAviso(myAviso) myAviso.AvisoID = tmpId AvisoDAL.addAenderung(tmpId, aendart, aendText) 'VORPAPIER If UsrCntlAviso_Vorpapiere1.checkDouble() Then MsgBox("Vorpapiere: Doppelte Einträge!") Me.DialogResult = DialogResult.None Me.Cursor = Cursors.Default Exit Sub End If UsrCntlAviso_Vorpapiere1.getVorpapiere(myAviso) AvisoDAL.SpeichernAvisoVorpapiere(tmpId, myAviso.VORPAPIERE) 'Infotext als Vermerk: If txtInfo.Text.Trim <> "" Then If txtInfo.Text.Length <= 80 Then AvisoStatusFunctions.insertVermerkAllg(tmpId, txtInfo.Text.Trim, 46) ElseIf txtInfo.Text.Length <= 160 Then AvisoStatusFunctions.insertVermerkAllg(tmpId, txtInfo.Text.Substring(0, 80), 46) AvisoStatusFunctions.insertVermerkAllg(tmpId, txtInfo.Text.Substring(80, 80), 46) ElseIf txtInfo.Text.Length <= 240 Then AvisoStatusFunctions.insertVermerkAllg(tmpId, txtInfo.Text.Substring(0, 80), 46) AvisoStatusFunctions.insertVermerkAllg(tmpId, txtInfo.Text.Substring(80, 80), 46) AvisoStatusFunctions.insertVermerkAllg(tmpId, txtInfo.Text.Substring(160, 80), 46) End If End If If myAviso.Warenort Then AvisoStatusFunctions.insertVermerkAllg(tmpId, "ATB-Nr. folgt", 80) End If ' Dim FIRMA_CBO = If(cboFirma._value <> "", cboFirma._value, FIRMA_TMP) Select Case FIRMA_TMP Case "ATILLA" Try 'ATILLA AKTENZETTEL DRUCKEN If Neuanlage Then If ATILLA_NEUERAKTENDECKEL Then Dim abfnr_tmp As Object = DBNull.Value getFilialeAndAbfertNrATILLA(1, abfnr_tmp) ' FilialeNr u AbfNr werden geladen Dim sndId = -1 If AvisoDAL.insertSendungEmpty(tmpId, 1, 4801, abfnr_tmp, 0, Nothing, , , , sndId) Then ' INSERT TMP_SND_Atilla = New VERAG_PROG_ALLGEMEIN.cSendungen(sndId) loadInSND(TMP_SND_Atilla) End If End If Else loadInSND(TMP_SND_Atilla) End If If cbxAktenzettelDrucken.Checked Then SendungOptions.PrintSendungATILLA("PRINT", TMP_SND_Atilla, myAviso, cboPrinter.Text) Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try Case "IMEX", "UNISPED", "AMBAR", "FRONTOFFICE", "VERIMEX" Dim anzahlSendungen = ADMIN.getValueTxtBySql("SELECT count(*) FROM tblSendungen WHERE tblSnd_AvisoID=" & tmpId, "AVISO") ' bei Neuanlage=0 'Die Sendungen eintragen: If cbxSendungsvorlagen.Checked Then If Neuanlage Then If IsNumeric(txtSendungen.Text) And IsNumeric(txtSndFiskalAT.Text) And IsNumeric(txtSndFiskalDE.Text) And IsNumeric(txtSndFremd.Text) Then 'AndAlso txtSendungen.Text > 0 Then If anzahlSendungen > txtSendungen.Text Then MsgBox("Es wurden bereits " & anzahlSendungen & " Sendungen hinzugefügt. Um die Anzahl zu reduzieren, löschen Sie die entsprechenden Sendungen.") showSendungsdetails = True ' Damit der benutzer gleich die Sendungen sieht und ggf löschen kann. Else Dim filiale_tmp As Integer = VERAG_PROG_ALLGEMEIN.cAllgemein.STAMMFILIALE Dim gesAnzSnd = initSndAnzahl() For cnt As Integer = anzahlSendungen + 1 To gesAnzSnd Dim fremd = False Dim abfnr_tmp As Object = DBNull.Value Dim abfArt As Object = DBNull.Value If FIRMA_TMP = "VERIMEX" Then filiale_tmp = 0 Else getFilialeAndAbfertNrIMEX(cnt, filiale_tmp, abfnr_tmp, fremd, abfArt) End If 'IIf(filiale_tmp > 0, ADMIN.getMaxPosNrIncrement(filiale_tmp, Now.Year), 0) 'AvisoDAL.insertSendungEmpty(tmpId, scnt, filiale_tmp, abfnr_tmp, 0) ' INSERT Dim tblSnd_AuftraggeberKdNr As Object = Nothing Dim tblSnd_Auftraggeber As Object = Nothing If cbxAuftraggeberfurAlleSendungen.Checked Then If kdAvisierer.KdNr_value > 0 Then tblSnd_AuftraggeberKdNr = kdAvisierer.KdNr_value tblSnd_Auftraggeber = kdAvisierer.Text End If AvisoDAL.insertSendungEmpty(tmpId, cnt, filiale_tmp, abfnr_tmp, 0, abfArt, tblSnd_AuftraggeberKdNr, tblSnd_Auftraggeber, fremd) ' INSERT Next End If Else lblSendungsanzahl.Visible = True txtSendungen.Focus() Me.Cursor = Cursors.Default : Exit Sub End If End If End If Case Else 'VERAG Dim anzahlSendungen = ADMIN.getValueTxtBySql("SELECT count(*) FROM tblSendungen WHERE tblSnd_AvisoID=" & tmpId, "AVISO") ' bei Neuanlage=0 'Die Sendungen eintragen: If cbxSendungsvorlagen.Checked Then If Neuanlage Then If IsNumeric(txtSendungen.Text) And IsNumeric(txtSndFiskalAT.Text) And IsNumeric(txtSndFiskalDE.Text) And IsNumeric(txtSndFremd.Text) Then 'AndAlso txtSendungen.Text > 0 Then If anzahlSendungen > txtSendungen.Text Then MsgBox("Es wurden bereits " & anzahlSendungen & " Sendungen hinzugefügt. Um die Anzahl zu reduzieren, löschen Sie die entsprechenden Sendungen.") showSendungsdetails = True ' Damit der benutzer gleich die Sendungen sieht und ggf löschen kann. Else Dim filiale_tmp As Integer = 0 Dim gesAnzSnd = initSndAnzahl() For cnt As Integer = anzahlSendungen + 1 To gesAnzSnd Dim fremd = False Dim abfnr_tmp As Object = DBNull.Value getFilialeAndAbfertNr(cnt, filiale_tmp, abfnr_tmp, fremd) ' FilialeNr u AbfNr werden geladen 'IIf(filiale_tmp > 0, ADMIN.getMaxPosNrIncrement(filiale_tmp, Now.Year), 0) 'AvisoDAL.insertSendungEmpty(tmpId, cnt, filiale_tmp, abfnr_tmp, 0) ' INSERT Dim tblSnd_AuftraggeberKdNr As Object = Nothing Dim tblSnd_Auftraggeber As Object = Nothing If cbxAuftraggeberfurAlleSendungen.Checked Then If kdAvisierer.KdNr_value > 0 Then tblSnd_AuftraggeberKdNr = kdAvisierer.KdNr_value tblSnd_Auftraggeber = kdAvisierer.Text End If Dim abfArt As Object = DBNull.Value Select Case filiale_tmp Case 4805 : abfArt = 26 ' Case 4806 : abfArt = 9 Case 4811 : abfArt = 28 End Select AvisoDAL.insertSendungEmpty(tmpId, cnt, filiale_tmp, abfnr_tmp, 0, abfArt, tblSnd_AuftraggeberKdNr, tblSnd_Auftraggeber, fremd) ' INSERT Next End If Else lblSendungsanzahl.Visible = True txtSendungen.Focus() Me.Cursor = Cursors.Default : Exit Sub End If End If End If End Select If Neuanlage Then AvisoStatusFunctions.SendStatusEmail(myAviso) End If ' If Not IsNumeric(txtSendungen.Text) Or txtSendungen.Text = "0" Then 'txtSendungen.Text = "1" 'End If 'myAviso.Sendungen_Gesamtanzahl = txtSendungen.Text If optOhneAviso.Checked Then 'Status wird automatisch auf Ankunft gesetzt --> somit auch Verständigungsmail versenden AvisoStatusFunctions.SendAnkunftEmail(myAviso) Dim myVermerk As New cVermerk myVermerk.AvisoID = tmpId : myVermerk.Datum = Now myVermerk.Mitarbeiter = VERAG_PROG_ALLGEMEIN.cGlobal.AktiverMitarbeiter.Mitarbeiter : myVermerk.MitarbeiterId = VERAG_PROG_ALLGEMEIN.cGlobal.AktiverMitarbeiter.MitarbeiterID myVermerk.Hinweis_Vermerk = "Aviso nicht eingelangt" : myVermerk.VermerkCodeId = 15 Dim VermerkeDAL As New cVermerkeDAL VermerkeDAL.SpeichernVermerk(myVermerk) 'Mail-Adressen aus Firmentabelle holen eMails_einlesen(myAviso.Frächter, myAviso.Auftraggeber) 'nur Mail erstellen, falls mindestens ein Empfänger vorhanden If hAdresse <> "" Then Dim hBetreff As String = VERAG_PROG_ALLGEMEIN.cGlobal.Optionen.eMail_Ankunft_Betreff Dim hBody As String = VERAG_PROG_ALLGEMEIN.cGlobal.Optionen.eMail_Ankunft_Text hBetreff = Platzhalter_ersetzen(hBetreff, myAviso.LKW_Nr, myAviso.Grenzstelle) hBody = Platzhalter_ersetzen(hBody, myAviso.LKW_Nr, myAviso.Grenzstelle) Dim hMail As String = "mailto:" & hAdresse & "?subject=" & hBetreff If hCC <> "" Then hMail += "&CC=" & hCC If hBody <> "" Then hMail += "&Body=" & hBody Try System.Diagnostics.Process.Start(hMail) Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name,, "Beim Mail-Versenden ist ein Fehler aufgetreten") End Try End If End If Me.Cursor = Cursors.Default 'Jetzt wird Fenster geschlossen Me.Close() VERAG_PROG_ALLGEMEIN.cGlobal.Aktive_ID = tmpId frmHauptfenster.setAktDetails(tmpId, showSendungsdetails) If showSendungsdetails Then End If Catch ex As Exception Me.Cursor = Cursors.Default VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Sub Sub loadInSND(SND As VERAG_PROG_ALLGEMEIN.cSendungen) If SND IsNot Nothing Then SND.tblSnd_Warenbezeichnung = (UsrCntlEintragAvisoAtilla.txtWarenbezeichnung.Text) SND.tblSnd_Colli = (UsrCntlEintragAvisoAtilla.txtColli.Text) SND.tblSnd_Gewicht = (UsrCntlEintragAvisoAtilla.txtGewicht.Text) SND.tblSnd_Anmerkung = (UsrCntlEintragAvisoAtilla.txtAnmerkung.Text) If kdAuftraggeber.KdNr_value > 0 Then SND.tblSnd_Auftraggeber = IIf(kdAuftraggeber.KdName <> "", kdAuftraggeber.KdName, kdAuftraggeber.Text) SND.tblSnd_AuftraggeberKdNr = kdAuftraggeber.KdNr_value Else SND.tblSnd_Auftraggeber = kdAuftraggeber.Text SND.tblSnd_AuftraggeberKdNr = -1 End If SND.SAVE() End If End Sub Sub getFilialeAndAbfertNr(ByVal cnt, ByRef filialeNr, ByRef abfertigungsNr, ByRef fremd) If cnt <= txtSendungen.Text Then Select Case cboGrenzstelle._value Case "SUB" : filialeNr = 4803 Case "SBG" : filialeNr = 5003 Case "WAI" : filialeNr = 5103 Case "NKD" : filialeNr = 5303 Case "SFD" : filialeNr = 4839 Case "NEU" : filialeNr = 4819 Case "AMB" : filialeNr = 5701 Case "???", "" : If VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_standartFiliale > 0 Then filialeNr = VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_standartFiliale End Select ElseIf (cnt - txtSendungen.Text) <= txtSndFiskalAT.Text Then filialeNr = 4805 ElseIf (cnt - txtSendungen.Text - txtSndFiskalAT.Text) <= txtSndFiskalDE.Text Then filialeNr = 4811 ElseIf (cnt - txtSendungen.Text - txtSndFiskalAT.Text - txtSndFiskalDE.Text) <= txtSndFremd.Text Then filialeNr = 0 : abfertigungsNr = DBNull.Value : fremd = True : Exit Sub End If If cbxPosNr.Checked Then abfertigungsNr = VERAG_PROG_ALLGEMEIN.cAllgemein.getMaxPosNrIncrement(filialeNr, Now.Year) End Sub Sub getFilialeAndAbfertNrIMEX(ByVal cnt, ByRef filialeNr, ByRef abfertigungsNr, ByRef fremd, ByRef abfart) abfart = DBNull.Value filialeNr = VERAG_PROG_ALLGEMEIN.cAllgemein.STAMMFILIALE If cnt <= txtSendungen.Text Then ElseIf (cnt - txtSendungen.Text) <= txtSndFiskalAT.Text Then abfart = 26 ElseIf (cnt - txtSendungen.Text - txtSndFiskalAT.Text) <= txtSndFiskalDE.Text Then abfart = 28 ElseIf (cnt - txtSendungen.Text - txtSndFiskalAT.Text - txtSndFiskalDE.Text) <= txtSndFremd.Text Then abfertigungsNr = DBNull.Value : fremd = True : Exit Sub End If If cbxPosNr.Checked Then abfertigungsNr = VERAG_PROG_ALLGEMEIN.cAllgemein.getMaxPosNrIncrement(filialeNr, Now.Year) End Sub Sub getFilialeAndAbfertNrATILLA(ByVal cnt, ByRef abfertigungsNr) Dim filialeNr = 4801 If cbxPosNr.Checked Then abfertigungsNr = VERAG_PROG_ALLGEMEIN.cAllgemein.getMaxPosNrIncrement(filialeNr, Now.Year) End Sub 'Sub initDrucker() ' ' alle installierten Drucker ermitteln und ' ' in in ein ArrayList-Objekt speichern ' Dim sPrinters As New ArrayList ' For Each sPrinter As String In PrinterSettings.InstalledPrinters ' sPrinters.Add(sPrinter) ' Next ' ' Array sortieren ' sPrinters.Sort() ' ' printer() ' ' jetzt alle Drucker in sortierter Reihenfolge in einer ' ' ComboBox zur Auswahl anbieten ' Dim oPS As New System.Drawing.Printing.PrinterSettings ' Dim pList As List(Of PrinterList) = PROG.getPrinterList ' For i As Integer = 0 To sPrinters.Count - 1 ' If PROG.isPrinterOnlineByList(pList, sPrinters(i)) Then ' setCboEntry(sPrinters(i)) ' cboPrinter.Items.Add(sPrinters(i)) ' End If ' Next ' setCboSelected(oPS.PrinterName) 'End Sub 'threadsicherer Aufruf Delegate Sub setCboEntryCallback(i As String) Private Sub setCboEntry(i As String) Try If Me.InvokeRequired Then Dim d As New setCboEntryCallback(AddressOf setCboEntry) Me.Invoke(d, New Object() {i}) Else cboPrinter.Items.Add(i) End If Catch ex As Exception End Try End Sub 'threadsicherer Aufruf Delegate Sub setCboSelectedCallback(standardDrucker As String) Private Sub setCboSelected(standardDrucker As String) If Me.InvokeRequired Then Dim d As New setCboSelectedCallback(AddressOf setCboSelected) Me.Invoke(d, New Object() {standardDrucker}) Else Dim found As Boolean = False ' For Each i In cboPrinter.Items 'If i.ToString.ToUpper.Contains("TALLY") Then 'found = True ' cboPrinter.SelectedItem = i : Exit For ' End If ' Next If found = False Then 'Falls kein TALLY, Standarddrucker cboPrinter.SelectedIndex = 0 For Each i In cboPrinter.Items If i.ToString = standardDrucker Then cboPrinter.SelectedItem = i Exit For End If Next End If End If End Sub Private Sub dtpAnkunft_ValueChanged(sender As System.Object, e As System.EventArgs) Handles dtpAnkunft.ValueChanged, dtpFreigabe.ValueChanged, dtpAnkunftZeit.ValueChanged, dtpFreigabeZeit.ValueChanged 'Berechnung Dauer, falls Datumsfelder geändert werden Try Dim hVon As Date = dtpAnkunft.Value.Date + dtpAnkunftZeit.Value.TimeOfDay Dim hBis As Date = dtpFreigabe.Value.Date + dtpFreigabeZeit.Value.TimeOfDay txtDauer.Text = Minuten_auf_Text(DateDiff(DateInterval.Minute, hVon, hBis)) Catch ex As Exception txtDauer.Text = "" End Try End Sub Private Sub optErfasst_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles optErfasst.CheckedChanged, optAnkunft.CheckedChanged, optFreigegeben.CheckedChanged, optAnkunft.CheckedChanged, optVorbereitet.CheckedChanged, optVorgeschrieben.CheckedChanged, optNichtEingetroffen.CheckedChanged If sender Is optErfasst Or sender Is optNichtEingetroffen Then dtpAnkunft.Visible = False dtpAnkunftZeit.Visible = False dtpFreigabe.Visible = False dtpFreigabeZeit.Visible = False txtDauer.Visible = False dtpVorbereitet.Visible = False dtpVorbereitetZeit.Visible = False dtpVorgeschrieben.Visible = False dtpVorgeschriebenZeit.Visible = False Exit Sub End If If sender Is optAnkunft Then dtpAnkunft.Visible = True dtpAnkunftZeit.Visible = True dtpFreigabe.Visible = False dtpFreigabeZeit.Visible = False txtDauer.Visible = False dtpVorbereitet.Visible = True dtpVorbereitetZeit.Visible = True dtpVorgeschrieben.Visible = True dtpVorgeschriebenZeit.Visible = True Exit Sub End If If sender Is optFreigegeben Then dtpAnkunft.Visible = True dtpAnkunftZeit.Visible = True dtpFreigabe.Visible = True dtpFreigabeZeit.Visible = True txtDauer.Visible = True dtpVorbereitet.Visible = True dtpVorbereitetZeit.Visible = True dtpVorgeschrieben.Visible = True dtpVorgeschriebenZeit.Visible = True Exit Sub End If If sender Is optVorbereitet Then dtpAnkunft.Visible = False dtpAnkunftZeit.Visible = False dtpFreigabe.Visible = False dtpFreigabeZeit.Visible = False txtDauer.Visible = False dtpVorbereitet.Visible = True dtpVorbereitetZeit.Visible = True dtpVorgeschrieben.Visible = False dtpVorgeschriebenZeit.Visible = False Exit Sub End If If sender Is optVorgeschrieben Then dtpAnkunft.Visible = False dtpAnkunftZeit.Visible = False dtpFreigabe.Visible = False dtpFreigabeZeit.Visible = False txtDauer.Visible = False dtpVorbereitet.Visible = True dtpVorbereitetZeit.Visible = True dtpVorgeschrieben.Visible = True dtpVorgeschriebenZeit.Visible = True Exit Sub End If End Sub Private Sub optOhneAviso_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles optOhneAviso.CheckedChanged dtpAvisoEingangDatum.Visible = optAvisoEingang.Checked dtpAvisoEingangZeit.Visible = optAvisoEingang.Checked cboGrenzstelle.changeItem(VERAG_PROG_ALLGEMEIN.cAllgemein.NIEDERLASSUNG) If optOhneAviso.Checked Then optUnbekannt.Checked = True If optOhneAviso.Checked Then cbxAktenzettelDrucken.Checked = True End Sub 'Private Function bereits_angelegt(hFirma As String) As Boolean ' Dim checkEintrag As New cFirma ' Dim hSQL As String = "SELECT * FROM Firmen WHERE " & firma ' checkEintrag = Firmen.LesenFirma(0, "", hSQL) ' If IsNothing(checkEintrag) Then ' Return False ' Else ' Return True ' End If 'End Function Private Sub btnFirmaNeu_Fraechter(sender As System.Object, e As System.EventArgs) Handles Button4.Click If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("Kundendaten_bearbeiten", "SDL") Then Dim frmKundenblatt As New SDL.frmKundenblatt frmKundenblatt.showEdit = True frmKundenblatt.kdNr = -1 'frmKundenblatt.BERECHTIGUNEN = BERECHTIGUNEN If frmKundenblatt.ShowDialog(Me) Then If frmKundenblatt.kdNr > 0 Then kdFrächter.KdNr = frmKundenblatt.kdNr End If End If Else Dim frmKd As New SDL.frmNeuerKunde frmKd.openKd = False frmKd.timerIntervall = 500 frmKd.username = VERAG_PROG_ALLGEMEIN.cGlobal.AktiverMitarbeiter.mit_username If frmKd.username.Length > 15 Then frmKd.username = frmKd.username.Substring(0, 15) frmKd.tmpFiliale = VERAG_PROG_ALLGEMEIN.cGlobal.AktiverMitarbeiter.StandartFiliale ' frmKd.tmpKdNrKreis = 9 If kdFrächter.KdNr = -1 Then frmKd.tmpKdName = kdFrächter.Text End If frmKd.ShowDialog() If frmKd.kdnr > 0 Then kdFrächter.KdNr = frmKd.kdnr End If End If End Sub Private Sub btnFirmaNeu_Avisierer(sender As System.Object, e As System.EventArgs) Handles Button2.Click If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("Kundendaten_bearbeiten", "SDL") Then Dim frmKundenblatt As New SDL.frmKundenblatt frmKundenblatt.showEdit = True frmKundenblatt.kdNr = -1 'frmKundenblatt.BERECHTIGUNEN = BERECHTIGUNEN If frmKundenblatt.ShowDialog(Me) Then If frmKundenblatt.kdNr > 0 Then kdAvisierer.KdNr = frmKundenblatt.kdNr End If End If Else Dim frmKd As New SDL.frmNeuerKunde frmKd.openKd = False frmKd.timerIntervall = 500 frmKd.username = VERAG_PROG_ALLGEMEIN.cGlobal.AktiverMitarbeiter.mit_username If frmKd.username.Length > 15 Then frmKd.username = frmKd.username.Substring(0, 15) frmKd.tmpFiliale = VERAG_PROG_ALLGEMEIN.cGlobal.AktiverMitarbeiter.StandartFiliale ' frmKd.tmpKdNrKreis = 9 frmKd.ShowDialog() If frmKd.kdnr > 0 Then kdAvisierer.KdNr = frmKd.kdnr End If End If End Sub Private Function Platzhalter_ersetzen(hText As String, hLKW As String, hGrenzstelle As String) As String If hText = "" Then Platzhalter_ersetzen = hText Exit Function End If 'hier werden alle möglichen Platzhalter ersetzt hText = hText.Replace("%LKW%", hLKW) If hGrenzstelle <> "" Then Dim Standorte As New cStandorteDAL Dim Standort As New cStandort Standort = Standorte.LesenStandort(0, hGrenzstelle, "") If Not IsNothing(Standort) Then hGrenzstelle = Standort.Standort_Text.Trim End If End If hText = hText.Replace("%Standort%", hGrenzstelle) hText = hText.Replace("%Uhrzeit%", Format(Now, "HH:mm")) hText = hText.Replace("&", "und") Platzhalter_ersetzen = hText End Function Private Sub eMails_einlesen(hFrächter As String, hAuftraggeber As String) Dim Firmen As New cFirmenDAL Dim Firma As New cFirma Firma = Firmen.LesenFirma(0, hFrächter, "") If Not IsNothing(Firma) Then hAdresse = Firma.eMail If Firma.eMail2 <> "" Then hCC = Firma.eMail2 End If 'falls Frächter und Auftraggeber unterschiedlich, dann zusätzliche Mailadressen holen If hFrächter <> hAuftraggeber Then Firma = Firmen.LesenFirma(0, hAuftraggeber, "") If Not IsNothing(Firma) Then If hAdresse <> "" Then If hCC = "" Then hCC = Firma.eMail Else hCC += "; " & Firma.eMail If Firma.eMail2 <> "" Then If hCC = "" Then hCC = Firma.eMail2 Else hCC += "; " & Firma.eMail2 End If Else If hAdresse = "" Then hAdresse = Firma.eMail hCC = Firma.eMail2 Else If hCC <> "" Then hCC += "; " & Firma.eMail If Firma.eMail2 <> "" Then hCC += "; " & Firma.eMail2 Else hCC = Firma.eMail If Firma.eMail2 <> "" Then hCC += "; " & Firma.eMail2 End If End If End If End If End If End Sub Private Sub txtLKW_Nr_TextChanged(sender As Object, e As EventArgs) Handles txtLKW_Nr.Leave txtLKW_Nr.Text = txtLKW_Nr.Text.ToUpper End Sub Private Sub frmEintragAviso_Shown(sender As Object, e As EventArgs) Handles Me.Shown 'dtpAvisoEingangZeit.Focus() aktiv = True If EingangsDatum > CDate("01.01.1990") Then dtpAvisoEingangDatum.Value = EingangsDatum dtpAvisoEingangZeit.Value = EingangsDatum End If If Neuanlage And VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME = "SIRADA" Then optOhneAviso.PerformClick() txtLKW_Nr.Focus() End If VERAG_PROG_ALLGEMEIN.cAllgemein._TRANSLATE(Me) End Sub Private Sub cbxSammelakt_CheckedChanged(sender As Object, e As EventArgs) Handles cbxSammelakt.CheckedChanged If cbxSammelakt.Checked Then ' txtSendungen.Enabled = True lnlSendungText.Text = "Sendungen" txtSendungen.Focus() txtSendungen.Select() Else ' txtSendungen.Text = "1" ' txtSendungen.Enabled = False lnlSendungText.Text = "Sendung" End If Label20.Text = lnlSendungText.Text End Sub Private Sub dtpAvisoEingangZeit_PreviewKeyDown(sender As Object, e As PreviewKeyDownEventArgs) Handles dtpAvisoEingangZeit.PreviewKeyDown, kdFrächter.PreviewKeyDown, kdAuftraggeber.PreviewKeyDown, kdAvisierer.PreviewKeyDown, dtpAvisoEingangZeit.PreviewKeyDown, kdFrächter.PreviewKeyDown, kdAvisierer.PreviewKeyDown, dtpAvisoEingangZeit.PreviewKeyDown, kdFrächter.PreviewKeyDown, kdAvisierer.PreviewKeyDown, dtpAvisoEingangZeit.PreviewKeyDown, kdFrächter.PreviewKeyDown, kdAvisierer.PreviewKeyDown, dtpAvisoEingangZeit.PreviewKeyDown, kdFrächter.PreviewKeyDown, kdAvisierer.PreviewKeyDown, txtBestimmungszollstelle.PreviewKeyDown, cbxWarenort.PreviewKeyDown If e.KeyCode = Keys.Return Then e.IsInputKey = True : Me.DialogResult = DialogResult.None If sender Is kdAvisierer Then kdAvisierer.FireReturn() : e.IsInputKey = True : Me.DialogResult = DialogResult.None If sender Is kdAuftraggeber Then kdAuftraggeber.FireReturn() : e.IsInputKey = True : Me.DialogResult = DialogResult.None If sender Is kdFrächter Then kdFrächter.FireReturn() : e.IsInputKey = True : Me.DialogResult = DialogResult.None If sender Is UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle1 Then UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle1.FireReturn() : e.IsInputKey = True : Me.DialogResult = DialogResult.None If sender Is UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle2 Then UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle2.FireReturn() : e.IsInputKey = True : Me.DialogResult = DialogResult.None If sender Is UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle3 Then UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle3.FireReturn() : e.IsInputKey = True : Me.DialogResult = DialogResult.None If sender Is UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle4 Then UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle4.FireReturn() : e.IsInputKey = True : Me.DialogResult = DialogResult.None If sender Is UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle5 Then UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle5.FireReturn() : e.IsInputKey = True : Me.DialogResult = DialogResult.None If sender Is UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle6 Then UsrCntlEintragAvisoAtilla.sbDurchgangszollstelle6.FireReturn() : e.IsInputKey = True : Me.DialogResult = DialogResult.None If sender Is txtBestimmungszollstelle Then txtBestimmungszollstelle.FireReturn() : e.IsInputKey = True : Me.DialogResult = DialogResult.None e.IsInputKey = True Me.DialogResult = DialogResult.None ElseIf e.KeyCode = Keys.Tab And sender Is dtpAvisoEingangZeit Then End If End Sub Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click If StartFromOUTLOOK Then MsgBox("Diese Funktion ist im Outlook Addin nicht verfügbar!") Exit Sub End If ' Me.showSendungsdetails = True btnOK.PerformClick() 'If dgvSendungen.SelectedRows.Count > 0 Then 'sendId = dgvSendungen.SelectedRows(0).Cells("tblSnd_SendungID").Value 'End If If myAviso.AvisoID > 0 Then Dim frmGrayOut = VERAG_PROG_ALLGEMEIN.cMeineFunktionenAVISO.grayoutForm() Dim frmSendungsdetails As New frmSendungsdetailsNEU(myAviso.AvisoID, -1) frmSendungsdetails.ShowDialog(frmGrayOut) frmGrayOut.Close() End If 'initDgvSendungen() End Sub Private Sub txtSendungen_Leave(sender As Object, e As EventArgs) Handles txtSendungen.Leave If Not IsNumeric(txtSendungen.Text) Then txtSendungen.Text = 1 End If End Sub Function initSndAnzahl() As Integer initSndAnzahl = 0 If IsNumeric(txtSendungen.Text) Then initSndAnzahl += txtSendungen.Text If IsNumeric(txtSndFiskalAT.Text) Then initSndAnzahl += txtSndFiskalAT.Text If IsNumeric(txtSndFiskalDE.Text) Then initSndAnzahl += txtSndFiskalDE.Text If IsNumeric(txtSndFremd.Text) Then initSndAnzahl += txtSndFremd.Text Label21.Text = initSndAnzahl End Function Private Sub btnAbsSrch_Click(sender As Object, e As EventArgs) Handles btnAbsSrch.Click End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click End Sub Private Sub cboTransportmittelart_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboTransportmittelart.SelectedIndexChanged If cboTransportmittelart._value = "CONTAINER" Then lblLkwKennzeichen.Text = "Container-Nr:" Else lblLkwKennzeichen.Text = "LKW-Nr:" End If End Sub Private Sub cboGrenzstelle_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboGrenzstelle.SelectedIndexChanged pnl.Visible = False ' cboImEx.Visible = (cboGrenzstelle.Text = "WAI" Or FIRMA_TMP = "IMEX" Or FIRMA_TMP = "UNISPED") Label1.Visible = (cboGrenzstelle._value = "WAI" Or cboGrenzstelle._value = "DTB" Or FIRMA_TMP = "IMEX" Or FIRMA_TMP = "UNISPED") Select Case FIRMA_TMP Case "VERAG", "FRONTOFFICE", "UNISPED", "IMEX", "AMBAR", "VERIMEX" If cboGrenzstelle._value = "???" Then 'txtBestimmungszollstelle.initSearchBox(Me.FindForm, "[basncd_dstnr] ,[basncd_dstnr] +' - ' + [basncd_name] +' (' +[basncd_alpha]+')' as displayPARAM,[basncd_dstnr] as Nr,[basncd_name] as Dienststelle,[basncd_alpha] as Land FROM basncd", {" [basncd_dstnr]", "basncd_name"}, " [basncd_gbdat] >= getdate() ", " basncd_alpha,[basncd_name]", "basncd_dstnr", "displayPARAM", "ATLAS", , 400, 200, {"displayPARAM", "basncd_dstnr"}) txtBestimmungszollstelle.initSearchBox(Me.FindForm, "[Code] ,[Code] as Nr,Description as Dienststelle,left(Code,2) as Land,[Description] +' (' +left(Code,2)+')' as display FROM [tbl_DY_ZollDE_C0141_Zollstellen]", {" [Code]", "Description"}, " (StartDate is null OR StartDate< GETDATE()) AND (EndDate is null OR EndDate> GETDATE()) ", " left(Code,2),[Description]", "Code", "display", "FMZOLL", , 400, 200, {"display", "Code"}) 'txtBestimmungszollstelle.Visible = True 'lblZA.Visible = True pnl.Visible = True End If End Select End Sub Private Sub Button5_Click(sender As Object, e As EventArgs) Handles btnFraechterKd.Click If kdFrächter.KdNr > 0 Then Me.Cursor = Cursors.WaitCursor AVISOFUNC.showKd(kdFrächter.KdNr) Me.Cursor = Cursors.Default End If End Sub Private Sub Button4_Click(sender As Object, e As EventArgs) Handles btnAvisiererKd.Click If kdAvisierer.KdNr > 0 Then Me.Cursor = Cursors.WaitCursor AVISOFUNC.showKd(kdAvisierer.KdNr) Me.Cursor = Cursors.Default End If End Sub Private Sub Label17_Click(sender As Object, e As EventArgs) Handles Label17.Click If kdFrächter.KdNr_value > 0 Then kdAvisierer.KdNr = kdFrächter.KdNr ElseIf kdFrächter.Text <> "" Then kdAvisierer.Text = kdFrächter.Text End If End Sub Private Sub txtSendungen_TextChanged(sender As Object, e As EventArgs) Handles txtSendungen.TextChanged, txtSndFiskalAT.TextChanged, txtSndFiskalDE.TextChanged, txtSndFremd.TextChanged If initSndAnzahl() <> 1 Then cbxSammelakt.Checked = True Else cbxSammelakt.Checked = False End If End Sub Private Sub cbxSendungsvorlagen_CheckedChanged(sender As Object, e As EventArgs) Handles cbxSendungsvorlagen.CheckedChanged grpAktVerzollung.Visible = sender.checked Button3.Visible = sender.checked End Sub Private Sub cbxAktenzettelDrucken_CheckedChanged(sender As Object, e As EventArgs) Handles cbxAktenzettelDrucken.CheckedChanged cboPrinter.Visible = cbxAktenzettelDrucken.Checked End Sub Private Sub Label7_Click(sender As Object, e As EventArgs) Handles Label7.Click If panAdmin.Height = 12 Then panAdmin.Height = 187 Else panAdmin.Height = 12 End If End Sub Private Sub optAvisoEingang_CheckedChanged(sender As Object, e As EventArgs) Handles optAvisoEingang.CheckedChanged datVoraussichtlichesEintreffen.Visible = optAvisoEingang.Checked ' Button5.Visible = optAvisoEingang.Checked lblVoraussEintreff.Visible = optAvisoEingang.Checked If optOhneAviso.Checked Then cbxAktenzettelDrucken.Checked = False End Sub Private Sub btnAuftraggeber_Click(sender As Object, e As EventArgs) Handles btnAuftraggeber.Click If kdAuftraggeber.KdNr > 0 Then Me.Cursor = Cursors.WaitCursor AVISOFUNC.showKd(kdAuftraggeber.KdNr) Me.Cursor = Cursors.Default End If End Sub Private Sub lblAtrAvis_Click(sender As Object, e As EventArgs) Handles lblAtrAvis.Click If kdAvisierer.KdNr_value > 0 Then kdAuftraggeber.KdNr = kdAvisierer.KdNr ElseIf kdAvisierer.Text <> "" Then kdAuftraggeber.Text = kdAvisierer.Text End If End Sub Private Sub cbxFrächterUnbekannt_CheckedChanged(sender As Object, e As EventArgs) Handles cbxFrächterUnbekannt.CheckedChanged If cbxFrächterUnbekannt.Checked Then kdFrächter.KdNr = -1 kdFrächter.Text = "" kdFrächter.Enabled = False Else kdFrächter.Enabled = True End If End Sub Private Sub dtpAvisoEingangZeit_ValueChanged(sender As Object, e As EventArgs) Handles dtpAvisoEingangZeit.ValueChanged End Sub Private Sub Label22_Click(sender As Object, e As EventArgs) Handles Label22.Click If kdAvisierer.KdNr_value > 0 Then kdFrächter.KdNr = kdAvisierer.KdNr ElseIf kdAvisierer.Text <> "" Then kdFrächter.Text = kdAvisierer.Text End If End Sub Private Sub dgvAnhaenge_CellDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvAnhaenge.CellDoubleClick, dgvAnhaenge.CellContentDoubleClick Try If dgvAnhaenge.SelectedRows.Count > 0 Then If dgvAnhaenge.SelectedRows(0).Cells(1).Value <> "" Then Process.Start(dgvAnhaenge.SelectedRows(0).Cells(1).Value) End If End If Catch ex As Exception VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) End Try End Sub Private Sub kdAvisierer_KeyDown(sender As Object, e As KeyEventArgs) Handles kdAvisierer.KeyDown If e.Modifiers = Keys.Control And e.KeyCode = Keys.D0 Then Label17_Click(Label17, New EventArgs) End If End Sub Private Sub kdAuftraggeber_KeyDown(sender As Object, e As KeyEventArgs) Handles kdAuftraggeber.KeyDown If e.Modifiers = Keys.Control And e.KeyCode = Keys.D0 Then lblAtrAvis_Click(lblAtrAvis, New EventArgs) End If End Sub Private Sub Button5_Click_1(sender As Object, e As EventArgs) Handles btnStreckendauerBerechnen.Click Dim destination As String = "" If cboGrenzstelle._value = "???" AndAlso txtBestimmungszollstelle._value IsNot "" Then destination = txtBestimmungszollstelle._value Else destination = cboGrenzstelle._value End If If destination Is "" Or destination Is Nothing Then MsgBox("Zur Berechnung muss vorher eine Grenzstelle/Zollstelle ausgewählt werden!") Else Dim frmRouteBerechnen = New frmRoutendauerBerechnen(destination) If frmRouteBerechnen.ShowDialog() = DialogResult.OK Then datVoraussichtlichesEintreffen.Value = frmRouteBerechnen.calculatedDate End If End If End Sub End Class