742 lines
35 KiB
VB.net
742 lines
35 KiB
VB.net
|
|
|
|
Public Class frmVorauskasse
|
|
|
|
Public KundenNr As Integer = -1
|
|
Public GeldEingang As Object = Nothing
|
|
|
|
|
|
|
|
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 New()
|
|
|
|
' Dieser Aufruf ist für den Designer erforderlich.
|
|
InitializeComponent()
|
|
|
|
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
|
|
|
|
End Sub
|
|
Dim FilialenNr = Nothing
|
|
Dim AbfertigungsNr = Nothing
|
|
Dim DatumVon = Nothing
|
|
|
|
Sub New(FilialenNr, AbfertigungsNr, DatumVon)
|
|
|
|
' Dieser Aufruf ist für den Designer erforderlich.
|
|
InitializeComponent()
|
|
|
|
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
|
|
Me.FilialenNr = FilialenNr
|
|
Me.AbfertigungsNr = AbfertigungsNr
|
|
Me.DatumVon = DatumVon
|
|
|
|
End Sub
|
|
Private Sub frmVorauskasse_Load(sender As Object, e As EventArgs) Handles Me.Load
|
|
|
|
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
|
|
|
|
|
|
Dim FirmaTmp = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
|
|
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("OFFERTE_FREMD_VERAGIMEX", "SDL") Or VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("FAKTURIERUNG_VERAGIMEX", "SDL") Then
|
|
FirmaTmp = "VERAGIMEX"
|
|
End If
|
|
|
|
Dim QSwhere = ""
|
|
|
|
Select Case FirmaTmp
|
|
Case "UNISPED" : QSwhere = " AND mit_firma IN ('UNISPED') "
|
|
Case "ATILLA" : QSwhere = ""
|
|
Case "VERAGIMEX" : QSwhere = " AND mit_firma IN ('IMEX','BEIDE','VERAG','ATILLA') "
|
|
Case "IMEX" : QSwhere = " AND mit_firma IN ('IMEX','BEIDE') "
|
|
Case Else
|
|
QSwhere = " AND mit_firma <> 'IMEX' "
|
|
End Select
|
|
|
|
|
|
' cboSachbearbeiterQS.fillWithSQL("SELECT ID,/*cast(ID as nvarchar(3)) +' ' + Name as*/ Name FROM Personal WHERE [Status]<>'L' " & QSwhere & " ORDER BY Name ", False, "FMZOLL", True)
|
|
|
|
Dim where = ""
|
|
Select Case FirmaTmp
|
|
Case "IMEX"
|
|
where = " AND FilialenNr IN (5501) "
|
|
Case "ATILLA"
|
|
where = " AND FilialenNr IN (4801) "
|
|
Case "UNISPED"
|
|
where = " AND FilialenNr IN (5601) "
|
|
Case "AMBAR"
|
|
where = " AND FilialenNr IN (5701) "
|
|
Case "FRONTOFFICE"
|
|
where = " AND FilialenNr IN (5801) "
|
|
Case "VERAGIMEX"
|
|
where = ""
|
|
Case Else
|
|
where = " AND FilialenNr NOT IN (5501) "
|
|
End Select
|
|
|
|
cboFiliale.fillWithSQL("SELECT FilialenNr, Grenzstelle FROM Filialen WHERE Fil_Status='A' " & where & " ORDER BY FilialenNr ", True, "FMZOLL", True)
|
|
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
|
|
Case "IMEX"
|
|
cboFiliale._allowedValuesFreiText = {"5501"}
|
|
cboFiliale.changeItem("5501")
|
|
Case "ATILLA"
|
|
cboFiliale._allowedValuesFreiText = {"4801"}
|
|
cboFiliale.changeItem("4801")
|
|
Case "UNISPED"
|
|
cboFiliale._allowedValuesFreiText = {"5601"}
|
|
cboFiliale.changeItem("5601")
|
|
Case "AMBAR"
|
|
cboFiliale._allowedValuesFreiText = {"5701"}
|
|
cboFiliale.changeItem("5701")
|
|
Case "FRONTOFFICE"
|
|
cboFiliale._allowedValuesFreiText = {"5801"}
|
|
cboFiliale.changeItem("5801")
|
|
Case Else
|
|
cboFiliale.Items.Insert(1, New VERAG_PROG_ALLGEMEIN.MyListItem("alle VERAG", "VERAG"))
|
|
cboFiliale.changeItem("VERAG")
|
|
End Select
|
|
|
|
|
|
cboSachbearbeiterQS.fillWithSQL("SELECT [mit_id],[mit_vname] + ' '+ [mit_nname] as NAME " &
|
|
" FROM tblMitarbeiter WHERE mit_niederlassung IN ('SUB','Suben') AND mit_abteilung='QS' AND [mit_gekuendigt]=0 " & QSwhere & " order by name", False, "ADMIN", True)
|
|
cboSachbearbeiterBH.fillWithSQL("SELECT [mit_id],[mit_vname] + ' '+ [mit_nname] as NAME " &
|
|
" FROM tblMitarbeiter WHERE mit_niederlassung IN ('SUB','Suben') AND mit_abteilung='BH' AND [mit_gekuendigt]=0 " & QSwhere & " order by name", False, "ADMIN", True)
|
|
btnMonat.PerformClick()
|
|
btnSuche.PerformClick()
|
|
|
|
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("BH_Vorauskasse_buchen", Me) Then
|
|
pnlBH.Visible = True
|
|
End If
|
|
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("ADMINFUNCTIONS", Me) Then
|
|
btnDel.Visible = True
|
|
End If
|
|
|
|
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("VORAUSKASSE_Bank_Login_VERAG", Me) Then
|
|
btnVK_VERAG_VR.Visible = True
|
|
End If
|
|
|
|
If Me.FilialenNr IsNot Nothing Then
|
|
cboFiliale.changeItem(FilialenNr)
|
|
End If
|
|
|
|
If Me.AbfertigungsNr IsNot Nothing Then
|
|
txtAbfertigungsnummer.Text = AbfertigungsNr
|
|
End If
|
|
|
|
If Me.DatumVon IsNot Nothing Then
|
|
DateTimePicker1.Value = CDate(DatumVon)
|
|
End If
|
|
|
|
If KundenNr > 0 Then
|
|
txtFirma.Text = KundenNr
|
|
If GeldEingang IsNot Nothing Then
|
|
If GeldEingang Then
|
|
cbxGeldEingang.CheckState = CheckState.Checked
|
|
Else
|
|
cbxGeldEingang.CheckState = CheckState.Unchecked
|
|
End If
|
|
End If
|
|
DateTimePicker1.Value = Now.AddYears(-1)
|
|
DateTimePicker2.Value = Now
|
|
|
|
btnSuche.PerformClick()
|
|
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
|
|
|
|
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
|
|
btnSuche.PerformClick()
|
|
End Sub
|
|
|
|
|
|
Private Sub btnSuche_Click(sender As Object, e As EventArgs) Handles btnSuche.Click, cbxLKWAnkunft.CheckedChanged
|
|
|
|
'If sender Is cbxLKWAnkunft Then
|
|
' If vbYes = MsgBox("Achtung - komplexe Abfrage: ", vbYesNoCancel) Then
|
|
'End If
|
|
If cbxLKWAnkunft.Checked Then
|
|
txtMaxSrch.Text = 50
|
|
txtAbfertDat.Enabled = False
|
|
txtAbfertDatBis.Enabled = False
|
|
DateTimePicker1.Enabled = False
|
|
DateTimePicker2.Enabled = False
|
|
Else
|
|
txtAbfertDat.Enabled = True
|
|
txtAbfertDatBis.Enabled = True
|
|
DateTimePicker1.Enabled = True
|
|
DateTimePicker2.Enabled = True
|
|
End If
|
|
|
|
Me.Cursor = Cursors.WaitCursor
|
|
|
|
Dim TopMax = If(IsNumeric(txtMaxSrch.Text), " TOP " & txtMaxSrch.Text, "")
|
|
Dim sqlstr As String = ""
|
|
Dim LKWAnkunft = " WHERE 1=1 "
|
|
If cbxLKWAnkunft.Checked Then
|
|
' LKWAnkunft = " , (SELECT TOP 1 Count(*) FROM " & VERAG_PROG_ALLGEMEIN.cAllgemein.AVISO_SERVER & ".AVISO.dbo.AVISO INNER JOIN " & VERAG_PROG_ALLGEMEIN.cAllgemein.AVISO_SERVER & ".AVISO.dbo.tblSendungen on AVISO.AvisoId=tblSendungen.tblSnd_AvisoID where Status=1 and FilialenNr=[vk_FilialeNr] and AbfertigungsNr=[vk_AbfertigungsNr] ) LKW_Ankunft "
|
|
'LKWAnkunft = " and (SELECT TOP 1 Count(*) FROM " & VERAG_PROG_ALLGEMEIN.cAllgemein.AVISO_SERVER & ".AVISO.dbo.AVISO INNER JOIN " & VERAG_PROG_ALLGEMEIN.cAllgemein.AVISO_SERVER & ".AVISO.dbo.tblSendungen on AVISO.AvisoId=tblSendungen.tblSnd_AvisoID where Status=" & VERAG_PROG_ALLGEMEIN.cGlobal.Status_Ankunft & " and FilialenNr=[vk_FilialeNr] and AbfertigungsNr=[vk_AbfertigungsNr] ) >0 "
|
|
LKWAnkunft = " inner join " & VERAG_PROG_ALLGEMEIN.cAllgemein.AVISO_SERVER & ".AVISO.dbo.tblSendungen on FilialenNr=[vk_FilialeNr] and AbfertigungsNr=[vk_AbfertigungsNr] inner join " & VERAG_PROG_ALLGEMEIN.cAllgemein.AVISO_SERVER & ".AVISO.dbo.AVISO on AVISO.AvisoId=tblSendungen.tblSnd_AvisoID WHERE 1=1 and Status=3 "
|
|
End If
|
|
|
|
'sqlstr &= " SELECT " & TopMax & " [vk_id],[vk_FilialeNr],[vk_AbfertigungsNr],[vk_Datum],[vk_LKW],[vk_KdNr],[vk_Firma],[vk_QS_Sachbearbeiter],[vk_QS_Bemerkung],vk_Betrag,[vk_GeldEingetroffen],[vk_BH_Sachbearbeiter],[vk_BH_Bemerkung],[vk_BH_DatumGeldeingang],vk_storno,vk_Freigegeben " & LKWAnkunft & " FROM tblVorauskassen WHERE 1=1 "
|
|
sqlstr &= " SELECT " & TopMax & " [vk_id],[vk_FilialeNr],[vk_AbfertigungsNr],[vk_Datum],[vk_LKW],[vk_KdNr],[vk_Firma],[vk_QS_Sachbearbeiter],vk_QS_SachbearbeiterId,[vk_QS_Bemerkung],vk_Betrag,[vk_GeldEingetroffen],[vk_BH_Sachbearbeiter],[vk_BH_Bemerkung],[vk_BH_DatumGeldeingang],vk_storno,vk_Freigegeben FROM tblVorauskassen " & LKWAnkunft & " "
|
|
|
|
' MsgBox(sqlstr & getVorauskasseWhere() & " ORDER BY vk_Datum desc ")
|
|
With MyDatagridview1
|
|
' .DataSource = myTable
|
|
.SET_SQL(sqlstr & getVorauskasseWhere() & " ORDER BY vk_Datum desc ", "FMZOLL", getVorauskasseList)
|
|
.LOAD()
|
|
setDGVOptions()
|
|
End With
|
|
showDGV()
|
|
|
|
Me.Cursor = Cursors.Default
|
|
|
|
End Sub
|
|
|
|
|
|
Function getVorauskasseWhere() As String
|
|
Dim sqlstr = ""
|
|
|
|
If Not cbxLKWAnkunft.Checked Then
|
|
If txtAbfertDat.Text <> "" Then
|
|
If txtAbfertDatBis.Text <> "" Then
|
|
sqlstr &= " AND ([vk_Datum] BETWEEN @Abfertigungsdatum AND @Abfertigungsdatum_bis ) "
|
|
Else
|
|
sqlstr &= " AND ([vk_Datum] BETWEEN @Abfertigungsdatum AND @Abfertigungsdatum ) "
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
If txtAbfertigungsnummer.Text <> "" Then
|
|
' If txtAbfertigungsnummerBis.Text <> "" Then
|
|
'sqlstr &= " AND ([vk_AbfertigungsNr] BETWEEN @AbfertigungsNr AND @AbfertigungsNr_bis ) "
|
|
'Else
|
|
'sqlstr &= " AND vk_AbfertigungsNr LIKE @AbfertigungsNr "
|
|
'End If
|
|
sqlstr &= " AND vk_AbfertigungsNr LIKE @AbfertigungsNr "
|
|
End If
|
|
' If txtUnterNr.Text <> "" Then sqlstr &= " AND [UnterNr] LIKE @UnterNr "
|
|
If cboFiliale._value = "VERAG" Then : sqlstr &= " AND [vk_FilialeNr] IN (SELECT [FilialenNr] FROM [Filialen] where Firma ='VERAG') "
|
|
ElseIf cboFiliale._value <> "" Then : sqlstr &= " AND [vk_FilialeNr] LIKE @FilialenNr "
|
|
End If
|
|
|
|
If cboSachbearbeiterQS._value <> "" Then sqlstr &= " AND [vk_QS_SachbearbeiterId] = @PersonalnummerQS "
|
|
If cboSachbearbeiterBH._value <> "" Then sqlstr &= " AND [vk_BH_SachbearbeiterId] = @PersonalnummerBH "
|
|
If MyTextBox1.Text <> "" Then sqlstr &= " AND [vk_LKW] LIKE @LKW "
|
|
If txtFirma.Text <> "" Then sqlstr &= " AND ([vk_Firma] LIKE @Firma or vk_KdNr=@Firma) "
|
|
|
|
Select Case cbxGeldEingang.CheckState
|
|
Case CheckState.Unchecked : sqlstr &= " AND vk_GeldEingetroffen=0 "
|
|
Case CheckState.Checked : sqlstr &= " AND vk_GeldEingetroffen=1 "
|
|
End Select
|
|
If IsNumeric(txtBetrag._value) Then sqlstr &= " AND vk_Betrag = cast(@Betrag as float) "
|
|
|
|
Return sqlstr
|
|
End Function
|
|
Function getVorauskasseList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
|
|
|
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
|
|
|
If Not cbxLKWAnkunft.Checked Then
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Abfertigungsdatum", txtAbfertDat.Text & " 00:00:00"))
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Abfertigungsdatum_bis", txtAbfertDatBis.Text & " 23:59:59"))
|
|
End If
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("AbfertigungsNr", txtAbfertigungsnummer.Text.Replace("*", "%")))
|
|
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("FilialenNr", cboFiliale._value))
|
|
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("PersonalnummerBH", cboSachbearbeiterBH._value))
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("PersonalnummerQS", cboSachbearbeiterQS._value))
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("LKW", MyTextBox1.Text.Replace("*", "%")))
|
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Firma", txtFirma.Text.Replace("*", "%")))
|
|
If IsNumeric(txtBetrag._value) Then list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("Betrag", CDbl(txtBetrag._value)))
|
|
|
|
Return list
|
|
|
|
End Function
|
|
|
|
Sub showDGV()
|
|
|
|
With MyDatagridview1
|
|
|
|
If .RowCount = 0 Then Me.Cursor = Cursors.Default : Exit Sub
|
|
.RowHeadersVisible = False
|
|
.ReadOnly = True
|
|
.SelectionMode = DataGridViewSelectionMode.FullRowSelect
|
|
.MultiSelect = False
|
|
|
|
.Columns("vk_id").Visible = False
|
|
.Columns("vk_QS_SachbearbeiterId").Visible = False
|
|
.Columns("vk_FilialeNr").Width = 45
|
|
.Columns("vk_FilialeNr").HeaderText = "Filiale"
|
|
.Columns("vk_FilialeNr").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
|
|
.Columns("vk_AbfertigungsNr").Width = 80
|
|
.Columns("vk_AbfertigungsNr").HeaderText = "Abf-Nr"
|
|
.Columns("vk_AbfertigungsNr").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
|
|
.Columns("vk_Datum").Width = 100
|
|
.Columns("vk_Datum").HeaderText = "Datum"
|
|
.Columns("vk_Datum").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
|
|
|
|
.Columns("vk_LKW").Width = 120
|
|
.Columns("vk_LKW").HeaderText = "LKW Kennz."
|
|
|
|
|
|
.Columns("vk_KdNr").HeaderText = "KdNr"
|
|
.Columns("vk_KdNr").Width = 50
|
|
.Columns("vk_Firma").HeaderText = "Firma"
|
|
.Columns("vk_Firma").Width = 150
|
|
.Columns("vk_QS_Bemerkung").HeaderText = "QS Vermerk"
|
|
.Columns("vk_QS_Bemerkung").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
|
|
|
.Columns("vk_Betrag").HeaderText = "Betrag"
|
|
.Columns("vk_Betrag").Width = 75
|
|
.Columns("vk_Betrag").DefaultCellStyle.Format = "C2"
|
|
|
|
|
|
.Columns("vk_GeldEingetroffen").HeaderText = "€-Eing."
|
|
.Columns("vk_GeldEingetroffen").Width = 45
|
|
|
|
.Columns("vk_BH_Bemerkung").HeaderText = "BH Vermerk"
|
|
.Columns("vk_BH_Bemerkung").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
|
|
|
.Columns("vk_BH_DatumGeldeingang").HeaderText = "Geldeingang"
|
|
.Columns("vk_BH_DatumGeldeingang").Width = 80
|
|
|
|
.Columns("vk_QS_Sachbearbeiter").MinimumWidth = 100
|
|
.Columns("vk_QS_Sachbearbeiter").HeaderText = "QS Sachb."
|
|
.Columns("vk_BH_Sachbearbeiter").MinimumWidth = 100
|
|
.Columns("vk_BH_Sachbearbeiter").HeaderText = "BH Sachb."
|
|
|
|
.Columns("vk_Freigegeben").HeaderText = "Freigeg."
|
|
.Columns("vk_Freigegeben").Width = 45
|
|
|
|
.Columns("vk_storno").HeaderText = "Storno"
|
|
.Columns("vk_storno").Width = 45
|
|
|
|
' lblErgebnis.Text = "Ergebnise: " & .RowCount
|
|
End With
|
|
End Sub
|
|
|
|
|
|
Private Sub FlatButton7_Click(sender As Object, e As EventArgs) Handles FlatButton7.Click
|
|
MyDatagridview1.RELOAD()
|
|
setDGVOptions()
|
|
End Sub
|
|
|
|
Sub setDGVOptions()
|
|
Try
|
|
With MyDatagridview1
|
|
For Each r As DataGridViewRow In .Rows
|
|
If r.Cells("vk_storno").Value IsNot DBNull.Value AndAlso r.Cells("vk_storno").Value Then
|
|
r.DefaultCellStyle.ForeColor = Color.Red
|
|
ElseIf r.Cells("vk_GeldEingetroffen").Value IsNot DBNull.Value AndAlso r.Cells("vk_GeldEingetroffen").Value Then
|
|
r.DefaultCellStyle.ForeColor = Color.DarkGreen
|
|
End If
|
|
Next
|
|
End With
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message)
|
|
End Try
|
|
End Sub
|
|
Private Sub btnExcel_Click(sender As Object, e As EventArgs) Handles btnExcel.Click
|
|
Me.Cursor = Cursors.WaitCursor
|
|
cProgramFunctions.genExcelFromDGV_NEW(MyDatagridview1, False)
|
|
Me.Cursor = Cursors.Default
|
|
End Sub
|
|
|
|
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
|
|
If MyDatagridview1.SelectedRows.Count > 0 Then
|
|
Dim VK As New VERAG_PROG_ALLGEMEIN.cVorauskasse(MyDatagridview1.SelectedRows(0).Cells("vk_id").Value)
|
|
VK.SET_GELDEINGANG(True, txtBemerkung.Text)
|
|
Dim VermerkIDNew = -1
|
|
cVorauskasseOptions.insertVermerk(MyDatagridview1.SelectedRows(0).Cells("vk_FilialeNr").Value, MyDatagridview1.SelectedRows(0).Cells("vk_AbfertigungsNr").Value, 14,,, VermerkIDNew,,, MyDatagridview1.SelectedRows(0).Cells("vk_id").Value, MyDatagridview1.SelectedRows(0).Cells("vk_QS_SachbearbeiterId").Value)
|
|
|
|
If VK.vk_VermerkId IsNot Nothing AndAlso VermerkIDNew > 0 Then
|
|
Dim cVermerkeDAL As New VERAG_PROG_ALLGEMEIN.cVermerkeDAL
|
|
cVermerkeDAL.SpeichernVermerkIDAufgehoben(VK.vk_VermerkId, VermerkIDNew)
|
|
End If
|
|
|
|
txtBemerkung.Text = ""
|
|
MyDatagridview1.RELOAD()
|
|
setDGVOptions()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub MyDatagridview1_SelectionChanged(sender As Object, e As EventArgs) Handles MyDatagridview1.SelectionChanged
|
|
btnBuchungAufheben.Visible = False
|
|
txtAuswahlAbfNr.Text = ""
|
|
If MyDatagridview1.SelectedRows.Count > 0 Then
|
|
If MyDatagridview1.SelectedRows(0).Cells("vk_GeldEingetroffen").Value Or MyDatagridview1.SelectedRows(0).Cells("vk_Freigegeben").Value Then
|
|
btnBuchungAufheben.Visible = True
|
|
End If
|
|
txtAuswahlAbfNr.Text = MyDatagridview1.SelectedRows(0).Cells("vk_FilialeNr").Value & "/" & MyDatagridview1.SelectedRows(0).Cells("vk_AbfertigungsNr").Value
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub btnBuchungAufheben_Click(sender As Object, e As EventArgs) Handles btnBuchungAufheben.Click
|
|
If MyDatagridview1.SelectedRows.Count > 0 Then
|
|
Dim VK As New VERAG_PROG_ALLGEMEIN.cVorauskasse(MyDatagridview1.SelectedRows(0).Cells("vk_id").Value)
|
|
VK.SET_GELDEINGANG(False, txtBemerkung.Text)
|
|
txtBemerkung.Text = ""
|
|
cVorauskasseOptions.delTop1Vermerk(VK.vk_FilialeNr, VK.vk_AbfertigungsNr, 14)
|
|
cVorauskasseOptions.delTop1Vermerk(VK.vk_FilialeNr, VK.vk_AbfertigungsNr, 59)
|
|
|
|
MyDatagridview1.RELOAD()
|
|
setDGVOptions()
|
|
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
|
|
If MyDatagridview1.SelectedRows.Count > 0 Then
|
|
Dim VK As New VERAG_PROG_ALLGEMEIN.cVorauskasse(MyDatagridview1.SelectedRows(0).Cells("vk_id").Value)
|
|
|
|
If VK.vk_storno Then
|
|
If vbYes <> MsgBox("Möchten Sie die Stornierung auflösen?", vbYesNoCancel) Then Exit Sub
|
|
cVorauskasseOptions.insertVermerk(VK.vk_FilialeNr, VK.vk_AbfertigungsNr, 13, VK.vk_Datum)
|
|
|
|
'Wenn Storinierung aufgehoben und Geld eingtroffen, dann auch Vermerk Vorauskassse erhalten:
|
|
If VK.vk_GeldEingetroffen Then
|
|
cVorauskasseOptions.insertVermerk(VK.vk_FilialeNr, VK.vk_AbfertigungsNr, 14, VK.vk_BH_DatumGeldeingang)
|
|
End If
|
|
Else
|
|
If vbYes <> MsgBox("Möchten Sie die Vorauskasse wirklich stornieren?", vbYesNoCancel) Then Exit Sub
|
|
cVorauskasseOptions.delAllVKVermerk(VK.vk_FilialeNr, VK.vk_AbfertigungsNr)
|
|
End If
|
|
|
|
VK.SET_STORNO()
|
|
MyDatagridview1.RELOAD()
|
|
setDGVOptions()
|
|
End If
|
|
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 btnMonat_Click(sender As Object, e As EventArgs) Handles btnMonat.Click
|
|
initBtns("Monat")
|
|
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 btnDel_Click(sender As Object, e As EventArgs) Handles btnDel.Click
|
|
|
|
If MyDatagridview1.SelectedRows.Count > 0 Then
|
|
Dim VK As New VERAG_PROG_ALLGEMEIN.cVorauskasse(MyDatagridview1.SelectedRows(0).Cells("vk_id").Value)
|
|
If vbYes <> MsgBox("Möchten Sie die Vorauskasse wirklich löschen?", vbYesNoCancel) Then Exit Sub
|
|
VK.DELETE()
|
|
MyDatagridview1.RELOAD()
|
|
setDGVOptions()
|
|
End If
|
|
|
|
End Sub
|
|
|
|
|
|
Private Sub gridAviso_DoubleClick(sender As Object, e As System.EventArgs) Handles MyDatagridview1.DoubleClick
|
|
|
|
|
|
If MyDatagridview1.SelectedRows.Count = 0 And MyDatagridview1.SelectedRows.Count = 0 Then Exit Sub
|
|
|
|
Dim kdnr = MyDatagridview1.SelectedRows(0).Cells("vk_KdNr").Value
|
|
SDL.FormularManagerNEU.OPEN_FORM(SDL.FormularManagerArten.Importaviso_VK, kdnr, {kdnr, Nothing, Nothing, Nothing, "", MyDatagridview1.SelectedRows(0).Cells("vk_id").Value})
|
|
|
|
End Sub
|
|
|
|
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
|
|
If MyDatagridview1.SelectedRows.Count > 0 Then
|
|
Dim VK As New VERAG_PROG_ALLGEMEIN.cVorauskasse(MyDatagridview1.SelectedRows(0).Cells("vk_id").Value)
|
|
VK.SET_FREIGEGEBEN(True, txtBemerkung.Text)
|
|
cVorauskasseOptions.insertVermerk(MyDatagridview1.SelectedRows(0).Cells("vk_FilialeNr").Value, MyDatagridview1.SelectedRows(0).Cells("vk_AbfertigungsNr").Value, 59,, True, If(VK.vk_VermerkId, -1), If(VK.vk_SendungId, -1),, MyDatagridview1.SelectedRows(0).Cells("vk_id").Value)
|
|
txtBemerkung.Text = ""
|
|
MyDatagridview1.RELOAD()
|
|
setDGVOptions()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub Button8_Click(sender As Object, e As EventArgs) Handles btnVK_VERAG_VR.Click
|
|
Dim f As New frmInfo
|
|
f.Controls.Clear()
|
|
Dim f_EORI As Form
|
|
Dim WebBrowser As New VERAG_PROG_ALLGEMEIN.Kleinma.Controls.WebBrowserEx
|
|
|
|
f.Controls.Add(WebBrowser)
|
|
f.Visible = True
|
|
'f.Visible = false
|
|
'f.WindowState = FormWindowState.Minimized
|
|
f.Show()
|
|
f_EORI = f
|
|
WebBrowser.Dock = DockStyle.Fill
|
|
WebBrowser.Navigate(New Uri("https://www.vr-bank-passau.de/banking-business/entry"))
|
|
f.Size = New Size(1000, 1300)
|
|
f.StartPosition = FormStartPosition.CenterScreen
|
|
f.Top = 0
|
|
WebBrowser.AllowNavigation = True
|
|
Dim doFilling = True
|
|
Dim doFilling2 = False
|
|
WebBrowser.ScriptErrorsSuppressed = True
|
|
Dim cnt = 0
|
|
AddHandler WebBrowser.DocumentCompleted, Sub()
|
|
cnt += 1
|
|
If cnt > 1 Then Exit Sub
|
|
' Print the document now that it is fully loaded.
|
|
If WebBrowser.ReadyState = WebBrowserReadyState.Complete Then
|
|
|
|
Try
|
|
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
|
|
Case "VERAG"
|
|
WebBrowser.Document.GetElementById("txtBenutzerkennung").SetAttribute("value", "260896385")
|
|
WebBrowser.Document.GetElementById("pwdPin").SetAttribute("value", "Frjuverag361224!")
|
|
|
|
WebBrowser.Document.GetElementById("xview-anmelden").InvokeMember("click")
|
|
Case "FRONTOFFICE"
|
|
WebBrowser.Document.GetElementById("txtBenutzerkennung").SetAttribute("value", "261016389")
|
|
WebBrowser.Document.GetElementById("pwdPin").SetAttribute("value", "Frontoffice2020")
|
|
|
|
WebBrowser.Document.GetElementById("xview-anmelden").InvokeMember("click")
|
|
End Select
|
|
|
|
Catch ex As Exception
|
|
|
|
End Try
|
|
End If
|
|
|
|
End Sub
|
|
|
|
End Sub
|
|
|
|
Private Sub frmVorauskasse_Shown(sender As Object, e As EventArgs) Handles Me.Shown
|
|
If FilialenNr IsNot Nothing Or AbfertigungsNr IsNot Nothing Or DatumVon IsNot Nothing Then btnSuche.PerformClick()
|
|
End Sub
|
|
|
|
End Class
|
|
|
|
|
|
Public Class cVorauskasseOptions
|
|
|
|
Shared Sub insertVermerk(FilialenNr, AbfertigungsNr, VermerkCodeId, Optional DatumTmp = Nothing, Optional Freigegeben = False, Optional ByRef VermerkId = -1, Optional tblSnd_SendungID = -1, Optional vk_Betrag = Nothing, Optional VorauskasseId = Nothing, Optional vk_QS_SachbearbeiterId = Nothing)
|
|
Try
|
|
|
|
If vk_Betrag Is Nothing Then vk_Betrag = 0
|
|
If vk_Betrag.ToString = "" Then vk_Betrag = 0
|
|
|
|
|
|
' MsgBox(vk_Betrag)
|
|
|
|
Dim veragSQL As New VERAG_PROG_ALLGEMEIN.SQL
|
|
Dim VermerkeDAL As New VERAG_PROG_ALLGEMEIN.cVermerkeDAL
|
|
' MsgBox("ThenSELECT TOP 1 [tblSnd_SendungID],[tblSnd_AvisoID] FROM [tblSendungen] where AbfertigungsNr='" & AbfertigungsNr & "' and FilialenNr='" & FilialenNr & "'")
|
|
Dim dt As DataTable = Nothing
|
|
|
|
If tblSnd_SendungID > 0 Then
|
|
dt = veragSQL.loadDgvBySql("SELECT TOP 1 [tblSnd_SendungID],[tblSnd_AvisoID] FROM [tblSendungen] where tblSnd_SendungID='" & tblSnd_SendungID & "' ", "AVISO")
|
|
Else
|
|
dt = veragSQL.loadDgvBySql("SELECT TOP 1 [tblSnd_SendungID],[tblSnd_AvisoID] FROM [tblSendungen] where AbfertigungsNr='" & AbfertigungsNr & "' and FilialenNr='" & FilialenNr & "'", "AVISO")
|
|
End If
|
|
|
|
|
|
If dt.Rows.Count = 0 Then Exit Sub
|
|
|
|
If Not IsNumeric(dt.Rows(0)("tblSnd_AvisoID")) Then Exit Sub
|
|
If Not IsNumeric(dt.Rows(0)("tblSnd_SendungID")) Then Exit Sub
|
|
|
|
'Daten zuweisen und speichern
|
|
Dim myVermerk As New VERAG_PROG_ALLGEMEIN.cVermerk
|
|
myVermerk.VermerkID = 0
|
|
myVermerk.AvisoID = dt.Rows(0)("tblSnd_AvisoID")
|
|
myVermerk.SendungID = dt.Rows(0)("tblSnd_SendungID")
|
|
myVermerk.Datum = If(DatumTmp, Now)
|
|
myVermerk.VermerkArt = "S"
|
|
myVermerk.VorauskasseId = VorauskasseId
|
|
|
|
myVermerk.Mitarbeiter = If(If(VERAG_PROG_ALLGEMEIN.cAllgemein.ABW_USRNAME, "") <> "", VERAG_PROG_ALLGEMEIN.cAllgemein.ABW_USRNAME, VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME) & " (AUTO)"
|
|
|
|
|
|
myVermerk.MitarbeiterId = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID
|
|
Dim betragTXT = If(CDbl(vk_Betrag) > 0, " (" & CDbl(vk_Betrag).ToString("C2") & ")", "")
|
|
Dim betragTXT2 = If(CDbl(vk_Betrag) > 0, ": " & CDbl(vk_Betrag).ToString("C2") & "", "")
|
|
Select Case VermerkCodeId
|
|
Case 13 : myVermerk.Hinweis_Vermerk = "Vorauskasse angefordert" & betragTXT
|
|
Case 14 : myVermerk.Hinweis_Vermerk = "Vorauskasse erhalten" : insertBenachrichtigung(myVermerk.Hinweis_Vermerk & betragTXT2, myVermerk.AvisoID, myVermerk.SendungID, vk_QS_SachbearbeiterId)
|
|
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "AMBAR" And (VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME = "ORDU" Or Array.IndexOf(New String() {"VRR", "BH", "GF"}, VERAG_PROG_ALLGEMEIN.cAllgemein.ABTEILUNG) > -1) Then myVermerk.Mitarbeiter = "VERRECHNUNG (AUTO)"
|
|
Case 59 : myVermerk.Hinweis_Vermerk = "Vorauskasse freigegeben" : insertBenachrichtigung(myVermerk.Hinweis_Vermerk & betragTXT2, myVermerk.AvisoID, myVermerk.SendungID, vk_QS_SachbearbeiterId)
|
|
If VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA = "AMBAR" And (VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME = "ORDU" Or Array.IndexOf(New String() {"VRR", "BH", "GF"}, VERAG_PROG_ALLGEMEIN.cAllgemein.ABTEILUNG) > -1) Then myVermerk.Mitarbeiter = "VERRECHNUNG (AUTO)"
|
|
Case Else : Exit Sub
|
|
End Select
|
|
If VermerkCodeId IsNot Nothing Then myVermerk.VermerkCodeId = VermerkCodeId
|
|
|
|
VermerkId = VermerkeDAL.SpeichernVermerk(myVermerk)
|
|
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message & ex.StackTrace)
|
|
End Try
|
|
End Sub
|
|
|
|
Shared Sub delTop1Vermerk(FilialenNr, AbfertigungsNr, VermerkCodeId)
|
|
Try
|
|
Dim veragSQL As New VERAG_PROG_ALLGEMEIN.SQL
|
|
Dim dt As DataTable = veragSQL.loadDgvBySql("Select TOP 1 [tblSnd_SendungID] FROM [tblSendungen] where AbfertigungsNr='" & AbfertigungsNr & "' and FilialenNr='" & FilialenNr & "'", "AVISO")
|
|
|
|
If dt.Rows.Count = 0 Then Exit Sub
|
|
If Not IsNumeric(dt.Rows(0)("tblSnd_SendungID")) Then Exit Sub
|
|
|
|
veragSQL.doSQL("DELETE TOP (1) FROM [Vermerke] where SendungID='" & dt.Rows(0)("tblSnd_SendungID") & "' AND VermerkeCode='" & VermerkCodeId & "' ", "AVISO")
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message & ex.StackTrace)
|
|
End Try
|
|
End Sub
|
|
Shared Sub delAllVKVermerk(FilialenNr, AbfertigungsNr)
|
|
Try
|
|
Dim veragSQL As New VERAG_PROG_ALLGEMEIN.SQL
|
|
Dim dt As DataTable = veragSQL.loadDgvBySql("SELECT TOP 1 [tblSnd_SendungID] FROM [tblSendungen] where AbfertigungsNr='" & AbfertigungsNr & "' and FilialenNr='" & FilialenNr & "'", "AVISO")
|
|
|
|
If dt.Rows.Count = 0 Then Exit Sub
|
|
If Not IsNumeric(dt.Rows(0)("tblSnd_SendungID")) Then Exit Sub
|
|
|
|
veragSQL.doSQL("DELETE FROM [Vermerke] where SendungID='" & dt.Rows(0)("tblSnd_SendungID") & "' AND VermerkeCode IN ('13','14','59') ", "AVISO")
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message & ex.StackTrace)
|
|
End Try
|
|
End Sub
|
|
Shared Sub insertBenachrichtigung(VermerkTxt, AvisoId, SendungID, vk_QS_SachbearbeiterId)
|
|
Try
|
|
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
|
Dim sendToID = -1
|
|
Dim art = "B"
|
|
|
|
'Wenn Benutzer der Vorauskasse nicht online, dann Benutzer der Sendung...
|
|
If vk_QS_SachbearbeiterId IsNot Nothing Then
|
|
sendToID = vk_QS_SachbearbeiterId
|
|
If sendToID <= 0 OrElse (Not VERAG_PROG_ALLGEMEIN.cSession.IS_ONLINE(sendToID, True)) Then
|
|
sendToID = SQL.DLookup("LetzterMitarbeiterId", "Aviso", "AvisoId='" & AvisoId & "'", "AVISO")
|
|
art = "B"
|
|
End If
|
|
End If
|
|
|
|
'Wenn Benutzer der Sendung nicht online, Team...
|
|
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA ' --> Bezieht sich auf BU MA
|
|
' Case "IMEX" ' Bie IMEX kommen die MA durhc verschobene Dienstzeiten oft später
|
|
Case Else
|
|
If sendToID <= 0 OrElse (Not VERAG_PROG_ALLGEMEIN.cSession.IS_ONLINE(sendToID, True)) Then
|
|
sendToID = SQL.DLookup("tblSnd_TeamId", "tblSendungen", "tblSnd_SendungID='" & SendungID & "'", "AVISO")
|
|
art = "T"
|
|
End If
|
|
End Select
|
|
|
|
'Wenn nicht Team, dann Benutzer des LKW ..
|
|
If sendToID <= 0 OrElse (Not VERAG_PROG_ALLGEMEIN.cSession.IS_ONLINE(sendToID, True)) Then
|
|
sendToID = SQL.DLookup("LetzterMitarbeiterId", "Aviso", "AvisoId='" & AvisoId & "'", "AVISO")
|
|
art = "B"
|
|
End If
|
|
|
|
'Wenn gefunden
|
|
If sendToID >= 0 Then
|
|
|
|
Dim status = SQL.DLookup("Status", "Aviso", "AvisoID='" & AvisoId & "'", "AVISO")
|
|
|
|
Select Case status
|
|
'Case VERAG_PROG_ALLGEMEIN.cGlobal.Status_Ankunft, VERAG_PROG_ALLGEMEIN.cGlobal.Status_Vorbereitet, VERAG_PROG_ALLGEMEIN.cGlobal.Status_Vorgeschrieben,,VERAG_PROG_ALLGEMEIN.cGlobal.erfasst Nue
|
|
Case VERAG_PROG_ALLGEMEIN.cGlobal.Status_NichtEingetroffen, VERAG_PROG_ALLGEMEIN.cGlobal.Status_Freigegeben
|
|
'Nicht
|
|
Case Else
|
|
'6 = VK OK
|
|
VERAG_PROG_ALLGEMEIN.cAvisoBenachrichtigungen.INSERT_BENACHRICHTIGUNG(AvisoId, SendungID, 6, art, sendToID, "Eingang Vorauskasse ('" & VERAG_PROG_ALLGEMEIN.cAllgemein.USRNAME & "')", 0, , VermerkTxt)
|
|
End Select
|
|
End If
|
|
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message & ex.StackTrace)
|
|
End Try
|
|
End Sub
|
|
|
|
|
|
|
|
End Class |