Files
SDL/SDL/Speditionsbuch/usrCntlSpeditionsBuchSuche.vb
2025-08-13 15:56:44 +02:00

3064 lines
174 KiB
VB.net

Imports System.Data.SqlClient
Imports System.Globalization
Imports VERAG_PROG_ALLGEMEIN
Public Class usrCntlSpeditionsBuchSuche
Dim SQL As New SQL
Public Event SendungsdetailsRequested(ByVal AvisoId As Integer, ByVal SendungId As Integer)
Dim AVISOSERVER = VERAG_PROG_ALLGEMEIN.cAllgemein.AVISO_SERVER & " .AVISO.dbo.AVISO"
Sub New()
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
End Sub
Public KDSearch As Integer
Public dat_von As Date
Public dat_bis As Date
Sub New(KDSearch As Integer, dat_von As Date, dat_bis As Date)
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
Me.KDSearch = KDSearch
Me.dat_von = dat_von
Me.dat_bis = dat_bis
'txtAbfertDat._value = dat_von.ToShortDateString
'txtAbfertDatBis._value = dat_bis.ToShortDateString
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
End Sub
Public Sub initSearch()
btnSuche.PerformClick()
End Sub
Private Sub btnSuche_Click(sender As Object, e As EventArgs) Handles btnSuche.Click
Me.Cursor = Cursors.WaitCursor
Dim TopMax = If(IsNumeric(txtMaxSrch.Text), " TOP " & txtMaxSrch.Text, "")
Dim sqlstr As String = ""
If tbcntr.SelectedIndex = 0 Then
dgvLKW.Visible = False
sqlstr &= " SELECT " & TopMax & " [FilialenNr],[AbfertigungsNr],[UnterNr],[Abfertigungsdatum],speditionsbuch.[Abfertigungsart],Abfertigungsarten.Abfertigungsbezeichnung, " &
" isnull(cast([AbsenderKundenNr] as nvarchar(7)) + ' ','') + [Absender] as Absender,isnull(cast([EmpfängerKundenNr] as nvarchar(7)) + ' ','') + [Empfänger] as Empfänger,isnull(cast([VermittlerKundenNr] as nvarchar(7)) + ' ','') + [Vermittler] as Vermittler,isnull(cast([FrachtführerKundenNr] as nvarchar(7)) + ' ','') + [Frachtführer] as Frachtführer, " &
" [LKW Kennzeichen],QKN,(SELECT isnull(Name,'') FROM Personal Where Personalnummer=ID) AS Sachbearbeiter,BelegNr, Grenzstelle FROM [Speditionsbuch] LEFT JOIN Abfertigungsarten ON Abfertigungsarten.Abfertigungsart=speditionsbuch.Abfertigungsart WHERE 1=1 "
'/*Sachbearbeiter ,[Bar],[Fakturiert],[BelegNr],[ErfassungsNr],[AnzahlZA],[AnzahlZAFremd],[AnzahlZnV],[AnzahlZnVFremd],[AnzahlT1],[AnzahlT2],[AnzahlAE],[AnzahlCarnetTIR],[AnzahlBarvorlagen],[AnzahlSonstiges],[AnzahlGrenzgebühren],[AvisUhrzeit],[Rechnungsbetrag],[Abfertigungsanzahl],[Barzahlungsbetrag],[Sachbearbeiter],[Personalnummer],[AtlasBezNrEZA],[AtlasBezNrNCTS],[Versendungsland],[SB_CMR],[SB_CMRDatum],[veoerz_basbtg],[Zucker_MRN_Nr],[Zucker_MRN_Datum],[Zucker_Aufschub],[Zollsystem],[Bestimmungszollstelle],[Bürgschaft],[Sicherheitsbetrag],[SgutKompl],[Bestimmungsland],[EuFiskalEmpfänger],[QKN],[EndempfängerKundenNr],[Endempfänger] */
With DataGridView
' .DataSource = myTable
.SET_SQL(sqlstr & getSpedBuchWhere() & " ORDER BY Abfertigungsdatum, [FilialenNr],[AbfertigungsNr],[UnterNr] ", "FMZOLL", getSpedbuchList)
'MsgBox(sqlstr)
' MsgBox(getSpedBuchWhere)
.LOAD()
End With
showDGV()
Else
sqlstr &= " SELECT Aviso.AvisoID,[LKW Kennzeichen],Anzahl,Abfertigungsanzahl,CASE WHEN isnull(Aviso.[Frächter_KdNr],0) > 0 then cast(Aviso.[Frächter_KdNr] as nvarchar(60)) + ' ' ELSE '' END + Aviso.frächter as Frächter, CASE WHEN isnull(Aviso.Auftraggeber_KdNr,0) > 0 then cast(Aviso.Auftraggeber_KdNr as nvarchar(60)) + ' ' ELSE '' END + Aviso.Auftraggeber as Avisierer, Freigabe from"
sqlstr &= " (SELECT " & TopMax & " AvisoID,COUNT (*) As anzahl, SUM(Abfertigungsanzahl) as Abfertigungsanzahl , case when Speditionsbuch.AvisoID is null then ' - Kein LKW - ' ELSE max([LKW Kennzeichen]) END as [LKW Kennzeichen]"
sqlstr &= " FROM [Speditionsbuch] WHERE 1=1 "
sqlstr &= getSpedBuchWhere()
sqlstr &= " group by Speditionsbuch.AvisoID"
sqlstr &= " ) as t"
sqlstr &= " INNER JOIN " & AVISOSERVER & " on Aviso.avisoid=t.AvisoID "
DataGridView.Columns.Clear()
With dgvLKW
.SET_SQL(sqlstr, "FMZOLL", getSpedbuchList)
.LOAD()
.Visible = True
If .RowCount = 0 Then Me.Cursor = Cursors.Default : Exit Sub
.RowHeadersVisible = False
.ReadOnly = True
.SelectionMode = DataGridViewSelectionMode.FullRowSelect
.MultiSelect = False
.Columns("Abfertigungsanzahl").Visible = False
.Columns("AvisoID").HeaderText = "LKW-Id"
.Columns("AvisoID").Width = 50
.Columns("Anzahl").Width = 30
.Columns("Anzahl").HeaderText = "Snd."
.Columns("Anzahl").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
.Columns("LKW Kennzeichen").Width = 100
.Columns("LKW Kennzeichen").HeaderText = "LKW Kennz."
.Columns("Frächter").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.Columns("Frächter").MinimumWidth = 150
.Columns("Avisierer").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.Columns("Avisierer").MinimumWidth = 150
.Columns("Freigabe").Width = 105
lblErgebnis.Text = "Ergebnisse: " & .RowCount
AddHandler .SelectionChanged, Sub()
DataGridView.Columns.Clear()
If dgvLKW.SelectedRows().Count = 0 Then Exit Sub
Dim sqlstrTmp = " SELECT " & TopMax & " [FilialenNr],[AbfertigungsNr],[UnterNr],[Abfertigungsdatum],speditionsbuch.[Abfertigungsart],Abfertigungsarten.Abfertigungsbezeichnung, " &
" isnull(cast([AbsenderKundenNr] as nvarchar(7)) + ' ','') + [Absender] as Absender,isnull(cast([EmpfängerKundenNr] as nvarchar(7)) + ' ','') + [Empfänger] as Empfänger,isnull(cast([VermittlerKundenNr] as nvarchar(7)) + ' ','') + [Vermittler] as Vermittler,isnull(cast([FrachtführerKundenNr] as nvarchar(7)) + ' ','') + [Frachtführer] as Frachtführer, " &
" [LKW Kennzeichen],QKN,(SELECT isnull(Name,'') FROM Personal Where Personalnummer=ID) AS Sachbearbeiter ,BelegNr, Grenzstelle FROM [Speditionsbuch] LEFT JOIN Abfertigungsarten ON Abfertigungsarten.Abfertigungsart=speditionsbuch.Abfertigungsart WHERE 1=1 "
With DataGridView
' .DataSource = myTable
.SET_SQL(sqlstrTmp & getSpedBuchWhere() & " AND AvisoID='" & dgvLKW.SelectedRows(0).Cells("AvisoID").Value & "' " & " ORDER BY Abfertigungsdatum, [FilialenNr],[AbfertigungsNr],[UnterNr] ", "FMZOLL", getSpedbuchList)
.LOAD()
End With
showDGV()
End Sub
End With
End If
Me.Cursor = Cursors.Default
End Sub
Sub showDGV()
With DataGridView
If .RowCount = 0 Then Me.Cursor = Cursors.Default : Exit Sub
.RowHeadersVisible = False
.ReadOnly = True
.SelectionMode = DataGridViewSelectionMode.FullRowSelect
.MultiSelect = False
.Columns("FilialenNr").Width = 45
.Columns("FilialenNr").HeaderText = "Filiale"
.Columns("FilialenNr").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
.Columns("AbfertigungsNr").Width = 80
.Columns("AbfertigungsNr").HeaderText = "Abf-Nr"
.Columns("AbfertigungsNr").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
.Columns("UnterNr").Width = 45
.Columns("UnterNr").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
.Columns("Abfertigungsdatum").Width = 100
.Columns("Abfertigungsdatum").HeaderText = "Abf-Dat."
.Columns("Abfertigungsdatum").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
.Columns("Absender").MinimumWidth = 150
.Columns("Absender").HeaderText = "Absender"
.Columns("Absender").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.Columns("Abfertigungsart").Width = 50
.Columns("Abfertigungsart").HeaderText = "Abf.Nr"
.Columns("Abfertigungsart").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
.Columns("Abfertigungsbezeichnung").MinimumWidth = 100
.Columns("Abfertigungsbezeichnung").HeaderText = "Abfertigungsart"
.Columns("Abfertigungsbezeichnung").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.Columns("Vermittler").MinimumWidth = 150
.Columns("Vermittler").HeaderText = "Auftraggeber"
.Columns("Vermittler").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.Columns("Empfänger").MinimumWidth = 150
.Columns("Empfänger").HeaderText = "Empfänger"
.Columns("Empfänger").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.Columns("Frachtführer").MinimumWidth = 150
.Columns("Frachtführer").HeaderText = "Frachtführer"
.Columns("Frachtführer").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.Columns("LKW Kennzeichen").Width = 120
.Columns("LKW Kennzeichen").HeaderText = "LKW Kennzeichen"
.Columns("Grenzstelle").Visible = False
.Columns("BelegNr").Width = 160
.Columns("Sachbearbeiter").MinimumWidth = 100
'MsgBox(VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_niederlassung)
If VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_niederlassung = "NKD" Then
.Columns("QKN").Width = 45
.Columns("QKN").HeaderText = "QKN"
Else
.Columns("QKN").Visible = False
End If
lblErgebnis.Text = "Ergebnisse: " & .RowCount
End With
End Sub
Function getSpedBuchWhere(Optional ignoreFiliale = False) As String
Dim sqlstr = ""
If txtAvisiererKdNr.Text <> "" And IsNumeric(txtAvisiererKdNr.Text) Then : sqlstr &= " AND Speditionsbuch.[AvisiererKundenNr] LIKE @AvisiererKundenNr "
ElseIf kdtxtAvisierer.Text <> "" Then : sqlstr &= " AND Speditionsbuch.[Avisierer] LIKE @Avisierer " : End If
If txtAbsenderKdnr.Text <> "" And IsNumeric(txtAbsenderKdnr.Text) Then : sqlstr &= " AND Speditionsbuch.[AbsenderKundenNr] LIKE @AbsenderKundenNr "
ElseIf kdtxtAbsender.Text <> "" Then : sqlstr &= " AND Speditionsbuch.[Absender] LIKE @Absender " : End If
If cbxOderEmpfanger.Checked Then
If txtAuftraggeberKdnr.Text <> "" And IsNumeric(txtAuftraggeberKdnr.Text) Then : sqlstr &= " AND ( Speditionsbuch.[VermittlerKundenNr] LIKE @VermittlerKundenNr OR Speditionsbuch.[EmpfängerKundenNr] LIKE @VermittlerKundenNr ) "
ElseIf kdtxtAuftraggeber.Text <> "" Then : sqlstr &= " AND ( Speditionsbuch.[Vermittler] LIKE @Vermittler OR Speditionsbuch.[Empfänger] LIKE @Vermittler ) " : End If
Else
If txtAuftraggeberKdnr.Text <> "" And IsNumeric(txtAuftraggeberKdnr.Text) Then : sqlstr &= " AND Speditionsbuch.[VermittlerKundenNr] LIKE @VermittlerKundenNr "
ElseIf kdtxtAuftraggeber.Text <> "" Then : sqlstr &= " AND Speditionsbuch.[Vermittler] LIKE @Vermittler " : End If
If txtEmpfaengerKdnr.Text <> "" And IsNumeric(txtEmpfaengerKdnr.Text) Then : sqlstr &= " AND Speditionsbuch.[EmpfängerKundenNr] LIKE @EmpfängerKundenNr "
ElseIf kdtxtEmpfaenger.Text <> "" Then : sqlstr &= " AND Speditionsbuch.[Empfänger] LIKE @Empfänger " : End If
End If
If txtFrachtfuehrerKdnr.Text <> "" And IsNumeric(txtFrachtfuehrerKdnr.Text) Then : sqlstr &= " AND Speditionsbuch.[FrachtführerKundenNr] LIKE @FrachtführerKundenNr "
ElseIf kdtxtFrachtfuehrer.Text <> "" Then : sqlstr &= " AND Speditionsbuch.[Frachtführer] LIKE @Frachtführer " : End If
If txtEndempfaengerKdnr.Text <> "" And IsNumeric(txtEndempfaengerKdnr.Text) Then : sqlstr &= " AND Speditionsbuch.[EndempfängerKundenNr] LIKE @EndempfängerKundenNr "
ElseIf kdtxtEndempfaenger.Text <> "" Then : sqlstr &= " AND Speditionsbuch.[Endempfänger] LIKE @Endempfänger " : End If
If txtFiskalEndempfaenger.Text <> "" Then sqlstr &= " AND Speditionsbuch.[EuFiskalEmpfänger] LIKE @FiskalEndempfaengerKundenNr "
If txtKdAuftragsNr.Text <> "" Then sqlstr &= " AND Speditionsbuch.[KdAuftragsNr] LIKE @KdAuftragsNr "
If txtAbfertDat.Text <> "" Then
If txtAbfertDatBis.Text <> "" Then
sqlstr &= " AND (Speditionsbuch.[Abfertigungsdatum] BETWEEN @Abfertigungsdatum AND @Abfertigungsdatum_bis ) "
Else
sqlstr &= " AND (Speditionsbuch.[Abfertigungsdatum] BETWEEN @Abfertigungsdatum AND @Abfertigungsdatum ) "
End If
End If
If txtAbfertigungsnummer.Text <> "" Then
If txtAbfertigungsnummerBis.Text <> "" Then
sqlstr &= " AND (Speditionsbuch.[AbfertigungsNr] BETWEEN @AbfertigungsNr AND @AbfertigungsNr_bis ) "
Else
sqlstr &= " AND Speditionsbuch.AbfertigungsNr LIKE @AbfertigungsNr "
End If
End If
If txtUnterNr.Text <> "" Then sqlstr &= " AND Speditionsbuch.[UnterNr] LIKE @UnterNr "
If Not ignoreFiliale Then
If cboFiliale._value <> "" Then sqlstr &= " AND Speditionsbuch.[FilialenNr] LIKE @FilialenNr "
End If
' If cboFilialeHandling._value <> "" Then sqlstr &= " AND FilialenNrHandling IS NOT NULL AND [FilialenNrHandling] LIKE @FilialeHandling "
Dim abfertigungsarten = getValues()
If abfertigungsarten <> "" Then sqlstr &= " AND Speditionsbuch.Abfertigungsart IN (" & abfertigungsarten & ") "
Dim filialeAuswahl = getValuesFiliale()
If filialeAuswahl <> "" Then sqlstr &= " AND Speditionsbuch.FilialenNr IN (" & filialeAuswahl & ") "
Dim filialeAuswahlHandling = getValuesFilialeHandling()
If filialeAuswahlHandling <> "" Then sqlstr &= " AND Speditionsbuch.FilialenNrHandling IN (" & filialeAuswahlHandling & ") "
Dim grenzeAuswahl = getValuesGrenzstelle()
If grenzeAuswahl <> "" Then sqlstr &= " AND Speditionsbuch.Grenzstelle IN (" & grenzeAuswahl & ") "
If txtCRN.Text <> "" Then sqlstr &= " AND Speditionsbuch.QKN LIKE @QKN "
If txtPackstücke.Text <> "" Then sqlstr &= " AND Speditionsbuch.Packstücke LIKE @Packstücke "
If txtBelegNr.Text <> "" Then sqlstr &= " AND Speditionsbuch.BelegNr LIKE @BelegNr "
If cboVersLand._value <> "" Then sqlstr &= " AND Speditionsbuch.Versendungsland LIKE @Versendungsland "
If cboBestLand._value <> "" Then sqlstr &= " AND Speditionsbuch.Bestimmungsland LIKE @Bestimmungsland "
If txtErfassungsnNr.Text <> "" Then sqlstr &= " AND Speditionsbuch.ErfassungsNr LIKE @ErfassungsNr "
If txtAvisoId.Text.Trim <> "" And IsNumeric(txtAvisoId.Text.Trim) Then sqlstr &= " AND Speditionsbuch.AvisoId=@AvisoId"
If MyTextBox14.Text <> "" Then sqlstr &= " AND Speditionsbuch.[LKW Kennzeichen] LIKE @LKW "
If cbxBar.CheckState = CheckState.Checked Then sqlstr &= " AND Bar=1 "
If cbxFakturiert.CheckState = CheckState.Checked Then sqlstr &= " AND Fakturiert=1 "
If cbxCMR.CheckState = CheckState.Checked Then sqlstr &= " AND SB_CMR=1 "
If cbxBar.CheckState = CheckState.Unchecked Then sqlstr &= " AND Bar=0 "
If cbxFakturiert.CheckState = CheckState.Unchecked Then sqlstr &= " AND Fakturiert=0 "
If cbxCMR.CheckState = CheckState.Unchecked Then sqlstr &= " AND SB_CMR=0 "
If cbxEIDR.Visible Then
If cbxEIDR.CheckState = CheckState.Checked Then sqlstr &= " AND UK_EIDR_ausstehend=1 "
If cbxEIDR.CheckState = CheckState.Unchecked Then sqlstr &= " AND UK_EIDR_ausstehend=0 "
End If
If txtZollstelle.Visible And txtZollstelle._value <> "" Then
sqlstr &= " AND Zollstelle='" & txtZollstelle._value & "' "
End If
If cboSachbearbeiter._value <> "" Then sqlstr &= " AND Speditionsbuch.[Personalnummer] = @Personalnummer "
If cboSB_Qs._value <> "" Then sqlstr &= " AND Speditionsbuch.[PersonalnummerQS] = @PersonalnummerQS "
If cboSB_TR._value <> "" Then sqlstr &= " AND Speditionsbuch.[PersonalnummerAbklTR] = @PersonalnummerAbklTR "
If txtVermerk.Text <> "" Then sqlstr &= " AND Speditionsbuch.[Vermerk] LIKE @Vermerk "
Return sqlstr
End Function
Function getSpedbuchList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Avisierer", kdtxtAvisierer.Text.Replace("*", "%")))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AvisiererKundenNr", txtAvisiererKdNr.Text.Replace("*", "%")))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Absender", kdtxtAbsender.Text.Replace("*", "%")))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AbsenderKundenNr", txtAbsenderKdnr.Text.Replace("*", "%")))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Empfänger", kdtxtEmpfaenger.Text.Replace("*", "%")))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("EmpfängerKundenNr", txtEmpfaengerKdnr.Text.Replace("*", "%")))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Vermittler", kdtxtAuftraggeber.Text.Replace("*", "%")))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("VermittlerKundenNr", txtAuftraggeberKdnr.Text.Replace("*", "%")))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Frachtführer", kdtxtFrachtfuehrer.Text.Replace("*", "%")))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("FrachtführerKundenNr", txtFrachtfuehrerKdnr.Text.Replace("*", "%")))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Endempfänger", kdtxtEndempfaenger.Text.Replace("*", "%")))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("EndempfängerKundenNr", txtEndempfaengerKdnr.Text.Replace("*", "%")))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("FiskalEndempfaengerKundenNr", txtFiskalEndempfaenger.Text.Replace("*", "%")))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("KdAuftragsNr", txtKdAuftragsNr.Text.Replace("*", "%")))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Abfertigungsdatum", txtAbfertDat.Text & " 00:00:00"))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Abfertigungsdatum_bis", txtAbfertDatBis.Text & " 23:59:59"))
If txtAbfertigungsnummerBis.Text <> "" Then
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AbfertigungsNr", txtAbfertigungsnummer.Text.Replace("*", "")))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AbfertigungsNr_bis", txtAbfertigungsnummerBis.Text.Replace("*", "")))
Else
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AbfertigungsNr", txtAbfertigungsnummer.Text.Replace("*", "%")))
End If
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("UnterNr", txtUnterNr.Text))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("FilialenNr", cboFiliale._value))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("LKW", MyTextBox14.Text.Replace("*", "%").ToUpper))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("QKN", txtCRN.Text.Replace("*", "%").ToUpper))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Packstücke", txtPackstücke.Text.Replace("*", "%").ToUpper))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("BelegNr", txtBelegNr.Text.Replace("*", "%").ToUpper))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Versendungsland", cboVersLand._value.Replace("*", "%").ToUpper))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Bestimmungsland", cboBestLand._value.Replace("*", "%").ToUpper))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("ErfassungsNr", txtErfassungsnNr.Text.Replace("*", "%").ToUpper))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AvisoId", txtAvisoId.Text.Trim))
' list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("FilialeHandling", cboFilialeHandling._value))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Personalnummer", cboSachbearbeiter._value))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("PersonalnummerQS", cboSB_Qs._value))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("PersonalnummerAbklTR", cboSB_TR._value))
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Vermerk", txtVermerk.Text.Replace("*", "%").ToUpper))
Return list
End Function
Private Sub frmSpeditionsbuchSuche_Load(sender As Object, e As EventArgs) Handles MyBase.Load
VERAG_PROG_ALLGEMEIN.cAllgemein._TRANSLATE(Me)
If VERAG_PROG_ALLGEMEIN.cAllgemein.TESTSYSTEM Then
AVISOSERVER = "[DEVELOPER\DEVSQL].AVISO_new.dbo.AVISO"
End If
txtAbfertDat.Text = Now.ToShortDateString 'CDate("01." & Now.ToString("MM.yyyy")).AddMonths(-1).ToShortDateString
txtAbfertDatBis.Text = Now.ToShortDateString
btnMonat.Text = MONAT.ToString("MMMM")
btnJahr.Text = JAHR.Year
kdtxtAbsender.initKdBox(Me.FindForm, txtAbsenderKdnr) ' initKdAbsender()
kdtxtEmpfaenger.initKdBox(Me.FindForm, txtEmpfaengerKdnr) 'initKdEmpfaenger()
kdtxtAuftraggeber.initKdBox(Me.FindForm, txtAuftraggeberKdnr) 'initKdAuftraggeber()
kdtxtFrachtfuehrer.initKdBox(Me.FindForm, txtFrachtfuehrerKdnr) 'initKdFrachtfuehrer()
kdtxtEndempfaenger.initKdBox(Me.FindForm, txtEndempfaengerKdnr) 'initKdEndempfaenger()
kdtxtAvisierer.initKdBox(Me.FindForm, txtAvisiererKdNr) 'initKdEndempfaenger()
Dim FirmaTmp = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("OFFERTE_FREMD_VERAGIMEX", "SDL") Then
FirmaTmp = "VERAGIMEX"
End If
Dim sbWhere = ""
Select Case FirmaTmp
Case "ATILLA" : sbWhere = " AND Niederlassung = 'SUA' "
Case "IMEX" : sbWhere = " AND Mandant = 'IMEX' "
Case "VERAGIMEX" : sbWhere = " "
Case Else
sbWhere = " AND Mandant <> 'IMEX' "
End Select
cboSachbearbeiter.fillWithSQL("SELECT ID,/*cast(ID as nvarchar(3)) +' ' + Name as*/ Name FROM Personal WHERE [Status]<>'L' " & sbWhere & " ORDER BY Name ", False, "FMZOLL", True)
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "ATILLA" Then
cboFiliale.fillWithSQL("SELECT FilialenNr, Grenzstelle FROM Filialen WHERE Fil_Status='A' AND FilialenNr IN(4801,4802) ORDER BY FilialenNr ", True, "FMZOLL", True)
Else
cboFiliale.fillWithSQL("SELECT FilialenNr, Grenzstelle FROM Filialen WHERE Fil_Status='A' ORDER BY FilialenNr ", True, "FMZOLL", True)
End If
' cboFilialeHandling.fillWithSQL("SELECT FilialenNr, Grenzstelle FROM Filialen WHERE Fil_Status='A' ORDER BY FilialenNr ", True, "FMZOLL", 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"})
txtZollstelle.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"})
cboHandlingssatz.fillWithSQL("SELECT [hs_Bezeichnung] FROM [tblHandlingssaetzeIntern] group by [hs_Bezeichnung] ", False, "FMZOLL", True)
If VERAG_PROG_ALLGEMEIN.cAllgemein.STAMMFILIALE <> "" And Not VERAG_PROG_ALLGEMEIN.cAllgemein.isCLUSTER And FirmaTmp <> "VERAGIMEX" Then
If VERAG_PROG_ALLGEMEIN.cAllgemein.CLUSTER = "FRONTOFFICE" Then
Dim whereCluster = ""
If VERAG_PROG_ALLGEMEIN.cAllgemein.CLUSTER = "FRONTOFFICE" Then whereCluster = ",'5801'"
cboFiliale.fillWithSQL("SELECT FilialenNr, Grenzstelle FROM Filialen WHERE Fil_Status='A' AND FilialenNr IN ('" & VERAG_PROG_ALLGEMEIN.cAllgemein.STAMMFILIALE & "'" & whereCluster & ") ORDER BY FilialenNr ", True, "FMZOLL", True)
' cboFiliale._allowedValuesFreiText = {VERAG_PROG_ALLGEMEIN.cAllgemein.STAMMFILIALE, 5801}
ElseIf VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "ATILLA" Then
cboFiliale._allowedValuesFreiText = {4801, 4802}
cboFiliale.Enabled = True
Else
cboFiliale._allowedValuesFreiText = {VERAG_PROG_ALLGEMEIN.cAllgemein.STAMMFILIALE}
cboFiliale.Enabled = False
End If
cboFiliale.changeItem(VERAG_PROG_ALLGEMEIN.cAllgemein.STAMMFILIALE)
End If
'Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
' Case "IMEX" : cboFiliale._allowedValuesFreiText = {"5501"}
' cboFiliale.changeItem("5501")
' cboFiliale.Enabled = False
' Case "ATILLA" : cboFiliale._allowedValuesFreiText = {"4801"}
' cboFiliale.changeItem("4801")
' cboFiliale.Enabled = False
'End Select
'ComboBox1.fillWithSQL("SELECT [Abfertigungsart],[Abfertigungsbezeichnung] FROM [Abfertigungsarten] ORDER BY Abfertigungsart ", True, "FMZOLL")
cboVersLand.fillWithSQL("SELECT LandKz, LandBez FROM [Länderverzeichnis für die Außenhandelsstatistik] ORDER BY LandKz ", True, "FMZOLL", True)
cboBestLand.fillWithSQL("SELECT LandKz, LandBez FROM [Länderverzeichnis für die Außenhandelsstatistik] ORDER BY LandKz ", True, "FMZOLL", True)
MyListBox1.fillWithSQL(" SELECT [Abfertigungsart],[Abfertigungsbezeichnung] FROM [Abfertigungsarten] ORDER BY Abfertigungsart ", , "FMZOLL")
If VERAG_PROG_ALLGEMEIN.cAllgemein.STAMMFILIALE <> "" And Not VERAG_PROG_ALLGEMEIN.cAllgemein.isCLUSTER Then
Dim whereCluster = ""
' If VERAG_PROG_ALLGEMEIN.cAllgemein.CLUSTER = "FRONTOFFICE" Then whereCluster = ",'5801'"
lstFiliale.fillWithSQL(" SELECT FilialenNr, Grenzstelle FROM Filialen WHERE Fil_Status='A' AND FilialenNr IN ('" & VERAG_PROG_ALLGEMEIN.cAllgemein.STAMMFILIALE & "'" & whereCluster & ") ORDER BY FilialenNr ", , "FMZOLL")
Else
lstFiliale.fillWithSQL(" SELECT FilialenNr, Grenzstelle FROM Filialen WHERE Fil_Status='A' ORDER BY FilialenNr ", , "FMZOLL")
End If
lstFilialeHandling.fillWithSQL(" SELECT FilialenNr, Grenzstelle FROM Filialen WHERE Fil_Status='A' ORDER BY FilialenNr ", , "FMZOLL")
'Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
' Case "IMEX"
' lstFiliale.fillWithSQL(" SELECT FilialenNr, Grenzstelle FROM Filialen WHERE Fil_Status='A' AND FilialenNr=5501 ORDER BY FilialenNr ", , "FMZOLL")
' Case "ATILLA"
' lstFiliale.fillWithSQL(" SELECT FilialenNr, Grenzstelle FROM Filialen WHERE Fil_Status='A' AND FilialenNr=4801 ORDER BY FilialenNr ", , "FMZOLL")
' Case Else
' lstFiliale.fillWithSQL(" SELECT FilialenNr, Grenzstelle FROM Filialen WHERE Fil_Status='A' ORDER BY FilialenNr ", , "FMZOLL")
'End Select
' lstGrenze.fillWithSQL(" SELECT distinct(Grenzstelle),distinct(Grenzstelle) FROM [VERAG].[dbo].[Speditionsbuch] where Grenzstelle is not null order by Grenzstelle ", , "FMZOLL")
'lstGrenze.Items.Clear()
'lstGrenze.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("SUB", "SUB"))
'lstGrenze.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("SBG", "SBG"))
'lstGrenze.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("WAI", "WAI"))
'lstGrenze.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("NKD", "NKD"))
'lstGrenze.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("SUA", "SUA"))
'lstGrenze.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AMB", "AMB"))
'lstGrenze.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("???", "???"))
lstGrenze.Items.Clear()
lstGrenze.fillWithSQL("SELECT [grz_Grenzstelle],[grz_BezeichnungCBO] FROM tblGrenzstelle where [grz_Firma]='" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "' OR grz_Cluster='" & VERAG_PROG_ALLGEMEIN.cAllgemein.CLUSTER & "' AND grz_Aktiv=1 order by grz_Reihenfolge, grz_Grenzstelle", False, "AVISO")
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "ATILLA" Then
lstGrenze.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("SUB", "SUB"))
lstGrenze.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("NEU", "NEU"))
End If
lstGrenze.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("???", "???"))
lstGrenze.changeItem("")
MyComboBox1.Items.Clear()
MyComboBox1.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
MyComboBox1.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("ALLE", "ALLE"))
MyComboBox1.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG", "VERAG"))
MyComboBox1.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("IMEX", "IMEX"))
MyComboBox1.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("UNISPED", "UNISPED"))
MyComboBox1.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AMBAR", "AMBAR"))
MyComboBox1.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("FRONTOFFICE", "FRONTOFFICE"))
MyComboBox2.Items.Clear()
MyComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
MyComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG", "VERAG"))
MyComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("IMEX", "IMEX"))
MyComboBox2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("UNISPED", "UNISPED"))
cboFilialeHandling.Items.Clear()
cboFilialeHandling.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
cboFilialeHandling.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("ALLE", "ALLE"))
cboFilialeHandling.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG", "VERAG"))
cboFilialeHandling.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("IMEX", "IMEX"))
cboFilialeHandling.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("UNISPED", "UNISPED"))
cboFilialeHandling.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AMBAR", "AMBAR"))
cboFilialeHandling.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("FRONTOFFICE", "FRONTOFFICE"))
Dim where = ""
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "VERAG", "ATILLA", ""
Case Else
where = " AND mit_firma IN ('" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "','BEIDE') "
'Case "IMEX" : where = " AND mit_firma IN ('IMEX','BEIDE') "
''' Case "ATILLA" : cboFiliale._allowedValuesFreiText = {"4801"}
End Select
cboSB_Qs.fillWithSQL("SELECT [mit_id],[mit_vname] + ' '+ [mit_nname] as NAME " &
" FROM [tblMitarbeiter] WHERE mit_niederlassung IN ('SUB','Suben') AND mit_abteilung='QS' AND [mit_gekuendigt]=0 " & where & " order by name", False, "ADMIN", True)
cboSB_TR.fillWithSQL("SELECT [mit_id],[mit_vname] + ' '+ [mit_nname] as NAME " &
" FROM [tblMitarbeiter] WHERE mit_firma IN ('VERIMEX') AND [mit_gekuendigt]=0 order by name", False, "ADMIN", True)
btnDetailsuche.PerformClick()
cboRolle.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Auftraggeber", "VermittlerKundenNr"))
cboRolle.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Avisierer", "AvisiererKundenNr"))
cboRolle.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Absender", "AbsenderKundenNr"))
cboRolle.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Empfänger", "EmpfängerKundenNr"))
cboRolle.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Frachtführer", "FrachtführerKundenNr"))
cboRolle.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Endempfänger", "EndempfängerKundenNr"))
cboRolle.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("FiskalEndempfaenger", "FiskalEndempfaengerKundenNr"))
cboRolle.SelectedIndex = 0
cboDetailberichtKdAtrNr.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Auftraggeber", "AUFTRAGGEBER"))
cboDetailberichtKdAtrNr.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Avisierer", "AVISIERER"))
cboDetailberichtKdAtrNr.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Empfänger", "EMPFAENGER"))
cboDetailberichtKdAtrNr.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Frachtführer", "FRACHTFUEHRER"))
cboDetailberichtKdAtrNr.SelectedIndex = 0
Label29.Visible = False
Label30.Visible = False
If VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER IsNot Nothing Then
If VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_standartFiliale > 0 Then
Dim aktNr = (New cOptionenDAL).getMaxPosNr(VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_standartFiliale, Now.Year)
Label30.Text = "akt. Pos-Nr. (" & VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.mit_standartFiliale & "):"
Label29.Text = aktNr
Label29.Visible = True
Label30.Visible = True
End If
End If
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ADMIN", "SDL") Then
btnQSAufteilung.Visible = True
btnCSAufteilung.Visible = True
End If
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ZOLL_Auswertungen", "SDL") Then
pnlBerichte.Visible = True
Button21.Visible = True
Button16.Visible = True
Button17.Visible = True
ElseIf VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "AMBAR" Then
pnlBerichte.Visible = True
For Each p In pnlBerichte.Controls
p.Visible = False
Next
Button25.Visible = True
MyComboBox2.Visible = True
End If
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ZOLL_Auswertungen_Erlöse", "SDL") Then
btnSpedBuchEinnahmen.Visible = True
End If
If KDSearch > 0 Then
kdtxtAuftraggeber.KdNr = KDSearch
txtAbfertDat._value = dat_von.ToShortDateString
txtAbfertDatBis._value = dat_bis.ToShortDateString
cbxOderEmpfanger.Checked = True
End If
initToolStripMenu()
End Sub
Function getValues() As String
Dim s As String = ""
For Each i In MyListBox1.SelectedItems
s += DirectCast(i, VERAG_PROG_ALLGEMEIN.MyListItem).Value & ", "
Next
If s.EndsWith(", ") Then
s = s.Substring(0, s.Length - 2)
End If
Return s
End Function
Function getValuesFiliale() As String
Dim s As String = ""
For Each i In lstFiliale.SelectedItems
s += DirectCast(i, VERAG_PROG_ALLGEMEIN.MyListItem).Value & ", "
Next
If s.EndsWith(", ") Then
s = s.Substring(0, s.Length - 2)
End If
Return s
End Function
Function getValuesFilialeHandling() As String
Dim s As String = ""
For Each i In lstFilialeHandling.SelectedItems
s += DirectCast(i, VERAG_PROG_ALLGEMEIN.MyListItem).Value & ", "
Next
If s.EndsWith(", ") Then
s = s.Substring(0, s.Length - 2)
End If
Return s
End Function
Function getValuesGrenzstelle() As String
Dim s As String = ""
For Each i In lstGrenze.SelectedItems
s += "'" & DirectCast(i, VERAG_PROG_ALLGEMEIN.MyListItem).Value & "', "
Next
If s.EndsWith(", ") Then
s = s.Substring(0, s.Length - 2)
End If
Return s
End Function
' Private Sub Button1_Click(sender As Object, e As EventArgs)
' For i = 0 To MyListBox1.Items.Count - 1
' MyListBox1.SetSelected(i, True)
' Next
'End Sub
'
Private Sub Button13_Click(sender As Object, e As EventArgs) Handles btnKeine.Click
For i = 0 To MyListBox1.Items.Count - 1
MyListBox1.SetSelected(i, False)
Next
End Sub
Private Sub Button11_Click(sender As Object, e As EventArgs) Handles Button11.Click
For i = 0 To lstFiliale.Items.Count - 1
lstFiliale.SetSelected(i, False)
Next
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles btnAlle.Click
For i = 0 To MyListBox1.Items.Count - 1
MyListBox1.SetSelected(i, True)
Next
End Sub
' Sub initKdAuftraggeber()
' Dim dgvFindKD As New DataGridView
' dgvFindKD.Name = "dgvFindKD"
' Me.Controls.Add(dgvFindKD)
' dgvFindKD.Visible = False
' kdtxtAuftraggeber.dgv = dgvFindKD
' AddHandler kdtxtAuftraggeber.PropertyChanged, Sub()
' txtAuftraggeberKdnr.Text = IIf(kdtxtAuftraggeber.KdNr_value > 0, kdtxtAuftraggeber.KdNr_value, "")
' End Sub
' End Sub
' Sub initKdAbsender()
' Dim dgvFindKD As New DataGridView
' dgvFindKD.Name = "dgvFindKD"
' Me.Controls.Add(dgvFindKD)
' dgvFindKD.Visible = False
' kdtxtAbsender.dgv = dgvFindKD
' kdtxtAbsender.kdNrField = txtAbsenderKdnr
' End Sub
' Sub initKdEmpfaenger()
' Dim dgvFindKD As New DataGridView
' dgvFindKD.Name = "dgvFindKD"
' Me.Controls.Add(dgvFindKD)
' dgvFindKD.Visible = False
' kdtxtEmpfaenger.dgv = dgvFindKD
' kdtxtEmpfaenger.kdNrField = txtEmpfaengerKdnr
' End Sub
' Sub initKdFrachtfuehrer()
' Dim dgvFindKD As New DataGridView
' dgvFindKD.Name = "dgvFindKD"
' Me.Controls.Add(dgvFindKD)
' dgvFindKD.Visible = False
' kdtxtFrachtfuehrer.dgv = dgvFindKD
' kdtxtFrachtfuehrer.kdNrField = txtFrachtfuehrerKdnr
' End Sub
' Sub initKdEndempfaenger()
' Dim dgvFindKD As New DataGridView
' dgvFindKD.Name = "dgvFindKD"
' Me.Controls.Add(dgvFindKD)
' dgvFindKD.Visible = False
' kdtxtEndempfaenger.dgv = dgvFindKD
' kdtxtEndempfaenger.kdNrField = txtEndempfaengerKdnr
' End Sub
Private Sub txtAbfertDat_TextChanged(sender As Object, e As EventArgs) Handles txtAbfertDat.TextChanged
txtAbfertDatBis.Enabled = sender.text <> ""
End Sub
Private Sub MyTextBox1_TextChanged(sender As Object, e As EventArgs) Handles txtAbfertigungsnummer.TextChanged
txtAbfertigungsnummerBis.Enabled = sender.text <> ""
End Sub
Private Sub DataGridView_CellContentClick(sender As Object, e As EventArgs) Handles DataGridView.DoubleClick, DataGridView.CellContentDoubleClick
If DataGridView.SelectedRows.Count = 0 Then Exit Sub
'If tbcntr.SelectedIndex = 0 Then
Dim frmNacherfassung As New frmNacherfassungNEU
frmNacherfassung.srchFiliale = DataGridView.SelectedRows(0).Cells("FilialenNr").Value
frmNacherfassung.srchAbfertigungsnummer = DataGridView.SelectedRows(0).Cells("AbfertigungsNr").Value
frmNacherfassung.srchUnterNr = DataGridView.SelectedRows(0).Cells("UnterNr").Value
frmNacherfassung.ShowDialog(Me)
DataGridView.RELOAD()
' End If
' frmNacherfassung.showAll()
End Sub
Private Sub Button1_Click_1(sender As Object, e As EventArgs) Handles Button1.Click
Dim frmNacherfassung As New frmNacherfassungNEU
' frmNacherfassung.cboFiliale.Text = DataGridView.SelectedRows(0).Cells("FilialenNr").Value
' frmNacherfassung.txtUnterNr.Text = DataGridView.SelectedRows(0).Cells("UnterNr").Value
' frmNacherfassung.txtAbfertigungsnummer.Text = DataGridView.SelectedRows(0).Cells("AbfertigungsNr").Value
frmNacherfassung.newEntry = True
' frmNacherfassung.FMZollPersID = VERAG_PROG_ALLGEMEIN.cglobal.AktiverMitarbeiter.mit_FMZollPersID
' frmNacherfassung.initDataBinding()
frmNacherfassung.ShowDialog(Me)
DataGridView.RELOAD()
End Sub
Private Sub EintragLöschenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles EintragLöschenToolStripMenuItem.Click
If DataGridView.SelectedRows.Count > 0 Then
If DataGridView.SelectedRows.Count > 1 Then
MsgBox("Einträge können nur einzeln gelöscht werden!")
Exit Sub
End If
If vbYes = MsgBox("Möchten Sie den Eintrag wirklich löschen?", vbYesNoCancel) Then
Dim r As DataGridViewRow = DataGridView.SelectedRows(0)
Dim anzRechnung = SQL.getValueTxtBySql("select count(*) FROM [VERAG].[dbo].[Rechnungsausgang] where AbfertigungsNr =" & (r.Cells("AbfertigungsNr").Value) & " AND FilialenNr = " & (r.Cells("FilialenNr").Value) & " AND SpeditionsbuchUnterNr = " & (r.Cells("UnterNr").Value), "FMZOLL")
If CInt(anzRechnung) > 0 Then
MsgBox("Eintrag wurde bereits verrechnet (es existiert bereits ein Beleg " & vbNewLine & " mit dieser Abfertigungsnummer) und kann nicht gelöscht werden!")
Exit Sub
End If
Dim spb As New cSpeditionsbuch(r.Cells("FilialenNr").Value, r.Cells("AbfertigungsNr").Value, r.Cells("UnterNr").Value)
Dim arv As New cSpeditionsbucharchiv
arv.FilialenNr = spb.FilialenNr
arv.AbfertigungsNr = spb.AbfertigungsNr
arv.UnterNr = spb.UnterNr
arv.Abfertigungsdatum = spb.Abfertigungsdatum
arv.Bar = spb.Bar
arv.Fakturiert = spb.Fakturiert
arv.BelegNr = spb.BelegNr
arv.ErfassungsNr = spb.ErfassungsNr
arv.LKW_Kennzeichen = spb.LKW_Kennzeichen
arv.AnzahlZA = spb.AnzahlZA
arv.AnzahlZAFremd = spb.AnzahlZAFremd
arv.AnzahlZnV = spb.AnzahlZnV
arv.AnzahlZnVFremd = spb.AnzahlZnVFremd
arv.AnzahlT1 = spb.AnzahlT1
arv.AnzahlT2 = spb.AnzahlT2
arv.AnzahlAE = spb.AnzahlAE
arv.AnzahlCarnetTIR = spb.AnzahlCarnetTIR
arv.AnzahlBarvorlagen = spb.AnzahlBarvorlagen
arv.AnzahlSonstiges = spb.AnzahlSonstiges
arv.AnzahlGrenzgebühren = spb.AnzahlGrenzgebühren
arv.AvisUhrzeit = spb.AvisUhrzeit
arv.Vermerk = spb.Vermerk
arv.Bemerkungen = spb.Bemerkungen
arv.Währungsschlüssel = spb.Währungsschlüssel
arv.Rechnungsbetrag = spb.Rechnungsbetrag
arv.Umrechnungskurs = spb.Umrechnungskurs
arv.Packstücke = spb.Packstücke
arv.Packstücke_Zoll = spb.Packstücke_Zoll
arv.Rohmasse = spb.Rohmasse
arv.Zahlungsaufschub = spb.Zahlungsaufschub
arv.Löschen = spb.Löschen
arv.Abfertigungsart = spb.Abfertigungsart
arv.Abfertigungsanzahl = spb.Abfertigungsanzahl
arv.AbfertigungsanzahlPos = spb.AbfertigungsanzahlPos
arv.Barzahlungsbetrag = spb.Barzahlungsbetrag
arv.Sachbearbeiter = spb.Sachbearbeiter
arv.Personalnummer = spb.Personalnummer
arv.PersonalnummerQS = spb.PersonalnummerQS
arv.AtlasBezNrEZA = spb.AtlasBezNrEZA
arv.AtlasBezNrNCTS = spb.AtlasBezNrNCTS
arv.AtlasBezNrAES = spb.AtlasBezNrAES
arv.Versendungsland = spb.Versendungsland
arv.SB_CMR = spb.SB_CMR
arv.SB_CMRDatum = spb.SB_CMRDatum
arv.SB_CMRNr = spb.SB_CMRNr
arv.veoerz_basbtg = spb.veoerz_basbtg
arv.Zucker_MRN_Nr = spb.Zucker_MRN_Nr
arv.Zucker_MRN_Datum = spb.Zucker_MRN_Datum
arv.Zucker_Aufschub = spb.Zucker_Aufschub
arv.Zollsystem = spb.Zollsystem
arv.Bestimmungszollstelle = spb.Bestimmungszollstelle
arv.Bürgschaft = spb.Bürgschaft
arv.Sicherheitsbetrag = spb.Sicherheitsbetrag
arv.SgutKompl = spb.SgutKompl
arv.Bestimmungsland = spb.Bestimmungsland
arv.EuFiskalEmpfänger = spb.EuFiskalEmpfänger
arv.QKN = spb.QKN
arv.EndempfängerKundenNr = spb.EndempfängerKundenNr
arv.Endempfänger = spb.Endempfänger
arv.AvisoID = spb.AvisoID
arv.SendungID = spb.SendungID
arv.Grenzstelle = spb.Grenzstelle
arv.KdAuftragsNr = spb.KdAuftragsNr
arv.KdAuftragsNrAvisierer = spb.KdAuftragsNrAvisierer
arv.KdAuftragsNrEmpfaenger = spb.KdAuftragsNrEmpfaenger
arv.KdAuftragsNrFrachtfuehrer = spb.KdAuftragsNrFrachtfuehrer
arv.SB_Zeitstempel = spb.SB_Zeitstempel
arv.NCTS_Verzollungsadresse = spb.NCTS_Verzollungsadresse
arv.NCTS_VerzollungsadresseKdNr = spb.NCTS_VerzollungsadresseKdNr
arv.AuftraggeberBetragKassiert = spb.AuftraggeberBetragKassiert
arv.Lieferantenrechnung = spb.Lieferantenrechnung
arv.DokumentId_Steuerbeleg = spb.DokumentId_Steuerbeleg
arv.DokumentId_Mitteilung = spb.DokumentId_Mitteilung
arv.DokumentId_VBD = spb.DokumentId_VBD
arv.DokumentId_ABD = spb.DokumentId_ABD
arv.DokumentId_AVM = spb.DokumentId_AVM
arv.FilialenNrHandling = spb.FilialenNrHandling
arv.HandlingZuKassieren = spb.HandlingZuKassieren
arv.FilialenNrAbklaerung = spb.FilialenNrAbklaerung
arv.PersonalnummerAbklTR = spb.PersonalnummerAbklTR
arv.UK_EIDR_ausstehend = spb.UK_EIDR_ausstehend
arv.Zollstelle = spb.Zollstelle
arv.Zollsystem_Land = spb.Zollsystem_Land
arv.geloescht_von = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME
arv.geloescht_am = Now()
arv.AvisiererKundenNr = spb.AvisiererKundenNr
arv.AbsenderKundenNr = spb.AbsenderKundenNr
arv.AbsenderOffertenNr = spb.AbsenderOffertenNr
arv.EmpfängerKundenNr = spb.EmpfängerKundenNr
arv.EmpfängerOffertenNr = spb.EmpfängerOffertenNr
arv.VermittlerKundenNr = spb.VermittlerKundenNr
arv.VermittlerOffertenNr = spb.VermittlerOffertenNr
arv.FrachtführerKundenNr = spb.FrachtführerKundenNr
If Not arv.SAVE() Then
MsgBox("Eintrag konnte nicht gelöscht werden!")
Exit Sub
End If
SQL.doSQL("DELETE FROM [Speditionsbuch] WHERE [FilialenNr]='" & r.Cells("FilialenNr").Value & "' AND [AbfertigungsNr] ='" & r.Cells("AbfertigungsNr").Value & "' AND [UnterNr]='" & r.Cells("UnterNr").Value & "' ", "FMZOLL")
DataGridView.RELOAD()
End If
End If
End Sub
Private Sub DateTimePicker1_ValueChanged(sender As Object, e As EventArgs) Handles DateTimePicker1.ValueChanged
txtAbfertDat._value = CDate(sender.value).ToShortDateString
End Sub
Private Sub DateTimePicker2_ValueChanged(sender As Object, e As EventArgs) Handles DateTimePicker2.ValueChanged
txtAbfertDatBis._value = CDate(sender.value).ToShortDateString
End Sub
Private Sub btnMonat_Click(sender As Object, e As EventArgs) Handles btnMonat.Click
initBtns("Monat")
End Sub
Dim MONAT As Date = CDate("01." & Now.Month & "." & Now.Year) '.AddMonths(-1)
Dim srcTAG As Date = CDate(Now.ToShortDateString)
Dim JAHR As Date = CDate("01.01." & Now.Year)
Sub initBtns(MonatJahr)
btnMonat.Text = MONAT.ToString("MMMM")
btnJahr.Text = JAHR.Year
Select Case MonatJahr
Case "Monat"
DateTimePicker1.Value = MONAT
DateTimePicker2.Value = MONAT.AddMonths(1).AddDays(-1)
Case "Jahr"
' If cbxGeschaftsjahr.Checked Then
'DateTimePicker1.Value = JAHR.AddMonths(1)
' DateTimePicker2.Value = JAHR.AddYears(1).AddMonths(1).AddDays(-1)
' Else
DateTimePicker1.Value = JAHR
DateTimePicker2.Value = JAHR.AddYears(1).AddDays(-1)
'End If
Case "Tag"
' If cbxGeschaftsjahr.Checked Then
'DateTimePicker1.Value = JAHR.AddMonths(1)
' DateTimePicker2.Value = JAHR.AddYears(1).AddMonths(1).AddDays(-1)
' Else
DateTimePicker1.Value = srcTAG
DateTimePicker2.Value = srcTAG
If srcTAG = Now.ToShortDateString Then
btnToday.Text = "Heute"
ElseIf srcTAG = Now.AddDays(-1).ToShortDateString Then
btnToday.Text = "Gestern"
ElseIf srcTAG = Now.AddDays(-2).ToShortDateString Then
btnToday.Text = "Vorgestern"
Else
btnToday.Text = srcTAG.ToString("dd.MM")
End If
'End If
Case ""
DateTimePicker1.Value = ("01." & Now.Month & "." & Now.Year)
DateTimePicker2.Value = Now
End Select
btnSuche.PerformClick()
End Sub
Private Sub btnJahr_Click(sender As Object, e As EventArgs) Handles btnJahr.Click
initBtns("Jahr")
End Sub
Private Sub btnBisMonat_Click(sender As Object, e As EventArgs) Handles btnBisMonat.Click
MONAT = MONAT.AddMonths(1)
initBtns("Monat")
End Sub
Private Sub btnVonMonat_Click(sender As Object, e As EventArgs) Handles btnVonMonat.Click
MONAT = MONAT.AddMonths(-1)
initBtns("Monat")
End Sub
Private Sub btnBisJahr_Click(sender As Object, e As EventArgs) Handles btnBisJahr.Click
JAHR = JAHR.AddYears(1)
initBtns("Jahr")
End Sub
Private Sub btnVonJahr_Click(sender As Object, e As EventArgs) Handles btnVonJahr.Click
JAHR = JAHR.AddYears(-1)
initBtns("Jahr")
End Sub
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles btnDetailsuche.Click
Try
SplitContainer1.Panel2Collapsed = Not SplitContainer1.Panel2Collapsed
If SplitContainer1.Panel2Collapsed Then
' pnlSearch.Height = SplitContainer1.Panel1.Height
SplitContainer.SplitterDistance -= 200
Else
'pnlSearch.Height = SplitContainer1.Height
SplitContainer.SplitterDistance += 200
End If
If btnDetailsuche.Image Is SDL.My.Resources.Resources.pfeil_unten Then
btnDetailsuche.Image = SDL.My.Resources.Resources.pfeil_oben
Else
btnDetailsuche.Image = SDL.My.Resources.Resources.pfeil_unten
End If
Catch ex As Exception
End Try
End Sub
Private Sub FlatButton7_Click(sender As Object, e As EventArgs) Handles FlatButton7.Click
DataGridView.RELOAD()
End Sub
Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
srcTAG = srcTAG.AddDays(-1)
initBtns("Tag")
End Sub
Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
srcTAG = srcTAG.AddDays(1)
initBtns("Tag")
End Sub
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles btnToday.Click
initBtns("Tag")
End Sub
Private Sub btnExcel_Click(sender As Object, e As EventArgs) Handles btnExcel.Click
Me.Cursor = Cursors.WaitCursor
cProgramFunctions.genExcelFromDGV_NEW(DataGridView, False)
Me.Cursor = Cursors.Default
End Sub
Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click
Dim displayFilter = cbxFilterInBericht.Checked
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ZOLL_Auswertungen", "SDL") Then
Dim sqlstr As String = ""
If CheckBox1.Checked Then
sqlstr &= " SELECT FilialenNr,Speditionsbuch.Abfertigungsart,Abfertigungsarten.Abfertigungsbezeichnung,sum(Abfertigungsanzahl) as Anzahl,SUM(Barzahlungsbetrag) as Barzahlungsbetrag,MIN(Abfertigungsdatum) as von, MAX(Abfertigungsdatum) as bis FROM Speditionsbuch LEFT JOIN Abfertigungsarten ON Speditionsbuch.Abfertigungsart=Abfertigungsarten.Abfertigungsart WHERE 1=1 "
sqlstr &= getSpedBuchWhere()
sqlstr &= " group by FilialenNr,Speditionsbuch.Abfertigungsart,Abfertigungsbezeichnung "
sqlstr &= " order by FilialenNr, Speditionsbuch.Abfertigungsart"
Else
sqlstr &= " SELECT Speditionsbuch.Abfertigungsart,Abfertigungsarten.Abfertigungsbezeichnung,sum(Abfertigungsanzahl) as Anzahl,SUM(Barzahlungsbetrag) as Barzahlungsbetrag,MIN(Abfertigungsdatum) as von, MAX(Abfertigungsdatum) as bis FROM Speditionsbuch LEFT JOIN Abfertigungsarten ON Speditionsbuch.Abfertigungsart=Abfertigungsarten.Abfertigungsart WHERE 1=1 "
sqlstr &= getSpedBuchWhere()
sqlstr &= " group by Speditionsbuch.Abfertigungsart,Abfertigungsbezeichnung "
sqlstr &= " order by Speditionsbuch.Abfertigungsart"
End If
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "FMZOLL", , getSpedbuchList())
'DataGridView.DataSource = dt
Dim print As New frmPrintLayout
print.Text = "Speditionsbericht"
Dim rpt As New rptSpeditionsbericht
rpt.DataSource = dt
'Filter anzeigen
If displayFilter Then
rpt.lblFilterTxt.Visible = displayFilter
rpt.txtFilter.Visible = displayFilter
rpt.txtFilter.Text = generateReadableFilter(SQL.getStringReplaceScalarVar(getSpedBuchWhere, getSpedbuchList))
Else
If txtUeberschr.Text <> "" Then
rpt.txtFilter.Text = txtUeberschr.Text
rpt.txtFilter.Visible = True
rpt.lblFilterTxt.Visible = True
rpt.lblFilterTxt.Text = "Beschreibung:"
End If
End If
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "IMEX" : rpt.picVERAG.Image = My.Resources.IMEX_LOGO_simple : rpt.Label28.Text = "IMEX Customs Service GmbH"
Case "ATILLA" : rpt.picVERAG.Image = My.Resources.Atilla : rpt.Label28.Text = "ATILLA Spedition"
Case "UNISPED" : rpt.picVERAG.Image = My.Resources.Atilla : rpt.Label28.Text = "UNISPED Spedition"
Case "AMBAR" : rpt.picVERAG.Image = My.Resources.Atilla : rpt.Label28.Text = "AMBAR"
Case "FRONTOFFICE" : rpt.picVERAG.Image = My.Resources.Atilla : rpt.Label28.Text = "FRONTOFFICE"
Case "VERIMEX" : rpt.picVERAG.Image = My.Resources.verimex : rpt.Label28.Text = "VERIMEX"
Case Else
End Select
If CheckBox1.Checked Then
rpt.GroupHeader1.DataField = "FilialenNr" 'Gruppierung
End If
If rpt.DataSource.rows.count = 0 Then
rpt.Dispose() : print.Dispose()
MsgBox("Keine Daten vorhanden!")
Exit Sub
End If
Dim sum = 0
rpt.lblUeberschrift.Text = "Speditionsbericht " & txtAbfertDat.Text & " bis " & txtAbfertDatBis.Text
rpt.lblSachbearbeiter.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME
'rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
'Dim cnt As Integer = 0
rpt.lblDat.Text = Now.ToLongDateString
Dim sumAnz As Double = 0
Dim sumBar As Double = 0
If cbxSpedBerichtBar.Checked Then
rpt.lblBarzahlungsbetrag.Visible = True
rpt.lblBarTitle.Visible = True
rpt.lblSummeBar.Visible = True
Else
rpt.lblBarzahlungsbetrag.Visible = False
rpt.lblBarTitle.Visible = False
rpt.lblSummeBar.Visible = False
End If
rpt.lblFiliale.Text = "Alle Filialen"
AddHandler rpt.Detail.Format, Sub()
rpt.lblVon.Text = CDate(rpt.Fields.Item("von").Value).ToShortDateString
rpt.lblBis.Text = CDate(rpt.Fields.Item("bis").Value).ToShortDateString
rpt.lblAbfAnz.Text = rpt.Fields.Item("Anzahl").Value
rpt.lblAbfArtNr.Text = If(rpt.Fields.Item("Abfertigungsart").Value Is DBNull.Value, "-", rpt.Fields.Item("Abfertigungsart").Value)
rpt.lblAbfArt.Text = If(rpt.Fields.Item("Abfertigungsbezeichnung").Value Is DBNull.Value, "-", rpt.Fields.Item("Abfertigungsbezeichnung").Value)
rpt.lblBarzahlungsbetrag.Text = CDbl(rpt.Fields.Item("Barzahlungsbetrag").Value()).ToString("C")
sumBar += CDbl(rpt.Fields.Item("Barzahlungsbetrag").Value)
sumAnz += CDbl(rpt.Fields.Item("Anzahl").Value)
End Sub
AddHandler rpt.GroupHeader1.Format, Sub()
If CheckBox1.Checked Then rpt.lblFiliale.Text = SQL.getValueTxtBySql("SELECT CAST(FilialenNr as varchar (4)) + ' ' + Grenzstelle FROM filialen WHERE FilialenNr='" & rpt.Fields.Item("FilialenNr").Value & "'", "FMZOLL")
sumAnz = 0
sumBar = 0
End Sub
AddHandler rpt.GroupFooter1.Format, Sub()
rpt.lblSummeAnzahl.Text = sumAnz
rpt.lblSummeBar.Text = sumBar.ToString("C")
End Sub
print.Viewer.LoadDocument(rpt)
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
print.Show()
End If
End Sub
Private Sub Button9_Click(sender As Object, e As EventArgs) Handles btnQSAufteilung.Click
'MsgBox("Liefer erst korrekte Daten, wenn alle NL umgestellt!")
DataGridView.Columns.Clear()
Dim sqlstr As String = ""
sqlstr &= " SELECT Aviso.[Grenzstelle], SUM(Speditionsbuch.Abfertigungsanzahl) as Anzahl FROM Speditionsbuch INNER JOIN " & AVISOSERVER & " on Aviso.avisoid=Speditionsbuch.AvisoID WHERE PersonalnummerQS is not null "
sqlstr &= " and FilialenNr NOT IN ( 4801,4802,4806 ) "
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr & getSpedBuchWhere() &
" GROUP BY Aviso.[Grenzstelle]" &
" ORDER BY Anzahl DESC",
"FMZOLL", , getSpedbuchList())
DataGridView.DataSource = dt
End Sub
Private Sub Button9_Click_1(sender As Object, e As EventArgs) Handles Button9.Click, Button24.Click
Dim displayFilter = cbxFilterInBericht.Checked
Dim groupByKd = cboRolle._value
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ZOLL_Auswertungen", "SDL") Then
Dim sqlstr As String = ""
If txtMax.Text <> "" And Not IsNumeric(txtMax.Text) Then
MsgBox("Max muss eine Zahl sein!") : Exit Sub
End If
sqlstr &= " SELECT " & If(txtMax.Text <> "", " TOP " & txtMax.Text, "") & " isnull(Speditionsbuch.XXXXX,'-') as KdNr,isnull((SELECT Ordnungsbegriff FROM Adressen WHERE AdressenNr=XXXXX),'-') as Kunde, sum(Abfertigungsanzahl) as Anzahl,SUM(Barzahlungsbetrag) as Barzahlungsbetrag,MIN(Abfertigungsdatum) as von, MAX(Abfertigungsdatum) as bis FROM Speditionsbuch WHERE 1=1 "
sqlstr &= getSpedBuchWhere()
sqlstr &= " group by Speditionsbuch.XXXXX"
sqlstr &= " order by Anzahl DESC,Kunde"
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr.Replace("XXXXX", groupByKd), "FMZOLL", , getSpedbuchList())
'DataGridView.DataSource = dt
If sender.name = "Button24" Then
Me.Cursor = Cursors.WaitCursor
cProgramFunctions.genExcelFromDT_NEW(dt)
Me.Cursor = Cursors.Default
Else
Dim print As New frmPrintLayout
print.Text = "Speditionsbericht"
Dim rpt As New rptSpeditionsberichtKunde
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "IMEX" : rpt.picVERAG.Image = My.Resources.IMEX_LOGO_simple : rpt.Label28.Text = "IMEX Customs Service GmbH"
Case "ATILLA" : rpt.picVERAG.Image = My.Resources.Atilla : rpt.Label28.Text = "ATILLA Spedition"
Case Else
End Select
rpt.DataSource = dt
'Filter anzeigen
If displayFilter Then
rpt.lblFilterTxt.Visible = displayFilter
rpt.txtFilter.Visible = displayFilter
rpt.txtFilter.Text = generateReadableFilter(SQL.getStringReplaceScalarVar(getSpedBuchWhere, getSpedbuchList))
Else
If txtUeberschr.Text <> "" Then
rpt.txtFilter.Text = txtUeberschr.Text
rpt.txtFilter.Visible = True
rpt.lblFilterTxt.Visible = True
rpt.lblFilterTxt.Text = "Beschreibung:"
End If
End If
If rpt.DataSource.rows.count = 0 Then
rpt.Dispose() : print.Dispose()
MsgBox("Keine Daten vorhanden!")
Exit Sub
End If
Dim sum = 0
Dim cnt = 0
rpt.lblUeberschrift.Text = "Speditionsbericht nach Kunden " & txtAbfertDat.Text & " bis " & txtAbfertDatBis.Text
rpt.lblSachbearbeiter.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME
'rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
'Dim cnt As Integer = 0
rpt.lblDat.Text = Now.ToLongDateString
Dim sumAnz As Double = 0
Dim sumBar As Double = 0
rpt.lblFiliale.Text = "Alle Filialen"
AddHandler rpt.Detail.Format, Sub()
cnt += 1
' rpt.lblVon.Text = CDate(rpt.Fields.Item("von").Value).ToShortDateString
' rpt.lblBis.Text = CDate(rpt.Fields.Item("bis").Value).ToShortDateString
rpt.lblNr.Text = cnt
' rpt.lblAbfArtNr.Text = rpt.Fields.Item("Abfertigungsart").Value
' rpt.lblAbfArt.Text = rpt.Fields.Item("Abfertigungsbezeichnung").Value
rpt.lblAbfAnz.Text = rpt.Fields.Item("Anzahl").Value
rpt.lblKunde.Text = CInt(If(rpt.Fields.Item("KdNr").Value, "0")).ToString("D6") & " " & rpt.Fields.Item("Kunde").Value
rpt.lblBarzahlungsbetrag.Text = CDbl(rpt.Fields.Item("Barzahlungsbetrag").Value()).ToString("C")
sumBar += CDbl(rpt.Fields.Item("Barzahlungsbetrag").Value)
sumAnz += CDbl(rpt.Fields.Item("Anzahl").Value)
End Sub
AddHandler rpt.GroupHeader1.Format, Sub()
sumAnz = 0
sumBar = 0
End Sub
AddHandler rpt.GroupFooter1.Format, Sub()
rpt.lblSummeAnzahl.Text = sumAnz
rpt.lblSummeBar.Text = sumBar.ToString("C")
End Sub
print.Viewer.LoadDocument(rpt)
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
print.Show()
End If
End If
End Sub
Private Sub Button10_Click(sender As Object, e As EventArgs) Handles Button10.Click
Dim displayFilter = cbxFilterInBericht.Checked
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ZOLL_Auswertungen", "SDL") Then
Dim sqlstr As String = ""
' If CheckBox1.Checked Then
Dim sql_KdAuftragsNr = ",Speditionsbuch.KdAuftragsNr as KdAuftragsNr"
Select Case cboDetailberichtKdAtrNr._value
Case "AVISIERER" : sql_KdAuftragsNr = ",Speditionsbuch.KdAuftragsNrAvisierer as KdAuftragsNr"
Case "EMPFAENGER" : sql_KdAuftragsNr = ",Speditionsbuch.KdAuftragsNrEmpfaenger as KdAuftragsNr"
Case "FRACHTFUEHRER" : sql_KdAuftragsNr = ",Speditionsbuch.KdAuftragsNrFrachtfuehrer as KdAuftragsNr"
End Select
sqlstr &= " SELECT FilialenNr, AbfertigungsNr,UnterNr, Speditionsbuch.Abfertigungsart as Abfertigungsart ,Abfertigungsdatum, BelegNr, Rohmasse, Vermerk, Packstücke, AbsenderKundenNr, Absender, EmpfängerKundenNr, Empfänger, VermittlerKundenNr, Vermittler, "
sqlstr &= " FrachtführerKundenNr, Frachtführer, AvisiererKundenNr, Avisierer,Währungscode,Barzahlungsbetrag,Rechnungsbetrag, [LKW Kennzeichen],"
sqlstr &= " Abfertigungsanzahl, Speditionsbuch.Abfertigungsart, Abfertigungsbezeichnung,AvisoID" & sql_KdAuftragsNr & ",Speditionsbuch.KdAuftragsNrAvisierer,Speditionsbuch.KdAuftragsNrEmpfaenger,Speditionsbuch.KdAuftragsNrFrachtfuehrer, Speditionsbuch.Bemerkungen,Speditionsbuch.Zollstelle ,Speditionsbuch.Grenzstelle "
sqlstr &= " FROM Speditionsbuch LEFT JOIN Abfertigungsarten ON Speditionsbuch.Abfertigungsart=Abfertigungsarten.Abfertigungsart "
sqlstr &= " LEFT JOIN Währungstabelle on Währungstabelle.Währungsschlüssel=speditionsbuch.Währungsschlüssel WHERE 1=1 "
sqlstr &= getSpedBuchWhere()
If CheckBox2.Checked Then : sqlstr &= " order by FilialenNr, AvisoId,Speditionsbuch.Abfertigungsart,Abfertigungsdatum"
Else : sqlstr &= " order by FilialenNr, Speditionsbuch.Abfertigungsart,Abfertigungsdatum"
End If
' MsgBox(sqlstr)
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "FMZOLL", , getSpedbuchList())
'DataGridView.DataSource = dt
Dim print As New frmPrintLayout
print.Text = "Speditionsbericht"
Dim rpt As New rptSpeditionsberichtKdSpez
rpt.PageSettings.PaperKind = GrapeCity.ActiveReports.Printing.PaperKind.A4
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "IMEX" : rpt.picVERAG.Image = My.Resources.IMEX_LOGO_simple : rpt.Label28.Text = "IMEX Customs Service GmbH"
Case "ATILLA" : rpt.picVERAG.Image = My.Resources.Atilla : rpt.Label28.Text = "ATILLA Spedition"
Case "VERIMEX" : rpt.picVERAG.Image = My.Resources.verimex : rpt.Label28.Text = "VERIMEX"
Case Else
End Select
rpt.DataSource = dt
'Filter anzeigen
If displayFilter Then
rpt.lblFilterTxt.Visible = displayFilter
rpt.txtFilter.Visible = displayFilter
rpt.txtFilter.Text = generateReadableFilter(SQL.getStringReplaceScalarVar(getSpedBuchWhere, getSpedbuchList))
Else
If txtUeberschr.Text <> "" Then
rpt.txtFilter.Text = txtUeberschr.Text
rpt.txtFilter.Visible = True
rpt.lblFilterTxt.Visible = True
rpt.lblFilterTxt.Text = "Beschreibung:"
End If
End If
Dim Zahlungsdetails = cbxRptDetailsZahlungsdetails.Checked
rpt.lblBarTital.Visible = Zahlungsdetails
rpt.lblBarzahlungsbetrag.Visible = Zahlungsdetails
rpt.lblGesGesSumBarzahlungsbetrag.Visible = Zahlungsdetails
rpt.lblGesSumBarzahlungsbetrag.Visible = Zahlungsdetails
rpt.lblGesSumRechnungsbetrag.Visible = Zahlungsdetails
rpt.lblGesGesSumRechnungsbetrag.Visible = Zahlungsdetails
rpt.Label43.Visible = Zahlungsdetails
rpt.Label43.Visible = Zahlungsdetails
rpt.Label34.Visible = Zahlungsdetails
rpt.Label35.Visible = Zahlungsdetails
rpt.Label13.Visible = Zahlungsdetails
rpt.Label17.Visible = Zahlungsdetails
rpt.lblSumRechnungsbetrag.Visible = Zahlungsdetails
rpt.lblSumBarzahlungsbetrag.Visible = Zahlungsdetails
rpt.Label19.Visible = Zahlungsdetails
rpt.Label39.Visible = Zahlungsdetails
rpt.Label46.Visible = Zahlungsdetails
rpt.Label47.Visible = Zahlungsdetails
rpt.lblGesWaehrung.Visible = Zahlungsdetails
rpt.lblGesgesWaehrung.Visible = Zahlungsdetails
If CheckBox1.Checked Then
rpt.GroupHeader1.DataField = "FilialenNr" 'Gruppierung
Else
rpt.lblFiliale.Text = "Alle Filialen"
rpt.GroupFooter1.Visible = False ' Sonst doppelete Summe
End If
If CheckBox2.Checked Then
rpt.GroupHeader3.DataField = "AvisoId" 'Gruppierung
rpt.lblGesSumLKWsFilialeAnzahl.Visible = True
rpt.lblSumFilialeLKWs.Visible = True
rpt.lblGesGesSumLKWsAnzahl.Visible = True
rpt.lblGesGesSumLKWs.Visible = True
Else
rpt.GroupHeader3.Visible = False ' Sonst doppelete Summe
rpt.GroupFooter3.Visible = False ' Sonst doppelete Summe
rpt.lblGesGesSumLKWsAnzahl.Visible = False
rpt.lblGesGesSumLKWs.Visible = False
End If
If CheckBox3.Checked Then
rpt.GroupHeader2.DataField = "Abfertigungsart" 'Gruppierung
Else
rpt.GroupHeader2.Visible = False ' Sonst doppelete Summe
rpt.GroupFooter2.Visible = False ' Sonst doppelete Summe
End If
' rpt.GroupHeader2.DataField = "AvisoId" 'Gruppierung
' MsgBox(rpt.DataSource.rows.count)
If rpt.DataSource.rows.count = 0 Then
rpt.Dispose() : print.Dispose()
MsgBox("Keine Daten vorhanden!")
Exit Sub
End If
Dim AvsioIdNull As String = ""
For Each r In rpt.DataSource.rows
If r("AvisoId") Is DBNull.Value OrElse r("AvisoId") <= 0 Then
AvsioIdNull &= r("FilialenNr") & " " & r("AbfertigungsNr") & " " & r("UnterNr") & " - " & r("Abfertigungsdatum") & " - " & r("LKW Kennzeichen") & vbNewLine
End If
Next
If AvsioIdNull <> "" Then
MsgBox("Achtung: folgende Sendungen sind keinem LKW/Aviso zugeordnet:" & vbNewLine & AvsioIdNull)
End If
Dim sum = 0
rpt.lblUeberschrift.Text = "Speditionsbuch Details " & txtAbfertDat.Text & " bis " & txtAbfertDatBis.Text
rpt.lblSachbearbeiter.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME
'rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
'Dim cnt As Integer = 0
rpt.lblDat.Text = Now.ToLongDateString
Dim sumAnz As Double = 0
Dim sumBar As Double = 0
Dim sumRg As Double = 0
Dim gesSumAnz As Double = 0
Dim gesSumBar As Double = 0
Dim gesSumRg As Double = 0
Dim gesgesSumAnz As Double = 0
Dim gesgesSumBar As Double = 0
Dim gesgesSumRg As Double = 0
Dim SumAnzLKW As Double = 0
Dim gesSumAnzLKW As Double = 0
Dim gesgesSumAnzLKW As Double = 0
Dim sumAbfBez = ""
Dim gesFilBez = ""
' Dim gesgesAbfBez = ""
AddHandler rpt.Detail.Format, Sub()
' rpt.lblVon.Text = CDate(rpt.Fields.Item("von").Value).ToShortDateString
' rpt.lblLKWNr.Text = CDate(rpt.Fields.Item("bis").Value).ToShortDateString
rpt.lblPosNr.Text = rpt.Fields.Item("FilialenNr").Value & " " & rpt.Fields.Item("AbfertigungsNr").Value & " " & rpt.Fields.Item("UnterNr").Value
rpt.lblAbfDatum.Text = "Abf.Datum: " & rpt.Fields.Item("Abfertigungsdatum").Value
rpt.lblBezugsNr.Text = checkNull(rpt.Fields.Item("BelegNr").Value)
rpt.lblRohmasse.Text = "Rohmasse: " & checkNull(rpt.Fields.Item("Rohmasse").Value, "0") & "kg"
rpt.txtVermerk.Text = checkNull(rpt.Fields.Item("Vermerk").Value)
rpt.txtPackstücke.Text = checkNull(rpt.Fields.Item("Packstücke").Value)
If cbxSpedDetailBem.Checked Then
If checkNull(rpt.Fields.Item("Bemerkungen").Value) <> "" Then
rpt.txtPackstücke.Text = (rpt.txtPackstücke.Text & vbNewLine & vbNewLine & checkNull(rpt.Fields.Item("Bemerkungen").Value)).trim
End If
End If
If rpt.txtPackstücke.Text.Length > 550 Then
rpt.txtPackstücke.Text = rpt.txtPackstücke.Text.Substring(0, 550) & "..."
End If
rpt.Label11.Text = ""
If rpt.Fields.Item("Grenzstelle").Value IsNot Nothing AndAlso rpt.Fields.Item("Grenzstelle").Value IsNot DBNull.Value Then
If rpt.Fields.Item("Grenzstelle").Value.Replace("???", "").Replace("WO_FREMD", "") = "" Then
rpt.Label11.Text = SQL.getValueTxtBySql("SELECT Code +' - ' + [Description] FROM tbl_DY_ZollDE_C0141_Zollstellen WHERE Code='" & If(rpt.Fields.Item("Zollstelle").Value, "") & "' AND ((StartDate is null OR StartDate< GETDATE()) AND (EndDate is null OR EndDate> GETDATE()))", "FMZOLL")
Else
Dim GRZ As New VERAG_PROG_ALLGEMEIN.cGrenzstelle(rpt.Fields.Item("Grenzstelle").Value)
If GRZ IsNot Nothing AndAlso GRZ.hasEntry Then
rpt.Label11.Text = If(GRZ.grz_ZollamtDST, "") & " " & If(GRZ.grz_ZollamtBezeichnung, "") & vbNewLine & rpt.Fields.Item("Grenzstelle").Value
End If
End If
End If
rpt.lblAbsKdNr.Text = checkNull(rpt.Fields.Item("AbsenderKundenNr").Value)
rpt.lblAbs.Text = checkNull(rpt.Fields.Item("Absender").Value)
rpt.lblEmpfKdNr.Text = checkNull(rpt.Fields.Item("EmpfängerKundenNr").Value)
rpt.lblEmpf.Text = checkNull(rpt.Fields.Item("Empfänger").Value)
rpt.lblAuftrKdNr.Text = checkNull(rpt.Fields.Item("VermittlerKundenNr").Value)
rpt.lblAuftr.Text = checkNull(rpt.Fields.Item("Vermittler").Value)
rpt.lblFrachtfKdNr.Text = checkNull(rpt.Fields.Item("FrachtführerKundenNr").Value)
rpt.lblFrachtf.Text = checkNull(rpt.Fields.Item("Frachtführer").Value)
' rpt.lblLKWNr.Text = rpt.Fields.Item("AvisiererKundenNr").Value
' rpt.lblLKWNr.Text = rpt.Fields.Item("Avisierer").Value
rpt.lblWaehrung.Text = checkNull(rpt.Fields.Item("Währungscode").Value)
'lblGesgesWaehrung.te
rpt.lblKdAuftragNr.Text = checkNull(rpt.Fields.Item("KdAuftragsNr").Value)
If rpt.lblKdAuftragNr.Text <> "" Then rpt.lblKdAuftragNr.Text = "Auftrag: " & rpt.lblKdAuftragNr.Text
Dim bar As Double = 0
Dim rg As Double = 0
Dim anz As Double = 0
If IsNumeric(checkNull(rpt.Fields.Item("Barzahlungsbetrag").Value)) Then bar = CDbl(rpt.Fields.Item("Barzahlungsbetrag").Value())
If IsNumeric(checkNull(rpt.Fields.Item("Rechnungsbetrag").Value)) Then rg = CDbl(rpt.Fields.Item("Rechnungsbetrag").Value())
rpt.lblBarzahlungsbetrag.Text = CDbl(bar).ToString("N2", CultureInfo.CurrentCulture)
rpt.lblRechnungsBetrag.Text = CDbl(rg).ToString("N2", Globalization.CultureInfo.CurrentCulture)
' rpt.lblRechnungsbetragInEur.Text = rpt.Fields.Item("Rechnungsbetrag").Value * rpt.Fields.Item("Umrechnungskurs").Value
rpt.lblLKWNr.Text = checkNull(rpt.Fields.Item("LKW Kennzeichen").Value)
rpt.lblAnzahl.Text = checkNull(rpt.Fields.Item("Abfertigungsanzahl").Value)
rpt.lblAbfertigungsart.Text = checkNull(rpt.Fields.Item("Abfertigungsbezeichnung").Value)
' rpt.lblAbs.Text = checkNull(rpt.Fields.Item("Abfertigungsbezeichnung").Value)
' rpt.lblBarzahlungsbetrag.Text = CDbl(rpt.Fields.Item("Barzahlungsbetrag").Value()).ToString("C")
'sumBar += CDbl(rpt.Fields.Item("Barzahlungsbetrag").Value)
If IsNumeric(checkNull(rpt.Fields.Item("Abfertigungsanzahl").Value)) Then anz = CDbl(rpt.Fields.Item("Abfertigungsanzahl").Value)
sumAbfBez = checkNull(rpt.Fields.Item("Abfertigungsbezeichnung").Value)
sumBar += bar
sumRg += rg
sumAnz += anz
gesSumAnz += anz
gesSumBar += bar
gesSumRg += rg
gesgesSumAnz += anz
gesgesSumBar += bar
gesgesSumRg += rg
SumAnzLKW += anz
End Sub
AddHandler rpt.GroupHeader1.Format, Sub()
If CheckBox1.Checked Then
rpt.lblFiliale.Text = SQL.getValueTxtBySql("SELECT CAST(FilialenNr as varchar (4)) + ' ' + Grenzstelle FROM filialen WHERE FilialenNr='" & rpt.Fields.Item("FilialenNr").Value & "'", "FMZOLL")
rpt.lblGesSumFilialeBez.Text = rpt.lblFiliale.Text
Else
rpt.lblFiliale.Text = "Alle Filialen"
End If
gesSumAnz = 0
gesSumBar = 0
gesSumRg = 0
gesSumAnzLKW = 0
End Sub
AddHandler rpt.GroupHeader2.Format, Sub()
rpt.lblAbfertigungsartHeader.Text = checkNull(rpt.Fields.Item("Abfertigungsbezeichnung").Value)
sumBar = 0
sumRg = 0
sumAnz = 0
End Sub
AddHandler rpt.GroupHeader3.Format, Sub()
rpt.lblLKW.Text = "LKW: " & If(rpt.Fields.Item("LKW Kennzeichen").Value Is DBNull.Value, "LKW: - keine Zuordnung -", checkNull(rpt.Fields.Item("LKW Kennzeichen").Value))
rpt.lblGesSumLKWBez.Text = "LKW: " & If(rpt.Fields.Item("LKW Kennzeichen").Value Is DBNull.Value, "LKW: - keine Zuordnung -", checkNull(rpt.Fields.Item("LKW Kennzeichen").Value))
SumAnzLKW = 0
gesSumAnzLKW += 1
gesgesSumAnzLKW += 1
End Sub
AddHandler rpt.GroupFooter2.Format, Sub()
rpt.lblSumAbfertigungsart.Text = sumAbfBez
rpt.lblSumBarzahlungsbetrag.Text = sumBar.ToString("N2", CultureInfo.CurrentCulture)
rpt.lblSumRechnungsbetrag.Text = sumRg.ToString("N2", CultureInfo.CurrentCulture)
rpt.lblSumAnzahl.Text = sumAnz.ToString("N0")
'rpt.lblSuag.Text = sumRg.ToString("C")
End Sub
AddHandler rpt.GroupFooter3.Format, Sub()
rpt.lblGesSumAnzahlLKW.Text = SumAnzLKW
'rpt.lblSuag.Text = sumRg.ToString("C")
End Sub
AddHandler rpt.GroupFooter1.Format, Sub()
' If CheckBox1.Checked Then
' rpt.lblGesSumFilialeBez.Text = SQL.getValueTxtBySql("SELECT CAST(FilialenNr as varchar (4)) + ' ' + Grenzstelle FROM filialen WHERE FilialenNr='" & rpt.Fields.Item("FilialenNr").Value & "'", "FMZOLL")
' Else
' rpt.lblGesSumFilialeBez.Text = ""
' End If
rpt.lblGesSumBarzahlungsbetrag.Text = gesSumBar.ToString("N2", CultureInfo.CurrentCulture)
rpt.lblGesSumRechnungsbetrag.Text = gesSumRg.ToString("N2", CultureInfo.CurrentCulture)
rpt.lblGesSumAnzahl.Text = gesSumAnz.ToString("N0")
rpt.lblGesSumLKWsFilialeAnzahl.Text = gesSumAnzLKW
End Sub
AddHandler rpt.ReportFooter1.Format, Sub()
rpt.lblGesGesSumBarzahlungsbetrag.Text = gesgesSumBar.ToString("N2", CultureInfo.CurrentCulture)
rpt.lblGesGesSumRechnungsbetrag.Text = gesgesSumRg.ToString("N2", CultureInfo.CurrentCulture)
rpt.lblGesGesSumAnzahl.Text = gesgesSumAnz.ToString("N0")
rpt.lblGesGesSumLKWsAnzahl.Text = gesgesSumAnzLKW
End Sub
print.Viewer.LoadDocument(rpt)
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
print.Show()
End If
End Sub
Function checkNull(o As Object, Optional ret As String = "") As Object
If o Is Nothing Then Return ret
If o Is DBNull.Value Then Return ret
Return o
End Function
Private Sub Button14_Click(sender As Object, e As EventArgs) Handles Button14.Click
'MsgBox("Liefer erst korrekte Daten, wenn alle NL umgestellt!")
DataGridView.Columns.Clear()
Dim sqlstr As String = ""
sqlstr &= " select SUM(Speditionsbuch.Abfertigungsanzahl) as Anzahl ,[Grenzstelle] from Speditionsbuch WHERE 1=1 "
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr & getSpedBuchWhere() & " GROUP BY [Grenzstelle] order by Anzahl desc ",
"FMZOLL", , getSpedbuchList())
DataGridView.DataSource = dt
End Sub
Private Sub Button15_Click(sender As Object, e As EventArgs) Handles btnCSAufteilung.Click
'MsgBox("Liefer erst korrekte Daten, wenn alle NL umgestellt!")
DataGridView.Columns.Clear()
Dim sqlstr As String = ""
sqlstr &= " SELECT Aviso.[Grenzstelle], SUM(Speditionsbuch.Abfertigungsanzahl) as Anzahl FROM Speditionsbuch INNER JOIN " & AVISOSERVER & " on Aviso.avisoid=Speditionsbuch.AvisoID WHERE Abfertigungsart IN (26,28) "
sqlstr &= " AND Aviso.[Grenzstelle] <> 'SFD' and FilialenNr NOT IN ( 4801,4802,4806 ) "
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr & getSpedBuchWhere() &
" GROUP BY Aviso.[Grenzstelle]" &
" ORDER BY Anzahl DESC",
"FMZOLL", , getSpedbuchList())
DataGridView.DataSource = dt
End Sub
Private Sub tbcntr_SelectedIndexChanged(sender As Object, e As EventArgs) Handles tbcntr.SelectedIndexChanged
btnSuche.PerformClick()
End Sub
Private Sub DataGridView_ColumnHeaderMouseClick(sender As Object, e As DataGridViewCellMouseEventArgs) Handles DataGridView.ColumnHeaderMouseClick
If e.Button = Windows.Forms.MouseButtons.Right Then
End If
End Sub
Private Sub cbxOderEmpfanger_CheckedChanged(sender As Object, e As EventArgs) Handles cbxOderEmpfanger.CheckedChanged
kdtxtEmpfaenger.Enabled = Not cbxOderEmpfanger.Checked
End Sub
Private Sub Button15_Click_1(sender As Object, e As EventArgs) Handles Button15.Click
Try
If DataGridView.SelectedRows.Count = 0 Then Exit Sub
If Not IsNumeric(DataGridView.SelectedRows(0).Cells("FilialenNr").Value) Then Exit Sub
If Not IsNumeric(DataGridView.SelectedRows(0).Cells("AbfertigungsNr").Value) Then Exit Sub
cProgramFunctions.openThereforeNavigator(DataGridView.SelectedRows(0).Cells("FilialenNr").Value.ToString & DataGridView.SelectedRows(0).Cells("AbfertigungsNr").Value.ToString, DataGridView.SelectedRows(0).Cells("FilialenNr").Value)
Catch ex As Exception
MsgBox("Fehler beim Öffnen!" & vbNewLine & ex.Message & ex.StackTrace)
End Try
End Sub
Private Sub cbxFilterInBericht_CheckedChanged(sender As Object, e As EventArgs) Handles cbxFilterInBericht.CheckedChanged
txtUeberschr.Enabled = Not cbxFilterInBericht.Checked
End Sub
Private Sub Button16_Click(sender As Object, e As EventArgs) Handles Button16.Click
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ATILLA_VERWALTUNG", "AVISO") Or VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ZOLL_Auswertungen", "SDL") Then
Dim f As New Form
Dim u As New SDL.usrCntlBrgBuchungenFremd
f.Size = New Size(720, 185)
f.Icon = Me.FindForm.Icon
u.Dock = DockStyle.Fill
f.Controls.Add(u)
f.StartPosition = FormStartPosition.CenterScreen
f.Show(Me)
End If
End Sub
Private Sub Button17_Click(sender As Object, e As EventArgs) Handles Button17.Click
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ATILLA_VERWALTUNG", "AVISO") Or VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ZOLL_Auswertungen", "SDL") Then
Dim f As New Form
Dim u As New SDL.usrCntlBrgBuchungenVERAG
f.Size = New Size(720, 185)
f.Icon = Me.FindForm.Icon
u.Dock = DockStyle.Fill
f.Controls.Add(u)
f.StartPosition = FormStartPosition.CenterScreen
f.Show(Me)
End If
End Sub
Private Sub Button18_Click(sender As Object, e As EventArgs) Handles Button18.Click
Dim kdnrTmp = -1
Dim FirmaTmp = ""
If kdtxtAuftraggeber.KdNr_value > 0 Then kdnrTmp = kdtxtAuftraggeber.KdNr_value : FirmaTmp = kdtxtAuftraggeber.Text
If kdtxtEmpfaenger.KdNr_value > 0 Then kdnrTmp = kdtxtEmpfaenger.KdNr_value : FirmaTmp = kdtxtEmpfaenger.Text
If kdtxtEndempfaenger.KdNr_value > 0 Then kdnrTmp = kdtxtEndempfaenger.KdNr_value : FirmaTmp = kdtxtEndempfaenger.Text
If kdtxtAvisierer.KdNr_value > 0 Then kdnrTmp = kdtxtAvisierer.KdNr_value : FirmaTmp = kdtxtAvisierer.Text
Dim VBNr = -1
FirmaTmp = FirmaTmp.Replace("*", "").Replace("/", "").Replace(";", "").Replace(",", "").Replace("&", "").Replace("?", "")
Dim path = getGelangensbestätigung(FirmaTmp, kdnrTmp,, VBNr)
If path <> "" Then
SDL.FormularManagerNEU.OPEN_FORM(SDL.FormularManagerArten.Gelangensbestaetigung, kdnrTmp, {kdnrTmp, path, VBNr})
End If
End Sub
Function getrHandlingAussenstellen(Optional showDok As Boolean = True, Optional Handlingssatz As String = "", Optional whereOpt As String = "", Optional ignoreFiliale As Boolean = False) 'Firma As String, kdnrTmp As Integer, Optional showDok As Boolean = False, Optional ByRef VBNr As Integer = -1) As String
Dim displayFilter = cbxFilterInBericht.Checked
If ignoreFiliale Or VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ZOLL_Auswertungen", "SDL") Then
Dim sqlstr As String = ""
' If CheckBox1.Checked Then
Dim sql_KdAuftragsNr = "" '",Speditionsbuch.KdAuftragsNr as KdAuftragsNr"
'sqlstr &= " SELECT FilialenNr, AbfertigungsNr,UnterNr, Speditionsbuch.Abfertigungsart as Abfertigungsart ,Abfertigungsdatum, BelegNr, Rohmasse, Vermerk, Packstücke, AbsenderKundenNr, Absender, EmpfängerKundenNr, Empfänger,EndEmpfänger,EndEmpfängerKundenNr, VermittlerKundenNr, Vermittler, "
'sqlstr &= " FrachtführerKundenNr, Frachtführer, AvisiererKundenNr, Avisierer,Währungscode,Barzahlungsbetrag,Rechnungsbetrag, [LKW Kennzeichen],"
'sqlstr &= " Abfertigungsanzahl, Speditionsbuch.Abfertigungsart, Abfertigungsbezeichnung,AvisoID" & sql_KdAuftragsNr & ",Speditionsbuch.KdAuftragsNrAvisierer,Speditionsbuch.KdAuftragsNrEmpfaenger,Speditionsbuch.KdAuftragsNrFrachtfuehrer, Speditionsbuch.Bemerkungen "
sqlstr &= " SELECT Speditionsbuch.*,Abfertigungsbezeichnung"
sqlstr &= " FROM Speditionsbuch LEFT JOIN Abfertigungsarten ON Speditionsbuch.Abfertigungsart=Abfertigungsarten.Abfertigungsart "
sqlstr &= " WHERE 1=1 "
sqlstr &= getSpedBuchWhere(ignoreFiliale)
sqlstr &= whereOpt
' sqlstr &= " order by FilialenNr, AvisoId,Speditionsbuch.Abfertigungsart,Abfertigungsdatum"
sqlstr &= " order by Speditionsbuch.Abfertigungsart,FilialenNr,Abfertigungsdatum"
' MsgBox(sqlstr)
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "FMZOLL", , getSpedbuchList())
Dim header = "Handling / Front-Office "
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "IMEX" : header &= "IMEX Customs Service GmbH"
Case "ATILLA" : header &= "ATILLA Spedition"
Case "AMBAR" : header = "AMBAR Logistc Services GmbH - Handling / AMBAR Bad Reichenhall"
Case Else
End Select
If vbYes = MsgBox("Möchten Sie den Bericht ZUSÄTZLICH als Excel exportieren?", vbYesNoCancel) Then
cProgramFunctions.genExcelFromDT_NEW(dt,,, header)
End If
Dim print As New frmPrintLayout
print.Text = "Handling / Front-Office"
Dim rpt As New rptSpeditionsbericht_HandlingAussenstellen
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "IMEX" : rpt.picVERAG.Image = My.Resources.IMEX_LOGO_simple : rpt.Label28.Text = "IMEX Customs Service GmbH"
Case "ATILLA" : rpt.picVERAG.Image = My.Resources.Atilla : rpt.Label28.Text = "ATILLA Spedition"
Case "AMBAR" : rpt.picVERAG.Image = My.Resources.ambar_simple : rpt.Label28.Text = "AMBAR Logistc Services GmbH" : print.Text = "Handling / AMBAR Bad Reichenhall"
Case Else
End Select
rpt.DataSource = dt
If CheckBox1.Checked Then
rpt.GroupHeader1.DataField = "Abfertigungsart" 'Gruppierung
End If
If rpt.DataSource.rows.count = 0 Then
rpt.Dispose() : print.Dispose()
MsgBox("Keine Daten vorhanden!")
Return ""
End If
Dim sum = 0
rpt.lblSachbearbeiter.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME
'rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
Dim defaultHandlingPreis As Double = 15
Dim HandlingList As VERAG_PROG_ALLGEMEIN.cHandlingssaetzeInternLIST = Nothing
If Handlingssatz <> "" Then
HandlingList = New VERAG_PROG_ALLGEMEIN.cHandlingssaetzeInternLIST(Handlingssatz)
End If
'Dim cnt As Integer = 0
rpt.lblDat.Text = Now.ToLongDateString
'Dim sumRg As Double = 0
'Dim gesSumAnz As Double = 0
'Dim gesSumBar As Double = 0
'Dim gesSumRg As Double = 0
'Dim gesgesSumAnz As Double = 0
'Dim gesgesSumBar As Double = 0
'Dim gesgesSumRg As Double = 0
'Dim SumAnzLKW As Double = 0
'Dim gesSumAnzLKW As Double = 0
'Dim gesgesSumAnzLKW As Double = 0
Dim gesAnz As Double = 0
Dim gesBar As Double = 0
Dim geshandling As Double = 0
Dim geszukassBAR As Double = 0
Dim sumAnz As Double = 0
Dim sumBar As Double = 0
Dim sumhandling As Double = 0
Dim sumzukassBAR As Double = 0
Dim sumAbfBez = ""
Dim gesFilBez = ""
' Dim gesgesAbfBez = ""
Dim SumText = ""
AddHandler rpt.Detail.Format, Sub()
' rpt.lblVon.Text = CDate(rpt.Fields.Item("von").Value).ToShortDateString
' rpt.lblLKWNr.Text = CDate(rpt.Fields.Item("bis").Value).ToShortDateString
rpt.lblPosNr.Text = rpt.Fields.Item("FilialenNr").Value & " " & rpt.Fields.Item("AbfertigungsNr").Value & " " & rpt.Fields.Item("UnterNr").Value
rpt.lblAbfDatum.Text = rpt.Fields.Item("Abfertigungsdatum").Value
rpt.lblEndEmpfKdNr.Text = checkNull(rpt.Fields.Item("EmpfängerKundenNr").Value)
rpt.lblEndEmpf.Text = checkNull(rpt.Fields.Item("Empfänger").Value)
Dim bar As Double = 0
Dim handling As Double = 0
Dim zukassBAR As Double = 0
' Dim rg As Double = 0
Dim anz As Double = 0
If IsNumeric(checkNull(rpt.Fields.Item("Barzahlungsbetrag").Value)) Then bar = CDbl(rpt.Fields.Item("Barzahlungsbetrag").Value())
If IsNumeric(checkNull(rpt.Fields.Item("HandlingZuKassieren").Value)) Then zukassBAR = CDbl(rpt.Fields.Item("HandlingZuKassieren").Value())
' If IsNumeric(checkNull(rpt.Fields.Item("Rechnungsbetrag").Value)) Then rg = CDbl(rpt.Fields.Item("Rechnungsbetrag").Value())
If IsNumeric(checkNull(rpt.Fields.Item("Abfertigungsanzahl").Value)) Then anz = CDbl(rpt.Fields.Item("Abfertigungsanzahl").Value)
Dim Abfertigungsart = checkNull(rpt.Fields.Item("Abfertigungsart").Value)
handling = getHandlingKostByListe(Abfertigungsart, defaultHandlingPreis, HandlingList) * anz
' rpt.lblLKWNr.Text = checkNull(rpt.Fields.Item("LKW Kennzeichen").Value)
rpt.lblAnzahl.Text = checkNull(rpt.Fields.Item("Abfertigungsanzahl").Value)
rpt.lblAbfertigungsart.Text = checkNull(rpt.Fields.Item("Abfertigungsbezeichnung").Value)
' rpt.lblAbs.Text = checkNull(rpt.Fields.Item("Abfertigungsbezeichnung").Value)
rpt.lblBarzahlungsbetrag.Text = CDbl(bar).ToString("C2")
rpt.lblzuKassierenHandling.Text = CDbl(zukassBAR).ToString("C2")
rpt.lblHandlingsgebuehr.Text = CDbl(handling).ToString("C2")
'sumBar += CDbl(rpt.Fields.Item("Barzahlungsbetrag").Value)
sumAbfBez = checkNull(rpt.Fields.Item("Abfertigungsbezeichnung").Value)
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "AMBAR"
rpt.lblBarzahlungsbetrag.Visible = False
rpt.lblzuKassierenHandling.Visible = False
End Select
sumAnz += anz
sumBar += bar
sumhandling += handling
sumzukassBAR += zukassBAR
gesAnz += anz
gesBar += bar
geshandling += handling
geszukassBAR += zukassBAR
End Sub
Dim bezeichnung = ""
AddHandler rpt.ReportFooter1.Format, Sub()
rpt.lblGesGesSumAnzahl.Text = sumAnz.ToString("N0")
rpt.lblSumBarzahlungsbetrag.Text = sumBar.ToString("N2")
rpt.lblSumzuKassierenHandling.Text = sumzukassBAR.ToString("N2")
rpt.lblSumHandlingsgebuehr.Text = sumhandling.ToString("N2")
rpt.txtUebersicht.Text = SumText
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "AMBAR"
rpt.lblSumBarzahlungsbetrag.Visible = False
rpt.lblSumzuKassierenHandling.Visible = False
End Select
End Sub
AddHandler rpt.GroupHeader1.Format, Sub()
rpt.lblAbfArtUeberschrift.Text = checkNull(rpt.Fields.Item("Abfertigungsart").Value) & " - " & checkNull(rpt.Fields.Item("Abfertigungsbezeichnung").Value)
bezeichnung = rpt.lblAbfArtUeberschrift.Text
gesAnz = 0
gesBar = 0
geshandling = 0
geszukassBAR = 0
End Sub
AddHandler rpt.GroupFooter1.Format, Sub()
rpt.lblGesSumAnzahl.Text = gesAnz.ToString("N0")
rpt.lblGesBarzahlungsbetrag.Text = gesBar.ToString("N2")
rpt.lblGeszuKassierenHandling.Text = geszukassBAR.ToString("N2")
rpt.lblGesHandlingsgebuehr.Text = geshandling.ToString("N2")
SumText &= gesAnz.ToString("N0") & vbTab & bezeichnung & vbNewLine
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "AMBAR"
rpt.lblGesBarzahlungsbetrag.Visible = False
rpt.lblGeszuKassierenHandling.Visible = False
End Select
End Sub
If showDok Then
print.Viewer.LoadDocument(rpt)
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
print.Show()
Else
Dim tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("HandlingFO.pdf", ".pdf", True, False)
Dim p As New GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport
rpt.Run(False)
p.NeverEmbedFonts = ""
p.Export(rpt.Document, tmpPath)
rpt.Dispose()
Return tmpPath
End If
End If
Return ""
End Function
Function getHandlingKostByListe(AbfertigungsArt As Integer, defaultHandlingPreis As Double, HandlingList As VERAG_PROG_ALLGEMEIN.cHandlingssaetzeInternLIST) As Double
If HandlingList IsNot Nothing AndAlso HandlingList.LIST IsNot Nothing Then
For Each h In HandlingList.LIST
If h.hs_Abfertigungsart = AbfertigungsArt Then Return h.hs_Preis
If h.hs_Abfertigungsart Is Nothing Then defaultHandlingPreis = h.hs_Preis
Next
End If
Return defaultHandlingPreis
End Function
Function getGelangensbestätigung(Firma As String, kdnrTmp As Integer, Optional showDok As Boolean = False, Optional ByRef VBNr As Integer = -1) As String
Dim displayFilter = cbxFilterInBericht.Checked
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ZOLL_Auswertungen", "SDL") Then
Dim sqlstr As String = ""
' If CheckBox1.Checked Then
Dim sql_KdAuftragsNr = "" '",Speditionsbuch.KdAuftragsNr as KdAuftragsNr"
sqlstr &= " SELECT FilialenNr, AbfertigungsNr,UnterNr, Speditionsbuch.Abfertigungsart as Abfertigungsart ,Abfertigungsdatum, BelegNr, Rohmasse, Vermerk, Packstücke, AbsenderKundenNr, Absender, EmpfängerKundenNr, Empfänger,EndEmpfänger,EndEmpfängerKundenNr, VermittlerKundenNr, Vermittler, "
sqlstr &= " FrachtführerKundenNr, Frachtführer, AvisiererKundenNr, Avisierer,Währungscode,Barzahlungsbetrag,Rechnungsbetrag, [LKW Kennzeichen],"
sqlstr &= " Abfertigungsanzahl, Speditionsbuch.Abfertigungsart, Abfertigungsbezeichnung,AvisoID" & sql_KdAuftragsNr & ",Speditionsbuch.KdAuftragsNrAvisierer,Speditionsbuch.KdAuftragsNrEmpfaenger,Speditionsbuch.KdAuftragsNrFrachtfuehrer, Speditionsbuch.Bemerkungen "
sqlstr &= " FROM Speditionsbuch LEFT JOIN Abfertigungsarten ON Speditionsbuch.Abfertigungsart=Abfertigungsarten.Abfertigungsart "
sqlstr &= " LEFT JOIN Währungstabelle on Währungstabelle.Währungsschlüssel=speditionsbuch.Währungsschlüssel WHERE 1=1 "
sqlstr &= getSpedBuchWhere()
' sqlstr &= " order by FilialenNr, AvisoId,Speditionsbuch.Abfertigungsart,Abfertigungsdatum"
sqlstr &= " order by FilialenNr, Speditionsbuch.Abfertigungsart,Abfertigungsdatum"
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "FMZOLL", , getSpedbuchList())
Dim print As New frmPrintLayout
print.Text = "Gelangensbestätigung"
Dim rpt As New rptSpeditionsbericht_Gelangensbestaetigung
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "IMEX" : rpt.picVERAG.Image = My.Resources.IMEX_LOGO_simple : rpt.Label28.Text = "IMEX Customs Service GmbH"
Case "ATILLA" : rpt.picVERAG.Image = My.Resources.Atilla : rpt.Label28.Text = "ATILLA Spedition"
Case Else
End Select
rpt.DataSource = dt
If rpt.DataSource.rows.count = 0 Then
rpt.Dispose() : print.Dispose()
MsgBox("Keine Daten vorhanden!")
Return ""
End If
If vbYes = MsgBox("Neue Gelangensbestätigungs-Nr. vergeben?", MsgBoxStyle.YesNo) Then
Dim GBST = New VERAG_PROG_ALLGEMEIN.cGelangensbestaetigung(Firma, kdnrTmp)
If GBST.SAVE Then
rpt.lblNr.Text = GBST.gb_nr
VBNr = GBST.gb_nr
Dim barcode As Image = Code128Rendering.MakeBarcodeImage("/VBNR-" & VBNr & "/", 1, True, 25)
rpt.Picture1.Image = barcode
'Gelangensbestätigungs/Verbringungsnachweis-Nr. speichern:
SQL.doSQLVarList("UPDATE Speditionsbuch SET SB_CMRNr='" & VBNr & "' WHERE 1=1 " & getSpedBuchWhere(), "FMZOLL",, getSpedbuchList())
End If
Else
rpt.Label17.Visible = False
End If
Dim AvsioIdNull As String = ""
For Each r In rpt.DataSource.rows
If r("AvisoId") Is DBNull.Value OrElse r("AvisoId") <= 0 Then
AvsioIdNull &= r("FilialenNr") & " " & r("AbfertigungsNr") & " " & r("UnterNr") & " - " & r("Abfertigungsdatum") & " - " & r("LKW Kennzeichen") & vbNewLine
End If
Next
If AvsioIdNull <> "" Then
MsgBox("Achtung: folgende Sendungen sind keinem LKW/Aviso zugeordnet:" & vbNewLine & AvsioIdNull)
End If
Dim sum = 0
rpt.lblSachbearbeiter.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME
'rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
'Dim cnt As Integer = 0
rpt.lblDat.Text = Now.ToLongDateString
Dim sumAnz As Double = 0
Dim sumBar As Double = 0
Dim sumRg As Double = 0
Dim gesSumAnz As Double = 0
Dim gesSumBar As Double = 0
Dim gesSumRg As Double = 0
Dim gesgesSumAnz As Double = 0
Dim gesgesSumBar As Double = 0
Dim gesgesSumRg As Double = 0
Dim SumAnzLKW As Double = 0
Dim gesSumAnzLKW As Double = 0
Dim gesgesSumAnzLKW As Double = 0
Dim sumAbfBez = ""
Dim gesFilBez = ""
' Dim gesgesAbfBez = ""
AddHandler rpt.Detail.Format, Sub()
' rpt.lblVon.Text = CDate(rpt.Fields.Item("von").Value).ToShortDateString
' rpt.lblLKWNr.Text = CDate(rpt.Fields.Item("bis").Value).ToShortDateString
rpt.lblPosNr.Text = rpt.Fields.Item("FilialenNr").Value & " " & rpt.Fields.Item("AbfertigungsNr").Value & " " & rpt.Fields.Item("UnterNr").Value
rpt.lblAbfDatum.Text = "Datum: " & rpt.Fields.Item("Abfertigungsdatum").Value
rpt.lblBezugsNr.Text = checkNull(rpt.Fields.Item("BelegNr").Value)
rpt.lblRohmasse.Text = "Rohmasse: " & checkNull(rpt.Fields.Item("Rohmasse").Value, "0") & "kg"
rpt.txtVermerk.Text = checkNull(rpt.Fields.Item("Vermerk").Value)
rpt.txtPackstücke.Text = checkNull(rpt.Fields.Item("Packstücke").Value)
If cbxSpedDetailBem.Checked Then
If checkNull(rpt.Fields.Item("Bemerkungen").Value) <> "" Then
rpt.txtPackstücke.Text = (rpt.txtPackstücke.Text & vbNewLine & vbNewLine & checkNull(rpt.Fields.Item("Bemerkungen").Value)).trim
End If
End If
rpt.lblAbsKdNr.Text = checkNull(rpt.Fields.Item("AbsenderKundenNr").Value)
rpt.lblAbs.Text = checkNull(rpt.Fields.Item("Absender").Value)
rpt.lblEmpfKdNr.Text = checkNull(rpt.Fields.Item("EmpfängerKundenNr").Value)
rpt.lblEmpf.Text = checkNull(rpt.Fields.Item("Empfänger").Value)
'Wenn EndEmpf leer --> Empfänger eintragen:
Dim EndEmpf = checkNull(rpt.Fields.Item("EndEmpfänger").Value)
If EndEmpf <> "" Then
rpt.lblEndEmpfKdNr.Text = checkNull(rpt.Fields.Item("EndEmpfängerKundenNr").Value)
rpt.lblEndEmpf.Text = checkNull(rpt.Fields.Item("EndEmpfänger").Value)
Else
rpt.lblEndEmpfKdNr.Text = checkNull(rpt.Fields.Item("EmpfängerKundenNr").Value)
rpt.lblEndEmpf.Text = checkNull(rpt.Fields.Item("Empfänger").Value)
End If
rpt.lblAuftrKdNr.Text = checkNull(rpt.Fields.Item("VermittlerKundenNr").Value)
rpt.lblAuftr.Text = checkNull(rpt.Fields.Item("Vermittler").Value)
rpt.lblFrachtfKdNr.Text = checkNull(rpt.Fields.Item("FrachtführerKundenNr").Value)
rpt.lblFrachtf.Text = checkNull(rpt.Fields.Item("Frachtführer").Value)
' rpt.lblLKWNr.Text = rpt.Fields.Item("AvisiererKundenNr").Value
' rpt.lblLKWNr.Text = rpt.Fields.Item("Avisierer").Value
'lblGesgesWaehrung.te
' rpt.lblKdAuftragNr.Text = checkNull(rpt.Fields.Item("KdAuftragsNr").Value)
'If rpt.lblKdAuftragNr.Text <> "" Then rpt.lblKdAuftragNr.Text = "Auftrag: " & rpt.lblKdAuftragNr.Text
Dim bar As Double = 0
Dim rg As Double = 0
Dim anz As Double = 0
If IsNumeric(checkNull(rpt.Fields.Item("Barzahlungsbetrag").Value)) Then bar = CDbl(rpt.Fields.Item("Barzahlungsbetrag").Value())
If IsNumeric(checkNull(rpt.Fields.Item("Rechnungsbetrag").Value)) Then rg = CDbl(rpt.Fields.Item("Rechnungsbetrag").Value())
' rpt.lblRechnungsbetragInEur.Text = rpt.Fields.Item("Rechnungsbetrag").Value * rpt.Fields.Item("Umrechnungskurs").Value
rpt.lblLKWNr.Text = checkNull(rpt.Fields.Item("LKW Kennzeichen").Value)
rpt.lblAnzahl.Text = checkNull(rpt.Fields.Item("Abfertigungsanzahl").Value)
rpt.lblAbfertigungsart.Text = checkNull(rpt.Fields.Item("Abfertigungsbezeichnung").Value)
' rpt.lblAbs.Text = checkNull(rpt.Fields.Item("Abfertigungsbezeichnung").Value)
' rpt.lblBarzahlungsbetrag.Text = CDbl(rpt.Fields.Item("Barzahlungsbetrag").Value()).ToString("C")
'sumBar += CDbl(rpt.Fields.Item("Barzahlungsbetrag").Value)
If IsNumeric(checkNull(rpt.Fields.Item("Abfertigungsanzahl").Value)) Then anz = CDbl(rpt.Fields.Item("Abfertigungsanzahl").Value)
sumAbfBez = checkNull(rpt.Fields.Item("Abfertigungsbezeichnung").Value)
gesgesSumAnz += anz
End Sub
AddHandler rpt.ReportFooter1.Format, Sub()
rpt.lblGesGesSumAnzahl.Text = gesgesSumAnz.ToString("N0")
End Sub
If showDok Then
print.Viewer.LoadDocument(rpt)
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
print.Show()
Else
Dim tmpPath = VERAG_PROG_ALLGEMEIN.DATENVERVER_OPTIONS.getTMPPath("Verbringungsnachweis_" & Firma & ".pdf", ".pdf", True, False)
Dim p As New GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport
rpt.Run(False)
p.NeverEmbedFonts = ""
p.Export(rpt.Document, tmpPath)
rpt.Dispose()
Return tmpPath
End If
End If
Return ""
End Function
Private Sub Button19_Click(sender As Object, e As EventArgs) Handles Button19.Click
Dim SQLStr = "SELECT [FilialenNr],[AbfertigungsNr],[UnterNr],[Abfertigungsdatum],[LKW Kennzeichen],[EmpfängerKundenNr],[Empfänger],Abfertigungsart,AtlasBezNrEZA as BezugsNr
, isnull((SELECT SUM(Betrag) FROM Zkteing WHERE Bezugsnummer=AtlasBezNrEZA) ,'') as EUST
FROM [VERAG].[dbo].[Speditionsbuch]
where Abfertigungsart IN (26,28) AND Abfertigungsdatum > DATEADD(Month,-6 ,getdate()) AND isnull(SB_CMR ,0)=0 AND FilialenNr NOT IN (5501,5601,5701)
order by Abfertigungsdatum ASC"
Dim dt As DataTable = SQL.loadDgvBySql(SQLStr, "FMZOLL")
cProgramFunctions.genExcelFromDT_NEW(dt, {"J1:J" & (dt.Rows.Count + 2)})
End Sub
Private Sub Button20_Click(sender As Object, e As EventArgs) Handles Button20.Click
getrHandlingAussenstellen(, cboHandlingssatz._value)
End Sub
Private Sub MyComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles MyComboBox1.SelectedIndexChanged
selctList(lstFiliale, MyComboBox1)
End Sub
Private Sub cboFilialeHandling_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboFilialeHandling.SelectedIndexChanged
selctList(lstFilialeHandling, cboFilialeHandling)
End Sub
Sub selctList(lst, cbo)
lst.ClearSelected()
Select Case cbo._value
Case "ALLE"
For i = 0 To lst.Items.Count - 1
lst.SetSelected(i, True)
Next
Case ""
lst.ClearSelected()
Case Else
For i = 0 To lst.Items.Count - 1
If VERAG_PROG_ALLGEMEIN.cAllgemein.getFirmaFromFiliale2(DirectCast(lst.Items(i), VERAG_PROG_ALLGEMEIN.MyListItem).Value) = cbo._value Then
lst.SetSelected(i, True)
End If
Next
End Select
End Sub
Private Sub ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ZFThyrnauZeitraumAuswählenToolStripMenuItem.Click, ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem.Click, ZFSteyrZeitraumAuswählenToolStripMenuItem.Click
lblKdAusFortschritt.Text = "lädt..."
Me.Cursor = Cursors.WaitCursor
Try
Dim kdnrsrch = -1
If sender Is ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem Then
kdnrsrch = 714869
ElseIf sender Is ZFThyrnauZeitraumAuswählenToolStripMenuItem Then
kdnrsrch = 718486
ElseIf sender Is ZFSteyrZeitraumAuswählenToolStripMenuItem Then
kdnrsrch = 764755
End If
'Dim dt As DataTable = SQL.loadDgvBySql("SELECT CAST(Rechnungsausgang.[FilialenNr] as varchar) + '/' + CAST(Rechnungsausgang.[AbfertigungsNr] as varchar) Abfertigungsnummer
' ,[RechnungsNr],RechnungsKundenNr
' ,cast([RechnungsDatum] as date)RechnungsDatum
' ,[AbsenderName 1]Absender
' ,(SteuerfreierGesamtbetrag+SteuerpflichtigerGesamtbetrag) Betrag
' ,Speditionsbuch.BelegNr
' ,Rechnungsausgang.[FilialenNr],Rechnungsausgang.[AbfertigungsNr] ,Speditionsbuch.Abfertigungsart
' FROM [Rechnungsausgang] inner join Speditionsbuch ON Speditionsbuch.FilialenNr=Rechnungsausgang.FilialenNr and Speditionsbuch.AbfertigungsNr=Rechnungsausgang.AbfertigungsNr and Speditionsbuch.UnterNr=Rechnungsausgang.SpeditionsbuchUnterNr
' where RechnungsKundenNr IN (" & kdNrsrch & ") and rechnungsdatum BETWEEN '" & txtAbfertDat.Text & "' AND '" & txtAbfertDatBis.Text & "'", "FMZOLL")
Dim dt As DataTable = SQL.loadDgvBySql("SELECT CAST([FilialenNr] as varchar) + '/' + CAST([AbfertigungsNr] as varchar) Abfertigungsnummer
,cast([Abfertigungsdatum] as date)Abfertigungsdatum
,Absender
,Rechnungsbetrag Betrag
,BelegNr
,[FilialenNr],[AbfertigungsNr],Speditionsbuch.Abfertigungsart,Abfertigungsbezeichnung,Speditionsbuch.Zollsystem_Land
FROM Speditionsbuch INNER JOIN [Abfertigungsarten] ON Speditionsbuch.Abfertigungsart=Abfertigungsarten.Abfertigungsart
where EmpfängerKundenNr IN (" & kdnrsrch & ") and VermittlerKundenNr IN (" & kdnrsrch & ") and Abfertigungsdatum BETWEEN '" & txtAbfertDat.Text & "' AND '" & txtAbfertDatBis.Text & "' And Speditionsbuch.Abfertigungsart IN (1,29,38)", "FMZOLL")
Dim Path = ""
If dt IsNot Nothing And dt.Rows.Count > 0 Then
Dim sPath As String = Environment.GetFolderPath(Environment.SpecialFolder.Personal) & "\VERAG\SR\"
If Not My.Computer.FileSystem.DirectoryExists(sPath) Then
My.Computer.FileSystem.CreateDirectory(sPath)
End If
Dim exclApp As Object 'as Application
Dim Datei As Object 'as WorkBook
Dim Blatt As Object 'Microsoft.Office.Interop.Excel.Worksheet 'As Object 'as Worksheet
exclApp = CreateObject("Excel.Application")
If cbxDetailbericht.Checked Then
With exclApp
.Visible = False
Try
Path = sPath & "ZF_" & txtAbfertDat.Text & "-" & txtAbfertDatBis.Text & "" & " .xlsx"
While System.IO.File.Exists(Path)
Path = sPath & "ZF_" & txtAbfertDat.Text & "-" & txtAbfertDatBis.Text & "_" & Now.ToString("ddMMyyyyHHmmss") & ".xlsx"
End While
My.Computer.FileSystem.WriteAllBytes(Path, My.Resources.RG_ZF_NEW, False)
Catch ex As System.Exception
' MsgBox(ex.Message)
MsgBox("ERROR 01: " & ex.Message & vbNewLine & ex.StackTrace)
Me.Cursor = Cursors.Default
Exit Sub
End Try
Datei = .Workbooks.Open(Path) 'Anpassen
Blatt = Datei.Worksheets(1) 'Anpassen
'Blatt.Range("I1").Value = txtAbfertDat.Text & "-" & txtAbfertDatBis.Text
Dim cnt = 2
For Each r In dt.Rows
Dim ZOLLANMELDUNG As New DAKOSY_Worker.cZollsysteme_Aktenbeschriftung
Try
Dim zS = If(r("Zollsystem_Land") IsNot DBNull.Value, r("Zollsystem_Land").ToString(), "")
If ZOLLANMELDUNG.getDataByBezugsnummer(r("FilialenNr") & "/" & r("AbfertigungsNr"), r("Abfertigungsart"), "", False, zS) Then
If ZOLLANMELDUNG.dtWARENPOS.Rows.Count > 0 Then
Dim rowcounter As Integer = 0
For Each row As DataRow In ZOLLANMELDUNG.dtWARENPOS.Rows
Dim ZollInProzent As Double = 0
If If(ZOLLANMELDUNG.RechnungspreisohneWahrung, "") <> "" Then
ZollInProzent = ZOLLANMELDUNG.ABGABEN_ZOLL / ZOLLANMELDUNG.RechnungspreisohneWahrung * 100
End If
Blatt.Range("A" & cnt).Value = cnt - 1
Blatt.Range("B" & cnt).Value = r("Abfertigungsdatum")
Blatt.Range("C" & cnt).Value = VERAG_PROG_ALLGEMEIN.cAllgemein.getFirmaFromFiliale(r("FilialenNr"))
Blatt.Range("D" & cnt).Value = ZOLLANMELDUNG.Empfaenger
Blatt.Range("E" & cnt).Value = r("FilialenNr") & "/" & r("AbfertigungsNr")
Blatt.Range("F" & cnt).Value = r("BelegNr")
Blatt.Range("G" & cnt).Value = row.Item("PosNr")
Blatt.Range("H" & cnt).Value = row.Item("WarenNr")
Blatt.Range("I" & cnt).Value = "-"
Blatt.Range("J" & cnt).Value = row.Item("WarenBez")
Blatt.Range("K" & cnt).Value = ""
Blatt.Range("L" & cnt).Value = ZOLLANMELDUNG.Waehrungscode
Blatt.Range("M" & cnt).Value = ZOLLANMELDUNG.Geschaeftsart
Blatt.Range("N" & cnt).Value = ZOLLANMELDUNG.Zollstelle_Eingang
Blatt.Range("O" & cnt).Value = ""
Blatt.Range("P" & cnt).Value = row.Item("Netto")
Blatt.Range("Q" & cnt).Value = row.Item("PosWert")
Blatt.Range("R" & cnt).Value = IIf(rowcounter = 0, ZOLLANMELDUNG.ABGABEN_EUST, "")
Blatt.Range("S" & cnt).Value = IIf(rowcounter = 0, ZOLLANMELDUNG.ABGABEN_ZOLL, "")
Blatt.Range("T" & cnt).Value = IIf(rowcounter = 0, ZollInProzent.ToString("N2") & " %", "")
Blatt.Range("U" & cnt).Value = IIf(ZOLLANMELDUNG.VerBestLandZst.ToString.Count > 1, ZOLLANMELDUNG.VerBestLandZst.ToString.Substring(0, 2), "")
Blatt.Range("V" & cnt).Value = ZOLLANMELDUNG.Absender
Blatt.Range("W" & cnt).Value = row.Item("Herkunft")
Blatt.Range("X" & cnt).Value = ZOLLANMELDUNG.Incoterms
Blatt.Range("Y" & cnt).Value = row.Item("Verfahren")
Blatt.Range("Z" & cnt).Value = row.Item("Preferenz")
Blatt.Range("AA" & cnt).Value = IIf(row.Item("isCBAM"), "Y", "N")
If If(ZOLLANMELDUNG.ATCMRN, "") <> "" AndAlso Blatt.Range("F" & cnt).Value = "" Then
Blatt.Range("F" & cnt).Value = ZOLLANMELDUNG.ATCMRN
End If
cnt += 1
rowcounter += 1
Next
Else
Dim ZollInProzent As Double = 0
If If(ZOLLANMELDUNG.RechnungspreisohneWahrung, "") <> "" Then
ZollInProzent = ZOLLANMELDUNG.ABGABEN_ZOLL / ZOLLANMELDUNG.RechnungspreisohneWahrung * 100
End If
Blatt.Range("A" & cnt).Value = cnt - 1
Blatt.Range("B" & cnt).Value = r("Abfertigungsdatum")
Blatt.Range("C" & cnt).Value = VERAG_PROG_ALLGEMEIN.cAllgemein.getFirmaFromFiliale(r("FilialenNr"))
Blatt.Range("D" & cnt).Value = ZOLLANMELDUNG.Empfaenger
Blatt.Range("E" & cnt).Value = r("FilialenNr") & "/" & r("AbfertigungsNr")
Blatt.Range("F" & cnt).Value = r("BelegNr")
Blatt.Range("G" & cnt).Value = ""
Blatt.Range("H" & cnt).Value = ""
Blatt.Range("I" & cnt).Value = "-"
Blatt.Range("J" & cnt).Value = ""
Blatt.Range("K" & cnt).Value = ""
Blatt.Range("L" & cnt).Value = ZOLLANMELDUNG.Waehrungscode
Blatt.Range("M" & cnt).Value = ZOLLANMELDUNG.Geschaeftsart
Blatt.Range("N" & cnt).Value = ZOLLANMELDUNG.Zollstelle_Eingang
Blatt.Range("O" & cnt).Value = ""
Blatt.Range("P" & cnt).Value = ""
Blatt.Range("Q" & cnt).Value = ""
Blatt.Range("R" & cnt).Value = ZOLLANMELDUNG.ABGABEN_EUST
Blatt.Range("S" & cnt).Value = ZOLLANMELDUNG.ABGABEN_ZOLL
Blatt.Range("T" & cnt).Value = ZollInProzent.ToString("N2") & " %"
Blatt.Range("U" & cnt).Value = IIf(ZOLLANMELDUNG.VerBestLandZst.ToString.Count > 1, ZOLLANMELDUNG.VerBestLandZst.ToString.Substring(0, 2), "")
Blatt.Range("V" & cnt).Value = ZOLLANMELDUNG.Absender
Blatt.Range("W" & cnt).Value = ""
Blatt.Range("X" & cnt).Value = ZOLLANMELDUNG.Incoterms
Blatt.Range("Y" & cnt).Value = ""
Blatt.Range("Z" & cnt).Value = ""
Blatt.Range("AA" & cnt).Value = ""
If If(ZOLLANMELDUNG.ATCMRN, "") <> "" AndAlso Blatt.Range("F" & cnt).Value = "" Then
Blatt.Range("F" & cnt).Value = ZOLLANMELDUNG.ATCMRN
End If
cnt += 1
End If
End If
Catch ex As Exception
MsgBox(ex.Message & ex.StackTrace)
End Try
lblKdAusFortschritt.Text = (cnt - 2) & "/" & dt.Rows.Count
Me.Refresh()
Next
Datei.Save
If False Then
Blatt.PrintOutEx()
Else
'Process.Start(Path)
.Visible = True
End If
End With
Else
With exclApp
.Visible = False
Try
Path = sPath & "ZF_" & txtAbfertDat.Text & "-" & txtAbfertDatBis.Text & "" & " .xlsx"
While System.IO.File.Exists(Path)
Path = sPath & "ZF_" & txtAbfertDat.Text & "-" & txtAbfertDatBis.Text & "_" & Now.ToString("ddMMyyyyHHmmss") & ".xlsx"
End While
My.Computer.FileSystem.WriteAllBytes(Path, My.Resources.RG_ZF, False)
Catch ex As System.Exception
' MsgBox(ex.Message)
MsgBox("ERROR 01: " & ex.Message & vbNewLine & ex.StackTrace)
Me.Cursor = Cursors.Default
Exit Sub
End Try
Datei = .Workbooks.Open(Path) 'Anpassen
Blatt = Datei.Worksheets(1) 'Anpassen
Blatt.Range("I1").Value = txtAbfertDat.Text & "-" & txtAbfertDatBis.Text
Dim cnt = 3
For Each r In dt.Rows
Blatt.Range("A" & cnt).Value = cnt - 2
Blatt.Range("B" & cnt).Value = r("Abfertigungsnummer")
' Blatt.Range("C" & cnt).Value = r("RechnungsNr")
Blatt.Range("C" & cnt).Value = r("Abfertigungsdatum")
Blatt.Range("D" & cnt).Value = r("Abfertigungsbezeichnung")
Blatt.Range("E" & cnt).Value = r("Absender")
Blatt.Range("F" & cnt).Value = "" 'r("Betrag")
Blatt.Range("H" & cnt).Value = r("BelegNr")
Dim ZOLLANMELDUNG As New DAKOSY_Worker.cZollsysteme_Aktenbeschriftung
Try
Dim zS = If(r("Zollsystem_Land") IsNot DBNull.Value, r("Zollsystem_Land").ToString(), "")
If ZOLLANMELDUNG.getDataByBezugsnummer(r("FilialenNr") & "/" & r("AbfertigungsNr"), r("Abfertigungsart"), "", False, zS) Then
Blatt.Range("F" & cnt).Value = ZOLLANMELDUNG.RechnungspreisohneWahrung
Blatt.Range("G" & cnt).Value = ZOLLANMELDUNG.Handelsrechnung.Replace(", ", "," & vbNewLine)
Blatt.Range("I" & cnt).Value = ZOLLANMELDUNG.ABGABEN_ZOLL
Blatt.Range("J" & cnt).Value = ZOLLANMELDUNG.ANZ_POS
'----------------------------------NEW
Blatt.Range("K" & cnt).Value = ZOLLANMELDUNG.Anmelder
Blatt.Range("L" & cnt).Value = ZOLLANMELDUNG.Warenbezeichung
Blatt.Range("M" & cnt).Value = ZOLLANMELDUNG.VerBestLandZst
'----------------------------------
If If(ZOLLANMELDUNG.ATCMRN, "") <> "" Then
Blatt.Range("H" & cnt).Value = ZOLLANMELDUNG.ATCMRN
End If
End If
Catch ex As Exception
MsgBox(ex.Message & ex.StackTrace)
End Try
lblKdAusFortschritt.Text = (cnt - 2) & "/" & dt.Rows.Count
Me.Refresh()
cnt += 1
Next
Datei.Save
If False Then
Blatt.PrintOutEx()
Else
'Process.Start(Path)
.Visible = True
End If
End With
End If
End If
lblKdAusFortschritt.Text = "fertig"
Catch ex As Exception
MsgBox(ex.Message & ex.StackTrace)
lblKdAusFortschritt.Text = "Fehler"
End Try
Me.Cursor = Cursors.Default
End Sub
Private Sub cboFiliale_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboFiliale.SelectedIndexChanged
cbxEIDR.Visible = cboFiliale._value = "7001"
End Sub
Private Sub Button12_Click(sender As Object, e As EventArgs) Handles btnSpedBuchEinnahmen.Click
Dim displayFilter = cbxFilterInBericht.Checked
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ZOLL_Auswertungen", "SDL") Then
Dim sqlstr As String = ""
Dim SpedBuchWhere = getSpedBuchWhere()
If CheckBox1.Checked Then
sqlstr &= " SELECT Speditionsbuch.FilialenNr,Speditionsbuch.Abfertigungsart,Abfertigungsarten.Abfertigungsbezeichnung,sum(Abfertigungsanzahl) as Anzahl,SUM(Barzahlungsbetrag) as Barzahlungsbetrag,MIN(Speditionsbuch.Abfertigungsdatum) as von, MAX(Speditionsbuch.Abfertigungsdatum) as bis
,isnull(sum(SteuerfreierGesamtbetrag+SteuerpflichtigerGesamtbetrag),0) as RgBetrag
FROM Speditionsbuch LEFT JOIN Abfertigungsarten ON Speditionsbuch.Abfertigungsart=Abfertigungsarten.Abfertigungsart
LEFT JOIN Rechnungsausgang ON Rechnungsausgang.FilialenNr=Speditionsbuch.FilialenNr and Rechnungsausgang.AbfertigungsNr=Speditionsbuch.AbfertigungsNr and Rechnungsausgang.SpeditionsbuchUnterNr=Speditionsbuch.UnterNr
WHERE 1=1 "
sqlstr &= SpedBuchWhere
sqlstr &= " group by Speditionsbuch.FilialenNr,Speditionsbuch.Abfertigungsart,Abfertigungsbezeichnung "
sqlstr &= " order by Speditionsbuch.FilialenNr, Speditionsbuch.Abfertigungsart"
Else
sqlstr &= " SELECT Speditionsbuch.Abfertigungsart,Abfertigungsarten.Abfertigungsbezeichnung,sum(Abfertigungsanzahl) as Anzahl,SUM(Barzahlungsbetrag) as Barzahlungsbetrag,MIN(Speditionsbuch.Abfertigungsdatum) as von, MAX(Speditionsbuch.Abfertigungsdatum) as bis
,isnull(sum(SteuerfreierGesamtbetrag+SteuerpflichtigerGesamtbetrag),0) as RgBetrag
FROM Speditionsbuch LEFT JOIN Abfertigungsarten ON Speditionsbuch.Abfertigungsart=Abfertigungsarten.Abfertigungsart
LEFT JOIN Rechnungsausgang ON Rechnungsausgang.FilialenNr=Speditionsbuch.FilialenNr and Rechnungsausgang.AbfertigungsNr=Speditionsbuch.AbfertigungsNr and Rechnungsausgang.SpeditionsbuchUnterNr=Speditionsbuch.UnterNr
WHERE 1=1 "
sqlstr &= SpedBuchWhere
sqlstr &= " group by Speditionsbuch.Abfertigungsart,Abfertigungsbezeichnung "
sqlstr &= " order by Speditionsbuch.Abfertigungsart"
End If
Dim SpedBuchList = getSpedbuchList()
Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "FMZOLL", , SpedBuchList)
'DataGridView.DataSource = dt
Dim print As New frmPrintLayout
print.Text = "Speditionsbericht"
Dim rpt As New rptSpeditionsberichtRg
rpt.DataSource = dt
'Filter anzeigen
If displayFilter Then
rpt.lblFilterTxt.Visible = displayFilter
rpt.txtFilter.Visible = displayFilter
rpt.txtFilter.Text = generateReadableFilter(SQL.getStringReplaceScalarVar(SpedBuchWhere, SpedBuchList))
Else
If txtUeberschr.Text <> "" Then
rpt.txtFilter.Text = txtUeberschr.Text
rpt.txtFilter.Visible = True
rpt.lblFilterTxt.Visible = True
rpt.lblFilterTxt.Text = "Beschreibung:"
End If
End If
'Problem mit beträge
If cboFiliale._value = "" Then
rpt.Dispose() : print.Dispose()
MsgBox("Bitte Filiale angeben!")
Exit Sub
End If
Dim FirmaTmp = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
If cboFiliale._value <> "" Then
FirmaTmp = VERAG_PROG_ALLGEMEIN.cAllgemein.getFirmaFromFiliale2(cboFiliale._value)
End If
Select Case FirmaTmp
Case "IMEX" : rpt.picVERAG.Image = My.Resources.IMEX_LOGO_simple : rpt.Label28.Text = "IMEX Customs Service GmbH"
Case "ATILLA" : rpt.picVERAG.Image = My.Resources.Atilla : rpt.Label28.Text = "ATILLA Spedition"
Case "UNISPED" : rpt.picVERAG.Image = My.Resources.Unisped_logo : rpt.Label28.Text = "UNISPED Spedition"
Case "AMBAR" : rpt.picVERAG.Image = My.Resources.ambar_simple : rpt.Label28.Text = "AMBAR"
Case "FRONTOFFICE" : rpt.picVERAG.Image = My.Resources.FrontOfficeSUB_Horizontal : rpt.Label28.Text = "FRONTOFFICE"
Case Else
End Select
If CheckBox1.Checked Then
rpt.GroupHeader1.DataField = "FilialenNr" 'Gruppierung
End If
If rpt.DataSource.rows.count = 0 Then
rpt.Dispose() : print.Dispose()
MsgBox("Keine Daten vorhanden!")
Exit Sub
End If
Dim sum = 0
rpt.lblUeberschrift.Text = "Speditionsbericht " & txtAbfertDat.Text & " bis " & txtAbfertDatBis.Text
rpt.lblSachbearbeiter.Text = VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME
'rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
'Dim cnt As Integer = 0
rpt.lblDat.Text = Now.ToLongDateString
Dim sumAnz As Double = 0
Dim sumBar As Double = 0
Dim sumRg As Double = 0
Dim sumVk As Double = 0
Dim sumZwSum As Double = 0
rpt.lblBarzahlungsbetrag.Visible = True
rpt.lblBarTitle.Visible = True
rpt.lblSummeBar.Visible = True
rpt.lblFiliale.Text = "Alle Filialen"
AddHandler rpt.Detail.Format, Sub()
rpt.lblVon.Text = CDate(rpt.Fields.Item("von").Value).ToShortDateString
rpt.lblBis.Text = CDate(rpt.Fields.Item("bis").Value).ToShortDateString
rpt.lblAbfAnz.Text = rpt.Fields.Item("Anzahl").Value
rpt.lblAbfArtNr.Text = If(rpt.Fields.Item("Abfertigungsart").Value Is DBNull.Value, "-", rpt.Fields.Item("Abfertigungsart").Value)
rpt.lblAbfArt.Text = If(rpt.Fields.Item("Abfertigungsbezeichnung").Value Is DBNull.Value, "-", rpt.Fields.Item("Abfertigungsbezeichnung").Value)
Dim BarBetrag As Double = CDbl(rpt.Fields.Item("Barzahlungsbetrag").Value())
Dim sqlstrRg = " SELECT isnull( sum(RechnungsausgangPositionen.SteuerfreierBetrag+RechnungsausgangPositionen.SteuerpflichtigerBetrag),0) as RgBetrag
FROM Speditionsbuch LEFT JOIN Abfertigungsarten ON Speditionsbuch.Abfertigungsart=Abfertigungsarten.Abfertigungsart
inner JOIN Rechnungsausgang ON Rechnungsausgang.FilialenNr=Speditionsbuch.FilialenNr and Rechnungsausgang.AbfertigungsNr=Speditionsbuch.AbfertigungsNr and Rechnungsausgang.SpeditionsbuchUnterNr=Speditionsbuch.UnterNr
inner JOIN RechnungsausgangPositionen ON Rechnungsausgang.RK_ID=RechnungsausgangPositionen.RK_ID
inner JOIN leistungen ON RechnungsausgangPositionen.LeistungsNr=leistungen.LeistungsNr
WHERE 1=1
" & SpedBuchWhere & "
and Speditionsbuch.Abfertigungsart=" & rpt.Fields.Item("Abfertigungsart").Value & "
and leistungen.Abfertigungskosten=1"
Dim RgBetrag As Double = SQL.getValueTxtBySqlVarList(sqlstrRg, "FMZOLL", SpedBuchList, 0)
Dim sqlstrVK = " SELECT isnull(sum(Vorkosten.Preis),0) as VKBetrag
FROM Speditionsbuch LEFT JOIN Abfertigungsarten ON Speditionsbuch.Abfertigungsart=Abfertigungsarten.Abfertigungsart
inner JOIN Vorkosten ON Vorkosten.FilialenNr=Speditionsbuch.FilialenNr and Vorkosten.AbfertigungsNr=Speditionsbuch.AbfertigungsNr and Vorkosten.UnterNr=Speditionsbuch.UnterNr
WHERE 1=1
" & SpedBuchWhere & "
and Speditionsbuch.Abfertigungsart=" & rpt.Fields.Item("Abfertigungsart").Value & ""
Dim VkBetrag As Double = SQL.getValueTxtBySqlVarList(sqlstrVK, "FMZOLL", SpedBuchList, 0)
Dim ZwSum = RgBetrag + BarBetrag - VkBetrag
rpt.lblBarzahlungsbetrag.Text = BarBetrag.ToString("C")
rpt.Label8.Text = (RgBetrag).ToString("C")
rpt.Label13.Text = (VkBetrag).ToString("C")
rpt.Label14.Text = (ZwSum).ToString("C")
sumAnz += CDbl(rpt.Fields.Item("Anzahl").Value)
sumBar += BarBetrag
sumRg += RgBetrag
sumVk += VkBetrag
sumZwSum += ZwSum
End Sub
AddHandler rpt.GroupHeader1.Format, Sub()
If CheckBox1.Checked Then rpt.lblFiliale.Text = SQL.getValueTxtBySql("SELECT CAST(FilialenNr as varchar (4)) + ' ' + Grenzstelle FROM filialen WHERE FilialenNr='" & rpt.Fields.Item("FilialenNr").Value & "'", "FMZOLL")
sumAnz = 0
sumBar = 0
sumRg = 0
sumVk = 0
sumZwSum = 0
End Sub
AddHandler rpt.GroupFooter1.Format, Sub()
rpt.lblSummeAnzahl.Text = sumAnz
rpt.lblSummeBar.Text = sumBar.ToString("C")
rpt.Label10.Text = sumRg.ToString("C")
rpt.Label15.Text = sumVk.ToString("C")
rpt.Label16.Text = sumZwSum.ToString("C")
End Sub
print.Viewer.LoadDocument(rpt)
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
print.Show()
End If
End Sub
Private Sub Button12_Click_1(sender As Object, e As EventArgs) Handles btnNurAbf.Click
Dim dt = SQL.loadDgvBySql("SELECT Abfertigungsart FROM [Abfertigungsarten] where isAbfertigung=1", "FMZOLL")
MyListBox1.ClearSelected()
If dt IsNot Nothing Then
For Each r In dt.Rows
For i = 0 To MyListBox1.Items.Count - 1
If DirectCast(MyListBox1.Items(i), VERAG_PROG_ALLGEMEIN.MyListItem).Value = r("Abfertigungsart") Then
MyListBox1.SetSelected(i, True)
End If
Next
Next
End If
End Sub
Private Sub Button21_Click(sender As Object, e As EventArgs) Handles Button21.Click
DataGridView.Columns.Clear()
Dim dt As DataTable
If False Then
Dim sqlstr As String = ""
sqlstr &= " SELECT DATEPART(YEAR,Abfertigungsdatum) Jahr, DATEPART(month,Abfertigungsdatum) Monat, sum(Abfertigungsanzahl) Anzahl FROM Speditionsbuch "
sqlstr &= " WHERE 1=1 "
dt = SQL.loadDgvBySql_Param(sqlstr & getSpedBuchWhere() &
" GROUP BY DATEPART(YEAR,Abfertigungsdatum), DATEPART(month,Abfertigungsdatum) " &
" ORDER BY DATEPART(YEAR,Abfertigungsdatum), DATEPART(month,Abfertigungsdatum) ",
"FMZOLL", , getSpedbuchList())
Else
Dim sqlstr As String = ""
sqlstr &= " SELECT DATEPART(YEAR,Speditionsbuch.Abfertigungsdatum) Jahr, DATEPART(month,Speditionsbuch.Abfertigungsdatum) Monat, sum(Abfertigungsanzahl) Anzahl,SUM(Barzahlungsbetrag) as Barzahlungsbetrag,isnull(sum(SteuerfreierGesamtbetrag+SteuerpflichtigerGesamtbetrag),0) as RgBetrag "
sqlstr &= " FROM Speditionsbuch "
sqlstr &= " LEFT JOIN Rechnungsausgang ON Rechnungsausgang.FilialenNr=Speditionsbuch.FilialenNr and Rechnungsausgang.AbfertigungsNr=Speditionsbuch.AbfertigungsNr and Rechnungsausgang.SpeditionsbuchUnterNr=Speditionsbuch.UnterNr "
sqlstr &= " INNER JOIN RechnungsausgangPositionen ON Rechnungsausgang.RK_ID=RechnungsausgangPositionen.RK_ID "
sqlstr &= " INNER JOIN leistungen ON RechnungsausgangPositionen.LeistungsNr=leistungen.LeistungsNr "
sqlstr &= " WHERE 1=1 and leistungen.Abfertigungskosten=1 "
dt = SQL.loadDgvBySql_Param(sqlstr & getSpedBuchWhere() &
" GROUP BY DATEPART(YEAR,Speditionsbuch.Abfertigungsdatum), DATEPART(month,Speditionsbuch.Abfertigungsdatum) " &
" ORDER BY DATEPART(YEAR,Speditionsbuch.Abfertigungsdatum), DATEPART(month,Speditionsbuch.Abfertigungsdatum) ",
"FMZOLL", , getSpedbuchList())
End If
If dt IsNot Nothing Then DataGridView.DataSource = dt
End Sub
Private Sub Button22_Click(sender As Object, e As EventArgs) Handles Button22.Click
DataGridView.Columns.Clear()
Dim dt As DataTable
'Dim sqlstr As String = ""
'sqlstr &= " SELECT DATEPART(YEAR,Abfertigungsdatum) Jahr, DATEPART(iso_week,Abfertigungsdatum) Woche, count(*) Anzahl FROM Speditionsbuch "
'sqlstr &= " WHERE 1=1 "
'Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr & getSpedBuchWhere() &
' " GROUP BY DATEPART(YEAR,Abfertigungsdatum), DATEPART(iso_week,Abfertigungsdatum) " &
' " ORDER BY DATEPART(YEAR,Abfertigungsdatum), DATEPART(iso_week,Abfertigungsdatum) ",
' "FMZOLL", , getSpedbuchList())
If False Then
Dim sqlstr As String = ""
sqlstr &= " SELECT DATEPART(YEAR,Abfertigungsdatum) Jahr, DATEPART(iso_week,Abfertigungsdatum) Monat, sum(Abfertigungsanzahl) Anzahl FROM Speditionsbuch "
sqlstr &= " WHERE 1=1 "
dt = SQL.loadDgvBySql_Param(sqlstr & getSpedBuchWhere() &
" GROUP BY DATEPART(YEAR,Abfertigungsdatum), DATEPART(iso_week,Abfertigungsdatum) " &
" ORDER BY DATEPART(YEAR,Abfertigungsdatum), DATEPART(iso_week,Abfertigungsdatum) ",
"FMZOLL", , getSpedbuchList())
Else
Dim sqlstr As String = ""
sqlstr &= " SELECT DATEPART(YEAR,Speditionsbuch.Abfertigungsdatum) Jahr, DATEPART(iso_week,Speditionsbuch.Abfertigungsdatum) Monat, sum(Abfertigungsanzahl) Anzahl,SUM(Barzahlungsbetrag) as Barzahlungsbetrag,isnull(sum(SteuerfreierGesamtbetrag+SteuerpflichtigerGesamtbetrag),0) as RgBetrag "
sqlstr &= " FROM Speditionsbuch "
sqlstr &= " LEFT JOIN Rechnungsausgang ON Rechnungsausgang.FilialenNr=Speditionsbuch.FilialenNr and Rechnungsausgang.AbfertigungsNr=Speditionsbuch.AbfertigungsNr and Rechnungsausgang.SpeditionsbuchUnterNr=Speditionsbuch.UnterNr "
sqlstr &= " INNER JOIN RechnungsausgangPositionen ON Rechnungsausgang.RK_ID=RechnungsausgangPositionen.RK_ID "
sqlstr &= " INNER JOIN leistungen ON RechnungsausgangPositionen.LeistungsNr=leistungen.LeistungsNr "
sqlstr &= " WHERE 1=1 and leistungen.Abfertigungskosten=1 "
dt = SQL.loadDgvBySql_Param(sqlstr & getSpedBuchWhere() &
" GROUP BY DATEPART(YEAR,Speditionsbuch.Abfertigungsdatum), DATEPART(iso_week,Speditionsbuch.Abfertigungsdatum) " &
" ORDER BY DATEPART(YEAR,Speditionsbuch.Abfertigungsdatum), DATEPART(iso_week,Speditionsbuch.Abfertigungsdatum) ",
"FMZOLL", , getSpedbuchList())
End If
If dt IsNot Nothing Then DataGridView.DataSource = dt
End Sub
Private Sub Button23_Click(sender As Object, e As EventArgs) Handles Button23.Click
Dim VerbNr = InputBox("Bitte geben Sie die Gelangensbestätigungs-Nr. ein:")
If VerbNr.Trim <> "" AndAlso IsNumeric(VerbNr) Then
Dim cnt = SQL.getValueTxtBySql("SELECT COUNT(*) FROM [Speditionsbuch] where SB_CMRNr ='" & VerbNr & "' ", "FMZOLL")
If cnt > 0 Then
If vbYes = MsgBox(cnt & " Einträge gefunden, fortfahren?", vbYesNoCancel) Then
Dim VerbDat = InputBox("Bitte geben Sie das Datum ein, an dem die Gelangensbestätigung erhalten wurde:")
If VerbDat.Trim <> "" AndAlso IsDate(VerbDat) Then
If SQL.doSQL("UPDATE [Speditionsbuch] SET SB_CMR=1, SB_CMRDatum='" & CDate(VerbDat).ToShortDateString & "' where SB_CMRNr ='" & VerbNr & "' ", "FMZOLL") Then
MsgBox("Erfolgreich eingetragen!")
Else
MsgBox("Fehler beim Eintragen!")
End If
End If
End If
Else
MsgBox("Keine Daten!")
End If
End If
End Sub
Private Sub lstGrenze_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lstGrenze.SelectedIndexChanged
txtZollstelle.Visible = False
For Each l In lstGrenze.SelectedItems
If l.text <> "???" Then Exit Sub
Next
txtZollstelle.Visible = True
End Sub
Private Sub initToolStripMenu()
For Each c As ToolStripMenuItem In KundenauswertungenToolStripMenuItem1.DropDownItems
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "VERAG" Then
If c.Name = "ZFFriedrichshafenAGZeitraumAuswählenToolStripMenuItem" Or c.Name = "ZFThyrnauZeitraumAuswählenToolStripMenuItem" Then
c.Visible = True
End If
End If
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "UNISPED" Then
If c.Name = "FlenderBocholtZeitraumAuswählenToolStripMenuItem" Then
c.Visible = True
End If
End If
Next
End Sub
Private Sub FlenderBocholtZeitraumAuswählenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AuswertungDiversZeitraumAuswählenToolStripMenuItem.Click
lblKdAusFortschritt.Text = "lädt..."
Me.Cursor = Cursors.WaitCursor
Try
Dim dt As DataTable = SQL.loadDgvBySql("SELECT [Speditionsbuch].[FilialenNr]
,[Speditionsbuch].[AbfertigungsNr]
,CAST([Abfertigungsdatum] as DATE) [Abfertigungsdatum]
,isnull([BelegNr],'') ATC
,isnull([sndhdg_nr],'') ATA
,[LKW Kennzeichen]
,[Absender]
,[Empfänger]
,[Vermittler]
,[Frachtführer]
,[Avisierer]
,[Packstücke]
,isnull([Abfertigungsarten].AbfertigungsbezeichnungLang,[Abfertigungsarten].Abfertigungsbezeichnung) Abfertigungsart
,[Abfertigungsanzahl]
,CASE WHEN Aviso.[Grenzstelle]='???' THEN Aviso.[Zollstelle] ELSE Aviso.[Grenzstelle] END [Grenzstelle]
FROM [VERAG].[dbo].[Speditionsbuch] INNER JOIN " & VERAG_PROG_ALLGEMEIN.cAllgemein.AVISO_SERVER & ".[AVISO].dbo.tblSendungen ON SendungID=[tblSnd_SendungID]
INNER JOIN " & VERAG_PROG_ALLGEMEIN.cAllgemein.AVISO_SERVER & ".[AVISO].dbo.Aviso ON [Speditionsbuch].AvisoID=Aviso.AvisoID
INNER JOIN Abfertigungsarten ON Abfertigungsarten.Abfertigungsart=[Speditionsbuch].Abfertigungsart
LEFT JOIN " & VERAG_PROG_ALLGEMEIN.cAllgemein.AVISO_SERVER & ".[AVISO].dbo.[tblSendHandling] ON [tblSnd_SendungID]=[sndhdg_sendId]
where Empfänger LIKE '%Flender%' and [Speditionsbuch].FilialenNr=5601
and Abfertigungsdatum BETWEEN '" & txtAbfertDat.Text & "' and '" & txtAbfertDatBis.Text & "'
order by [Speditionsbuch].Abfertigungsart , Abfertigungsdatum", "FMZOLL")
Dim Path = ""
If dt IsNot Nothing And dt.Rows.Count > 0 Then
cProgramFunctions.genExcelFromDT_NEW(dt)
End If
lblKdAusFortschritt.Text = "fertig"
Catch ex As Exception
MsgBox(ex.Message & ex.StackTrace)
lblKdAusFortschritt.Text = "Fehler"
End Try
Me.Cursor = Cursors.Default
End Sub
Private Function generateReadableFilter(text As String) As String
text = text.ToLower()
text = text.Replace("=1", " ist wahr ")
text = text.Replace("=0", " ist falsch ")
text = text.Replace("=", " ist ")
text = text.Replace("[", "")
text = text.Replace("]", "")
text = text.Replace("(", "")
text = text.Replace(")", "")
text = text.Replace(":", "")
text = text.Replace("select", " Felder: ")
text = text.Replace("from", " Tabelle: ")
text = text.Replace("like", " wie ")
text = text.Replace("and", " und ")
text = text.Replace("inner join", " Untertabelle: ")
text = text.Replace("left join", " Untertabelle: ")
text = text.Replace("right join", " Untertabelle: ")
text = text.Replace("between", " zwischen ")
text = text.Replace("00", "")
text = text.Replace("speditionsbuch.", "")
text = text.Replace("%", "*")
Return text
End Function
Private Sub Button25_Click(sender As Object, e As EventArgs) Handles Button25.Click
Dim where = ""
Select Case MyComboBox2._value
Case "VERAG" : where = " AND FilialenNr IN (SELECT Filialen.FilialenNr FROM Filialen WHERE Filialen.Firma='VERAG' AND Filialen.FilialenNr NOT IN (4801,4802)) "
Case "IMEX" : where = " AND FilialenNr IN (5501) "
Case "UNISPED" : where = " AND FilialenNr IN (5601) "
'Case "ATILLA" : where = " AND FilialenNr IN (SELECT Filialen.FilialenNr FROM Filialen WHERE Filialen.Firma='VERAG' AND Filialen.FilialenNr NOT IN (5601)) "
End Select
where &= " and Grenzstelle='AMB' "
getrHandlingAussenstellen(, "AMBAR an ALL", where, True)
End Sub
Private Sub SendungsdetailsÖffnenToolStripMenuItem_Click(
sender As Object, e As EventArgs) _
Handles SendungsdetailsÖffnenToolStripMenuItem.Click
If DataGridView.SelectedRows.Count <> 1 Then
MsgBox("Bitte wählen Sie genau eine Zeile aus.")
Exit Sub
End If
Dim r = DataGridView.SelectedRows(0)
Dim spb = New cSpeditionsbuch(
FilialenNr:=CInt(r.Cells("FilialenNr").Value),
AbfertigungsNr:=CInt(r.Cells("AbfertigungsNr").Value),
UnterNr:=CInt(r.Cells("UnterNr").Value)
)
RaiseEvent SendungsdetailsRequested(spb.AvisoID, spb.SendungID)
End Sub
Private Sub ToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem1.Click
Dim kdnrsrch As Integer = -1
Dim KUNDE
If kdnrsrch < 0 Then
Dim inputKdNr = InputBox("Bitte KdNr eingeben", "Kundenauswertung generieren")
If inputKdNr <> "" AndAlso IsNumeric(inputKdNr) AndAlso inputKdNr > 0 Then
kdnrsrch = inputKdNr
KUNDE = New cKunde(kdnrsrch)
If KUNDE Is Nothing Then
MsgBox("KundenNr " & inputKdNr & " nicht vorhanden!")
Exit Sub
End If
Else
MsgBox("KundenNr " & inputKdNr & " nicht gültig!")
Exit Sub
End If
End If
Dim dt As DataTable = SQL.loadDgvBySql("SELECT CAST([FilialenNr] as varchar) + '/' + CAST([AbfertigungsNr] as varchar) Abfertigungsnummer
,cast([Abfertigungsdatum] as date)Abfertigungsdatum
,Absender
,Rechnungsbetrag Betrag
,BelegNr
,[FilialenNr],[AbfertigungsNr],Speditionsbuch.Abfertigungsart,Abfertigungsbezeichnung,Speditionsbuch.Zollsystem_Land
FROM Speditionsbuch INNER JOIN [Abfertigungsarten] ON Speditionsbuch.Abfertigungsart=Abfertigungsarten.Abfertigungsart
where EmpfängerKundenNr IN (" & kdnrsrch & ") and VermittlerKundenNr IN (" & kdnrsrch & ") and Abfertigungsdatum BETWEEN '" & txtAbfertDat.Text & "' AND '" & txtAbfertDatBis.Text & "' And Speditionsbuch.Abfertigungsart IN (1,29,38)", "FMZOLL")
Try
Dim Path = ""
If dt IsNot Nothing And dt.Rows.Count > 0 Then
Dim sPath As String = Environment.GetFolderPath(Environment.SpecialFolder.Personal) & "\VERAG\SR\"
If Not My.Computer.FileSystem.DirectoryExists(sPath) Then
My.Computer.FileSystem.CreateDirectory(sPath)
End If
Dim exclApp As Object 'as Application
Dim Datei As Object 'as WorkBook
Dim Blatt As Object 'Microsoft.Office.Interop.Excel.Worksheet 'As Object 'as Worksheet
exclApp = CreateObject("Excel.Application")
If cbxDetailbericht.Checked Then
With exclApp
.Visible = False
Try
Path = sPath & KUNDE.KundenNr & "_" & txtAbfertDat.Text & "-" & txtAbfertDatBis.Text & "" & " .xlsx"
While System.IO.File.Exists(Path)
Path = sPath & KUNDE.KundenNr & txtAbfertDat.Text & "-" & txtAbfertDatBis.Text & "_" & Now.ToString("ddMMyyyyHHmmss") & ".xlsx"
End While
My.Computer.FileSystem.WriteAllBytes(Path, My.Resources.Detailauswertung_divers, False)
Catch ex As System.Exception
' MsgBox(ex.Message)
MsgBox("ERROR 01: " & ex.Message & vbNewLine & ex.StackTrace)
Me.Cursor = Cursors.Default
Exit Sub
End Try
Datei = .Workbooks.Open(Path) 'Anpassen
Blatt = Datei.Worksheets(1) 'Anpassen
Dim cnt = 2
For Each r In dt.Rows
Dim ZOLLANMELDUNG As New DAKOSY_Worker.cZollsysteme_Aktenbeschriftung
Try
Dim zS = If(r("Zollsystem_Land") IsNot DBNull.Value, r("Zollsystem_Land").ToString(), "")
If ZOLLANMELDUNG.getDataByBezugsnummer(r("FilialenNr") & "/" & r("AbfertigungsNr"), r("Abfertigungsart"), "", False, zS) Then
If ZOLLANMELDUNG.dtWARENPOS.Rows.Count > 0 Then
Dim rowcounter As Integer = 0
For Each row As DataRow In ZOLLANMELDUNG.dtWARENPOS.Rows
Dim ZollInProzent As Double = 0
If If(ZOLLANMELDUNG.RechnungspreisohneWahrung, "") <> "" Then
ZollInProzent = ZOLLANMELDUNG.ABGABEN_ZOLL / ZOLLANMELDUNG.RechnungspreisohneWahrung * 100
End If
Blatt.Range("A" & cnt).Value = cnt - 1
Blatt.Range("B" & cnt).Value = r("Abfertigungsdatum")
Blatt.Range("C" & cnt).Value = VERAG_PROG_ALLGEMEIN.cAllgemein.getFirmaFromFiliale(r("FilialenNr"))
Blatt.Range("D" & cnt).Value = ZOLLANMELDUNG.Empfaenger
Blatt.Range("E" & cnt).Value = r("FilialenNr") & "/" & r("AbfertigungsNr")
Blatt.Range("F" & cnt).Value = r("BelegNr")
Blatt.Range("G" & cnt).Value = row.Item("PosNr")
Blatt.Range("H" & cnt).Value = row.Item("WarenNr")
Blatt.Range("I" & cnt).Value = "-"
Blatt.Range("J" & cnt).Value = row.Item("WarenBez")
Blatt.Range("K" & cnt).Value = ""
Blatt.Range("L" & cnt).Value = ZOLLANMELDUNG.Waehrungscode
Blatt.Range("M" & cnt).Value = ZOLLANMELDUNG.Geschaeftsart
Blatt.Range("N" & cnt).Value = ZOLLANMELDUNG.Zollstelle_Eingang
Blatt.Range("O" & cnt).Value = ""
Blatt.Range("P" & cnt).Value = row.Item("Netto")
Blatt.Range("Q" & cnt).Value = row.Item("PosWert")
Blatt.Range("R" & cnt).Value = IIf(rowcounter = 0, ZOLLANMELDUNG.ABGABEN_EUST, "")
Blatt.Range("S" & cnt).Value = IIf(rowcounter = 0, ZOLLANMELDUNG.ABGABEN_ZOLL, "")
Blatt.Range("T" & cnt).Value = IIf(rowcounter = 0, ZollInProzent.ToString("N2") & " %", "")
Blatt.Range("U" & cnt).Value = IIf(ZOLLANMELDUNG.VerBestLandZst.ToString.Count > 1, ZOLLANMELDUNG.VerBestLandZst.ToString.Substring(0, 2), "")
Blatt.Range("V" & cnt).Value = ZOLLANMELDUNG.Absender
Blatt.Range("W" & cnt).Value = row.Item("Herkunft")
Blatt.Range("X" & cnt).Value = ZOLLANMELDUNG.Incoterms
Blatt.Range("Y" & cnt).Value = row.Item("Verfahren")
Blatt.Range("Z" & cnt).Value = row.Item("Preferenz")
If If(ZOLLANMELDUNG.ATCMRN, "") <> "" AndAlso Blatt.Range("F" & cnt).Value = "" Then
Blatt.Range("F" & cnt).Value = ZOLLANMELDUNG.ATCMRN
End If
cnt += 1
rowcounter += 1
Next
Else
Dim ZollInProzent As Double = 0
If If(ZOLLANMELDUNG.RechnungspreisohneWahrung, "") <> "" Then
ZollInProzent = ZOLLANMELDUNG.ABGABEN_ZOLL / ZOLLANMELDUNG.RechnungspreisohneWahrung * 100
End If
Blatt.Range("A" & cnt).Value = cnt - 1
Blatt.Range("B" & cnt).Value = r("Abfertigungsdatum")
Blatt.Range("C" & cnt).Value = VERAG_PROG_ALLGEMEIN.cAllgemein.getFirmaFromFiliale(r("FilialenNr"))
Blatt.Range("D" & cnt).Value = ZOLLANMELDUNG.Empfaenger
Blatt.Range("E" & cnt).Value = r("FilialenNr") & "/" & r("AbfertigungsNr")
Blatt.Range("F" & cnt).Value = r("BelegNr")
Blatt.Range("G" & cnt).Value = ""
Blatt.Range("H" & cnt).Value = ""
Blatt.Range("I" & cnt).Value = "-"
Blatt.Range("J" & cnt).Value = ""
Blatt.Range("K" & cnt).Value = ""
Blatt.Range("L" & cnt).Value = ZOLLANMELDUNG.Waehrungscode
Blatt.Range("M" & cnt).Value = ZOLLANMELDUNG.Geschaeftsart
Blatt.Range("N" & cnt).Value = ZOLLANMELDUNG.Zollstelle_Eingang
Blatt.Range("O" & cnt).Value = ""
Blatt.Range("P" & cnt).Value = ""
Blatt.Range("Q" & cnt).Value = ""
Blatt.Range("R" & cnt).Value = ZOLLANMELDUNG.ABGABEN_EUST
Blatt.Range("S" & cnt).Value = ZOLLANMELDUNG.ABGABEN_ZOLL
Blatt.Range("T" & cnt).Value = ZollInProzent.ToString("N2") & " %"
Blatt.Range("U" & cnt).Value = IIf(ZOLLANMELDUNG.VerBestLandZst.ToString.Count > 1, ZOLLANMELDUNG.VerBestLandZst.ToString.Substring(0, 2), "")
Blatt.Range("V" & cnt).Value = ZOLLANMELDUNG.Absender
Blatt.Range("W" & cnt).Value = ""
Blatt.Range("X" & cnt).Value = ZOLLANMELDUNG.Incoterms
Blatt.Range("Y" & cnt).Value = ""
Blatt.Range("Z" & cnt).Value = ""
Blatt.Range("AA" & cnt).Value = ""
If If(ZOLLANMELDUNG.ATCMRN, "") <> "" AndAlso Blatt.Range("F" & cnt).Value = "" Then
Blatt.Range("F" & cnt).Value = ZOLLANMELDUNG.ATCMRN
End If
cnt += 1
End If
End If
Catch ex As Exception
MsgBox(ex.Message & ex.StackTrace)
End Try
lblKdAusFortschritt.Text = (cnt - 2) & "/" & dt.Rows.Count
Me.Refresh()
Next
Datei.Save
If False Then
Blatt.PrintOutEx()
Else
'Process.Start(Path)
.Visible = True
End If
End With
Else
With exclApp
.Visible = False
Try
Path = sPath & KUNDE.KundenNr & txtAbfertDat.Text & "-" & txtAbfertDatBis.Text & "" & " .xlsx"
While System.IO.File.Exists(Path)
Path = sPath & KUNDE.KundenNr & txtAbfertDat.Text & "-" & txtAbfertDatBis.Text & "_" & Now.ToString("ddMMyyyyHHmmss") & ".xlsx"
End While
My.Computer.FileSystem.WriteAllBytes(Path, My.Resources.Auswertung_divers, False)
Catch ex As System.Exception
' MsgBox(ex.Message)
MsgBox("ERROR 01: " & ex.Message & vbNewLine & ex.StackTrace)
Me.Cursor = Cursors.Default
Exit Sub
End Try
Datei = .Workbooks.Open(Path) 'Anpassen
Blatt = Datei.Worksheets(1) 'Anpassen
Blatt.Range("I1").Value = txtAbfertDat.Text & "-" & txtAbfertDatBis.Text
Dim cnt = 3
For Each r In dt.Rows
Blatt.Range("A" & cnt).Value = cnt - 2
Blatt.Range("B" & cnt).Value = r("Abfertigungsnummer")
' Blatt.Range("C" & cnt).Value = r("RechnungsNr")
Blatt.Range("C" & cnt).Value = r("Abfertigungsdatum")
Blatt.Range("D" & cnt).Value = r("Abfertigungsbezeichnung")
Blatt.Range("E" & cnt).Value = r("Absender")
Blatt.Range("F" & cnt).Value = "" 'r("Betrag")
Blatt.Range("H" & cnt).Value = r("BelegNr")
Dim ZOLLANMELDUNG As New DAKOSY_Worker.cZollsysteme_Aktenbeschriftung
Try
Dim zS = If(r("Zollsystem_Land") IsNot DBNull.Value, r("Zollsystem_Land").ToString(), "")
If ZOLLANMELDUNG.getDataByBezugsnummer(r("FilialenNr") & "/" & r("AbfertigungsNr"), r("Abfertigungsart"), "", False, zS) Then
Blatt.Range("F" & cnt).Value = ZOLLANMELDUNG.RechnungspreisohneWahrung
Blatt.Range("G" & cnt).Value = ZOLLANMELDUNG.Handelsrechnung.Replace(", ", "," & vbNewLine)
Blatt.Range("I" & cnt).Value = ZOLLANMELDUNG.ABGABEN_ZOLL
Blatt.Range("J" & cnt).Value = ZOLLANMELDUNG.ANZ_POS
If If(ZOLLANMELDUNG.ATCMRN, "") <> "" Then
Blatt.Range("H" & cnt).Value = ZOLLANMELDUNG.ATCMRN
End If
End If
Catch ex As Exception
MsgBox(ex.Message & ex.StackTrace)
End Try
lblKdAusFortschritt.Text = (cnt - 2) & "/" & dt.Rows.Count
Me.Refresh()
cnt += 1
Next
Datei.Save
If False Then
Blatt.PrintOutEx()
Else
'Process.Start(Path)
.Visible = True
End If
End With
End If
End If
lblKdAusFortschritt.Text = "fertig"
Catch ex As Exception
MsgBox(ex.Message & ex.StackTrace)
lblKdAusFortschritt.Text = "Fehler"
End Try
Me.Cursor = Cursors.Default
End Sub
End Class