567 lines
24 KiB
VB.net
567 lines
24 KiB
VB.net
Imports SDL
|
|
Imports VERAG_PROG_ALLGEMEIN
|
|
Imports VERAG_PROG_ALLGEMEIN.TESTJSON
|
|
|
|
Public Class frmGesamtsicherheitenMenuNEU
|
|
|
|
Public SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
|
Dim GesSichRef As VERAG_PROG_ALLGEMEIN.cAufschubKonten
|
|
Public dataTable As DataTable
|
|
Public Property Standort As String = ""
|
|
Public firmaId As Integer
|
|
|
|
|
|
Public Sub New()
|
|
|
|
' Dieser Aufruf ist für den Designer erforderlich.
|
|
InitializeComponent()
|
|
|
|
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
|
|
|
|
End Sub
|
|
|
|
Private Sub frmGesamtsicherheitenNEU_Menu_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
|
|
|
|
|
Select Case Standort
|
|
Case "Verag GmbH" : firmaId = 2 : chkOffen.Checked = True
|
|
Case "VERAG AG" : firmaId = 1 : chkOffen.Checked = False
|
|
Case "IMEX" : firmaId = 20 : chkOffen.Checked = False
|
|
Case "Verag CS" : firmaId = 11 : chkOffen.Checked = False
|
|
Case "Unisped GmbH" : firmaId = 21 : chkOffen.Checked = False
|
|
Case "AMBAR GmbH" : firmaId = 24 : chkOffen.Checked = False
|
|
End Select
|
|
|
|
|
|
cbxStandort.fillWithSQL("SELECT FilialenNr, cast(FilialenNr as varchar(4)) + ' ' + Grenzstelle FROM Filialen WHERE Fil_Status='A' ORDER BY FilialenNr ", True, "FMZOLL", True)
|
|
cbxWarenort.fillWithSQL("SELECT [wo_warenort],CONCAT([wo_bezeichnung],' - ' ,[wo_knnr]) FROM [tblWarenorte] WHERE [wo_aktiv] ='1' AND [wo_firma] = '" & firmaId & "' ORDER BY [wo_reihenfolge] ", True, "AVISO", True)
|
|
cbxWarenort.DropDownWidth = 150
|
|
|
|
Me.Text = "Gesamtsicherheiten " & Standort
|
|
frmHauptfenster.EnableDoubleBuffered(dgvListe)
|
|
|
|
GesSichRef = New VERAG_PROG_ALLGEMEIN.cAufschubKonten(Standort)
|
|
If GesSichRef.hasEntry = False Then
|
|
MsgBox("Für den Standort " & Standort & " wurde keine Referenz hingerlegt!")
|
|
Exit Sub
|
|
|
|
End If
|
|
lblSaldo.Text = "Saldo: €" & Decimal.Parse(GesSichRef.CalcSaldo()).ToString("N")
|
|
|
|
txtDatVon.Text = Date.Parse("01.01.2001")
|
|
txtDatBis.Text = Now.ToShortDateString
|
|
|
|
btnMonat.Text = MONAT.ToString("MMMM")
|
|
btnJahr.Text = JAHR.Year
|
|
|
|
If GesSichRef.brgakto_gs_ATR Then
|
|
Dim anzahlOffenerGSUeber85Tage As Integer = checkOpenATBs()
|
|
If anzahlOffenerGSUeber85Tage > 0 Then
|
|
btnOpenOver85Days.Visible = True
|
|
End If
|
|
End If
|
|
|
|
ShowStandort()
|
|
LoadDGV()
|
|
End Sub
|
|
|
|
Public Function LoadDGV()
|
|
Dim sqladdon As String = ""
|
|
Dim sqlSicherheitssaldo As String = ""
|
|
If chkOffen.Checked Then sqlSicherheitssaldo &= " HAVING
|
|
( COALESCE(MAX(SicherheitsSaldo.gs_SicherheitsSaldo), 0) +
|
|
COALESCE(MAX(PositionenSaldo.gsp_SicherheitsSaldo), 0)
|
|
) <> 0 "
|
|
If cbxStandort._value <> "" Then sqladdon &= " AND gs_filialenNr = " & cbxStandort._value.ToString
|
|
If cbxWarenort._value <> "" Then sqladdon &= " AND gs_warenort = '" & cbxWarenort._value.ToString & "'"
|
|
|
|
'Dim sqlstring As String =
|
|
' " select * from (Select gs_gsnr as gs_gsnr, MIN(gs_standort) as gs_standort, MIN(gs_warenort) as gs_warenort, MIN(gs_filialenNr) as gs_filialenNr, min(gs_abfertigungsNr) as gs_abfertigungsNr, MIN(gs_avisoId) as gs_avisoId,
|
|
' max(gs_LKWKZ) as gs_LKWKZ, min (gs_datum) as gs_datum, FORMAT(
|
|
' (Select SUM( Case
|
|
'when gs_art = 'Open' then (gs_sicherheitsbetrag * -1)
|
|
'when gs_art = 'Close' then gs_sicherheitsbetrag
|
|
' End) As gs_SicherheitsSaldo FROM [tblGesamtsicherheit] where gs_gsnr = meh.gs_gsnr
|
|
' )
|
|
' +
|
|
' (Select SUM( Case
|
|
'when gsp_art = 'Open' then (gsp_sicherheitsbetrag * -1)
|
|
'when gsp_art = 'Close' then gsp_sicherheitsbetrag
|
|
' End) As gs_SicherheitsSaldo FROM [tblGesamtsicherheitsPositionen] where gsp_gsnr = meh.gs_gsnr
|
|
' ) , 'C', 'de-DE') as gs_SicherheitsSaldo
|
|
|
|
' From (select * from (select gs_gsnr as ding from [tblGesamtsicherheit] where
|
|
' gs_freitext like '%" & txtSuchbegriff.Text & "%' OR
|
|
' gs_abfertigungsNr like '%" & txtSuchbegriff.Text & "%' OR
|
|
' gs_avisoId like '%" & txtSuchbegriff.Text & "%' OR
|
|
' gs_ATBNr like '%" & txtSuchbegriff.Text & "%' OR
|
|
' gs_LKWKZ like '%" & txtSuchbegriff.Text & "%' OR
|
|
' gs_warenort like '%" & txtSuchbegriff.Text & "%'
|
|
' ) as tb1 left join [tblGesamtsicherheit] as tb2 on tb1.ding = tb2.gs_gsnr) as meh group by gs_gsnr) as meh2
|
|
' Where gs_standort = '" & Standort & "' " & sqladdon & "
|
|
' AND gs_datum > '" & Date.Parse(txtDatVon.Text) & "'
|
|
' AND gs_datum < '" & Date.Parse(txtDatBis.Text).AddDays(1).AddSeconds(-1) & "' ORDER BY gs_gsnr"
|
|
|
|
|
|
|
|
Dim sqlstring As String = "WITH SicherheitsSaldo AS (
|
|
SELECT
|
|
gs_gsnr,
|
|
SUM(CASE
|
|
WHEN gs_art = 'Open' THEN -gs_sicherheitsbetrag
|
|
WHEN gs_art = 'Close' THEN gs_sicherheitsbetrag
|
|
END) AS gs_SicherheitsSaldo
|
|
FROM tblGesamtsicherheit
|
|
GROUP BY gs_gsnr
|
|
),
|
|
PositionenSaldo AS (
|
|
SELECT
|
|
gsp_gsnr,
|
|
SUM(CASE
|
|
WHEN gsp_art = 'Open' THEN -gsp_sicherheitsbetrag
|
|
WHEN gsp_art = 'Close' THEN gsp_sicherheitsbetrag
|
|
END) AS gsp_SicherheitsSaldo
|
|
FROM tblGesamtsicherheitsPositionen
|
|
GROUP BY gsp_gsnr
|
|
)
|
|
SELECT
|
|
gs.gs_gsnr,
|
|
MIN(gs.gs_standort) AS gs_standort,
|
|
MIN(gs.gs_warenort) AS gs_warenort,
|
|
MIN(gs.gs_filialenNr) AS gs_filialenNr,
|
|
MIN(gs.gs_abfertigungsNr) AS gs_abfertigungsNr,
|
|
MIN(gs.gs_avisoId) AS gs_avisoId,
|
|
MAX(gs.gs_LKWKZ) AS gs_LKWKZ,
|
|
MIN(gs.gs_datum) AS gs_datum,
|
|
(
|
|
COALESCE(MAX(SicherheitsSaldo.gs_SicherheitsSaldo), 0) +
|
|
COALESCE(MAX(PositionenSaldo.gsp_SicherheitsSaldo), 0)
|
|
) AS gs_SicherheitsSaldo
|
|
FROM
|
|
tblGesamtsicherheit gs
|
|
LEFT JOIN SicherheitsSaldo ON gs.gs_gsnr = SicherheitsSaldo.gs_gsnr
|
|
LEFT JOIN PositionenSaldo ON gs.gs_gsnr = PositionenSaldo.gsp_gsnr
|
|
WHERE
|
|
gs.gs_standort = '" & Standort & "' " & sqladdon & "
|
|
AND gs.gs_datum BETWEEN '" & Date.Parse(txtDatVon.Text) & "' AND '" & Date.Parse(txtDatBis.Text).AddDays(1).AddSeconds(-1) & "'
|
|
AND (
|
|
gs.gs_freitext LIKE '%" & txtSuchbegriff.Text & "%' OR
|
|
gs.gs_abfertigungsNr LIKE '%" & txtSuchbegriff.Text & "%' OR
|
|
gs.gs_avisoId LIKE '%" & txtSuchbegriff.Text & "%' OR
|
|
gs.gs_ATBNr LIKE '%" & txtSuchbegriff.Text & "%' OR
|
|
gs.gs_LKWKZ LIKE '%" & txtSuchbegriff.Text & "%' OR
|
|
gs.gs_warenort LIKE '%" & txtSuchbegriff.Text & "%'
|
|
)
|
|
GROUP BY
|
|
gs.gs_gsnr " & sqlSicherheitssaldo &
|
|
"ORDER BY
|
|
gs.gs_gsnr;"
|
|
|
|
dgvListe.SET_SQL(sqlstring, "AVISO")
|
|
dgvListe.LOAD()
|
|
|
|
With dgvListe
|
|
.SelectionMode = DataGridViewSelectionMode.FullRowSelect
|
|
.RowHeadersWidth = 6
|
|
.Columns("gs_standort").Visible = False
|
|
.Columns("gs_gsnr").HeaderText = "#"
|
|
.Columns("gs_gsnr").Width = 36
|
|
.Columns("gs_filialenNr").HeaderText = "Filiale"
|
|
.Columns("gs_filialenNr").Width = 43
|
|
.Columns("gs_abfertigungsNr").HeaderText = "Abfert.Nr."
|
|
.Columns("gs_abfertigungsNr").Width = 70
|
|
.Columns("gs_datum").Width = 112
|
|
.Columns("gs_datum").HeaderText = "Datum"
|
|
.Columns("gs_SicherheitsSaldo").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
|
.Columns("gs_SicherheitsSaldo").HeaderText = "offener S-Betrag"
|
|
.Columns("gs_SicherheitsSaldo").DefaultCellStyle.Format = "c2"
|
|
.Columns("gs_Warenort").Width = 96
|
|
.Columns("gs_Warenort").HeaderText = "Warenort"
|
|
.Columns("gs_avisoId").Width = 96
|
|
.Columns("gs_avisoId").HeaderText = "LKW-ID"
|
|
.Columns("gs_LKWKZ").HeaderText = "LKW-KZ"
|
|
|
|
End With
|
|
|
|
If dgvListe.Rows.Count = 0 Then Exit Function
|
|
|
|
dataTable = New DataTable()
|
|
dataTable.Columns.Add("gs_gsnr", GetType(Integer))
|
|
dataTable.Columns.Add("gs_isOpen", GetType(Boolean))
|
|
|
|
|
|
|
|
|
|
For Each row As DataGridViewRow In dgvListe.Rows
|
|
If Not IsDBNull(row.Cells("gs_SicherheitsSaldo").Value) Then
|
|
If row.Cells("gs_SicherheitsSaldo").Value <> 0 Then
|
|
|
|
dataTable.Rows.Add(row.Cells("gs_gsnr").Value, True)
|
|
row.DefaultCellStyle.BackColor = Color.IndianRed
|
|
Else
|
|
dataTable.Rows.Add(row.Cells("gs_gsnr").Value, False)
|
|
row.DefaultCellStyle.BackColor = Color.Green
|
|
End If
|
|
End If
|
|
Next
|
|
|
|
End Function
|
|
|
|
Public Sub ShowStandort()
|
|
lblReferenzwert.Text = "Referenzwert: €" & CDbl(GesSichRef.brgakto_betrag).ToString("N")
|
|
lblZollsatz.Text = "Zollsatz: " & GesSichRef.brgakto_gs_zollsatz & "%"
|
|
lblSaldo.Text = "Saldo: €" & Decimal.Parse(GesSichRef.CalcSaldo()).ToString("N")
|
|
End Sub
|
|
|
|
|
|
|
|
|
|
Private Sub OpenFRM(sender As Object, e As DataGridViewCellEventArgs) Handles dgvListe.CellDoubleClick
|
|
Dim frm As New frmGesamtsicherheitenNEU
|
|
With frm
|
|
.currentGesSichRef = GesSichRef
|
|
.gessicherheitID = dgvListe.CurrentRow.Cells("gs_gsnr").Value
|
|
.Standort = Me.Standort
|
|
.datum = dgvListe.CurrentRow.Cells("gs_datum").Value
|
|
.LKWKZ = dgvListe.CurrentRow.Cells("gs_LKWKZ").Value
|
|
.FilialNummer = dgvListe.CurrentRow.Cells("gs_filialenNr").Value
|
|
.Abfertigungsnummer = dgvListe.CurrentRow.Cells("gs_abfertigungsNr").Value
|
|
.warenortID = dgvListe.CurrentRow.Cells("gs_warenort").Value
|
|
.avisoID = dgvListe.CurrentRow.Cells("gs_avisoId").Value
|
|
.dataTable = Me.dataTable
|
|
.firmaId = Me.firmaId
|
|
End With
|
|
|
|
AddHandler frm.FormClosing, Function()
|
|
GesSichRef.CalcSaldo()
|
|
ShowStandort()
|
|
LoadDGV()
|
|
Me.BringToFront()
|
|
End Function
|
|
frm.Show()
|
|
End Sub
|
|
|
|
Private Sub btnNeu_Click(sender As Object, e As EventArgs) Handles btnNeu.Click
|
|
Dim frm As New frmGesamtsicherheitenNEU
|
|
With frm
|
|
.currentGesSichRef = GesSichRef
|
|
.Standort = Me.Standort
|
|
.datum = Date.Now
|
|
.Neu = True
|
|
.dataTable = Me.dataTable
|
|
.firmaId = Me.firmaId
|
|
End With
|
|
AddHandler frm.FormClosing, Function()
|
|
GesSichRef.CalcSaldo()
|
|
ShowStandort()
|
|
LoadDGV()
|
|
Me.BringToFront()
|
|
End Function
|
|
frm.Show(Me)
|
|
' frm.Parent = Me
|
|
End Sub
|
|
|
|
Private Sub lblSaldo_Click(sender As Object, e As EventArgs) Handles lblSaldo.Click
|
|
lblSaldo.Text = "Saldo: €" & Decimal.Parse(GesSichRef.CalcSaldo()).ToString("N")
|
|
LoadDGV()
|
|
End Sub
|
|
|
|
Private Sub chkOffen_CheckedChanged(sender As Object, e As EventArgs)
|
|
If Me.Visible Then LoadDGV()
|
|
End Sub
|
|
Private Sub Keypresses(sender As Object, e As System.Windows.Forms.KeyPressEventArgs)
|
|
Select Case Asc(e.KeyChar)
|
|
Case 48 To 57, 8, 46, 58, 32, 44, 65 To 90, 97 To 122
|
|
' Zahlen, Backspace, . und : zulassen
|
|
|
|
Case Else
|
|
' alle anderen Eingaben unterdrücken
|
|
e.Handled = True
|
|
End Select
|
|
End Sub
|
|
|
|
Private Sub resetSearchfields_Click(sender As Object, e As EventArgs) Handles btnResetFilter.Click
|
|
txtSuchbegriff.Text = "" : chkOffen.Checked = True
|
|
txtDatVon.Text = Date.Today.AddDays(-90).ToString("dd.MM.yyyy")
|
|
txtDatBis.Text = Date.Today.ToString("dd.MM.yyyy")
|
|
cbxStandort._value = ""
|
|
cbxWarenort._value = ""
|
|
btnSucheStarten_Click(sender, e)
|
|
End Sub
|
|
|
|
Private Sub btnSucheStarten_Click(sender As Object, e As EventArgs) Handles btnSucheStarten.Click
|
|
Try
|
|
Date.Parse(txtDatVon.Text)
|
|
Date.Parse(txtDatBis.Text)
|
|
If Me.Visible Then LoadDGV()
|
|
Catch ex As Exception
|
|
MsgBox("Datum VON und/oder BIS konnte nicht konvertiert werden.")
|
|
End Try
|
|
End Sub
|
|
|
|
Dim MONAT As Date = CDate("01." & Now.Month & "." & Now.Year) '.AddMonths(-1)
|
|
Dim TAG 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"
|
|
|
|
DateTimePicker1.Value = JAHR
|
|
DateTimePicker2.Value = JAHR.AddYears(1).AddDays(-1)
|
|
'End If
|
|
Case "Tag"
|
|
|
|
DateTimePicker1.Value = TAG
|
|
DateTimePicker2.Value = TAG
|
|
If TAG = Now.ToShortDateString Then
|
|
btnTag.Text = "Heute"
|
|
ElseIf TAG = Now.AddDays(-1).ToShortDateString Then
|
|
btnTag.Text = "Gestern"
|
|
ElseIf TAG = Now.AddDays(-2).ToShortDateString Then
|
|
btnTag.Text = "Vorgestern"
|
|
ElseIf TAG = Now.AddDays(1).ToShortDateString Then
|
|
btnTag.Text = "Morgen"
|
|
Else
|
|
btnTag.Text = TAG.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 btnPlusJahr_Click(sender As Object, e As EventArgs) Handles btnBisJahr.Click
|
|
JAHR = JAHR.AddYears(1)
|
|
initBtns("Jahr")
|
|
End Sub
|
|
|
|
Private Sub btnMinusJahr_Click(sender As Object, e As EventArgs) Handles btnVonJahr.Click
|
|
JAHR = JAHR.AddYears(-1)
|
|
initBtns("Jahr")
|
|
End Sub
|
|
|
|
Private Sub btnMonat_Click(sender As Object, e As EventArgs) Handles btnMonat.Click
|
|
initBtns("Monat")
|
|
End Sub
|
|
|
|
Private Sub btnPlusMonat_Click(sender As Object, e As EventArgs) Handles btnBisMonat.Click
|
|
MONAT = MONAT.AddMonths(1)
|
|
initBtns("Monat")
|
|
End Sub
|
|
|
|
Private Sub btnMinusMonat_Click(sender As Object, e As EventArgs) Handles btnVonMonat.Click
|
|
MONAT = MONAT.AddMonths(-1)
|
|
initBtns("Monat")
|
|
End Sub
|
|
|
|
|
|
Private Sub btnTag_Click(sender As Object, e As EventArgs) Handles btnTag.Click
|
|
initBtns("Tag")
|
|
End Sub
|
|
|
|
Private Sub btnMinusTag_Click(sender As Object, e As EventArgs) Handles btnVonTag.Click
|
|
TAG = TAG.AddDays(-1)
|
|
initBtns("Tag")
|
|
End Sub
|
|
|
|
Private Sub btnPlusTag_Click(sender As Object, e As EventArgs) Handles btnBisTag.Click
|
|
TAG = TAG.AddDays(1)
|
|
initBtns("Tag")
|
|
End Sub
|
|
|
|
Private Sub DateTimePicker1_ValueChanged(sender As Object, e As EventArgs) Handles DateTimePicker1.ValueChanged
|
|
txtDatVon._value = CDate(sender.value).ToShortDateString
|
|
btnSucheStarten_Click(sender, e)
|
|
End Sub
|
|
|
|
Private Sub DateTimePicker2_ValueChanged(sender As Object, e As EventArgs) Handles DateTimePicker2.ValueChanged
|
|
txtDatBis._value = CDate(sender.value).ToShortDateString
|
|
btnSucheStarten_Click(sender, e)
|
|
End Sub
|
|
|
|
Function setNullToZero(s As String, Optional type As String = "")
|
|
|
|
If s = "" Then
|
|
Dim zero As Double = 0
|
|
|
|
Return zero
|
|
Else
|
|
Return s
|
|
End If
|
|
End Function
|
|
|
|
Private Sub btnOpenOver85Days_Click(sender As Object, e As EventArgs) Handles btnOpenOver85Days.Click
|
|
resetSearchfields_Click(sender, e)
|
|
chkOffen.Checked = True
|
|
DateTimePicker1.Value = Now.AddYears(-20)
|
|
DateTimePicker2.Value = Now.AddDays(-85)
|
|
|
|
btnSucheStarten_Click(sender, e)
|
|
|
|
End Sub
|
|
|
|
Private Function checkOpenATBs() As Integer
|
|
|
|
Dim anzahlOffenerGSUeber85Tage As Integer
|
|
|
|
' Dim sqlstring As String = "select count(*) as anzahlOffeneATBs from (Select gs_gsnr as gs_gsnr, MIN(gs_standort) as gs_standort,min (gs_datum) as gs_datum,
|
|
' (Select SUM( Case
|
|
'when gs_art = 'Open' then (gs_sicherheitsbetrag * -1)
|
|
'when gs_art = 'Close' then gs_sicherheitsbetrag
|
|
' End) As gs_SicherheitsSaldo FROM [tblGesamtsicherheit] where gs_gsnr = meh.gs_gsnr
|
|
' )
|
|
' +
|
|
' (Select SUM( Case
|
|
'when gsp_art = 'Open' then (gsp_sicherheitsbetrag * -1)
|
|
'when gsp_art = 'Close' then gsp_sicherheitsbetrag
|
|
' End) As gs_SicherheitsSaldo FROM [tblGesamtsicherheitsPositionen] where gsp_gsnr = meh.gs_gsnr
|
|
' ) as Sicherheitssaldo
|
|
|
|
' From [tblGesamtsicherheit] as meh group by gs_gsnr) as meh2
|
|
' Where gs_standort = '" & Standort & "'AND Sicherheitssaldo <> 0 AND gs_datum < '" & Date.Now().AddDays(-85) & "'"
|
|
|
|
|
|
|
|
Dim sqlstring As String = "WITH SicherheitsSaldo AS (
|
|
SELECT
|
|
gs_gsnr,
|
|
SUM(CASE
|
|
WHEN gs_art = 'Open' THEN -gs_sicherheitsbetrag
|
|
WHEN gs_art = 'Close' THEN gs_sicherheitsbetrag
|
|
END) AS gs_SicherheitsSaldo
|
|
FROM tblGesamtsicherheit
|
|
GROUP BY gs_gsnr
|
|
),
|
|
PositionenSaldo AS (
|
|
SELECT
|
|
gsp_gsnr,
|
|
SUM(CASE
|
|
WHEN gsp_art = 'Open' THEN -gsp_sicherheitsbetrag
|
|
WHEN gsp_art = 'Close' THEN gsp_sicherheitsbetrag
|
|
END) AS gsp_SicherheitsSaldo
|
|
FROM tblGesamtsicherheitsPositionen
|
|
GROUP BY gsp_gsnr
|
|
)
|
|
SELECT
|
|
COUNT(*) AS anzahlOffeneATBs
|
|
FROM (
|
|
SELECT
|
|
gs.gs_gsnr,
|
|
MIN(gs.gs_standort) AS gs_standort,
|
|
MIN(gs.gs_datum) AS gs_datum,
|
|
COALESCE(SUM(SicherheitsSaldo.gs_SicherheitsSaldo), 0) +
|
|
COALESCE(SUM(PositionenSaldo.gsp_SicherheitsSaldo), 0) AS Sicherheitssaldo
|
|
FROM tblGesamtsicherheit gs
|
|
LEFT JOIN SicherheitsSaldo ON gs.gs_gsnr = SicherheitsSaldo.gs_gsnr
|
|
LEFT JOIN PositionenSaldo ON gs.gs_gsnr = PositionenSaldo.gsp_gsnr
|
|
WHERE gs.gs_standort = '" & Standort & "'
|
|
AND gs.gs_datum < '" & Date.Now().AddDays(-85) & "'
|
|
GROUP BY gs.gs_gsnr
|
|
) AS meh2
|
|
WHERE meh2.Sicherheitssaldo <> 0;"
|
|
|
|
|
|
|
|
Dim dtNew As DataTable = SQL.loadDgvBySql(sqlstring, "AVISO", 100, True)
|
|
|
|
If (dtNew.Rows(0).Item(0) IsNot DBNull.Value) Then
|
|
|
|
anzahlOffenerGSUeber85Tage = dtNew.Rows(0).Item(0)
|
|
If anzahlOffenerGSUeber85Tage > 0 Then
|
|
MsgBox("Es sind " & anzahlOffenerGSUeber85Tage & " ATBs offen, die älter als 85 Tage sind!")
|
|
End If
|
|
Return anzahlOffenerGSUeber85Tage
|
|
End If
|
|
|
|
|
|
|
|
End Function
|
|
|
|
Private Sub ExportCSVToolStripMenuItem_Click_1(sender As Object, e As EventArgs) Handles ListeToolStripMenuItem.Click
|
|
|
|
SDL.cProgramFunctions.genExcelFromDGV_NEW(dgvListe)
|
|
|
|
End Sub
|
|
|
|
Private Sub ExportCSV2ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ReferenzlisteZollamtToolStripMenuItem.Click, DetaillisteToolStripMenuItem.Click
|
|
|
|
If dgvListe.Rows.Count = 0 Then
|
|
MsgBox("keine Daten vorhanden!")
|
|
Exit Sub
|
|
End If
|
|
|
|
Dim list As New List(Of Integer)
|
|
|
|
For Each row As DataGridViewRow In dgvListe.Rows
|
|
list.Add(CInt(row.Cells("gs_gsnr").Value))
|
|
Next
|
|
|
|
Dim frm As New frmGesamtsicherheitenNEU
|
|
Dim datumVon As Date = CDate(txtDatVon.Text)
|
|
datumVon = datumVon.AddDays(-1)
|
|
|
|
If sender.ToString = "Detailliste" Then
|
|
frm.LoadDataTableSicherheitenForExport2(list, datumVon.ToShortDateString, txtDatBis.Text)
|
|
ElseIf sender.ToString = "Referenzliste-Zollamt" Then
|
|
frm.LoadDataTableSicherheitenForExport(list, datumVon.ToShortDateString, txtDatBis.Text, Standort)
|
|
Else
|
|
MsgBox("Funktion nicht definiert!")
|
|
Exit Sub
|
|
End If
|
|
|
|
SDL.cProgramFunctions.genExcelFromDT_NEW(frm.dtSicherheiten)
|
|
|
|
End Sub
|
|
|
|
Private Sub chkOffen_CheckedChanged_1(sender As Object, e As EventArgs) Handles chkOffen.CheckedChanged
|
|
If txtDatVon._value <> "" AndAlso txtDatBis._value <> "" Then btnSucheStarten.PerformClick()
|
|
End Sub
|
|
|
|
Private Sub SaldenNeuBerechnenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles SaldenNeuBerechnenToolStripMenuItem.Click
|
|
|
|
lblSaldo.Text = "Saldo: €" & Decimal.Parse(GesSichRef.CalcSaldo()).ToString("N")
|
|
MsgBox("Salden wurden neu berechnet")
|
|
|
|
End Sub
|
|
|
|
Private Sub FlatButton1_Click(sender As Object, e As EventArgs) Handles btnExcel.Click
|
|
|
|
Select Case Standort
|
|
|
|
Case "Verag GmbH"
|
|
Process.Start("https://file.verag.ag:5001/d/s/pkjsynkkXrTgPm85JLVFWAHem4NuF6IO/i4_Ss9mG9jR7hB4wStoIbzhvYzlJJJPv-BbegLJoGuQk")
|
|
|
|
Case "VERAG AG"
|
|
Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "VORLAGEN", "SONSTIGE", "", "", "Gesamtsicherheit_VERAG_AG")
|
|
DS.OPEN_SINGLE_ORIG()
|
|
|
|
Case "Verag CS"
|
|
Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "VORLAGEN", "SONSTIGE", "", "", "Gesamtsicherheit_VERAG_CS")
|
|
DS.OPEN_SINGLE_ORIG()
|
|
|
|
Case "IMEX"
|
|
Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "VORLAGEN", "SONSTIGE", "IMEX", "", "Gesamtsicherheit_IMEX")
|
|
DS.OPEN_SINGLE_ORIG()
|
|
|
|
End Select
|
|
|
|
End Sub
|
|
|
|
|
|
End Class
|