Änderung der Logik der Vollmachtsverwaltung im Kunden (nun können pro VM-Typ mehrere Vollmachten hinterlegt werden). Weiters wurde die GUI der Vollmachten überarbeitet

This commit is contained in:
2022-09-19 08:29:11 +02:00
parent 780d763ba4
commit 5d324634de
399 changed files with 259205 additions and 1386 deletions

View File

@@ -2,6 +2,7 @@
Imports System.Globalization
Imports System.IO
Imports SDL.EORI
Imports sun.invoke.empty
Public Class usrCntlKundenuebersicht
'Implements INotifyPropertyChanged
@@ -102,7 +103,7 @@ Public Class usrCntlKundenuebersicht
Private Sub frmKundenUebersichtZOLL_Load(sender As Object, e As EventArgs) Handles Me.Load
Private Sub frmKundenUebersichtZOLL_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Try
Me.BER_STUFE = VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG("KUNDEN", "SDL")
@@ -296,7 +297,7 @@ Public Class usrCntlKundenuebersicht
loaded = True
End Sub
Private Sub pnlAbfVerb_MouseHover(sender As Object, e As EventArgs) Handles lblAbfertigungsverbot.MouseHover, rtbInfo.MouseHover
Private Sub pnlAbfVerb_MouseHover(sender As Object, e As EventArgs) Handles rtbInfo.MouseHover, lblAbfertigungsverbot.MouseHover
Dim p As New UserControl
' rtbInfo.Width = 450
rtbInfo.Height = 300
@@ -304,7 +305,7 @@ Public Class usrCntlKundenuebersicht
rtbInfo.Visible = True
End Sub
Private Sub lblAbfertigungsverbot_MouseLeave(sender As Object, e As EventArgs) Handles lblAbfertigungsverbot.MouseLeave, rtbInfo.MouseLeave
Private Sub lblAbfertigungsverbot_MouseLeave(sender As Object, e As EventArgs) Handles rtbInfo.MouseLeave, lblAbfertigungsverbot.MouseLeave
' rtbInfo.Visible = False
rtbInfo.Height = 26
@@ -773,9 +774,9 @@ Public Class usrCntlKundenuebersicht
where = " AND art.kdvma_Firma='" & VERAG_PROG_ALLGEMEIN.cAllgemein.getFirmaFromFiliale(KUNDE.FilialenNr) & "' "
End If
.DataSource = SQL.loadDgvBySql("SELECT abf.kdvm_Id,art.kdvma_Id, art.kdvma_Bezeichnung, abf.[kdvm_KundenNr], abf.[kdvm_erhalten],abf.[kdvm_erhalten_Datum], abf.kdvm_datenarchivId,abf.kdvm_Info " &
" FROM [tblKundenVollmachtenArt] as art LEFT JOIN (select * from [tblKundenVollmachten] where [kdvm_KundenNr]='" & kdNr & "' ) as abf on art.[kdvma_Id]=abf.[kdvm_kdvmaId] WHERE art.kdvma_visible=1 " & where &
" ORDER BY art.kdvma_id", "FMZOLL")
.DataSource = SQL.loadDgvBySql("SELECT * FROM (SELECT abf.kdvm_Id, art.kdvma_Id, art.kdvma_Bezeichnung, abf.[kdvm_KundenNr], abf.[kdvm_erhalten],abf.[kdvm_erhalten_Datum], abf.[kdvm_gueltig_bis], abf.kdvm_datenarchivId, abf.kdvm_Info, abf.[kdvm_vermerk], abf.[kdvm_archiviert],ROW_NUMBER() OVER(PARTITION BY art.kdvma_Id ORDER BY kdvm_archiviert asc, abf.kdvm_gueltig_bis asc, abf.kdvm_erhalten_Datum desc) RowNumber" &
" FROM [tblKundenVollmachtenArt] as art LEFT JOIN (select * from [tblKundenVollmachten] where [kdvm_KundenNr]='" & kdNr & "' ) as abf on art.[kdvma_Id]=abf.[kdvm_kdvmaId] WHERE art.kdvma_visible=1 AND abf.kdvm_erhalten = 1 AND ISNULL(abf.[kdvm_geloescht],0) != 1 " & where &
" ) A WHERE RowNumber = 1", "FMZOLL")
' .RowTemplate.Height = 30
@@ -785,17 +786,47 @@ Public Class usrCntlKundenuebersicht
.Columns("kdvm_datenarchivId").Visible = False
.Columns("kdvma_Bezeichnung").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
.Columns("kdvma_Bezeichnung").HeaderText = "Bezeichnung"
.Columns("kdvm_erhalten").Width = 45
.Columns("kdvm_erhalten").Visible = False
.Columns("kdvm_erhalten").Width = 50
.Columns("kdvm_erhalten").HeaderText = "Erhalten"
.Columns("kdvm_erhalten").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
.Columns("kdvm_erhalten_Datum").Width = 100
.Columns("kdvm_erhalten_Datum").HeaderText = "Erhalten am"
.Columns("kdvm_erhalten_Datum").Width = 80
.Columns("kdvm_erhalten_Datum").HeaderText = "Gültig von"
.Columns("kdvm_erhalten_Datum").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
.Columns("kdvm_gueltig_bis").Width = 80
.Columns("kdvm_gueltig_bis").HeaderText = "Gültig bis"
.Columns("kdvm_gueltig_bis").DefaultCellStyle.Alignment = DataGridViewContentAlignment.TopCenter
.Columns("kdvm_Info").Width = 200
.Columns("kdvm_Info").HeaderText = "Info"
.Columns("kdvm_Info").Visible = False
.Columns("kdvm_vermerk").Width = 10
.Columns("kdvm_vermerk").HeaderText = "Vermerk"
.Columns("kdvm_vermerk").Visible = False
.Columns("kdvm_archiviert").Visible = False
.Columns("RowNumber").Visible = False
If True Then
Dim c As New DataGridViewImageColumn
c.Name = "clmnVermerk" : c.HeaderText = ""
c.DefaultCellStyle.NullValue = Nothing
c.ImageLayout = DataGridViewImageCellLayout.Zoom
c.Width = 40 : c.DefaultCellStyle.Padding = New Padding(2) : c.DefaultCellStyle.BackColor = Color.White
c.DefaultCellStyle.Tag = "" '.Columns("kdvm_vermerk")
.Columns.Add(c)
For Each r As DataGridViewRow In .Rows
If r.Cells("kdvm_vermerk").Value IsNot DBNull.Value AndAlso r.Cells("kdvm_vermerk").Value IsNot "" Then
DirectCast(r.Cells("clmnVermerk"), DataGridViewImageCell).Value = My.Resources.warning2
DirectCast(r.Cells("clmnVermerk"), DataGridViewImageCell).ToolTipText = r.Cells("kdvm_vermerk").Value.ToString
End If
Next
End If
If True Then
Dim c As New DataGridViewImageColumn
@@ -832,12 +863,15 @@ Public Class usrCntlKundenuebersicht
Select Case VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Case "UNISPED", "IMEX"
.Columns("clmnVermerk").Visible = True
.Columns("clmnTherefore").Visible = False
.Columns("clmnPDF").Visible = True
Case "FRONTOFFICE"
.Columns("clmnVermerk").Visible = True
.Columns("clmnTherefore").Visible = True
.Columns("clmnPDF").Visible = True
Case Else
.Columns("clmnVermerk").Visible = True
.Columns("clmnTherefore").Visible = True
.Columns("clmnPDF").Visible = True
End Select
@@ -860,6 +894,8 @@ Public Class usrCntlKundenuebersicht
End Sub
Sub initDGVGestGarantie()
With dgvGestGarantie
.Columns.Clear()
@@ -1527,12 +1563,16 @@ Public Class usrCntlKundenuebersicht
If tmprowindex < 0 Then Exit Sub
Dim frmGrayOut = cProgramFunctions.grayoutForm(Me)
Dim datum = IIf(dgvVollmachten.Rows(tmprowindex).Cells("kdvm_erhalten_Datum").Value Is DBNull.Value, Now, dgvVollmachten.Rows(tmprowindex).Cells("kdvm_erhalten_Datum").Value)
Dim l As New frmKundenZOLLVollmachten(kdNr, dgvVollmachten.Rows(tmprowindex).Cells("kdvma_Id").Value, dgvVollmachten.Rows(tmprowindex).Cells("kdvm_erhalten").Value, datum, dgvVollmachten.Rows(tmprowindex).Cells("kdvm_datenarchivId").Value)
'Dim datum = IIf(dgvVollmachten.Rows(tmprowindex).Cells("kdvm_erhalten_Datum").Value Is DBNull.Value, Now, dgvVollmachten.Rows(tmprowindex).Cells("kdvm_erhalten_Datum").Value)
'Dim gueltigBis = IIf(dgvVollmachten.Rows(tmprowindex).Cells("kdvm_gueltig_bis").Value Is DBNull.Value, Nothing, dgvVollmachten.Rows(tmprowindex).Cells("kdvm_gueltig_bis").Value)
'Dim l As New frmKundenZOLLVollmachten(kdNr, dgvVollmachten.Rows(tmprowindex).Cells("kdvma_Id").Value, dgvVollmachten.Rows(tmprowindex).Cells("kdvma_Id").Value, dgvVollmachten.Rows(tmprowindex).Cells("kdvm_erhalten").Value, dgvVollmachten.Rows(tmprowindex).Cells("kdvm_archiviert").Value, dgvVollmachten.Rows(tmprowindex).Cells("kdvm_erhalten_Datum").Value, dgvVollmachten.Rows(tmprowindex).Cells("kdvm_gueltig_bis").Value, dgvVollmachten.Rows(tmprowindex).Cells("kdvm_vermerk").Value, dgvVollmachten.Rows(tmprowindex).Cells("kdvm_datenarchivId").Value)
Dim l As New frmKundenZOLLVollmachten(kdNr, dgvVollmachten.Rows(tmprowindex).Cells("kdvma_Id").Value)
If l.ShowDialog(frmGrayOut) = DialogResult.OK Then
initDGVVollmachten()
l.initDGVVollmachtenEmbedded(False)
'initDGVVollmachten()
End If
frmGrayOut.Close()
initDGVVollmachten()
End If
End If
@@ -1559,7 +1599,7 @@ Public Class usrCntlKundenuebersicht
Private Sub dgvUmsatzbericht_SelectionChanged(sender As Object, e As EventArgs) Handles dgvVollmachten.SelectionChanged, dgvOffenePosten.SelectionChanged, dgvUmsatzbericht.SelectionChanged, dgvOfferteDetailsUebersicht.SelectionChanged ', dgvOffertenSperrliste.SelectionChanged
Private Sub dgvUmsatzbericht_SelectionChanged(sender As Object, e As EventArgs) Handles dgvVollmachten.SelectionChanged, dgvUmsatzbericht.SelectionChanged, dgvOfferteDetailsUebersicht.SelectionChanged, dgvOffenePosten.SelectionChanged ', dgvOffertenSperrliste.SelectionChanged
sender.ClearSelection()
End Sub
@@ -2310,33 +2350,8 @@ Public Class usrCntlKundenuebersicht
Me.Cursor = Cursors.Default
End Sub
Private Sub Button11_Click(sender As Object, e As EventArgs) Handles Button11.Click
If cboVertrag._value <> "" And datVertrag._value <> "" Then
Dim KV As New VERAG_PROG_ALLGEMEIN.cKundenVertraege
If Button12.Visible Then
If dgvVertraege.SelectedRows.Count = 1 Then
KV = New VERAG_PROG_ALLGEMEIN.cKundenVertraege(dgvVertraege.SelectedRows(0).Cells("kv_id").Value)
Else
Exit Sub
End If
End If
KV.kv_KundenNr = kdNr
KV.kv_erhalten_Datum = datVertrag._value
'KV.kv_Zollamt = If(cbxKV.Checked, "GENERELL", txtT1VerzollungsadresseBestimmungszollstelle._value)
Private Sub Button11_Click(sender As Object, e As EventArgs)
'If Not Button9.Visible AndAlso VERAG_PROG_ALLGEMEIN.cKundenVertraege.ENTRY_Exists(kdNr, KV.kv_Zollamt) Then
' MsgBox("Der Eintrag existiert bereits!")
' Exit Sub
'End If
KV.kv_vertragArtId = cboVertrag._value
KV.kv_Info = txtVertragVermerk.Text
If KV.SAVE Then
setKD(kdNr)
End If
clearKV()
End If
End Sub
Private Sub Button12_Click(sender As Object, e As EventArgs) Handles Button12.Click
@@ -2389,7 +2404,7 @@ Public Class usrCntlKundenuebersicht
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("Kundendaten_bearbeiten", "SDL") Then
Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "KD_VERTRÄGE", "", "", "", "KV_" & dgvVertraege.SelectedRows(0).Cells("kv_id").Value, kdNr)
Dim frmScan As New VERAG_PROG_ALLGEMEIN.frmScan("DirectScan")
frmScan.DefaultFileName = DS.da_name
frmScan.DefaultFileName = DS.da_name
If frmScan.ShowDialog(Me) = DialogResult.OK Then
If frmScan.ReturnValue IsNot Nothing Then
@@ -2408,7 +2423,7 @@ Public Class usrCntlKundenuebersicht
End If
End Sub
Private Sub ToolStripMenuItem7_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem7.Click
Private Sub ToolStripMenuItem7_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItem7.Click, Button11.Click
If dgvVertraege.SelectedRows.Count = 1 Then
If VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("Kundendaten_bearbeiten", "SDL") Then
If vbYes = MsgBox("Möchten Sie das PDF wirklich löschen?", vbYesNoCancel) Then
@@ -2456,7 +2471,7 @@ Public Class usrCntlKundenuebersicht
Process.Start(PdfTmp)
End If
End Sub
End Sub
frmList.Show(Me)
End If
Case "EORI"
@@ -2502,7 +2517,7 @@ Public Class usrCntlKundenuebersicht
For Each W In FileList
If Not W.ToUpper.EndsWith(".EXE") Then
Dim datum = IIf(dgvVollmachten.Rows(tmprowindex).Cells("kdvm_erhalten_Datum").Value Is DBNull.Value, Now, dgvVollmachten.Rows(tmprowindex).Cells("kdvm_erhalten_Datum").Value)
Dim l As New frmKundenZOLLVollmachten(kdNr, W)
Dim l As New frmKundenZOLLVollmachten(kdNr, -1, W)
If l.ShowDialog(frmGrayOut) = DialogResult.OK Then
initDGVVollmachten()
End If
@@ -2526,4 +2541,42 @@ Public Class usrCntlKundenuebersicht
Private Sub Panel5_Paint(sender As Object, e As PaintEventArgs) Handles Panel5.Paint
End Sub
Private Sub Button15_Click_1(sender As Object, e As EventArgs) Handles btnVMhinzufuegen.Click
Dim where = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
Dim dt = SQL.loadDgvBySql("SELECT [kdvma_Id], [kdvma_Bezeichnung] FROM [tblKundenVollmachtenArt] where [kdvma_visible] = 1 AND [kdvma_Firma]='" & where & "'", "FMZOLL")
cntxtAddVM.Items.Clear()
For Each dr As DataRow In dt.Rows
Dim i As New ToolStripMenuItem
i.Text = dr.Item(1).ToString
i.Name = "kdvma_id_" & dr.Item(0).ToString
cntxtAddVM.Items.Add(i)
AddHandler i.Click, AddressOf DToolStripMenuItem_Click
Next
btnVMhinzufuegen.ContextMenuStrip = cntxtAddVM
Dim ptLowerLeft As New Point(sender.width, sender.Height)
ptLowerLeft = sender.PointToScreen(ptLowerLeft)
ptLowerLeft.X -= sender.width
cntxtAddVM.Show(ptLowerLeft)
End Sub
Private Sub DToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DToolStripMenuItem.Click
If sender.name.contains("kdvma_id_") Then
Dim vmaText As String = sender.name.ToString.Replace("kdvma_id_", "")
Dim vmaNr As Integer = Convert.ToInt32(vmaText)
Dim l As New frmKundenZOLLVollmachten(kdNr, vmaNr)
If l.ShowDialog(frmGrayOut) = DialogResult.OK Then
End If
initDGVVollmachten()
End If
End Sub
Private Sub dgvVertraege_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvVertraege.CellContentClick
End Sub
End Class