1314 lines
82 KiB
VB.net
1314 lines
82 KiB
VB.net
Imports DocumentFormat.OpenXml.Drawing
|
|
Imports SDL.RKSVServer
|
|
|
|
Public Class frmKassenbuch
|
|
Dim SQL As New SQL
|
|
Public GESCHAEFTSJAHR As Integer = cRKSV.getGJ(Now) 'IIf(Now.Month = 1, Now.Year - 1, Now.Year)
|
|
Dim PERSONAL As cPersonal
|
|
Dim RKSV As cRKSV_Kasse
|
|
Dim PERSONAL_LG As cPersonal = Nothing
|
|
' Dim PERSONAL_TMP_MASTER_KASSSE As cPersonal
|
|
Dim KennwortTime As DateTime = CDate("01.01.1990")
|
|
' Dim firma = "VERAG"
|
|
Dim DGV = "B"
|
|
Dim loginAfterSeconds = 10
|
|
Public master_Kasse As Boolean = False
|
|
Dim FMZOLL_SQL As New FMZOLL_SQL
|
|
|
|
Public Sub New(PERSONAL As cPersonal, PERSONAL_LG As cPersonal)
|
|
' Dieser Aufruf ist für den Designer erforderlich.
|
|
InitializeComponent()
|
|
Me.PERSONAL = PERSONAL
|
|
Me.PERSONAL_LG = PERSONAL_LG
|
|
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
|
|
|
|
End Sub
|
|
|
|
Private Sub FlatButton1_Click(sender As Object, e As EventArgs) Handles btnBelegKunde.Click
|
|
If KennwortOK() Then
|
|
|
|
lblERRKennwort.Visible = False
|
|
Dim frmBeleg As New frmBelegNeu(PERSONAL, PERSONAL_LG, "E")
|
|
frmBeleg.ShowDialog(Me)
|
|
init()
|
|
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Function KennwortOK() As Boolean
|
|
If DateDiff(DateInterval.Second, KennwortTime, Now) < loginAfterSeconds Then
|
|
Return True
|
|
End If
|
|
Dim frmSecureLoginKassenbuch As New frmSecureLoginKassenbuch
|
|
frmSecureLoginKassenbuch.openKB = False
|
|
frmSecureLoginKassenbuch.KassenbuchNr_tmp = PERSONAL.KassenbuchNr
|
|
frmSecureLoginKassenbuch.ShowDialog(Me)
|
|
If frmSecureLoginKassenbuch.DialogResult = Windows.Forms.DialogResult.OK Then
|
|
KennwortTime = Now
|
|
PERSONAL_LG = frmSecureLoginKassenbuch.PERSONAL_LG
|
|
Return True
|
|
Else
|
|
lblERRKennwort.Visible = True
|
|
Return False
|
|
End If
|
|
End Function
|
|
Private Sub frmKassenbuch_Load(sender As Object, e As EventArgs) Handles Me.Load
|
|
RKSV = New cRKSV_Kasse(PERSONAL.cRKSV_KasseID)
|
|
GESCHAEFTSJAHR = cRKSV.getGJ_FIRMA(Now, RKSV.rksv_firma)
|
|
|
|
|
|
If PERSONAL.ID = 274 Then master_Kasse = True
|
|
If VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME = "ADMIN" Or VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME = "SIENER" Or VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME = "DANIEL" Then
|
|
Button6.Visible = True
|
|
End If
|
|
KennwortTime = Now
|
|
initDgv() 'nur set
|
|
init()
|
|
cboKassen.fillWithSQL("SELECT [rksv_id], [rksv_bez] FROM [tblRKSV_Kassen] WHERE ([rksv_aktiv]=1 OR [rksvde_aktiv]=1 or rksv_id=4) ", False, "FMZOLL") ' [rksv_firma]='" & VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA & "' AND
|
|
|
|
If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("KASSE", Me) Then
|
|
btnBelegKunde.Enabled = False
|
|
btnBelegAusgang.Enabled = False
|
|
btnBelegEingang.Enabled = False
|
|
btnBelegGSKunde.Enabled = False
|
|
btnBelegLeihgeld.Enabled = False
|
|
btnStorno.Enabled = False
|
|
End If
|
|
|
|
If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("Kassenbuch_POS_Terminal_einrichten", Me) Then
|
|
btnPosTerminal.Enabled = False
|
|
End If
|
|
|
|
|
|
End Sub
|
|
Sub init()
|
|
Dim sqlstr = ""
|
|
|
|
If master_Kasse Then
|
|
Label9.Text = "ADMIN"
|
|
pnlTop.BackColor = Color.Red
|
|
btnBelegEingang.Enabled = False
|
|
btnBelegGSKunde.Enabled = False
|
|
btnBelegLeihgeld.Enabled = False
|
|
Label15.Text = "MASTER-KASSE"
|
|
btnBelegKunde.Enabled = False
|
|
btnBelegAusgang.Enabled = False
|
|
pnl.Visible = True
|
|
|
|
|
|
|
|
|
|
'sqlstr = "SELECT Sum(tblKassenbuch.Soll) AS Soll, Sum(tblKassenbuch.Haben) AS Haben, (Sum(tblKassenbuch.Soll)-Sum(tblKassenbuch.Haben)) AS Saldo " &
|
|
' " FROM Personal INNER JOIN tblKassenbuch ON Personal.ID = tblKassenbuch.Benutzer " &
|
|
' " WHERE tblKassenbuch.Mandant='" & PERSONAL.Mandant & "' AND tblKassenbuch.Niederlassung='" & PERSONAL.Niederlassung & "' " &
|
|
' " AND tblKassenbuch.Benutzer IN (SELECT ID FROM [Personal] WHERE [Standard_RKSV_KasseId]='" & PERSONAL.cRKSV_Kasse.rksv_id & "') AND tblKassenbuch.Geschäftsjahr=" & GESCHAEFTSJAHR & " and Personal.[KassenbuchNr]=tblKassenbuch.Konto"
|
|
' sqlstr = "SELECT Sum(tblKassenbuch.Soll) AS Soll, Sum(tblKassenbuch.Haben) AS Haben, (Sum(tblKassenbuch.Soll)-Sum(tblKassenbuch.Haben)) AS Saldo " &
|
|
' " FROM Personal INNER JOIN tblKassenbuch ON Personal.ID = tblKassenbuch.Benutzer " &
|
|
' " WHERE tblKassenbuch.[rksv_id]='" & PERSONAL.cRKSV_Kasse.rksv_id & "' AND tblKassenbuch.Geschäftsjahr=" & GESCHAEFTSJAHR & " " 'and Personal.[KassenbuchNr]=tblKassenbuch.Konto"
|
|
sqlstr = "SELECT Sum(tblKassenbuch.Soll) AS Soll, Sum(tblKassenbuch.Haben) AS Haben, (Sum(tblKassenbuch.Soll)-Sum(tblKassenbuch.Haben)) AS Saldo " &
|
|
" FROM tblKassenbuch WHERE tblKassenbuch.[rksv_id]='" & PERSONAL.cRKSV_Kasse.rksv_id & "' AND tblKassenbuch.Geschäftsjahr=" & GESCHAEFTSJAHR & " AND Konto in (select KassenbuchNr from Personal where Standard_RKSV_KasseId='" & PERSONAL.cRKSV_Kasse.rksv_id & "') " 'and Personal.[KassenbuchNr]=tblKassenbuch.Konto"
|
|
|
|
Else
|
|
Label9.Text = PERSONAL.Name
|
|
pnlTop.BackColor = Color.FromArgb(0, 54, 128)
|
|
btnBelegEingang.Enabled = True
|
|
btnBelegGSKunde.Enabled = True
|
|
btnBelegLeihgeld.Enabled = True
|
|
Label15.Text = PERSONAL.KassenbuchNr
|
|
btnBelegKunde.Enabled = True
|
|
btnBelegAusgang.Enabled = True
|
|
pnl.Visible = False
|
|
|
|
sqlstr = "SELECT Sum(tblKassenbuch.Soll) AS Soll, Sum(tblKassenbuch.Haben) AS Haben, (Sum(tblKassenbuch.Soll)-Sum(tblKassenbuch.Haben)) AS Saldo " &
|
|
" FROM Personal INNER JOIN tblKassenbuch ON Personal.ID = tblKassenbuch.Benutzer " &
|
|
" WHERE tblKassenbuch.Mandant='" & PERSONAL.Mandant & "' AND tblKassenbuch.Niederlassung='" & PERSONAL.Niederlassung & "' " &
|
|
" And tblKassenbuch.Benutzer=" & PERSONAL.ID & " AND tblKassenbuch.Geschäftsjahr=" & GESCHAEFTSJAHR & " AND tblKassenbuch.Konto=" & PERSONAL.KassenbuchNr & ""
|
|
End If
|
|
|
|
If PERSONAL.isLeihgeldkasse Then
|
|
' btnBelegLeihgeld.Enabled = True
|
|
btnBelegGSKunde.Enabled = False
|
|
Button10.Visible = True
|
|
'btnBelegKunde.Enabled = False
|
|
End If
|
|
|
|
initDate()
|
|
' initDgv()
|
|
initDgv() 'initDgv, weil sonst Umschaltung zu MASTER Kasse nicht funzt
|
|
'DataGridView2.RELOAD()
|
|
|
|
If PERSONAL.cRKSV_Kasse Is Nothing Then
|
|
Label5.Text = "Keine Standard-Kasse"
|
|
Else
|
|
|
|
Dim dt As DataTable = SQL.loadDgvBySql(sqlstr, "FMZOLL")
|
|
Label5.Text = CDbl(If(dt.Rows.Count > 0, cSqlDb.checkNullReturnValue(dt.Rows(0)("Saldo"), 0), 0)).ToString("C")
|
|
|
|
End If
|
|
|
|
|
|
' Label9.Text = PERSONAL.Name
|
|
DataGridView2.ClearSelection()
|
|
End Sub
|
|
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
|
|
searchdate = searchdate.AddMonths(1)
|
|
initDate()
|
|
End Sub
|
|
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
|
|
searchdate = searchdate.AddMonths(-1)
|
|
initDate()
|
|
End Sub
|
|
Sub initDate()
|
|
lblMonatSuche.Text = searchdate.ToString("MMMM yyyy")
|
|
datVon.Value = searchdate
|
|
datBis.Value = searchdate.AddMonths(1).AddDays(-1)
|
|
End Sub
|
|
Private Sub datVon_ValueChanged(sender As Object, e As EventArgs) Handles datVon.ValueChanged, datBis.ValueChanged
|
|
initDgv()
|
|
End Sub
|
|
|
|
Dim searchdate As Date = CDate("01." & Now.Month & "." & Now.Year)
|
|
Sub initDgv()
|
|
|
|
With DataGridView2
|
|
.Columns.Clear()
|
|
If DGV = "B" Then
|
|
btnDGVBelege.BackColor = Color.SteelBlue
|
|
btnDGVBelege.ForeColor = Color.White
|
|
btnDGVKassenbuch.BackColor = Color.Transparent
|
|
btnDGVKassenbuch.ForeColor = Color.DimGray
|
|
|
|
Dim benutzerTMP = ""
|
|
Dim benutzerBezTMP = ""
|
|
Dim lgTxt = ""
|
|
If master_Kasse Then
|
|
benutzerTMP = " AND Benutzer IN (SELECT ID FROM [Personal] WHERE [Standard_RKSV_KasseId]='" & PERSONAL.cRKSV_Kasse.rksv_id & "') "
|
|
benutzerBezTMP = " , (SELECT cast(ID as varchar(3))+' '+Name FROM [Personal] WHERE [ID]=b.Benutzer) as BenutzerBez "
|
|
Else
|
|
benutzerTMP = " And Benutzer=" & PERSONAL.ID & ""
|
|
End If
|
|
If PERSONAL.isLeihgeldkasse Then
|
|
lgTxt = ",[Fahrer],[Passnummer] "
|
|
End If
|
|
.SET_SQL("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 " & benutzerBezTMP & lgTxt &
|
|
" FROM tblEABelegnummer as b WHERE b.Mandant='" & PERSONAL.Mandant & "' AND b.Niederlassung='" & PERSONAL.Niederlassung & "' " & benutzerTMP & " AND BelegDat BETWEEN '" & datVon.Value.ToShortDateString & "' AND '" & datBis.Value.ToShortDateString & "' " &
|
|
" ORDER BY b.rksv_BelegId DESC, b.[upsize_ts] desc;", "FMZOLL")
|
|
' .DataSource = SQL.loadDgvBySql("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 " & benutzerBezTMP &
|
|
' " FROM tblEABelegnummer as b WHERE b.Mandant='" & PERSONAL.Mandant & "' AND b.Niederlassung='" & PERSONAL.Niederlassung & "' " & benutzerTMP & " AND BelegDat BETWEEN '" & datVon.Value.ToShortDateString & "' AND '" & datBis.Value.ToShortDateString & "' " &
|
|
' " ORDER BY b.rksv_BelegId DESC;", "FMZOLL")
|
|
.LOAD()
|
|
|
|
.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 PERSONAL.isLeihgeldkasse Then
|
|
.Columns("Fahrer").Visible = False
|
|
.Columns("Passnummer").Visible = False
|
|
End If
|
|
|
|
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
|
|
btnDGVKassenbuch.BackColor = Color.SteelBlue
|
|
btnDGVKassenbuch.ForeColor = Color.White
|
|
btnDGVBelege.BackColor = Color.Transparent
|
|
btnDGVBelege.ForeColor = Color.DimGray
|
|
|
|
Dim benutzerTMP = ""
|
|
If master_Kasse Then
|
|
benutzerTMP = " AND tblKassenbuch.Benutzer IN (SELECT ID FROM [Personal] WHERE [Standard_RKSV_KasseId]='" & PERSONAL.cRKSV_Kasse.rksv_id & "') "
|
|
Else
|
|
benutzerTMP = " And tblKassenbuch.Benutzer=" & PERSONAL.ID & ""
|
|
|
|
End If
|
|
|
|
|
|
.SET_SQL("SELECT [JournalNr],[BelegDat],[BelegNr],CASE WHEN Belegart=1 THEN 'E' ELSE 'A' END as Belegart,[Buchungstext],tblKassenbuch.Finanzwege as FW ,([Betrag]+[Steuerbetrag]) as Brutto,[Konto],[Soll],[Haben],Steuerbetrag as Steuer,tblKassenbuch.Benutzer " &
|
|
" FROM Personal INNER JOIN tblKassenbuch ON Personal.ID = tblKassenbuch.Benutzer " &
|
|
" WHERE tblKassenbuch.Mandant='" & PERSONAL.Mandant & "' AND tblKassenbuch.Niederlassung='" & PERSONAL.Niederlassung & "' " &
|
|
" " & benutzerTMP & " AND BelegDat BETWEEN '" & datVon.Value.ToShortDateString & "' AND '" & datBis.Value.ToShortDateString & "' ORDER BY JournalNr DESC", "FMZOLL")
|
|
|
|
' .DataSource = SQL.loadDgvBySql("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 tblKassenbuch.Mandant='" & PERSONAL.Mandant & "' AND tblKassenbuch.Niederlassung='" & PERSONAL.Niederlassung & "' " &
|
|
' " " & benutzerTMP & " AND BelegDat BETWEEN '" & datVon.Value.ToShortDateString & "' AND '" & datBis.Value.ToShortDateString & "' ORDER BY JournalNr DESC", "FMZOLL")
|
|
.LOAD()
|
|
|
|
.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("FW").Width = 45
|
|
.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 = 60
|
|
.Columns("Steuer").DefaultCellStyle.Format = "C"
|
|
.Columns("Benutzer").Visible = False
|
|
|
|
End If
|
|
End With
|
|
End Sub
|
|
|
|
Private Sub DataGridView2_CellDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView2.CellDoubleClick
|
|
Try
|
|
|
|
If e.RowIndex >= 0 Then
|
|
Dim r As DataGridViewRow = DataGridView2.Rows(e.RowIndex)
|
|
|
|
Dim PersonalTmp = PERSONAL
|
|
If r.Cells("Benutzer").Value <> PersonalTmp.ID Then PersonalTmp = 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, PERSONAL_LG, PERSONAL.Mandant, PERSONAL.Niederlassung, B.Benutzer, B.BelegNr, B.BelegDat)
|
|
frmBeleg.ShowDialog(Me)
|
|
Case Else
|
|
Dim frmBeleg As New frmBelegNeu(PERSONAL, PERSONAL_LG, PERSONAL.Mandant, PERSONAL.Niederlassung, B.Benutzer, B.BelegNr, B.BelegDat)
|
|
frmBeleg.ShowDialog(Me)
|
|
End Select
|
|
|
|
init()
|
|
|
|
' End If
|
|
End Sub
|
|
Private Sub DataGridView1_CellDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellDoubleClick
|
|
'OLD!!!!!!!!!!!!!!!!!!!!!!!
|
|
If e.RowIndex >= 0 Then
|
|
Dim r As DataGridViewRow = DataGridView1.Rows(e.RowIndex)
|
|
Dim frmBeleg As New frmBelegNeu(PERSONAL, PERSONAL_LG, PERSONAL.Mandant, PERSONAL.Niederlassung, PERSONAL.ID, r.Cells("BelegNr").Value, r.Cells("BelegDat").Value)
|
|
frmBeleg.ShowDialog(Me)
|
|
init()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub FlatButton7_Click(sender As Object, e As EventArgs) Handles FlatButton7.Click
|
|
init()
|
|
End Sub
|
|
|
|
Private Sub FlatButton6_Click(sender As Object, e As EventArgs) Handles FlatButton6.Click
|
|
|
|
Dim print As New frmPrintLayout
|
|
print.Text = "Kassenbuch"
|
|
|
|
Dim rpt As New rptKassenbuchBuchhaltung
|
|
|
|
Dim frmVonBis As New frmKasseBerichtVonBis
|
|
If frmVonBis.ShowDialog(Me) <> Windows.Forms.DialogResult.OK Then
|
|
Exit Sub
|
|
End If
|
|
Dim von As Date = frmVonBis.datVon.Value.ToShortDateString
|
|
Dim bis As Date = frmVonBis.datBis.Value.ToShortDateString
|
|
|
|
'Dim von As Date = CDate("01.01.2016")
|
|
' Dim bis As Date = CDate("31.01.2016")
|
|
|
|
' rpt.DataSource = SQL.loadDgvBySql("SELECT MIN(JournalNr)as JournalNr, MAX(BelegDat)as BelegDat,MAX(Buchungsdatum)as Buchungsdatum,MAX(belegNr) as BelegNr, (SELECT top 1 t.Buchungstext FROM [tblKassenbuch] as t WHERE journalnr=t.journalnr) as Buchungstext,(SELECT top 1 t.konto FROM [tblKassenbuch] as t WHERE journalnr=t.journalnr) as Konto, SUM(Soll) as Soll,SUM(haben) as Haben " &
|
|
' "FROM [tblKassenbuch] WHERE CAST(Buchungsdatum as date) BETWEEN '" & von.ToShortDateString & "' AND '" & bis.ToShortDateString & "' And Benutzer=" & PERSONAL.ID & " group by BelegNr", "FMZOLL") 'cProgramFunctions.dgridViewTods(dgvBelegPos)
|
|
Dim where = ""
|
|
|
|
If frmVonBis.cbxRKSV_only.Checked Then
|
|
where = " AND [rksv_id] IS NOT NULL AND [rksv_BelegId] IS NOT NULL AND rksv_aktiv=1 "
|
|
|
|
End If
|
|
Dim sqlStr = ""
|
|
' sqlStr = sqlStr = "SELECT JournalNr, BelegDat,Buchungstext, Buchungsdatum,BelegNr,rksv_BelegId, Soll, Haben " &
|
|
' "FROM [tblKassenbuch] WHERE tblKassenbuch.Mandant='" & PERSONAL.Mandant & "' and tblKassenbuch.Niederlassung='" & PERSONAL.Niederlassung & "' AND CAST(Buchungsdatum as date) BETWEEN '" & von.ToShortDateString & "' AND '" & bis.ToShortDateString & "' And tblKassenbuch.Benutzer=" & PERSONAL.ID & " And Konto=" & PERSONAL.KassenbuchNr & " " & where & " ORDER BY Buchungsdatum, JournalNr "
|
|
|
|
If master_Kasse Then
|
|
rpt.lblSachbearbeiter.Text = "ADMIN"
|
|
rpt.lblKassenbuchNr.Text = "-"
|
|
rpt.lblMandantNiederlassung.Text = "-"
|
|
sqlStr = "SELECT JournalNr, BelegDat,Buchungstext, Finanzwege, Buchungsdatum,BelegNr,rksv_BelegId, Soll, Haben,tblKassenbuch.Benutzer as Benutzer,tblKassenbuch.Konto as Konto " &
|
|
"FROM [tblKassenbuch] INNER JOIN Personal ON Personal.ID = tblKassenbuch.Benutzer WHERE tblKassenbuch.Benutzer IN (SELECT ID FROM [Personal] WHERE [Standard_RKSV_KasseId]='" & PERSONAL.cRKSV_Kasse.rksv_id & "') AND Personal.[KassenbuchNr]=tblKassenbuch.Konto AND tblKassenbuch.Mandant='" & PERSONAL.Mandant & "' and tblKassenbuch.Niederlassung='" & PERSONAL.Niederlassung & "' AND CAST(Buchungsdatum as date) BETWEEN '" & von.ToShortDateString & "' AND '" & bis.ToShortDateString & "' " & where & " ORDER BY Buchungsdatum, JournalNr "
|
|
Else
|
|
rpt.lblSachbearbeiter.Text = PERSONAL.Name
|
|
rpt.lblKassenbuchNr.Text = PERSONAL.KassenbuchNr
|
|
rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
|
|
|
|
sqlStr = "SELECT JournalNr, BelegDat,Buchungstext, Finanzwege, Buchungsdatum,BelegNr,rksv_BelegId, Soll, Haben,tblKassenbuch.Benutzer as Benutzer,tblKassenbuch.Konto as Konto " &
|
|
"FROM [tblKassenbuch] WHERE tblKassenbuch.Mandant='" & PERSONAL.Mandant & "' and tblKassenbuch.Niederlassung='" & PERSONAL.Niederlassung & "' AND CAST(Buchungsdatum as date) BETWEEN '" & von.ToShortDateString & "' AND '" & bis.ToShortDateString & "' And tblKassenbuch.Benutzer=" & PERSONAL.ID & " And Konto=" & PERSONAL.KassenbuchNr & " " & where & " ORDER BY Buchungsdatum, JournalNr "
|
|
End If
|
|
rpt.DataSource = SQL.loadDgvBySql(sqlStr, "FMZOLL") 'cProgramFunctions.dgridViewTods(dgvBelegPos)
|
|
|
|
rpt.GroupHeader1.DataField = "Buchungsdatum" 'Gruppierung
|
|
|
|
If rpt.DataSource.rows.count = 0 Then
|
|
rpt.Dispose() : print.Dispose()
|
|
MsgBox("Keine Daten vorhanden!")
|
|
Exit Sub
|
|
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 Else
|
|
End Select
|
|
|
|
Dim GESCHAEFTSJAHR = cRKSV.getGJ_FIRMA(von, RKSV.rksv_firma) ' iif (von.Month = 1, von.Year - 1, von.Year)
|
|
Dim sum = 0
|
|
rpt.lblUeberschrift.Text = "Kassenbuch " & von.ToShortDateString & " bis " & bis.ToShortDateString
|
|
rpt.lblGeschaeftsjahr.Text = GESCHAEFTSJAHR
|
|
'rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
|
|
|
|
'Dim cnt As Integer = 0
|
|
rpt.lblDat.Text = Now.ToLongDateString
|
|
Dim sumSoll As Double = 0
|
|
Dim sumHaben As Double = 0
|
|
Dim gesSumSoll As Double = 0
|
|
Dim gesSumHaben As Double = 0
|
|
Dim datum = ""
|
|
AddHandler rpt.Detail.Format, Sub()
|
|
' Dim dt As DataTable = SQL.loadDgvBySql("SELECT CASE WHEN COUNT(distinct(konto))>1 THEN 'div.' ELSE CONVERT(VARCHAR(4),MAX(konto)) END as Konto, SUM(soll)as Soll, SUM(haben) as Haben FROM [tblKassenbuch] " &
|
|
' " WHERE Konto<>" & PERSONAL.KassenbuchNr & " AND Mandant='" & PERSONAL.Mandant & "' and Niederlassung='" & PERSONAL.Niederlassung & "'and Benutzer=" & PERSONAL.ID & " and Geschäftsjahr=" & GESCHAEFTSJAHR & " and BelegNr='" & rpt.Fields.Item("BelegNr").Value() & "' ", "FMZOLL")
|
|
|
|
' Dim soll = dt.Rows(0)("Soll")
|
|
' Dim haben = dt.Rows(0)("Haben")
|
|
'Dim konto = dt.Rows(0)("Konto")
|
|
|
|
rpt.lblJournalNr.Text = rpt.Fields.Item("JournalNr").Value()
|
|
Dim BuDat As Date = CDate(rpt.Fields.Item("Buchungsdatum").Value()).ToShortDateString
|
|
rpt.lblBelegDat.Text = BuDat
|
|
Dim GESCHAEFTSJAHR_TMP = cRKSV.getGJ_FIRMA(BuDat, RKSV.rksv_firma) ''IIf(BuDat.Month = 1, BuDat.Year - 1, BuDat.Year)
|
|
rpt.lblBelegNr.Text = IIf(rpt.Fields.Item("rksv_BelegId").Value Is DBNull.Value, "(" & rpt.Fields.Item("BelegNr").Value & ")", rpt.Fields.Item("rksv_BelegId").Value())
|
|
rpt.lblBuchungstext.Text = rpt.Fields.Item("Buchungstext").Value()
|
|
rpt.lblFinanzwege.Text = IIf(rpt.Fields.Item("Finanzwege").Value() Is DBNull.Value, "", rpt.Fields.Item("Finanzwege").Value())
|
|
' rpt.lblKonto.Text = SQL.getValueTxtBySql("SELECT CASE WHEN COUNT(distinct(konto))>1 THEN 'div.' ELSE CONVERT(VARCHAR(4),MAX(konto)) END as Konto, SUM(soll)as Soll, SUM(haben) as Haben FROM [tblKassenbuch] " &
|
|
' " WHERE Konto<>" & PERSONAL.KassenbuchNr & " AND Mandant='" & PERSONAL.Mandant & "' and Niederlassung='" & PERSONAL.Niederlassung & "' " & benutzerTMP & " and Geschäftsjahr=" & GESCHAEFTSJAHR & " and BelegNr='" & rpt.Fields.Item("BelegNr").Value() & "' ", "FMZOLL")
|
|
rpt.lblKonto.Text = SQL.getValueTxtBySql("SELECT CASE WHEN COUNT(distinct(konto))>1 THEN 'div.' ELSE CONVERT(VARCHAR(4),MAX(konto)) END as Konto, SUM(soll)as Soll, SUM(haben) as Haben FROM [tblKassenbuch] " &
|
|
" WHERE Konto<>" & PERSONAL.KassenbuchNr & " AND Mandant='" & PERSONAL.Mandant & "' and Niederlassung='" & PERSONAL.Niederlassung & "' And Benutzer=" & rpt.Fields.Item("Benutzer").Value & " and Geschäftsjahr=" & GESCHAEFTSJAHR_TMP & " and BelegNr='" & rpt.Fields.Item("BelegNr").Value() & "' ", "FMZOLL")
|
|
|
|
Dim soll = CDbl(rpt.Fields.Item("Soll").Value())
|
|
Dim haben = CDbl(rpt.Fields.Item("Haben").Value())
|
|
|
|
rpt.lblSoll.Text = IIf(soll <> 0, soll.ToString("C"), "")
|
|
rpt.lblHaben.Text = IIf(haben <> 0, haben.ToString("C"), "")
|
|
' rpt.lblSaldo.Text = CDbl(SQL.getValueTxtBySql("SELECT isnull(sum([Soll]-[Haben]),0) AS Saldo FROM tblKassenbuch " &
|
|
' " WHERE Mandant='" & PERSONAL.Mandant & "' and Niederlassung='" & PERSONAL.Niederlassung & "' " & benutzerTMP & " and Geschäftsjahr=" & GESCHAEFTSJAHR & " AND tblKassenbuch.Konto='" & PERSONAL.KassenbuchNr & "' " &
|
|
' " and JournalNr<='" & rpt.Fields.Item("JournalNr").Value() & "' ", "FMZOLL")).ToString("C")
|
|
|
|
rpt.lblSaldo.Text = CDbl(SQL.getValueTxtBySql("SELECT isnull(sum([Soll]-[Haben]),0) AS Saldo FROM tblKassenbuch " &
|
|
" WHERE Mandant='" & PERSONAL.Mandant & "' and Niederlassung='" & PERSONAL.Niederlassung & "' And Benutzer=" & rpt.Fields.Item("Benutzer").Value & " and Geschäftsjahr=" & GESCHAEFTSJAHR_TMP & " AND tblKassenbuch.Konto='" & rpt.Fields.Item("Konto").Value & "' " &
|
|
" and JournalNr<='" & rpt.Fields.Item("JournalNr").Value() & "' ", "FMZOLL")).ToString("C")
|
|
sumSoll += CDbl(rpt.Fields.Item("Soll").Value())
|
|
sumHaben += CDbl(rpt.Fields.Item("Haben").Value())
|
|
gesSumSoll += CDbl(rpt.Fields.Item("Soll").Value())
|
|
gesSumHaben += CDbl(rpt.Fields.Item("Haben").Value())
|
|
' rpt.lblLeistungsNr.Text = rpt.Fields.Item("clmnAnzahl").Value()
|
|
' rpt.lblEinzelpreis.Text = CDbl(rpt.Fields.Item("clmnPreis").Value()).ToString("C")
|
|
' sum += rpt.Fields.Item("clmnBetrag").Value()
|
|
datum = CDate(rpt.Fields.Item("Buchungsdatum").Value()).ToShortDateString ' Im Footer wird bereits das nächste Datumgenommen, darum hier befüllt
|
|
End Sub
|
|
AddHandler rpt.GroupHeader1.Format, Sub()
|
|
sumSoll = 0
|
|
sumHaben = 0
|
|
End Sub
|
|
AddHandler rpt.GroupFooter1.Format, Sub()
|
|
rpt.lblSummeBuchungsDat.Text = "Summe Buchungsdatum " & datum & ":"
|
|
rpt.lblSollSumme.Text = sumSoll.ToString("C")
|
|
rpt.lblHabenSumme.Text = sumHaben.ToString("C")
|
|
' rpt.lblEinzelpreis.Text = CDbl(rpt.Fields.Item("clmnPreis").Value()).ToString("C")
|
|
' sum += rpt.Fields.Item("clmnBetrag").Value()
|
|
End Sub
|
|
AddHandler rpt.ReportFooter1.Format, Sub()
|
|
rpt.lblSollGesamtSumme.Text = gesSumSoll.ToString("C")
|
|
rpt.lblHabenGesamtSumme.Text = gesSumHaben.ToString("C")
|
|
End Sub
|
|
|
|
print.Viewer.LoadDocument(rpt)
|
|
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
|
|
print.Show()
|
|
End Sub
|
|
|
|
Private Sub FlatButton2_Click(sender As Object, e As EventArgs) Handles FlatButton2.Click
|
|
|
|
Dim print As New frmPrintLayout
|
|
print.Text = "Kassenbuch"
|
|
Dim rpt As New rptKassenbuchBuchhaltungDetails
|
|
|
|
Dim frmVonBis As New frmKasseBerichtVonBis
|
|
If frmVonBis.ShowDialog(Me) <> Windows.Forms.DialogResult.OK Then
|
|
Exit Sub
|
|
End If
|
|
Dim von As Date = frmVonBis.datVon.Value.ToShortDateString
|
|
Dim bis As Date = frmVonBis.datBis.Value.ToShortDateString
|
|
Dim GESCHAEFTSJAHR = cRKSV.getGJ_FIRMA(Now, RKSV.rksv_firma) ' IIf(von.Month = 1, von.Year - 1, von.Year)
|
|
|
|
' rpt.DataSource = SQL.loadDgvBySql("SELECT MIN(JournalNr)as JournalNr, MAX(BelegDat)as BelegDat,MAX(Buchungsdatum)as Buchungsdatum,MAX(belegNr) as BelegNr, (SELECT top 1 t.Buchungstext FROM [tblKassenbuch] as t WHERE journalnr=t.journalnr) as Buchungstext,(SELECT top 1 t.konto FROM [tblKassenbuch] as t WHERE journalnr=t.journalnr) as Konto, SUM(Soll) as Soll,SUM(haben) as Haben " &
|
|
' "FROM [tblKassenbuch] WHERE CAST(Buchungsdatum as date) BETWEEN '" & von.ToShortDateString & "' AND '" & bis.ToShortDateString & "' And Benutzer=" & PERSONAL.ID & " group by BelegNr", "FMZOLL") 'cProgramFunctions.dgridViewTods(dgvBelegPos)
|
|
Dim where = ""
|
|
Dim benutzerTMP = ""
|
|
If master_Kasse Then
|
|
rpt.lblSachbearbeiter.Text = "ADMIN"
|
|
rpt.lblKassenbuchNr.Text = "-"
|
|
rpt.lblMandantNiederlassung.Text = "-"
|
|
benutzerTMP = " AND tblKassenbuch.Benutzer IN (SELECT ID FROM [Personal] WHERE [Standard_RKSV_KasseId]='" & PERSONAL.cRKSV_Kasse.rksv_id & "') "
|
|
Else
|
|
rpt.lblSachbearbeiter.Text = PERSONAL.Name
|
|
rpt.lblKassenbuchNr.Text = PERSONAL.KassenbuchNr
|
|
rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
|
|
benutzerTMP = " And Benutzer=" & PERSONAL.ID & ""
|
|
End If
|
|
If frmVonBis.cbxRKSV_only.Checked Then
|
|
where = " AND [rksv_id] IS NOT NULL AND [rksv_BelegId] IS NOT NULL AND rksv_aktiv=1 "
|
|
|
|
End If
|
|
rpt.DataSource = SQL.loadDgvBySql("SELECT JournalNr, BelegDat,Buchungstext,Finanzwege,Konto, Buchungsdatum,BelegNr,rksv_BelegId, Soll, Haben,isnull(Bez,'') as Bez,CASE WHEN Steuertyp=1 THEN Steuerbetrag Else 0 END as Umsatzsteuer,CASE WHEN Steuertyp=2 THEN Steuerbetrag Else 0 END as Vorsteuer " &
|
|
" FROM [tblKassenbuch] LEFT JOIN [tblSteuersätze] ON [Nr]=Steuer " &
|
|
" WHERE tblKassenbuch.Mandant='" & PERSONAL.Mandant & "' and tblKassenbuch.Niederlassung='" & PERSONAL.Niederlassung & "' AND CAST(Buchungsdatum as date) BETWEEN '" & von.ToShortDateString & "' AND '" & bis.ToShortDateString & "' " & benutzerTMP & " " & where & " ORDER BY Buchungsdatum, JournalNr ", "FMZOLL") 'cProgramFunctions.dgridViewTods(dgvBelegPos)
|
|
|
|
rpt.GroupHeader1.DataField = "Buchungsdatum" 'Gruppierung
|
|
|
|
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 = "Buchungsbericht " & von.ToShortDateString & " bis " & bis.ToShortDateString
|
|
'rpt.lblSachbearbeiter.Text = PERSONAL.Name
|
|
' rpt.lblKassenbuchNr.Text = PERSONAL.KassenbuchNr
|
|
' rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
|
|
rpt.lblGeschaeftsjahr.Text = GESCHAEFTSJAHR
|
|
|
|
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
|
|
|
|
'Dim cnt As Integer = 0
|
|
rpt.lblDat.Text = Now.ToLongDateString
|
|
Dim sumSoll As Double = 0
|
|
Dim sumHaben As Double = 0
|
|
Dim gesSumSoll As Double = 0
|
|
Dim gesSumHaben As Double = 0
|
|
|
|
Dim sumUSt As Double = 0
|
|
Dim sumVorSt As Double = 0
|
|
Dim gesSumUSt As Double = 0
|
|
Dim gesSumVorSt As Double = 0
|
|
Dim datum = ""
|
|
AddHandler rpt.Detail.Format, Sub()
|
|
' Dim dt As DataTable = SQL.loadDgvBySql("SELECT CASE WHEN COUNT(distinct(konto))>1 THEN 'div.' ELSE CONVERT(VARCHAR(4),MAX(konto)) END as Konto, SUM(soll)as Soll, SUM(haben) as Haben FROM [tblKassenbuch] " &
|
|
' " WHERE Konto<>" & PERSONAL.KassenbuchNr & " AND Mandant='" & PERSONAL.Mandant & "' and Niederlassung='" & PERSONAL.Niederlassung & "'and Benutzer=" & PERSONAL.ID & " and Geschäftsjahr=" & GESCHAEFTSJAHR & " and BelegNr='" & rpt.Fields.Item("BelegNr").Value() & "' ", "FMZOLL")
|
|
|
|
' Dim soll = dt.Rows(0)("Soll")
|
|
' Dim haben = dt.Rows(0)("Haben")
|
|
'Dim konto = dt.Rows(0)("Konto")
|
|
|
|
rpt.lblJournalNr.Text = rpt.Fields.Item("JournalNr").Value()
|
|
Dim BuDat As Date = CDate(rpt.Fields.Item("Buchungsdatum").Value()).ToShortDateString
|
|
rpt.lblBelegDat.Text = BuDat
|
|
Dim GESCHAEFTSJAHR_TMP = cRKSV.getGJ_FIRMA(BuDat, RKSV.rksv_firma) 'IIf(BuDat.Month = 1, BuDat.Year - 1, BuDat.Year)
|
|
rpt.lblBelegNr.Text = IIf(rpt.Fields.Item("rksv_BelegId").Value Is DBNull.Value, "(" & rpt.Fields.Item("BelegNr").Value & ")", rpt.Fields.Item("rksv_BelegId").Value())
|
|
rpt.lblBuchungstext.Text = rpt.Fields.Item("Buchungstext").Value()
|
|
rpt.lblFinanzwege.Text = IIf(rpt.Fields.Item("Finanzwege").Value() Is DBNull.Value, "", rpt.Fields.Item("Finanzwege").Value())
|
|
rpt.lblKonto.Text = rpt.Fields.Item("Konto").Value()
|
|
Dim soll = CDbl(rpt.Fields.Item("Soll").Value())
|
|
Dim haben = CDbl(rpt.Fields.Item("Haben").Value())
|
|
|
|
rpt.lblSoll.Text = IIf(soll <> 0, soll.ToString("C"), "")
|
|
rpt.lblHaben.Text = IIf(haben <> 0, haben.ToString("C"), "")
|
|
rpt.lblSaldo.Text = CDbl(SQL.getValueTxtBySql("SELECT isnull(sum([Soll]-[Haben]),0) AS Saldo FROM tblKassenbuch " &
|
|
" WHERE Mandant='" & PERSONAL.Mandant & "' and Niederlassung='" & PERSONAL.Niederlassung & "' " & benutzerTMP & " and Geschäftsjahr=" & GESCHAEFTSJAHR_TMP & " AND tblKassenbuch.Konto='" & rpt.Fields.Item("Konto").Value() & "' " &
|
|
" and JournalNr<='" & rpt.Fields.Item("JournalNr").Value() & "' ", "FMZOLL")).ToString("C")
|
|
|
|
' If Not rpt.Fields.Item("Bez").Value() Is DBNull.Value Then
|
|
rpt.lblSteuer.Text = rpt.Fields.Item("Bez").Value()
|
|
' End If
|
|
|
|
Dim ust = CDbl(rpt.Fields.Item("Umsatzsteuer").Value())
|
|
Dim vorst = CDbl(rpt.Fields.Item("Vorsteuer").Value())
|
|
rpt.lblUSt.Text = IIf(ust <> 0, ust.ToString("C"), "")
|
|
rpt.lblVorst.Text = IIf(vorst <> 0, vorst.ToString("C"), "")
|
|
|
|
sumSoll += soll
|
|
sumHaben += haben
|
|
gesSumSoll += soll
|
|
gesSumHaben += haben
|
|
|
|
sumUSt += ust
|
|
sumVorSt += vorst
|
|
gesSumUSt += ust
|
|
gesSumVorSt += vorst
|
|
|
|
datum = CDate(rpt.Fields.Item("Buchungsdatum").Value()).ToShortDateString ' Im Footer wird bereits das nächste Datumgenommen, darum hier befüllt
|
|
End Sub
|
|
AddHandler rpt.GroupHeader1.Format, Sub()
|
|
sumSoll = 0
|
|
sumHaben = 0
|
|
sumUSt = 0
|
|
sumVorSt = 0
|
|
End Sub
|
|
AddHandler rpt.GroupFooter1.Format, Sub()
|
|
rpt.lblSummeBuchungsDat.Text = "Summe Buchungsdatum " & datum & ":"
|
|
rpt.lblSollSumme.Text = sumSoll.ToString("C")
|
|
rpt.lblHabenSumme.Text = sumHaben.ToString("C")
|
|
rpt.lblUstSumme.Text = sumUSt.ToString("C")
|
|
rpt.lblVorstSumme.Text = sumVorSt.ToString("C")
|
|
|
|
End Sub
|
|
AddHandler rpt.ReportFooter1.Format, Sub()
|
|
rpt.lblSollGesamtSumme.Text = gesSumSoll.ToString("C")
|
|
rpt.lblHabenGesamtSumme.Text = gesSumHaben.ToString("C")
|
|
rpt.lblUstGesamtSumme.Text = gesSumUSt.ToString("C")
|
|
rpt.lblVorStGesamtSumme.Text = gesSumVorSt.ToString("C")
|
|
End Sub
|
|
|
|
print.Viewer.LoadDocument(rpt)
|
|
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
|
|
print.Show()
|
|
End Sub
|
|
|
|
Private Sub FlatButton5_Click(sender As Object, e As EventArgs) Handles FlatButton5.Click
|
|
|
|
Dim print As New frmPrintLayout
|
|
print.Text = "Kassenbuch"
|
|
Dim rpt As New rptKassenbuchKontenBericht
|
|
|
|
Dim frmVonBis As New frmKasseBerichtVonBis
|
|
If frmVonBis.ShowDialog(Me) <> Windows.Forms.DialogResult.OK Then
|
|
Exit Sub
|
|
End If
|
|
Dim von As Date = frmVonBis.datVon.Value.ToShortDateString
|
|
Dim bis As Date = frmVonBis.datBis.Value.ToShortDateString
|
|
Dim GESCHAEFTSJAHR = cRKSV.getGJ_FIRMA(von, RKSV.rksv_firma) ' IIf(von.Month = 1, von.Year - 1, von.Year)
|
|
|
|
Dim where = ""
|
|
Dim benutzerTMP = ""
|
|
If master_Kasse Then
|
|
rpt.lblSachbearbeiter.Text = "ADMIN"
|
|
rpt.lblKassenbuchNr.Text = "-"
|
|
rpt.lblMandantNiederlassung.Text = "-"
|
|
benutzerTMP = " AND tblKassenbuch.Benutzer IN (SELECT ID FROM [Personal] WHERE [Standard_RKSV_KasseId]='" & PERSONAL.cRKSV_Kasse.rksv_id & "') "
|
|
Else
|
|
rpt.lblSachbearbeiter.Text = PERSONAL.Name
|
|
rpt.lblKassenbuchNr.Text = PERSONAL.KassenbuchNr
|
|
rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
|
|
benutzerTMP = " And Benutzer=" & PERSONAL.ID & ""
|
|
End If
|
|
If frmVonBis.cbxRKSV_only.Checked Then
|
|
where = " AND tblKassenbuch.[rksv_id] IS NOT NULL AND tblKassenbuch.[rksv_BelegId] IS NOT NULL AND tblKassenbuch.rksv_aktiv=1 "
|
|
End If
|
|
|
|
rpt.DataSource = SQL.loadDgvBySql(" SELECT MIN(tblKassenbuch.Konto) as Konto,isNull(MIN(tblKonto.Bez),'') as Bezeichnung, SUM(ISNULL(Haben,0)) AS Habenbetrag,SUM(ISNULL(Soll,0)) AS Sollbetrag, MIN(tblSteuersätze.Bez) as Steuer, SUM(CASE WHEN Steuertyp=1 THEN Steuerbetrag Else 0 END) as Umsatzsteuer,SUM(CASE WHEN Steuertyp=2 THEN Steuerbetrag Else 0 END) as Vorsteuer " &
|
|
" FROM tblKassenbuch LEFT JOIN tblKonto ON tblKassenbuch.Konto = tblKonto.KontoNr INNER JOIN tblSteuersätze ON tblKassenbuch.Steuer = tblSteuersätze.Nr INNER JOIN Personal ON tblKassenbuch.Benutzer = Personal.ID " &
|
|
" WHERE tblKassenbuch.Mandant='" & PERSONAL.Mandant & "' and tblKassenbuch.Niederlassung='" & PERSONAL.Niederlassung & "' AND tblKassenbuch.Konto<>[Personal].[KassenbuchNr] AND CAST(Buchungsdatum as date) BETWEEN '" & von.ToShortDateString & "' AND '" & bis.ToShortDateString & "' " & benutzerTMP & " " & where & " GROUP BY Konto ORDER BY Konto ", "FMZOLL") 'cProgramFunctions.dgridViewTods(dgvBelegPos)
|
|
|
|
|
|
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 = "Summen-Bericht " & von.ToShortDateString & " bis " & bis.ToShortDateString
|
|
'rpt.lblSachbearbeiter.Text = PERSONAL.Name
|
|
'rpt.lblKassenbuchNr.Text = PERSONAL.KassenbuchNr
|
|
rpt.lblGeschaeftsjahr.Text = GESCHAEFTSJAHR
|
|
'rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
|
|
|
|
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
|
|
|
|
'Dim cnt As Integer = 0
|
|
rpt.lblDat.Text = Now.ToLongDateString
|
|
Dim gesSumSoll As Double = 0
|
|
Dim gesSumHaben As Double = 0
|
|
|
|
Dim gesSumUSt As Double = 0
|
|
Dim gesSumVorSt As Double = 0
|
|
Dim datum = ""
|
|
AddHandler rpt.Detail.Format, Sub()
|
|
rpt.lblBuchungstext.Text = If(rpt.Fields.Item("Bezeichnung") IsNot Nothing, If(rpt.Fields.Item("Bezeichnung").Value(), ""), "")
|
|
rpt.lblKonto.Text = rpt.Fields.Item("Konto").Value()
|
|
Dim soll = CDbl(rpt.Fields.Item("Sollbetrag").Value())
|
|
Dim haben = CDbl(rpt.Fields.Item("Habenbetrag").Value())
|
|
|
|
rpt.lblSollbetrag.Text = IIf(soll <> 0, soll.ToString("C"), "")
|
|
rpt.lblHabenbetrag.Text = IIf(haben <> 0, haben.ToString("C"), "")
|
|
|
|
rpt.lblSteuer.Text = rpt.Fields.Item("Steuer").Value()
|
|
|
|
Dim ust = CDbl(rpt.Fields.Item("Umsatzsteuer").Value())
|
|
Dim vorst = CDbl(rpt.Fields.Item("Vorsteuer").Value())
|
|
rpt.lblUmsatzsteuer.Text = IIf(ust <> 0, ust.ToString("C"), "")
|
|
rpt.lblVorsteuer.Text = IIf(vorst <> 0, vorst.ToString("C"), "")
|
|
|
|
gesSumSoll += soll
|
|
gesSumHaben += haben
|
|
|
|
gesSumUSt += ust
|
|
gesSumVorSt += vorst
|
|
End Sub
|
|
|
|
AddHandler rpt.ReportFooter1.Format, Sub()
|
|
rpt.lblSollGesamtSumme.Text = gesSumSoll.ToString("C")
|
|
rpt.lblHabenGesamtSumme.Text = gesSumHaben.ToString("C")
|
|
rpt.lblUmsatzsteuerGesamtsumme.Text = gesSumUSt.ToString("C")
|
|
rpt.lblVorsteuerGesamtsumme.Text = gesSumVorSt.ToString("C")
|
|
End Sub
|
|
|
|
print.Viewer.LoadDocument(rpt)
|
|
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
|
|
print.Show()
|
|
End Sub
|
|
|
|
|
|
Private Sub FlatButton9_Click(sender As Object, e As EventArgs) Handles btnBelegAusgang.Click, btnBelegEingang.Click
|
|
If KennwortOK() Then
|
|
Dim frmFremdbeleg As New frmFremdbeleg
|
|
frmFremdbeleg.Art = IIf(sender Is btnBelegAusgang, 2, 1)
|
|
frmFremdbeleg.PERSONAL = PERSONAL
|
|
' frmFremdbeleg.GESCHAEFTSJAHR = GESCHAEFTSJAHR
|
|
frmFremdbeleg.ShowDialog(Me)
|
|
init()
|
|
End If
|
|
End Sub
|
|
|
|
|
|
|
|
|
|
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
|
|
MsgBox("Leider noch nicht verfügbar")
|
|
Exit Sub
|
|
Dim client As RKSVWcfClient = New RKSVWcfClient()
|
|
client.Endpoint.Address = New System.ServiceModel.EndpointAddress("http://192.168.0.106:8733/Design_Time_Addresses/RKSVCompleteServer/Service1/?singleWsdl")
|
|
client.Open()
|
|
' svcRKSV.DBUserCredentials m_credentials = new svcRKSV.DBUserCredentials();
|
|
Dim credentials As New SDL.RKSVServer.DBUserCredentials
|
|
|
|
credentials.Database = "RKSVWcfDB"
|
|
credentials.Server = "AVISO\SQLEXPRESS"
|
|
|
|
Select Case cboKassen._value
|
|
Case "VERAG-SUB-KASSE-ZOLL"
|
|
credentials.Username = "Admin"
|
|
credentials.Password = "verag#2"
|
|
credentials.CashboxID = "VERAG-SUB-KASSE-ZOLL"
|
|
credentials.CompanyGUID = "9119d9ae-f549-4a0f-a50f-0500ec7ca059"
|
|
|
|
Dim certificate = ""
|
|
Dim certificateChain = ""
|
|
Dim exportResult = ""
|
|
cRKSV.getDEP(certificate, exportResult)
|
|
|
|
|
|
|
|
'If (client.ExportJWS()) Then
|
|
' Else
|
|
'MessageBox.Show(answer, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
|
' End If
|
|
Case ""
|
|
MsgBox("Keine Kasse gewählt!")
|
|
Exit Sub
|
|
End Select
|
|
|
|
End Sub
|
|
|
|
|
|
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
|
|
Dim f As New frmBelegFinden
|
|
f.Standard_RKSV_KasseId = PERSONAL.cRKSV_Kasse.rksv_id
|
|
If Not master_Kasse Then f.BenutzerId = PERSONAL.ID
|
|
|
|
If f.ShowDialog(Me) = Windows.Forms.DialogResult.OK Then
|
|
Select Case f.art
|
|
Case "NEU"
|
|
openBelegRKSVId(f.txtBelegNrNeu.Text)
|
|
Case "ALT"
|
|
Dim PERSONALTmp As cPersonal = FMZOLL_SQL.getPersonalById(f.cboBenutzer._value)
|
|
Dim B As New EABeleg("LOAD", PERSONALTmp.Mandant, PERSONALTmp.Niederlassung, PERSONALTmp.ID, f.txtBelegNrAlt.Text, f.dat.Value)
|
|
openBELEG(B, PERSONALTmp)
|
|
End Select
|
|
End If
|
|
End Sub
|
|
|
|
Sub openBelegRKSVId(rksv_beleg_Id)
|
|
If rksv_beleg_Id <> "" Then
|
|
' Dim dt As DataTable = SQL.loadDgvBySql("SELECT * FROM [tblEABelegnummer] WHERE [Mandant]='" & PERSONAL.Mandant & "' AND Niederlassung='" & PERSONAL.Niederlassung & "' AND rksv_BelegId='" & rksv_beleg_Id & "'", "FMZOLL")
|
|
Dim dt As DataTable = SQL.loadDgvBySql("SELECT * FROM [tblEABelegnummer] WHERE [rksv_id]='" & PERSONAL.cRKSV_KasseID & "' AND rksv_BelegId='" & rksv_beleg_Id & "'", "FMZOLL")
|
|
If dt.Rows.Count > 0 Then
|
|
' If dt.Rows(0)("storniert") Then MsgBox("Der Beleg wurde bereits storiniert!") : Exit Sub
|
|
|
|
Dim PERSONALTmp As cPersonal = FMZOLL_SQL.getPersonalById(dt.Rows(0)("Benutzer"))
|
|
|
|
|
|
'Wenn LeigeldBeleg oder Kasse Ein/Ausgang, dann nur Ersteller!
|
|
Select Case dt.Rows(0)("Beleg_TYP")
|
|
Case "E", "L"
|
|
If master_Kasse = False Then
|
|
If dt.Rows(0)("Benutzer") <> PERSONAL.ID Then
|
|
MsgBox("Der Beleg wurde von einem anderen Beutzer erstellt. " & vbNewLine & " Bitte wenden Sie sich an: '" & PERSONALTmp.Name & "'.") : Exit Sub
|
|
End If
|
|
End If
|
|
End Select
|
|
|
|
|
|
Select Case dt.Rows(0)("Beleg_TYP")
|
|
Case "0"
|
|
MsgBox("Ein NULL-Beleg ist nur einmal verfügbar.")
|
|
Case "E"
|
|
If dt.Rows(0)("storniert") Then MsgBox("Der Beleg wurde bereits storiniert!") : Exit Sub
|
|
Dim frmBeleg As New frmFremdbeleg(PERSONALTmp, PERSONALTmp.Mandant, PERSONALTmp.Niederlassung, dt.Rows(0)("Benutzer"), dt.Rows(0)("BelegNr"), dt.Rows(0)("BelegDat"))
|
|
frmBeleg.ShowDialog(Me)
|
|
Case "L"
|
|
If dt.Rows(0)("storniert") Then MsgBox("Der Beleg wurde bereits storiniert!") : Exit Sub
|
|
Dim frmBeleg As New frmNacherfassungLeihgeld(PERSONALTmp, PERSONAL_LG, PERSONAL.Mandant, PERSONALTmp.Niederlassung, PERSONALTmp.ID, dt.Rows(0)("BelegNr"), dt.Rows(0)("BelegDat"))
|
|
frmBeleg.ShowDialog(Me)
|
|
Case Else
|
|
Dim frmBeleg As New frmBelegNeu(PERSONALTmp, PERSONAL_LG, PERSONALTmp.Mandant, PERSONALTmp.Niederlassung, dt.Rows(0)("Benutzer"), dt.Rows(0)("BelegNr"), dt.Rows(0)("BelegDat"))
|
|
frmBeleg.ShowDialog(Me)
|
|
End Select
|
|
|
|
init()
|
|
Else
|
|
MsgBox("Keine Daten gefunden!")
|
|
End If
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub btnEinnahmeBeleg_Click(sender As Object, e As EventArgs) Handles btnDGVBelege.Click
|
|
DGV = "B"
|
|
initDgv()
|
|
End Sub
|
|
|
|
Private Sub btnAusgabebeleg_Click(sender As Object, e As EventArgs) Handles btnDGVKassenbuch.Click
|
|
DGV = "KB"
|
|
initDgv()
|
|
End Sub
|
|
|
|
Private Sub btnExcel_Click(sender As Object, e As EventArgs) Handles btnExcel.Click
|
|
Me.Cursor = Cursors.WaitCursor
|
|
cProgramFunctions.genExcelFromDGV_NEW(DataGridView2, True)
|
|
Me.Cursor = Cursors.Default
|
|
End Sub
|
|
|
|
Private Sub frmKassenbuch_Shown(sender As Object, e As EventArgs) Handles Me.Shown
|
|
Me.Height = My.Computer.Screen.WorkingArea.Height
|
|
Me.Top = 0
|
|
DataGridView2.ClearSelection()
|
|
If master_Kasse Then
|
|
btnBelegKunde.Enabled = False
|
|
btnBelegGSKunde.Enabled = False
|
|
btnBelegAusgang.Enabled = False
|
|
btnBelegEingang.Enabled = False
|
|
btnBelegLeihgeld.Enabled = False
|
|
End If
|
|
If PERSONAL.cRKSV_Kasse IsNot Nothing Then lblRKSV_KASSEN_Bez.Text = PERSONAL.cRKSV_Kasse.rksv_bez
|
|
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "ATILLA" Then
|
|
btnBelegLeihgeld.Visible = False
|
|
btnBelegGSKunde.Visible = False
|
|
End If
|
|
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "ATILLA" Then 'vorher IMEX
|
|
If Not PERSONAL.isLeihgeldkasse Then btnBelegLeihgeld.Visible = False
|
|
btnBelegGSKunde.Visible = False 'VERAG-MDM KAsse bei IMEX
|
|
If PERSONAL.cRKSV_Kasse.rksv_id = 1 Then
|
|
btnBelegGSKunde.Visible = True
|
|
btnBelegKunde.Enabled = False
|
|
End If
|
|
End If
|
|
|
|
If PERSONAL.cRKSV_Kasse Is Nothing Then
|
|
MsgBox("Keine Kasse hinterlegt!")
|
|
Me.Close()
|
|
End If
|
|
If PERSONAL.cRKSV_Kasse.rksv_id = 5 Then
|
|
btnBelegKunde.Enabled = False
|
|
btnBelegGSKunde.Enabled = False
|
|
btnBelegLeihgeld.Enabled = False
|
|
End If
|
|
Me.BringToFront()
|
|
End Sub
|
|
|
|
Private Sub Button6_Click(sender As Object, e As EventArgs) Handles btnStorno.Click
|
|
Dim f As New frmBelegFinden
|
|
f.Standard_RKSV_KasseId = PERSONAL.cRKSV_Kasse.rksv_id
|
|
If Not master_Kasse Then f.BenutzerId = PERSONAL.ID
|
|
|
|
If master_Kasse Then
|
|
f.cbxStornoErzwingenAdmin.Visible = True
|
|
f.cbxStornoRKSV.Visible = True
|
|
f.cbxStornoBELEG.Visible = True
|
|
End If
|
|
Dim BELEGTmp As EABeleg = Nothing
|
|
If f.ShowDialog(Me) = Windows.Forms.DialogResult.OK Then
|
|
Select Case f.art
|
|
Case "NEU"
|
|
Dim dt As DataTable = SQL.loadDgvBySql("SELECT * FROM [tblEABelegnummer] WHERE rksv_BelegId='" & f.txtBelegNrNeu.Text & "' AND [rksv_id]='" & PERSONAL.cRKSV_Kasse.rksv_id & "' ", "FMZOLL")
|
|
If dt.Rows.Count > 0 Then
|
|
BELEGTmp = New EABeleg("LOAD", PERSONAL.Mandant, PERSONAL.Niederlassung, dt.Rows(0)("Benutzer"), dt.Rows(0)("BelegNr"), dt.Rows(0)("BelegDat"))
|
|
End If
|
|
Case "ALT"
|
|
Dim PERSONALTmp As cPersonal = FMZOLL_SQL.getPersonalById(f.cboBenutzer._value)
|
|
BELEGTmp = New EABeleg("LOAD", PERSONALTmp.Mandant, PERSONALTmp.Niederlassung, PERSONALTmp.ID, f.txtBelegNrAlt.Text, f.dat.Value)
|
|
End Select
|
|
If BELEGTmp IsNot Nothing Then
|
|
|
|
If cRKSV.getGJ(Now) <> cRKSV.getGJ(BELEGTmp.BelegDat) Then
|
|
MsgBox("Das Geschäftsjahr im Beleg ist '" & cRKSV.getGJ(BELEGTmp.BelegDat) & "', es können nur Belege im laufenden Geschäftsjahr gebucht werden. Aktion wird abgebrochen!")
|
|
Exit Sub
|
|
End If
|
|
|
|
Dim zahlungsmittel = cRKSV.getZahlungsmittel(BELEGTmp, PERSONAL, PERSONAL.cRKSV_Kasse.rksv_firma)
|
|
|
|
If zahlungsmittel = "EC" Then
|
|
|
|
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("POS_Zahlungen_stornieren", Me) Then
|
|
If Not vbYes = MsgBox("Dieser Beleg wurde mittels EC gezahlt, Zahlung muss ebenfalls manuell auf Terminal storniert werden!", vbYesNoCancel) Then
|
|
Exit Sub
|
|
End If
|
|
|
|
Else
|
|
MsgBox("Der aktuelle Benutzer ist nicht berechtigt EC-Zahlungen zu stornieren!")
|
|
Exit Sub
|
|
End If
|
|
|
|
End If
|
|
|
|
|
|
'NUR KB
|
|
If f.cbxStornoRKSV.Checked Or f.cbxStornoBELEG.Checked Or f.cbxStornoErzwingenAdmin.Checked Then
|
|
Dim grund2 = InputBox("ADMIN-Storno (" & If(f.cbxStornoRKSV.Checked, " -RKSV-Tabelle- ", "") & If(f.cbxStornoBELEG.Checked, " -BELEG-Tabelle- ", "") & If(f.cbxStornoErzwingenAdmin.Checked, " -KASSENBUCH-Tabelle- ", "") & "):" & vbNewLine & vbNewLine & "Betrag: " & BELEGTmp.rksv_umsatz & vbNewLine & "Datum: " & BELEGTmp.BelegDat & vbNewLine & vbNewLine & "Bitte geben Sie einen Stornogrund an:" & vbNewLine, "Storno")
|
|
If grund2 = "" Then
|
|
MsgBox("Kein Stornotext, Aktion wird abgebrochen")
|
|
Exit Sub
|
|
End If
|
|
|
|
Dim KASSETmp As New cRKSV_Kasse(BELEGTmp.rksv_id)
|
|
' Dim OLD_rksv_BelegId = BELEGTmp.rksv_BelegId
|
|
If BELEGTmp.BelegDat < Now.AddMonths(-2) And Not master_Kasse Then
|
|
MsgBox("Beleg älter als 2 Monate, Aktion wird abgebrochen") 'alte Belege nicht mehr storinieren
|
|
Exit Sub
|
|
End If
|
|
|
|
'If KASSETmp.StornoIncreaseBelegCnt Then ' Ob beim Storno eine neue BelegNr vergeben werden soll
|
|
' Dim RKSV_Beleg_Id = KASSETmp.INCREASE_BELEG_UMSATZ(BELEGTmp.rksv_umsatz)
|
|
' BELEGTmp.rksv_BelegId = RKSV_Beleg_Id
|
|
'End If
|
|
|
|
If f.cbxStornoErzwingenAdmin.Checked Then
|
|
BELEGTmp = cRKSV.STORNO(BELEGTmp, grund2, True, KASSETmp.rksv_firma) 'Beleg storno und Kassenbuch Gegenbuchung
|
|
End If
|
|
|
|
If f.cbxStornoRKSV.Checked Then 'nur RKSV!!!!!!!
|
|
' BELEGTmp = cRKSV.STORNO(BELEGTmp, grund, Fal) 'Beleg storno und Kassenbuch Gegenbuchung
|
|
If KASSETmp IsNot Nothing Then
|
|
KASSETmp.INCREASE_ONLY_BELEG_UMSATZ(BELEGTmp.rksv_umsatz * -1) ' Bei Storno wird der Umsatz vermindert!
|
|
Dim QRQString As String = ""
|
|
Dim LastJWS As String = ""
|
|
Dim answer = ""
|
|
If KASSETmp.rksv_aktiv Then
|
|
If Not cRKSV.stornoRKSV(KASSETmp, BELEGTmp.BelegDat, BELEGTmp.Steuerschlüssel, BELEGTmp.rksv_BelegId, BELEGTmp.rksv_umsatz, QRQString, LastJWS, answer) Then
|
|
MessageBox.Show("Fehler bei der RKSV-Stornierung:" & vbNewLine & vbNewLine & answer, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
|
Exit Sub
|
|
End If
|
|
End If
|
|
If KASSETmp.rksvDE_aktiv Then
|
|
Dim PERSONALTmp1 As cPersonal = FMZOLL_SQL.getPersonalById(BELEGTmp.Benutzer)
|
|
If Not cRKSV.stornoRKSV_DE(PERSONALTmp1, BELEGTmp, KASSETmp, BELEGTmp.rksv_BelegId, BELEGTmp.rksv_BelegId, BELEGTmp.rksv_umsatz, QRQString, LastJWS, False, answer) Then
|
|
MessageBox.Show("Fehler bei der RKSV-Stornierung:" & vbNewLine & vbNewLine & answer, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
|
Exit Sub
|
|
End If
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
If f.cbxStornoBELEG.Checked Then 'nur BELEG!!!!!!!
|
|
BELEGTmp = cRKSV.STORNO_BELEG_ONLY(BELEGTmp, grund2) 'Beleg storno
|
|
End If
|
|
|
|
init()
|
|
Exit Sub
|
|
End If
|
|
'End If
|
|
'If BELEGTmp IsNot Nothing Then
|
|
|
|
' BELEGTmp = New EABeleg("LOAD", PERSONAL.Mandant, PERSONAL.Niederlassung, dt.Rows(0)("Benutzer"), dt.Rows(0)("BelegNr"), dt.Rows(0)("BelegDat"))
|
|
|
|
Dim PERSONALTmp As cPersonal = FMZOLL_SQL.getPersonalById(BELEGTmp.Benutzer)
|
|
If master_Kasse = False Then
|
|
If BELEGTmp.Benutzer <> PERSONAL.ID And Not zahlungsmittel = "EC" Then MsgBox("Der Beleg wurde von einem anderen Beutzer erstellt. " & vbNewLine & " Bitte wenden Sie sich an: '" & PERSONALTmp.Name & "'.") : Exit Sub
|
|
End If
|
|
Dim grund = InputBox("Möchten Sie den Beleg wirklich storinieren?" & vbNewLine & vbNewLine & "Betrag: " & BELEGTmp.rksv_umsatz & vbNewLine & "Datum: " & BELEGTmp.BelegDat & vbNewLine & vbNewLine & "Bitte geben Sie einen Stornogrund an:" & vbNewLine, "Storno")
|
|
If grund = "" Then
|
|
MsgBox("Kein Stornotext, Aktion wird abgebrochen")
|
|
Exit Sub
|
|
End If
|
|
|
|
|
|
If BELEGTmp.BelegNr <= 0 Then MsgBox("Fehler beim Laden der Belegdaten") : Exit Sub
|
|
|
|
|
|
If Not BELEGTmp.gebuchtStorno Then 'f.cbxStornoErzwingenAdmin.Checked=stono erzwingen
|
|
|
|
Dim OLD_rksv_BelegId = BELEGTmp.rksv_BelegId
|
|
Dim KASSETmp As New cRKSV_Kasse(BELEGTmp.rksv_id)
|
|
|
|
If KASSETmp.rksv_StornoIncreaseBelegCnt Then ' Ob beim Storno eine neue BelegNr vergeben werden soll
|
|
Dim RKSV_Beleg_Id = KASSETmp.INCREASE_BELEG_UMSATZ(BELEGTmp.rksv_umsatz)
|
|
BELEGTmp.rksv_BelegIdStorno = RKSV_Beleg_Id
|
|
End If
|
|
|
|
BELEGTmp = cRKSV.STORNO(BELEGTmp, grund, KASSETmp.rksv_firma) 'Beleg storno und Kassenbuch Gegenbuchung
|
|
' BELEGTmp = cRKSV.STORNO(BELEGTmp, "") 'Beleg storno und Kassenbuch Gegenbuchung
|
|
|
|
' Dim summe As Double = 0
|
|
' For Each p In BELEGTmp.POS
|
|
'summe += p.Betrag
|
|
' Next
|
|
' summe = summe * -1
|
|
' Dim KASSETmp As New cRKSV_Kasse(BELEGTmp.rksv_id)
|
|
|
|
|
|
If KASSETmp IsNot Nothing Then
|
|
KASSETmp.INCREASE_ONLY_BELEG_UMSATZ(BELEGTmp.rksv_umsatz * -1) ' Bei Storno wird der Umsatz vermindert!
|
|
Dim QRQString As String = ""
|
|
Dim LastJWS As String = ""
|
|
Dim answer = ""
|
|
If KASSETmp.rksv_aktiv Then
|
|
If Not cRKSV.stornoRKSV(KASSETmp, BELEGTmp.BelegDat, BELEGTmp.Steuerschlüssel, If(BELEGTmp.rksv_BelegIdStorno, BELEGTmp.rksv_BelegId), BELEGTmp.rksv_umsatz, QRQString, LastJWS, answer) Then
|
|
'FEHLER!!
|
|
If KASSETmp.rksv_StornoIncreaseBelegCnt Then BELEGTmp.rksv_BelegIdStorno = Nothing
|
|
BELEGTmp = cRKSV.STORNO_RUECKGAENGIG(BELEGTmp, grund, KASSETmp.rksv_firma) 'Beleg storno und Kassenbuch Gegenbuchung
|
|
MessageBox.Show("Fehler bei der RKSV-Stornierung:" & vbNewLine & vbNewLine & answer, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
|
Exit Sub
|
|
End If
|
|
End If
|
|
If KASSETmp.rksvDE_aktiv Then
|
|
If Not cRKSV.stornoRKSV_DE(PERSONALTmp, BELEGTmp, KASSETmp, If(BELEGTmp.rksv_BelegIdStorno, BELEGTmp.rksv_BelegId), BELEGTmp.rksv_BelegId, BELEGTmp.rksv_umsatz, QRQString, LastJWS, False, answer) Then
|
|
'FEHLER!!
|
|
If KASSETmp.rksv_StornoIncreaseBelegCnt Then BELEGTmp.rksv_BelegIdStorno = Nothing
|
|
BELEGTmp = cRKSV.STORNO_RUECKGAENGIG(BELEGTmp, grund, KASSETmp.rksv_firma) 'Beleg storno und Kassenbuch Gegenbuchung
|
|
MessageBox.Show("Fehler bei der RKSV-Stornierung:" & vbNewLine & vbNewLine & answer, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
|
Exit Sub
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
Select Case BELEGTmp.Beleg_TYP 'dt.Rows(0)("Beleg_TYP")
|
|
Case "E"
|
|
Dim KBEntry As cKassenbuch = Nothing
|
|
Dim KBEntryGB As cKassenbuch = Nothing
|
|
If cRKSV.getKB(BELEGTmp, PERSONALTmp, KBEntry, KBEntryGB, KASSETmp.rksv_firma) Then
|
|
cRKSV.printFremdBeleg(BELEGTmp, KASSETmp, PERSONALTmp, KBEntry, KBEntryGB, "") 'Beleg drucken
|
|
End If
|
|
Case "L"
|
|
cRKSV.printKundenBelegLG(BELEGTmp, KASSETmp, PERSONALTmp, "", "LG") 'Beleg drucken
|
|
Case "A"
|
|
cRKSV.printKundenBelegLG(BELEGTmp, KASSETmp, PERSONALTmp, "", "A") 'Beleg drucken
|
|
Case Else
|
|
cRKSV.printKundenBeleg(BELEGTmp, KASSETmp, PERSONALTmp, "", False) 'Beleg drucken
|
|
End Select
|
|
MsgBox("Beleg storniert!")
|
|
'Dim frmBeleg As New frmBelegNeu(PERSONAL, PERSONAL.Mandant, PERSONAL.Niederlassung, dt.Rows(0)("Benutzer"), dt.Rows(0)("BelegNr"), dt.Rows(0)("BelegDat"))
|
|
' frmBeleg.ShowDialog(Me)
|
|
' init() If Not BELEGTmp.gebuchtStorno Then
|
|
Else
|
|
MsgBox("Beleg wurde bereits storniert!")
|
|
End If
|
|
init()
|
|
Else
|
|
MsgBox("Keine Daten gefunden!")
|
|
End If
|
|
init()
|
|
Else
|
|
MsgBox("Keine Daten gefunden!")
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Private Sub Button7_Click(sender As Object, e As EventArgs) Handles btnBelegLeihgeld.Click
|
|
If KennwortOK() Then
|
|
Try
|
|
Dim frmNacherfassungLeihgeld As New frmNacherfassungLeihgeld(PERSONAL, PERSONAL_LG)
|
|
frmNacherfassungLeihgeld.ShowDialog(Me)
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message)
|
|
End Try
|
|
init()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click
|
|
Label18.ForeColor = Color.Black
|
|
If Not IsNumeric(cboKassen._value) Then
|
|
Label18.ForeColor = Color.Red
|
|
Exit Sub
|
|
End If
|
|
|
|
Dim KASSE As New cRKSV_Kasse(cboKassen._value) 'Laden der Kasse anhand der Auswahlbox
|
|
cRKSV.printNULLBeleg(KASSE, PERSONAL, True, KASSE.rksv_firma)
|
|
' End If
|
|
End Sub
|
|
|
|
Private Sub Button9_Click(sender As Object, e As EventArgs) Handles Button9.Click
|
|
Label18.ForeColor = Color.Black
|
|
If Not IsNumeric(cboKassen._value) Then
|
|
Label18.ForeColor = Color.Red
|
|
Exit Sub
|
|
End If
|
|
Dim KASSE As New cRKSV_Kasse(cboKassen._value) 'Laden der Kasse anhand der Auswahlbox
|
|
cRKSV.printAESKey(KASSE, "") 'Beleg drucken
|
|
|
|
End Sub
|
|
|
|
Private Sub Button6_Click_1(sender As Object, e As EventArgs) Handles Button6.Click
|
|
master_Kasse = Not master_Kasse
|
|
init()
|
|
End Sub
|
|
|
|
Private Sub Button10_Click(sender As Object, e As EventArgs) Handles btnBelegGSKunde.Click
|
|
If KennwortOK() Then
|
|
|
|
lblERRKennwort.Visible = False
|
|
Dim frmBeleg As New frmBelegNeu(PERSONAL, PERSONAL_LG, "A")
|
|
frmBeleg.ShowDialog(Me)
|
|
init()
|
|
|
|
End If
|
|
End Sub
|
|
|
|
|
|
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
|
|
Dim f As New frmKassenbuchPWD(PERSONAL)
|
|
If f.ShowDialog() = Windows.Forms.DialogResult.OK Then
|
|
Dim frmSecureLoginKassenbuch As New SDL.frmSecureLoginKassenbuch()
|
|
frmSecureLoginKassenbuch.openKB = True
|
|
frmSecureLoginKassenbuch.ShowDialog(Me.Parent)
|
|
Me.Close()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub Button7_Click_1(sender As Object, e As EventArgs) Handles Button7.Click
|
|
Dim reader = InputBox("Bitte ReaderNamen angeben:")
|
|
|
|
If reader <> "" Then
|
|
Dim serial = cRKSV.getCardSerialInReader(cboKassen._value, reader)
|
|
If serial <> "" Then MsgBox(serial) Else MsgBox("Karte nicht gefunden!")
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub Button10_Click_1(sender As Object, e As EventArgs) Handles Button10.Click
|
|
|
|
Dim print As New frmPrintLayout
|
|
print.Text = "Kassenbuch"
|
|
|
|
Dim rpt As New rptKassenbuchLeihgeld2
|
|
|
|
Dim frmVonBis As New frmKasseBerichtVonBis
|
|
If frmVonBis.ShowDialog(Me) <> Windows.Forms.DialogResult.OK Then
|
|
Exit Sub
|
|
End If
|
|
Dim von As Date = frmVonBis.datVon.Value.ToShortDateString
|
|
Dim bis As Date = frmVonBis.datBis.Value.ToShortDateString
|
|
|
|
'Dim von As Date = CDate("01.01.2016")
|
|
' Dim bis As Date = CDate("31.01.2016")
|
|
|
|
' rpt.DataSource = SQL.loadDgvBySql("SELECT MIN(JournalNr)as JournalNr, MAX(BelegDat)as BelegDat,MAX(Buchungsdatum)as Buchungsdatum,MAX(belegNr) as BelegNr, (SELECT top 1 t.Buchungstext FROM [tblKassenbuch] as t WHERE journalnr=t.journalnr) as Buchungstext,(SELECT top 1 t.konto FROM [tblKassenbuch] as t WHERE journalnr=t.journalnr) as Konto, SUM(Soll) as Soll,SUM(haben) as Haben " &
|
|
' "FROM [tblKassenbuch] WHERE CAST(Buchungsdatum as date) BETWEEN '" & von.ToShortDateString & "' AND '" & bis.ToShortDateString & "' And Benutzer=" & PERSONAL.ID & " group by BelegNr", "FMZOLL") 'cProgramFunctions.dgridViewTods(dgvBelegPos)
|
|
Dim where = ""
|
|
|
|
If frmVonBis.cbxRKSV_only.Checked Then
|
|
where = " AND [rksv_id] IS NOT NULL AND [rksv_BelegId] IS NOT NULL AND rksv_aktiv=1 "
|
|
|
|
End If
|
|
Dim sqlStr = ""
|
|
' sqlStr = sqlStr = "SELECT JournalNr, BelegDat,Buchungstext, Buchungsdatum,BelegNr,rksv_BelegId, Soll, Haben " &
|
|
' "FROM [tblKassenbuch] WHERE tblKassenbuch.Mandant='" & PERSONAL.Mandant & "' and tblKassenbuch.Niederlassung='" & PERSONAL.Niederlassung & "' AND CAST(Buchungsdatum as date) BETWEEN '" & von.ToShortDateString & "' AND '" & bis.ToShortDateString & "' And tblKassenbuch.Benutzer=" & PERSONAL.ID & " And Konto=" & PERSONAL.KassenbuchNr & " " & where & " ORDER BY Buchungsdatum, JournalNr "
|
|
|
|
If master_Kasse Then
|
|
rpt.lblSachbearbeiter.Text = "ADMIN"
|
|
rpt.lblKassenbuchNr.Text = "-"
|
|
rpt.lblMandantNiederlassung.Text = "-"
|
|
sqlStr = "SELECT JournalNr, tblKassenbuch.BelegDat,Buchungstext, Buchungsdatum,tblKassenbuch.BelegNr,tblKassenbuch.rksv_BelegId, Soll, Haben,tblKassenbuch.Benutzer as Benutzer,tblKassenbuch.Konto as Konto,[LKW Kennzeichen],Fahrer,FrachtführerKundenNr,Frachtführer " &
|
|
" FROM [tblKassenbuch] INNER JOIN Personal ON Personal.ID = tblKassenbuch.Benutzer " &
|
|
" inner join [tblEABelegnummer] on [tblEABelegnummer].Mandant=tblKassenbuch.Mandant AND [tblEABelegnummer].Niederlassung=tblKassenbuch.Niederlassung AND [tblEABelegnummer].Benutzer=tblKassenbuch.Benutzer AND [tblEABelegnummer].BelegDat=tblKassenbuch.BelegDat AND [tblEABelegnummer].BelegNr=tblKassenbuch.BelegNr " &
|
|
" WHERE tblKassenbuch.Benutzer IN (SELECT ID FROM [Personal] WHERE [Standard_RKSV_KasseId]='" & PERSONAL.cRKSV_Kasse.rksv_id & "') AND Personal.[KassenbuchNr]=tblKassenbuch.Konto AND tblKassenbuch.Mandant='" & PERSONAL.Mandant & "' and tblKassenbuch.Niederlassung='" & PERSONAL.Niederlassung & "' AND CAST(Buchungsdatum as date) BETWEEN '" & von.ToShortDateString & "' AND '" & bis.ToShortDateString & "' " & where & " ORDER BY Buchungsdatum, JournalNr "
|
|
Else
|
|
rpt.lblSachbearbeiter.Text = PERSONAL.Name
|
|
rpt.lblKassenbuchNr.Text = PERSONAL.KassenbuchNr
|
|
rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
|
|
|
|
sqlStr = "SELECT JournalNr, tblKassenbuch.BelegDat,Buchungstext, Buchungsdatum,tblKassenbuch.BelegNr,tblKassenbuch.rksv_BelegId, Soll, Haben,tblKassenbuch.Benutzer as Benutzer,tblKassenbuch.Konto as Konto ,[LKW Kennzeichen],Fahrer ,FrachtführerKundenNr,Frachtführer " &
|
|
" FROM [tblKassenbuch] " &
|
|
" inner join [tblEABelegnummer] on [tblEABelegnummer].Mandant=tblKassenbuch.Mandant AND [tblEABelegnummer].Niederlassung=tblKassenbuch.Niederlassung AND [tblEABelegnummer].Benutzer=tblKassenbuch.Benutzer AND [tblEABelegnummer].BelegDat=tblKassenbuch.BelegDat AND [tblEABelegnummer].BelegNr=tblKassenbuch.BelegNr " &
|
|
" WHERE tblKassenbuch.Mandant='" & PERSONAL.Mandant & "' and tblKassenbuch.Niederlassung='" & PERSONAL.Niederlassung & "' AND CAST(Buchungsdatum as date) BETWEEN '" & von.ToShortDateString & "' AND '" & bis.ToShortDateString & "' And tblKassenbuch.Benutzer=" & PERSONAL.ID & " And Konto=" & PERSONAL.KassenbuchNr & " " & where & " ORDER BY Buchungsdatum, JournalNr "
|
|
End If
|
|
|
|
rpt.DataSource = SQL.loadDgvBySql(sqlStr, "FMZOLL") 'cProgramFunctions.dgridViewTods(dgvBelegPos)
|
|
|
|
rpt.GroupHeader1.DataField = "Buchungsdatum" 'Gruppierung
|
|
|
|
If rpt.DataSource.rows.count = 0 Then
|
|
rpt.Dispose() : print.Dispose()
|
|
MsgBox("Keine Daten vorhanden!")
|
|
Exit Sub
|
|
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 Else
|
|
End Select
|
|
|
|
Dim GESCHAEFTSJAHR = cRKSV.getGJ(von) ' IIf(von.Month = 1, von.Year - 1, von.Year)
|
|
Dim sum = 0
|
|
rpt.lblUeberschrift.Text = "Kassenbuch " & von.ToShortDateString & " bis " & bis.ToShortDateString
|
|
rpt.lblGeschaeftsjahr.Text = GESCHAEFTSJAHR
|
|
'rpt.lblMandantNiederlassung.Text = PERSONAL.Mandant & " / " & PERSONAL.Niederlassung
|
|
|
|
'Dim cnt As Integer = 0
|
|
rpt.lblDat.Text = Now.ToLongDateString
|
|
Dim sumSoll As Double = 0
|
|
Dim sumHaben As Double = 0
|
|
Dim gesSumSoll As Double = 0
|
|
Dim gesSumHaben As Double = 0
|
|
Dim datum = ""
|
|
AddHandler rpt.Detail.Format, Sub()
|
|
' Dim dt As DataTable = SQL.loadDgvBySql("SELECT CASE WHEN COUNT(distinct(konto))>1 THEN 'div.' ELSE CONVERT(VARCHAR(4),MAX(konto)) END as Konto, SUM(soll)as Soll, SUM(haben) as Haben FROM [tblKassenbuch] " &
|
|
' " WHERE Konto<>" & PERSONAL.KassenbuchNr & " AND Mandant='" & PERSONAL.Mandant & "' and Niederlassung='" & PERSONAL.Niederlassung & "'and Benutzer=" & PERSONAL.ID & " and Geschäftsjahr=" & GESCHAEFTSJAHR & " and BelegNr='" & rpt.Fields.Item("BelegNr").Value() & "' ", "FMZOLL")
|
|
|
|
' Dim soll = dt.Rows(0)("Soll")
|
|
' Dim haben = dt.Rows(0)("Haben")
|
|
'Dim konto = dt.Rows(0)("Konto")
|
|
|
|
rpt.lblLKWKz.Text = If(rpt.Fields.Item("LKW Kennzeichen").Value IsNot DBNull.Value, rpt.Fields.Item("LKW Kennzeichen").Value(), "")
|
|
rpt.lblFahrer.Text = If(rpt.Fields.Item("Fahrer").Value IsNot DBNull.Value, rpt.Fields.Item("Fahrer").Value(), "")
|
|
|
|
Dim BuDat As Date = CDate(rpt.Fields.Item("Buchungsdatum").Value()).ToShortDateString
|
|
rpt.lblBelegDat.Text = BuDat
|
|
Dim GESCHAEFTSJAHR_TMP = cRKSV.getGJ(BuDat) 'IIf(BuDat.Month = 1, BuDat.Year - 1, BuDat.Year)
|
|
rpt.lblBelegNr.Text = IIf(rpt.Fields.Item("rksv_BelegId").Value Is DBNull.Value, "(" & rpt.Fields.Item("BelegNr").Value & ")", rpt.Fields.Item("rksv_BelegId").Value())
|
|
rpt.lblBuText.Text = rpt.Fields.Item("Buchungstext").Value()
|
|
|
|
rpt.txtKunde.Text = If(CInt(rpt.Fields.Item("FrachtführerKundenNr").Value) > 0, rpt.Fields.Item("FrachtführerKundenNr").Value() & " ", "") & rpt.Fields.Item("Frachtführer").Value()
|
|
|
|
' rpt.lblKonto.Text = SQL.getValueTxtBySql("SELECT CASE WHEN COUNT(distinct(konto))>1 THEN 'div.' ELSE CONVERT(VARCHAR(4),MAX(konto)) END as Konto, SUM(soll)as Soll, SUM(haben) as Haben FROM [tblKassenbuch] " &
|
|
' " WHERE Konto<>" & PERSONAL.KassenbuchNr & " AND Mandant='" & PERSONAL.Mandant & "' and Niederlassung='" & PERSONAL.Niederlassung & "' " & benutzerTMP & " and Geschäftsjahr=" & GESCHAEFTSJAHR & " and BelegNr='" & rpt.Fields.Item("BelegNr").Value() & "' ", "FMZOLL")
|
|
rpt.lblKonto.Text = SQL.getValueTxtBySql("SELECT CASE WHEN COUNT(distinct(konto))>1 THEN 'div.' ELSE CONVERT(VARCHAR(4),MAX(konto)) END as Konto, SUM(soll)as Soll, SUM(haben) as Haben FROM [tblKassenbuch] " &
|
|
" WHERE Konto<>" & PERSONAL.KassenbuchNr & " AND Mandant='" & PERSONAL.Mandant & "' and Niederlassung='" & PERSONAL.Niederlassung & "' And Benutzer=" & rpt.Fields.Item("Benutzer").Value & " and Geschäftsjahr=" & GESCHAEFTSJAHR_TMP & " and BelegNr='" & rpt.Fields.Item("BelegNr").Value() & "' ", "FMZOLL")
|
|
|
|
Dim soll = CDbl(rpt.Fields.Item("Soll").Value())
|
|
Dim haben = CDbl(rpt.Fields.Item("Haben").Value())
|
|
|
|
rpt.lblSoll.Text = IIf(soll <> 0, soll.ToString("C"), "")
|
|
rpt.lblHaben.Text = IIf(haben <> 0, haben.ToString("C"), "")
|
|
' rpt.lblSaldo.Text = CDbl(SQL.getValueTxtBySql("SELECT isnull(sum([Soll]-[Haben]),0) AS Saldo FROM tblKassenbuch " &
|
|
' " WHERE Mandant='" & PERSONAL.Mandant & "' and Niederlassung='" & PERSONAL.Niederlassung & "' " & benutzerTMP & " and Geschäftsjahr=" & GESCHAEFTSJAHR & " AND tblKassenbuch.Konto='" & PERSONAL.KassenbuchNr & "' " &
|
|
' " and JournalNr<='" & rpt.Fields.Item("JournalNr").Value() & "' ", "FMZOLL")).ToString("C")
|
|
|
|
rpt.lblSaldo.Text = CDbl(SQL.getValueTxtBySql("SELECT isnull(sum([Soll]-[Haben]),0) AS Saldo FROM tblKassenbuch " &
|
|
" WHERE Mandant='" & PERSONAL.Mandant & "' and Niederlassung='" & PERSONAL.Niederlassung & "' And Benutzer=" & rpt.Fields.Item("Benutzer").Value & " and Geschäftsjahr=" & GESCHAEFTSJAHR_TMP & " AND tblKassenbuch.Konto='" & rpt.Fields.Item("Konto").Value & "' " &
|
|
" and JournalNr<='" & rpt.Fields.Item("JournalNr").Value() & "' ", "FMZOLL")).ToString("C")
|
|
sumSoll += CDbl(rpt.Fields.Item("Soll").Value())
|
|
sumHaben += CDbl(rpt.Fields.Item("Haben").Value())
|
|
gesSumSoll += CDbl(rpt.Fields.Item("Soll").Value())
|
|
gesSumHaben += CDbl(rpt.Fields.Item("Haben").Value())
|
|
' rpt.lblLeistungsNr.Text = rpt.Fields.Item("clmnAnzahl").Value()
|
|
' rpt.lblEinzelpreis.Text = CDbl(rpt.Fields.Item("clmnPreis").Value()).ToString("C")
|
|
' sum += rpt.Fields.Item("clmnBetrag").Value()
|
|
datum = CDate(rpt.Fields.Item("Buchungsdatum").Value()).ToShortDateString ' Im Footer wird bereits das nächste Datumgenommen, darum hier befüllt
|
|
End Sub
|
|
AddHandler rpt.GroupHeader1.Format, Sub()
|
|
sumSoll = 0
|
|
sumHaben = 0
|
|
End Sub
|
|
AddHandler rpt.GroupFooter1.Format, Sub()
|
|
rpt.lblSummeBuchungsDat.Text = "Summe Buchungsdatum " & datum & ":"
|
|
rpt.lblSollSumme.Text = sumSoll.ToString("C")
|
|
rpt.lblHabenSumme.Text = sumHaben.ToString("C")
|
|
' rpt.lblEinzelpreis.Text = CDbl(rpt.Fields.Item("clmnPreis").Value()).ToString("C")
|
|
' sum += rpt.Fields.Item("clmnBetrag").Value()
|
|
End Sub
|
|
AddHandler rpt.ReportFooter1.Format, Sub()
|
|
rpt.lblSollGesamtSumme.Text = gesSumSoll.ToString("C")
|
|
rpt.lblHabenGesamtSumme.Text = gesSumHaben.ToString("C")
|
|
End Sub
|
|
|
|
print.Viewer.LoadDocument(rpt)
|
|
print.Viewer.ViewType = GrapeCity.Viewer.Common.Model.ViewType.Continuous
|
|
print.Show()
|
|
End Sub
|
|
|
|
Private Sub Button11_Click(sender As Object, e As EventArgs) Handles btnPosTerminal.Click
|
|
Label18.ForeColor = Color.Black
|
|
If Not IsNumeric(cboKassen._value) Then
|
|
Label18.ForeColor = Color.Red
|
|
Exit Sub
|
|
End If
|
|
|
|
Dim f As New frmPOSTerminal(cboKassen.Text, cboKassen._value)
|
|
f.Show()
|
|
|
|
End Sub
|
|
End Class |