1021 lines
48 KiB
VB.net
1021 lines
48 KiB
VB.net
Imports System.Data.SqlClient
|
|
Imports System.Globalization
|
|
|
|
Public Class frmKassenbuchSuche
|
|
Dim SQL As New SQL
|
|
Dim DGV = "B"
|
|
|
|
Private Sub btnSuche_Click(sender As Object, e As EventArgs) Handles btnSuche.Click
|
|
Me.Cursor = Cursors.WaitCursor
|
|
|
|
|
|
With DataGridView
|
|
.Columns.Clear()
|
|
If DGV = "B" Then
|
|
pnlRechts.Enabled = True
|
|
btnDGVBelege.BackColor = Color.SteelBlue
|
|
btnDGVBelege.ForeColor = Color.White
|
|
btnDGVKassenbuch.BackColor = Color.Transparent
|
|
btnDGVKassenbuch.ForeColor = Color.DimGray
|
|
|
|
|
|
|
|
Dim sqlstr = "SELECT b.rksv_BelegId, b.BelegDat, CASE WHEN b.Belegart=1 THEN 'E' ELSE 'A' END as Belegart,CASE WHEN b.Beleg_TYP='E' THEN rksv_umsatz ELSE (SELECT sum( betrag ) FROM tblEABelegposition WHERE (b.BelegNr = tblEABelegposition.BelegNr) AND (b.BelegDat = tblEABelegposition.BelegDat) AND (b.Benutzer = tblEABelegposition.Benutzer) AND (b.Niederlassung = tblEABelegposition.Niederlassung) AND (b.Mandant = tblEABelegposition.Mandant ) ) END as Betrag, b.Ordnungsbegriff, b.BelegNr, b.Frachtführer, " &
|
|
" CASE WHEN b.storniert=1 THEN 'JA' ELSE '' END as [storniert], b.Beleg_TYP ,b.Benutzer , (SELECT cast(ID as varchar(3))+' '+Name FROM [Personal] WHERE [ID]=b.Benutzer) as BenutzerBez " &
|
|
" FROM tblEABelegnummer as b WHERE 1=1 "
|
|
|
|
.SET_SQL(sqlstr & getBelegWhere() & " ORDER BY b.rksv_BelegId DESC, b.[upsize_ts] desc", "FMZOLL", getBelegList)
|
|
.LOAD()
|
|
If .RowCount = 0 Then Me.Cursor = Cursors.Default : Exit Sub
|
|
lblErgebnis.Text = "Ergebnisse: " & .RowCount
|
|
|
|
.Columns("Betrag").DefaultCellStyle.Format = "C"
|
|
.Columns("Betrag").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopRight
|
|
.Columns("Ordnungsbegriff").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
|
|
|
.Columns("rksv_BelegId").HeaderText = "Beleg-Nr"
|
|
.Columns("rksv_BelegId").Width = 55
|
|
.Columns("rksv_BelegId").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
|
|
.Columns("BelegDat").HeaderText = "Datum"
|
|
.Columns("BelegDat").Width = 65
|
|
.Columns("BelegNr").HeaderText = "KB-Bel.Nr"
|
|
.Columns("BelegNr").Width = 55
|
|
.Columns("BelegNr").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
|
|
.Columns("Belegart").HeaderText = "Art"
|
|
.Columns("Belegart").Width = 30
|
|
.Columns("Belegart").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
|
|
.Columns("Ordnungsbegriff").Width = 160
|
|
.Columns("Frachtführer").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
|
.Columns("Beleg_TYP").Visible = False
|
|
.Columns("storniert").HeaderText = "Storn."
|
|
.Columns("storniert").Width = 45
|
|
.Columns("Benutzer").Visible = False
|
|
|
|
' If master_Kasse Then
|
|
.Columns("BenutzerBez").HeaderText = "Benutzer" 'gibts bei bei master
|
|
'End If
|
|
|
|
For Each r As DataGridViewRow In .Rows
|
|
If r.Cells("storniert").Value = "JA" Then
|
|
r.DefaultCellStyle.ForeColor = Color.Red
|
|
End If
|
|
Next
|
|
|
|
ElseIf DGV = "KB" Then
|
|
|
|
pnlRechts.Enabled = False
|
|
btnDGVKassenbuch.BackColor = Color.SteelBlue
|
|
btnDGVKassenbuch.ForeColor = Color.White
|
|
btnDGVBelege.BackColor = Color.Transparent
|
|
btnDGVBelege.ForeColor = Color.DimGray
|
|
|
|
|
|
|
|
Dim sqlstr = "SELECT [JournalNr],[BelegDat],[BelegNr],CASE WHEN Belegart=1 THEN 'E' ELSE 'A' END as Belegart,[Buchungstext],([Betrag]+[Steuerbetrag]) as Brutto,[Konto],[Soll],[Haben],Steuerbetrag as Steuer,tblKassenbuch.Benutzer " &
|
|
" FROM Personal INNER JOIN tblKassenbuch ON Personal.ID = tblKassenbuch.Benutzer " &
|
|
" WHERE 1=1 "
|
|
|
|
.SET_SQL(sqlstr & getKassenbuchWhere() & " ORDER BY JournalNr DESC", "FMZOLL", getKassenbuchList)
|
|
.LOAD()
|
|
If .RowCount = 0 Then Me.Cursor = Cursors.Default : Exit Sub
|
|
|
|
.Columns("JournalNr").Width = 55
|
|
.Columns("JournalNr").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
|
|
.Columns("Brutto").DefaultCellStyle.Format = "C"
|
|
.Columns("Brutto").Width = 80
|
|
.Columns("Brutto").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopRight
|
|
.Columns("BelegDat").HeaderText = "Datum"
|
|
.Columns("BelegDat").Width = 65
|
|
.Columns("BelegNr").HeaderText = "KB-Bel.Nr"
|
|
.Columns("BelegNr").Width = 55
|
|
.Columns("BelegNr").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
|
|
.Columns("Belegart").HeaderText = "Art"
|
|
.Columns("Belegart").Width = 30
|
|
.Columns("Belegart").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
|
|
.Columns("Buchungstext").MinimumWidth = 60
|
|
.Columns("Buchungstext").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
|
.Columns("Konto").Width = 40
|
|
.Columns("Soll").Width = 80
|
|
.Columns("Soll").DefaultCellStyle.Format = "C"
|
|
.Columns("Haben").Width = 80
|
|
.Columns("Haben").DefaultCellStyle.Format = "C"
|
|
.Columns("Steuer").Width = 80
|
|
.Columns("Steuer").DefaultCellStyle.Format = "C"
|
|
.Columns("Benutzer").Visible = False
|
|
|
|
End If
|
|
End With
|
|
|
|
|
|
|
|
Me.Cursor = Cursors.Default
|
|
End Sub
|
|
|
|
|
|
Function getKassenbuchWhere() As String
|
|
Dim sqlstr = ""
|
|
Dim rksv_id = cboKasse._value
|
|
Dim Mandant = "VERA"
|
|
Dim Niederlassung = "VERA"
|
|
|
|
Select Case rksv_id
|
|
Case 1 : Mandant = "VERA" : Niederlassung = "SUB"
|
|
Case 2 : Mandant = "VERA" : Niederlassung = "SUB"
|
|
Case 3 : Mandant = "VERA" : Niederlassung = "SUW"
|
|
Case 4 : Mandant = "VERA" : Niederlassung = "WAI"
|
|
Case 5 : Mandant = "VERA" : Niederlassung = "VRR"
|
|
Case 6 : Mandant = "VERA" : Niederlassung = "SUB"
|
|
End Select
|
|
|
|
' sqlstr &= " AND tblKassenbuch.Mandant='" & Mandant & "' AND tblKassenbuch.Niederlassung='" & Niederlassung & "' " & ""
|
|
' sqlstr &= " AND tblKassenbuch.Benutzer IN (SELECT ID FROM [Personal] WHERE [Standard_RKSV_KasseId]='" & rksv_id & "') "
|
|
sqlstr &= " AND tblKassenbuch.rksv_id='" & rksv_id & "' "
|
|
If txtAbfertDat.Text <> "" Then
|
|
If txtAbfertDatBis.Text <> "" Then
|
|
sqlstr &= " AND (BelegDat BETWEEN @Datum_von AND @Datum_bis ) "
|
|
Else
|
|
sqlstr &= " AND (BelegDat BETWEEN @Datum_von AND @Datum_von ) "
|
|
End If
|
|
End If
|
|
|
|
If txtAuftraggeberKdnr.Text <> "" And IsNumeric(txtAuftraggeberKdnr.Text) Then : sqlstr &= " AND [KundenNr] LIKE @VermittlerKundenNr "
|
|
ElseIf kdtxtAuftraggeber.Text <> "" Then : sqlstr &= " AND [Name1] LIKE @Vermittler " : End If
|
|
|
|
If txtAbfertigungsnummer.Text <> "" Then
|
|
If txtAbfertigungsnummerBis.Text <> "" Then
|
|
sqlstr &= " AND ([AbfertigungsNr] BETWEEN @AbfertigungsNr AND @AbfertigungsNr_bis) "
|
|
Else
|
|
sqlstr &= " AND AbfertigungsNr LIKE @AbfertigungsNr "
|
|
End If
|
|
End If
|
|
If txtUnterNr.Text <> "" Then sqlstr &= " AND [UnterNr] LIKE @UnterNr "
|
|
If cboFiliale._value <> "" Then sqlstr &= " AND [FilialenNr] LIKE @FilialenNr "
|
|
If cboKassier._value <> "" Then sqlstr &= " AND [Benutzer] = @Benutzer "
|
|
|
|
If txtLKWKennzeichen.Text <> "" Then sqlstr &= " AND [LKW Kennzeichen] LIKE @LKW "
|
|
|
|
' If txtSachbearbeiter.Text <> "" Then sqlstr &= " AND [Sachbearbeiter] = @Sachbearbeiter "
|
|
|
|
|
|
Return sqlstr
|
|
End Function
|
|
|
|
Function getKassenbuchList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
|
|
|
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Datum_von", txtAbfertDat.Text & " 00:00:00"))
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Datum_bis", txtAbfertDatBis.Text & " 23:59:59"))
|
|
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Vermittler", kdtxtAuftraggeber.Text.Replace("*", "%")))
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("VermittlerKundenNr", txtAuftraggeberKdnr.Text.Replace("*", "%")))
|
|
|
|
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("Benutzer", cboKassier._value))
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("LKW", txtLKWKennzeichen.Text.Replace("*", "%").ToUpper))
|
|
' list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Sachbearbeiter", txtSachbearbeiter.Text))
|
|
Return list
|
|
|
|
End Function
|
|
|
|
|
|
Function getBelegWhere() As String
|
|
Dim sqlstr = ""
|
|
Dim rksv_id = cboKasse._value
|
|
Dim Mandant = "VERA"
|
|
Dim Niederlassung = "VERA"
|
|
|
|
Select Case rksv_id
|
|
Case 1 : Mandant = "VERA" : Niederlassung = "SUB"
|
|
End Select
|
|
' If cboNiederlassung.Text <> "" Then sqlstr &= " AND b.Mandant='" & Mandant & "' AND b.Niederlassung='" & cboNiederlassung.Text & "' " & ""
|
|
If cboNiederlassung.Text <> "" Then sqlstr &= " AND b.Niederlassung=@Niederlassung " & ""
|
|
|
|
' sqlstr &= " AND b.Benutzer IN (SELECT ID FROM [Personal] WHERE [Standard_RKSV_KasseId]='" & rksv_id & "') "
|
|
sqlstr &= " AND b.rksv_id='" & rksv_id & "' "
|
|
|
|
If txtAbfertDat.Text <> "" Then
|
|
If txtAbfertDatBis.Text <> "" Then
|
|
sqlstr &= " AND (b.BelegDat BETWEEN @Datum_von AND @Datum_bis ) "
|
|
Else
|
|
sqlstr &= " AND (b.BelegDat BETWEEN @Datum_von AND @Datum_von ) "
|
|
End If
|
|
End If
|
|
|
|
|
|
If txtAuftraggeberKdnr.Text <> "" And IsNumeric(txtAuftraggeberKdnr.Text) Then : sqlstr &= " AND b.[KundenNr] LIKE @VermittlerKundenNr "
|
|
ElseIf kdtxtAuftraggeber.Text <> "" Then : sqlstr &= " AND b.[Name1] LIKE @Vermittler " : End If
|
|
|
|
If KdFrachtfuehrerKdnr.Text <> "" And IsNumeric(KdFrachtfuehrerKdnr.Text) Then : sqlstr &= " AND [FrachtführerKundenNr] LIKE @FrachtführerKundenNr "
|
|
ElseIf KdFrachtfuehrer.Text <> "" Then : sqlstr &= " AND b.[Frachtführer] LIKE @Frachtführer " : End If
|
|
|
|
|
|
If txtAbfertigungsnummer.Text <> "" Then
|
|
If txtAbfertigungsnummerBis.Text <> "" Then
|
|
sqlstr &= " AND (b.[AbfertigungsNr] BETWEEN @AbfertigungsNr AND @AbfertigungsNr_bis) "
|
|
Else
|
|
sqlstr &= " AND b.AbfertigungsNr LIKE @AbfertigungsNr "
|
|
End If
|
|
End If
|
|
If txtUnterNr.Text <> "" Then sqlstr &= " AND b.[UnterNr] LIKE @UnterNr "
|
|
If cboFiliale._value <> "" Then sqlstr &= " AND b.[FilialenNr] LIKE @FilialenNr "
|
|
If cboKassier._value <> "" Then sqlstr &= " AND b.[Benutzer] = @Benutzer "
|
|
|
|
If txtLKWKennzeichen.Text <> "" Then sqlstr &= " AND b.[LKW Kennzeichen] LIKE @LKW "
|
|
|
|
' If txtSachbearbeiter.Text <> "" Then sqlstr &= " AND b.[Sachbearbeiter] = @Sachbearbeiter "
|
|
|
|
If cboPreisliste._value <> "" Then sqlstr &= " AND (SELECT COUNT(*) FROM tblEABelegposition WHERE b.BelegNr = tblEABelegposition.BelegNr AND b.BelegDat = tblEABelegposition.BelegDat AND b.Benutzer = tblEABelegposition.Benutzer AND b.Niederlassung = tblEABelegposition.Niederlassung AND b.Mandant = tblEABelegposition.Mandant AND tblEABelegposition.[PreislistenNr] LIKE @PreislistenNr )>0 "
|
|
|
|
Dim leistungsNr = getValues()
|
|
If leistungsNr <> "" Then sqlstr &= " AND (SELECT COUNT(*) FROM tblEABelegposition WHERE b.BelegNr = tblEABelegposition.BelegNr AND b.BelegDat = tblEABelegposition.BelegDat AND b.Benutzer = tblEABelegposition.Benutzer AND b.Niederlassung = tblEABelegposition.Niederlassung AND b.Mandant = tblEABelegposition.Mandant AND LeistungsNr IN (" & getValues() & "))>0 "
|
|
|
|
Return sqlstr
|
|
End Function
|
|
|
|
|
|
Function getBelegList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
|
|
|
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Datum_von", txtAbfertDat.Text & " 00:00:00"))
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Datum_bis", txtAbfertDatBis.Text & " 23:59:59"))
|
|
|
|
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ührerKundenNr", KdFrachtfuehrerKdnr.Text.Replace("*", "%")))
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Frachtführer", KdFrachtfuehrer.Text.Replace("*", "%")))
|
|
|
|
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("Benutzer", cboKassier._value))
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("LKW", txtLKWKennzeichen.Text.Replace("*", "%").ToUpper))
|
|
' list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Sachbearbeiter", txtSachbearbeiter.Text))
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("PreislistenNr", cboPreisliste._value))
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Niederlassung", cboNiederlassung.Text))
|
|
|
|
Return list
|
|
|
|
End Function
|
|
|
|
|
|
Private Sub frmSpeditionsbuchSuche_Load(sender As Object, e As EventArgs) Handles Me.Load
|
|
Me.Height = Screen.FromRectangle(Me.Bounds).WorkingArea.Size.Height
|
|
Me.Top = 0
|
|
|
|
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, txtAbsenderKdnr) ' initKdAbsender()
|
|
' kdtxtEmpfaenger.initKdBox(Me, txtEmpfaengerKdnr) 'initKdEmpfaenger()
|
|
kdtxtAuftraggeber.initKdBox(Me, txtAuftraggeberKdnr) 'initKdAuftraggeber()
|
|
|
|
' cboBerichtRgAbfArt.fillWithSQL(" SELECT [Abfertigungsart],[Abfertigungsbezeichnung] FROM [Abfertigungsarten] ORDER BY Abfertigungsart ", True, "FMZOLL", True)
|
|
' cboSachbearbeiter.fillWithSQL("SELECT ID, Name FROM Personal WHERE [Status]<>'L' ORDER BY Name ", True, "FMZOLL", True)
|
|
' cboSachbearbeiter.fillWithSQL("SELECT ID,/*cast(ID as nvarchar(3)) +' ' + Name as*/ Name FROM Personal WHERE [Status]<>'L' ORDER BY Name ", False, "FMZOLL", True)
|
|
cboFiliale.fillWithSQL("SELECT FilialenNr, Grenzstelle FROM Filialen WHERE Fil_Status='A' ORDER BY FilialenNr ", True, "FMZOLL", True)
|
|
'ComboBox1.fillWithSQL("SELECT [Abfertigungsart],[Abfertigungsbezeichnung] FROM [Abfertigungsarten] ORDER BY Abfertigungsart ", True, "FMZOLL")
|
|
Button4.PerformClick()
|
|
|
|
|
|
|
|
cboKasse.fillWithSQL("SELECT [rksv_id],[rksv_bez] FROM [tblRKSV_Kassen] ", False, "FMZOLL", False)
|
|
MyComboBox1.fillWithSQL("SELECT [rksv_id],[rksv_bez] FROM [tblRKSV_Kassen] ", False, "FMZOLL", True)
|
|
cboKasse.changeItem(1)
|
|
|
|
cboPreisliste.fillWithSQL("SELECT [PreislistenNr],[PreislistenBez] FROM [tblPreislisten] ORDER BY PreislistenBez ", False, "FMZOLL", True)
|
|
' cboStatistik_Preisliste.fillWithSQL("SELECT [PreislistenNr],[PreislistenBez] FROM [tblPreislisten] ORDER BY PreislistenBez ", False, "FMZOLL", True)
|
|
|
|
|
|
|
|
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ADMIN", Me) Then
|
|
' btnQSAufteilung.Visible = True
|
|
End If
|
|
|
|
btnDGVBelege.PerformClick()
|
|
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
|
|
' 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 DataGridView2_CellDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView.CellDoubleClick
|
|
Try
|
|
|
|
If e.RowIndex >= 0 Then
|
|
Dim r As DataGridViewRow = DataGridView.Rows(e.RowIndex)
|
|
|
|
Dim PersonalTmp = (New FMZOLL_SQL).getPersonalById(r.Cells("Benutzer").Value)
|
|
|
|
Dim B As New EABeleg("LOAD", PersonalTmp.Mandant, PersonalTmp.Niederlassung, PersonalTmp.ID, r.Cells("BelegNr").Value, r.Cells("BelegDat").Value)
|
|
openBELEG(B, PersonalTmp)
|
|
|
|
End If
|
|
|
|
Catch ex As Exception
|
|
|
|
End Try
|
|
End Sub
|
|
Sub openBELEG(B As EABeleg, PERSONAL As cPersonal)
|
|
If B Is Nothing Then Exit Sub
|
|
Select Case B.Beleg_TYP
|
|
Case "0"
|
|
MsgBox("Ein NULL-Beleg ist nur einmal verfügbar.")
|
|
Case "E"
|
|
'If B.storniert Then MsgBox("Der Beleg wurde bereits storiniert!") : Exit Sub
|
|
Dim frmBeleg As New frmFremdbeleg(PERSONAL, PERSONAL.Mandant, PERSONAL.Niederlassung, B.Benutzer, B.BelegNr, B.BelegDat)
|
|
frmBeleg.ShowDialog(Me)
|
|
Case "L"
|
|
If B.storniert Then MsgBox("Der Beleg wurde bereits storiniert!") : Exit Sub
|
|
Dim frmBeleg As New frmNacherfassungLeihgeld(PERSONAL, Nothing, PERSONAL.Mandant, PERSONAL.Niederlassung, B.Benutzer, B.BelegNr, B.BelegDat)
|
|
frmBeleg.ShowDialog(Me)
|
|
Case Else
|
|
Dim frmBeleg As New frmBelegNeu(PERSONAL, Nothing, PERSONAL.Mandant, PERSONAL.Niederlassung, B.Benutzer, B.BelegNr, B.BelegDat)
|
|
frmBeleg.ShowDialog(Me)
|
|
End Select
|
|
|
|
' btnSuche.PerformClick()
|
|
|
|
' End If
|
|
End Sub
|
|
|
|
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
|
|
For i = 0 To MyListBox1.Items.Count - 1
|
|
MyListBox1.SetSelected(i, False)
|
|
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_CellMouseClick(sender As Object, e As DataGridViewCellMouseEventArgs) Handles DataGridView.CellMouseClick
|
|
If e.Button = Windows.Forms.MouseButtons.Right Then
|
|
DataGridView.ClearSelection()
|
|
DataGridView.Rows(e.RowIndex).Selected = True
|
|
End If
|
|
End Sub
|
|
|
|
|
|
Private Sub Button1_Click_1(sender As Object, e As EventArgs)
|
|
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 vbYes = MsgBox("Möchten Sie den Eintrag wirklich löschen?", vbYesNoCancel) Then
|
|
Dim r As DataGridViewRow = DataGridView.SelectedRows(0)
|
|
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
|
|
Button5.Text = "Heute"
|
|
ElseIf srcTAG = Now.AddDays(-1).ToShortDateString Then
|
|
Button5.Text = "Gestern"
|
|
ElseIf srcTAG = Now.AddDays(-2).ToShortDateString Then
|
|
Button5.Text = "Vorgestern"
|
|
Else
|
|
Button5.Text = srcTAG.ToString("dd.MM")
|
|
End If
|
|
|
|
'End If
|
|
Case ""
|
|
DateTimePicker1.Value = ("01." & Now.Month & "." & Now.Year)
|
|
DateTimePicker2.Value = Now
|
|
End Select
|
|
|
|
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 Button4.Click
|
|
SplitContainer1.Panel2Collapsed = Not SplitContainer1.Panel2Collapsed
|
|
|
|
If SplitContainer1.Panel2Collapsed Then
|
|
' pnlSearch.Height = SplitContainer1.Panel1.Height
|
|
SplitContainer.SplitterDistance -= 150
|
|
Else
|
|
'pnlSearch.Height = SplitContainer1.Height
|
|
SplitContainer.SplitterDistance += 150
|
|
End If
|
|
|
|
If Button4.Image Is SDL.My.Resources.Resources.pfeil_unten Then
|
|
Button4.Image = SDL.My.Resources.Resources.pfeil_oben
|
|
Else
|
|
Button4.Image = SDL.My.Resources.Resources.pfeil_unten
|
|
End If
|
|
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 Button5.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 = False
|
|
|
|
|
|
|
|
|
|
Dim print As New frmPrintLayout
|
|
print.Text = "Kassenbericht"
|
|
|
|
Dim rpt As New rptKassenbuchBericht
|
|
|
|
rpt.DataSource = SQL.loadDgvBySql_Param("SELECT b.BelegDat,b.rksv_BelegId,case when (b.FilialenNr<=0 OR b.AbfertigungsNr<=0) THEN p.FilialenNr ELSE b.FilialenNr END as FilialenNr,case when (b.FilialenNr<=0 OR b.AbfertigungsNr<=0) THEN p.AbfertigungsNr ELSE b.AbfertigungsNr END as AbfertigungsNr,b.Name1,b.Frachtführer,b.[LKW Kennzeichen],p.Anzahl,p.LeistungsNr,p.LeistungsBez,p.Leistungsbeschreibung,p.Preis,p.Betrag,b.LKW_Id FROM [tblEABelegnummer] as b INNER JOIN [tblEABelegposition] as p ON (b.BelegNr = p.BelegNr AND b.BelegDat = p.BelegDat AND b.Benutzer = p.Benutzer AND b.Niederlassung = p.Niederlassung AND b.Mandant = p.Mandant) " &
|
|
" WHERE 1=1 " & getBelegWhere() & " ORDER BY " & If(cbxStat_Filiale.Checked, "FilialenNr,", "") & " " & If(cbxStat_Leistung.Checked, "p.LeistungsNr,", "") & " b.[Mandant],b.[Niederlassung],b.[BelegDat],[rksv_id],[rksv_BelegId]", "FMZOLL", , getBelegList)
|
|
|
|
If rpt.DataSource Is Nothing Then
|
|
MsgBox("Keine Daten!")
|
|
Exit Sub
|
|
End If
|
|
|
|
|
|
|
|
'Filter anzeigen
|
|
' If displayFilter Then
|
|
' rpt.lblFilterTxt.Visible = displayFilter
|
|
'rpt.txtFilter.Visible = displayFilter
|
|
'rpt.txtFilter.Text = 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 cbxStat_Filiale.Checked Then rpt.GroupHeader1.DataField = "FilialenNr" 'Gruppierung
|
|
|
|
If cbxStat_Leistung.Checked Then rpt.GroupHeader2.DataField = "LeistungsNr" 'Gruppierung
|
|
|
|
|
|
|
|
' rpt.GroupHeader2.DataField = "AvisoId" 'Gruppierung
|
|
|
|
' MsgBox(rpt.DataSource.rows.count)
|
|
|
|
If DirectCast(rpt.DataSource, DataTable).Rows.Count = 0 Then
|
|
rpt.Dispose() : print.Dispose()
|
|
MsgBox("Keine Daten vorhanden!")
|
|
Exit Sub
|
|
End If
|
|
|
|
If cboKassier._value <> "" Then
|
|
rpt.lblFilterTxt.Text = "Kassier: " & cboKassier.Text
|
|
rpt.lblFilterTxt.Visible = True
|
|
End If
|
|
|
|
|
|
Dim sum = 0
|
|
rpt.lblUeberschrift.Text = "Kassenbericht " & 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 sumBtr As Double = 0
|
|
Dim sumEp As Double = 0
|
|
Dim gesSumBtr As Double = 0
|
|
Dim gesSumEp As Double = 0
|
|
Dim gesgesSumBtr As Double = 0
|
|
Dim gesgesSumEp As Double = 0
|
|
Dim gesgesSumAnz = 0
|
|
Dim gesSumAnz = 0
|
|
Dim belegId As String = ""
|
|
|
|
|
|
|
|
AddHandler rpt.Detail.Format, Sub()
|
|
If belegId = rpt.Fields.Item("rksv_BelegId").Value.ToString Then ' Selber Beleg, andere BelegPosition
|
|
rpt.lblBelegDatum.Visible = False
|
|
rpt.lblBelegNr.Visible = False
|
|
' rpt.lblFilialeAbfertigungNr.Visible = False
|
|
rpt.lblAuftraggeber.Visible = False
|
|
rpt.lblRechnungAn.Visible = False
|
|
rpt.lblLkw.Visible = False
|
|
Else
|
|
rpt.lblBelegDatum.Visible = True
|
|
rpt.lblBelegNr.Visible = True
|
|
rpt.lblFilialeAbfertigungNr.Visible = True
|
|
rpt.lblAuftraggeber.Visible = True
|
|
rpt.lblRechnungAn.Visible = True
|
|
rpt.lblLkw.Visible = True
|
|
belegId = rpt.Fields.Item("rksv_BelegId").Value.ToString
|
|
End If
|
|
|
|
rpt.lblBelegDatum.Text = rpt.Fields.Item("BelegDat").Value
|
|
rpt.lblBelegNr.Text = rpt.Fields.Item("rksv_BelegId").Value
|
|
|
|
rpt.lblFilialeAbfertigungNr.Text = rpt.Fields.Item("FilialenNr").Value & "/" & rpt.Fields.Item("AbfertigungsNr").Value
|
|
If rpt.lblFilialeAbfertigungNr.Text = "0/0" Or rpt.lblFilialeAbfertigungNr.Text = "-1/-1" Then
|
|
If rpt.Fields.Item("LKW_Id").Value IsNot DBNull.Value Then
|
|
rpt.lblFilialeAbfertigungNr.Text = "LKW: " & rpt.Fields.Item("LKW_Id").Value
|
|
Else
|
|
rpt.lblFilialeAbfertigungNr.Text = "-"
|
|
End If
|
|
End If
|
|
rpt.lblAuftraggeber.Text = rpt.Fields.Item("Name1").Value
|
|
rpt.lblRechnungAn.Text = rpt.Fields.Item("Frachtführer").Value
|
|
rpt.lblLkw.Text = rpt.Fields.Item("LKW Kennzeichen").Value
|
|
|
|
rpt.lblAnzahl.Text = rpt.Fields.Item("Anzahl").Value
|
|
rpt.lblLeistung.Text = rpt.Fields.Item("Leistungsbeschreibung").Value
|
|
' rpt.lblLeistungnr.Text = rpt.Fields.Item("LeistungsNr").Value
|
|
|
|
Dim ep As Double = 0
|
|
Dim btr As Double = 0
|
|
|
|
If IsNumeric(checkNull(rpt.Fields.Item("Preis").Value)) Then ep = CDbl(rpt.Fields.Item("Preis").Value())
|
|
rpt.lblEPBetragEUR.Text = CDbl(ep).ToString("N2", Globalization.CultureInfo.CurrentCulture)
|
|
|
|
If IsNumeric(checkNull(rpt.Fields.Item("Betrag").Value)) Then btr = CDbl(rpt.Fields.Item("Betrag").Value())
|
|
rpt.lblBetragEUR.Text = CDbl(btr).ToString("N2", Globalization.CultureInfo.CurrentCulture)
|
|
|
|
|
|
sumBtr += btr
|
|
sumEp += ep
|
|
|
|
gesSumBtr += btr
|
|
gesSumEp += ep
|
|
|
|
gesgesSumBtr += btr
|
|
gesgesSumEp += ep
|
|
|
|
gesSumAnz += 1
|
|
gesgesSumAnz += 1
|
|
|
|
End Sub
|
|
AddHandler rpt.GroupHeader1.Format, Sub()
|
|
rpt.lblFiskalvertretung.Text = "Filiale " & checkNull(rpt.Fields.Item("FilialenNr").Value) & " - " & SQL.getValueTxtBySql("SELECT TOP 1 [Grenzstelle] FROM [Filialen] where FilialenNr='" & checkNull(rpt.Fields.Item("FilialenNr").Value) & "'", "FMZOLL")
|
|
rpt.lblFiskalvertretungLand.Text = checkNull(rpt.Fields.Item("FilialenNr").Value)
|
|
|
|
gesSumBtr = 0
|
|
gesSumEp = 0
|
|
gesSumAnz = 0
|
|
rpt.lblGesSumTxt.Text = "Summe " & checkNull(rpt.Fields.Item("FilialenNr").Value) & ":"
|
|
End Sub
|
|
AddHandler rpt.GroupHeader2.Format, Sub()
|
|
rpt.lblUIDNr.Text = checkNull(rpt.Fields.Item("LeistungsNr").Value) & " - " & checkNull(rpt.Fields.Item("LeistungsBez").Value)
|
|
|
|
sumBtr = 0
|
|
sumEp = 0
|
|
|
|
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")
|
|
rpt.lblSumRe.Text = sumEp.ToString("N2", CultureInfo.CurrentCulture)
|
|
rpt.lblSumEust.Text = sumBtr.ToString("N2", CultureInfo.CurrentCulture)
|
|
|
|
|
|
End Sub
|
|
|
|
AddHandler rpt.GroupFooter1.Format, Sub()
|
|
rpt.lblGesSumRe.Text = gesSumEp.ToString("N2", CultureInfo.CurrentCulture)
|
|
rpt.lblGesSumEust.Text = gesSumBtr.ToString("N2", CultureInfo.CurrentCulture)
|
|
rpt.lblGesSumAnzahl.Text = gesSumAnz.ToString("N0")
|
|
|
|
End Sub
|
|
AddHandler rpt.ReportFooter1.Format, Sub()
|
|
|
|
rpt.lblGesgesSumRe.Text = gesgesSumEp.ToString("N2", CultureInfo.CurrentCulture)
|
|
rpt.lblGesgesSumEust.Text = gesgesSumBtr.ToString("N2", CultureInfo.CurrentCulture)
|
|
rpt.lblGesGesSumAnzahl.Text = gesgesSumAnz.ToString("N0")
|
|
|
|
End Sub
|
|
|
|
print.Viewer.LoadDocument(rpt)
|
|
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
|
|
print.Show()
|
|
|
|
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 btnEinnahmeBeleg_Click(sender As Object, e As EventArgs) Handles btnDGVBelege.Click
|
|
DGV = "B"
|
|
btnSuche.PerformClick()
|
|
End Sub
|
|
|
|
Private Sub btnAusgabebeleg_Click(sender As Object, e As EventArgs) Handles btnDGVKassenbuch.Click
|
|
DGV = "KB"
|
|
btnSuche.PerformClick()
|
|
End Sub
|
|
|
|
Private Sub cboPreisliste_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboPreisliste.SelectedIndexChanged
|
|
MyListBox1.Items.Clear()
|
|
If IsNumeric(cboPreisliste._value) Then
|
|
MyListBox1.fillWithSQL("SELECT Leistungen.LeistungsNr, max(Leistungen.[LeistungsBez]) " &
|
|
" FROM [VERAG].[dbo].[tblPreislistenpositionen] inner join Leistungen on Leistungen.LeistungsNr=[tblPreislistenpositionen].LeistungsNr " &
|
|
" where PreislistenNr=" & cboPreisliste._value & " group by Leistungen.LeistungsNr", True, "FMZOLL")
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub MyComboBox2_SelectedIndexChanged(sender As Object, e As EventArgs)
|
|
' MyComboBox2.Items.Clear()
|
|
' If IsNumeric(cboPreisliste._value) Then
|
|
' MyComboBox2.fillWithSQL("SELECT Leistungen.LeistungsNr, max(Leistungen.[LeistungsBez]) " &
|
|
' " FROM [VERAG].[dbo].[tblPreislistenpositionen] inner join Leistungen on Leistungen.LeistungsNr=[tblPreislistenpositionen].LeistungsNr " &
|
|
' " where PreislistenNr=" & MyComboBox2._value & " group by Leistungen.LeistungsNr", True, "FMZOLL")
|
|
' End If
|
|
End Sub
|
|
|
|
Private Sub cboKasse_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboKasse.SelectedIndexChanged
|
|
cboNiederlassung.Items.Clear()
|
|
|
|
If IsNumeric(cboKasse._value) Then
|
|
cboNiederlassung.fillWithSQL("SELECT distinct([Niederlassung]) FROM [Personal] where Standard_RKSV_KasseId=" & cboKasse._value & " AND [Niederlassung] is not null order by [Niederlassung]", False, "FMZOLL", True)
|
|
|
|
Select Case cboKasse._value
|
|
Case 20
|
|
cboKassier.fillWithSQL("SELECT ID,[Name] FROM [Personal] where [Mandant]='IMEX' order by name", True, "FMZOLL", True)
|
|
Case Else
|
|
cboKassier.fillWithSQL("SELECT ID,[Name] FROM [Personal] where [Mandant]='VERA' AND [Standard_RKSV_KasseId]='" & cboKasse._value & "' " & If(CheckBox1.Checked, "AND Status='A' AND BLC='R'", "") & " order by name", True, "FMZOLL", True)
|
|
End Select
|
|
End If
|
|
|
|
|
|
End Sub
|
|
|
|
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
|
|
|
|
Dim displayFilter = False
|
|
|
|
|
|
|
|
|
|
Dim print As New frmPrintLayout
|
|
print.Text = "Kassenbericht"
|
|
|
|
Dim rpt As New rptKassenbuchBerichtSaldenBenutzer
|
|
|
|
'If MyComboBox1._value = "" Then
|
|
' MsgBox("Keine Kasse!") : Exit Sub
|
|
'End If
|
|
|
|
Dim sqlStr = ""
|
|
sqlStr &= " SELECT Benutzer,Name, Konto, Sum(tblKassenbuch.Soll) AS Soll, Sum(tblKassenbuch.Haben) AS Haben, (Sum(tblKassenbuch.Soll)-Sum(tblKassenbuch.Haben)) AS Saldo "
|
|
sqlStr &= " FROM Personal INNER JOIN tblKassenbuch ON Personal.ID = tblKassenbuch.Benutzer "
|
|
sqlStr &= " WHERE tblKassenbuch.Geschäftsjahr='" & cRKSV.getGJ(Now) & "' and konto=KassenbuchNr "
|
|
If MyComboBox1._value <> "" Then sqlStr &= " AND rksv_id=" & MyComboBox1._value & " "
|
|
If MyComboBox2._value <> "" Then sqlStr &= " AND tblKassenbuch.Niederlassung ='" & MyComboBox2._value & "'"
|
|
sqlStr &= " group by Benutzer,Name, Konto order by Name"
|
|
|
|
rpt.DataSource = SQL.loadDgvBySql_Param(sqlStr, "FMZOLL", , getBelegList)
|
|
|
|
If rpt.DataSource Is Nothing Then
|
|
MsgBox("Keine Daten!")
|
|
Exit Sub
|
|
End If
|
|
|
|
|
|
|
|
|
|
|
|
If DirectCast(rpt.DataSource, DataTable).Rows.Count = 0 Then
|
|
rpt.Dispose() : print.Dispose()
|
|
MsgBox("Keine Daten vorhanden!")
|
|
Exit Sub
|
|
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
|
|
rpt.lblUeberschrift.Text = "Salden Bericht, vom " & Now.ToShortDateString
|
|
Dim sumBtr As Double = 0
|
|
|
|
|
|
AddHandler rpt.Detail.Format, Sub()
|
|
|
|
rpt.lblKassenbuchNr.Text = rpt.Fields.Item("Konto").Value
|
|
rpt.lblBenutzer.Text = rpt.Fields.Item("Name").Value
|
|
rpt.lblBetragEUR.Text = CDbl(rpt.Fields.Item("Saldo").Value).ToString("N2", Globalization.CultureInfo.CurrentCulture)
|
|
Try
|
|
sumBtr += CDbl(rpt.Fields.Item("Saldo").Value)
|
|
Catch ex As Exception
|
|
|
|
End Try
|
|
|
|
End Sub
|
|
AddHandler rpt.GroupHeader1.Format, Sub()
|
|
rpt.lblKasse.Text = MyComboBox1.Text
|
|
|
|
End Sub
|
|
|
|
|
|
AddHandler rpt.GroupFooter1.Format, Sub()
|
|
rpt.lblGesSumEust.Text = sumBtr.ToString("N2", CultureInfo.CurrentCulture)
|
|
End Sub
|
|
|
|
|
|
print.Viewer.LoadDocument(rpt)
|
|
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
|
|
print.Show()
|
|
|
|
End Sub
|
|
|
|
Private Sub MyComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles MyComboBox1.SelectedIndexChanged
|
|
cboNiederlassung.Items.Clear()
|
|
|
|
If IsNumeric(MyComboBox1._value) Then
|
|
MyComboBox2.fillWithSQL("SELECT distinct([Niederlassung]) FROM [Personal] where Standard_RKSV_KasseId=" & MyComboBox1._value & " AND [Niederlassung] is not null order by [Niederlassung]", False, "FMZOLL", True)
|
|
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Private Sub CheckBox1_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox1.CheckedChanged
|
|
cboKasse_SelectedIndexChanged(cboKasse, New EventArgs)
|
|
End Sub
|
|
|
|
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
|
|
|
|
Dim displayFilter = False
|
|
|
|
|
|
|
|
|
|
Dim print As New frmPrintLayout
|
|
print.Text = "Kassenbericht"
|
|
|
|
Dim rpt As New rptKassenbuchBerichtSollHaben
|
|
|
|
'If MyComboBox1._value = "" Then
|
|
' MsgBox("Keine Kasse!") : Exit Sub
|
|
'End If
|
|
|
|
Dim sqlStr = ""
|
|
sqlStr &= " SELECT Benutzer,Name, Konto, isnull(Sum(tblKassenbuch.Soll),0) AS Soll, isnull(Sum(tblKassenbuch.Haben),0) AS Haben, (Sum(tblKassenbuch.Soll)-Sum(tblKassenbuch.Haben)) AS Saldo "
|
|
sqlStr &= " FROM Personal INNER JOIN tblKassenbuch ON Personal.ID = tblKassenbuch.Benutzer "
|
|
sqlStr &= " WHERE konto=KassenbuchNr "
|
|
If txtAbfertDat.Text <> "" Then
|
|
If txtAbfertDatBis.Text <> "" Then
|
|
sqlStr &= " AND (Buchungsdatum BETWEEN @Datum_von AND @Datum_bis ) "
|
|
Else
|
|
sqlStr &= " AND (Buchungsdatum BETWEEN @Datum_von AND @Datum_von ) "
|
|
End If
|
|
End If
|
|
|
|
If cboKasse._value <> "" Then sqlStr &= " AND rksv_id=" & cboKasse._value & " "
|
|
If cboNiederlassung._value <> "" Then sqlStr &= " AND tblKassenbuch.Niederlassung ='" & cboNiederlassung._value & "'"
|
|
sqlStr &= " group by Benutzer,Name, Konto order by Name"
|
|
|
|
|
|
|
|
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Datum_von", txtAbfertDat.Text & " 00:00:00"))
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Datum_bis", txtAbfertDatBis.Text & " 23:59:59"))
|
|
|
|
|
|
rpt.DataSource = SQL.loadDgvBySql_Param(sqlStr, "FMZOLL", , list)
|
|
|
|
If rpt.DataSource Is Nothing Then
|
|
MsgBox("Keine Daten!")
|
|
Exit Sub
|
|
End If
|
|
|
|
|
|
|
|
rpt.lblUeberschrift.Text = "SOLL HABEN Bericht von " & txtAbfertDat.Text & " bis " & txtAbfertDatBis.Text
|
|
|
|
If DirectCast(rpt.DataSource, DataTable).Rows.Count = 0 Then
|
|
rpt.Dispose() : print.Dispose()
|
|
MsgBox("Keine Daten vorhanden!")
|
|
Exit Sub
|
|
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 sumBtrSoll As Double = 0
|
|
Dim sumBtrHaben As Double = 0
|
|
|
|
|
|
AddHandler rpt.Detail.Format, Sub()
|
|
|
|
rpt.lblKassenbuchNr.Text = rpt.Fields.Item("Konto").Value
|
|
rpt.lblBenutzer.Text = rpt.Fields.Item("Name").Value
|
|
rpt.lblBetragSoll.Text = CDbl(rpt.Fields.Item("Soll").Value).ToString("N2", Globalization.CultureInfo.CurrentCulture)
|
|
rpt.lblBetragHaben.Text = CDbl(rpt.Fields.Item("Haben").Value).ToString("N2", Globalization.CultureInfo.CurrentCulture)
|
|
Try
|
|
sumBtrSoll += CDbl(rpt.Fields.Item("Soll").Value)
|
|
sumBtrHaben += CDbl(rpt.Fields.Item("Haben").Value)
|
|
Catch ex As Exception
|
|
|
|
End Try
|
|
|
|
End Sub
|
|
AddHandler rpt.GroupHeader1.Format, Sub()
|
|
rpt.lblKasse.Text = MyComboBox1.Text
|
|
|
|
End Sub
|
|
|
|
|
|
AddHandler rpt.GroupFooter1.Format, Sub()
|
|
rpt.lblGesSumSoll.Text = sumBtrSoll.ToString("N2", CultureInfo.CurrentCulture)
|
|
rpt.lblGesSumHaben.Text = sumBtrHaben.ToString("N2", CultureInfo.CurrentCulture)
|
|
End Sub
|
|
|
|
|
|
print.Viewer.LoadDocument(rpt)
|
|
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
|
|
print.Show()
|
|
End Sub
|
|
End Class |