1420 lines
63 KiB
VB.net
1420 lines
63 KiB
VB.net
|
|
Imports System.DirectoryServices
|
|
Imports System.Globalization
|
|
Imports System.IO
|
|
Imports System.Net
|
|
Imports System.Net.Http
|
|
Imports System.Net.WebRequestMethods
|
|
Imports System.Security.Policy
|
|
Imports System.Text
|
|
Imports System.Text.RegularExpressions
|
|
Imports System.Windows
|
|
Imports System.Windows.Forms.VisualStyles.VisualStyleElement.StartPanel
|
|
Imports DAKOSY_Worker.DEERRE
|
|
Imports GrapeCity.ActiveReports.ReportsCore.Tools
|
|
Imports itextsharp.text.pdf.codec.wmf
|
|
Imports Microsoft.VisualBasic.ApplicationServices
|
|
Imports Newtonsoft.Json
|
|
Imports VERAG_PROG_ALLGEMEIN
|
|
|
|
Public Class frmMitarbDetails
|
|
|
|
Private UID As New cMitarbeiter
|
|
Private berechtigungen As New List(Of cBerechtigungen)
|
|
Public mid As Integer = -1
|
|
Public isUpdate As Boolean = False
|
|
Public mitarbeiter As New VERAG_PROG_ALLGEMEIN.cMitarbeiter
|
|
Private usrBerechtigung As New List(Of cUserBerechtigungen)
|
|
Private usrBerechtigungNEU As New List(Of cUserBerechtigungen)
|
|
Dim ZOLLDATENBEARB = False
|
|
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
|
Dim FirmaTmp = ""
|
|
Dim timas As cTimasAPI
|
|
Dim dtTimas As New DataTable
|
|
|
|
Sub New()
|
|
|
|
' Dieser Aufruf ist für den Designer erforderlich.
|
|
InitializeComponent()
|
|
|
|
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
|
|
|
|
End Sub
|
|
|
|
Sub New(Firma)
|
|
|
|
' Dieser Aufruf ist für den Designer erforderlich.
|
|
InitializeComponent()
|
|
Me.FirmaTmp = Firma
|
|
btnADladen.Visible = True
|
|
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
|
|
|
|
End Sub
|
|
|
|
Sub New(mitarbeiter As cMitarbeiter)
|
|
|
|
' Dieser Aufruf ist für den Designer erforderlich.
|
|
InitializeComponent()
|
|
|
|
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
|
|
|
|
End Sub
|
|
|
|
Private Sub frmMitarbDetails_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
|
|
|
cboFirmaFMZOLL.fillWithSQL("SELECT[Firma_ID],[Firma_Bez] FROM [tblFirma] ", True, "FMZOLL", True)
|
|
' cboKasse.fillWithSQL("SELECT [Standard_RKSV_KasseId],[Name] FROM [Personal] ", True, "FMZOLL", True)
|
|
cboKasse.fillWithSQL("SELECT [rksv_id],[rksv_bez] FROM [tblRKSV_Kassen] ", True, "FMZOLL", True)
|
|
|
|
cboPersonal.fillWithSQL("SELECT ID, Name FROM Personal WHERE [Status]<>'L' ORDER BY Name ", False, "FMZOLL", True)
|
|
cboSpedbuch.fillWithSQL("SELECT ID, Name FROM Personal WHERE [Status]<>'L' ORDER BY Name ", False, "FMZOLL", True)
|
|
|
|
MyComboBox2.fillWithSQL("SELECT FilialenNr, cast(FilialenNr as varchar(4)) + ' ' + Grenzstelle FROM Filialen WHERE Fil_Status='A' ORDER BY FilialenNr ", False, "FMZOLL", True)
|
|
MyComboBox3.fillWithSQL("SELECT [PreislistenNr],[PreislistenBez] FROM [tblPreislisten] ORDER BY PreislistenBez", False, "FMZOLL", True)
|
|
|
|
cboDP.fillWithSQL("SELECT [dpset_niederlassung] FROM [tblDienstSettings] ORDER BY dpset_niederlassung", False, "ADMIN", True)
|
|
|
|
|
|
|
|
MyListBox1.fillWithSQL("SELECT [Firma_ID],[Firma_Bez] FROM [VERAG].[dbo].[tblFirma]", False, "FMZOLL")
|
|
MyListBox1.Items.Insert(0, New VERAG_PROG_ALLGEMEIN.MyListItem("Alle", "A"))
|
|
|
|
|
|
lbSprachen.fillWithSQL("SELECT [wert], [bezeichnung] FROM [dbo].[tblSprachen]", False, "ADMIN")
|
|
|
|
cboDPFirma.Items.Clear()
|
|
cboDPFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
|
|
cboDPFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("ALLE", "ALLE"))
|
|
cboDPFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG", "VERAG"))
|
|
cboDPFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("ATILLA", "ATILLA"))
|
|
cboDPFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("IMEX", "IMEX"))
|
|
cboDPFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("UNISPED", "UNISPED"))
|
|
cboDPFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AMBAR", "AMBAR"))
|
|
cboDPFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("FRONTOFFICE", "FRONTOFFICE"))
|
|
cboDPFirma.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERIMEX", "VERIMEX"))
|
|
cboDPFirma2.Items.Clear()
|
|
cboDPFirma2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
|
|
cboDPFirma2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("ALLE", "ALLE"))
|
|
cboDPFirma2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG", "VERAG"))
|
|
cboDPFirma2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("ATILLA", "ATILLA"))
|
|
cboDPFirma2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("IMEX", "IMEX"))
|
|
cboDPFirma2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("UNISPED", "UNISPED"))
|
|
cboDPFirma2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("AMBAR", "AMBAR"))
|
|
cboDPFirma2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("FRONTOFFICE", "FRONTOFFICE"))
|
|
cboDPFirma2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERIMEX", "VERIMEX"))
|
|
|
|
|
|
cboALIASDomain.Items.Clear()
|
|
cboALIASDomain.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
|
|
cboALIASDomain.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAGOST", "VERAGOST"))
|
|
cboALIASDomain.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("IMEX", "IMEX"))
|
|
cboALIASDomain.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG-SBG", "VERAG-SBG"))
|
|
cboALIASDomain.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAGNEUHAUS", "VERAGNEUHAUS"))
|
|
cboALIASDomain.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG-NCTS (ATILLA)", "VERAG-NCTS"))
|
|
cboALIASDomain.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("UNISPED", "UNISU.AT"))
|
|
|
|
cboALIASDomain2.Items.Clear()
|
|
cboALIASDomain2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
|
|
cboALIASDomain2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAGOST", "VERAGOST"))
|
|
cboALIASDomain2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("IMEX", "IMEX"))
|
|
cboALIASDomain2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG-SBG", "VERAG-SBG"))
|
|
cboALIASDomain2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAGNEUHAUS", "VERAGNEUHAUS"))
|
|
cboALIASDomain2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("VERAG-NCTS (ATILLA)", "VERAG-NCTS"))
|
|
cboALIASDomain2.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("UNISPED", "UNISU.AT"))
|
|
|
|
cboProgSprache.Items.Clear()
|
|
cboProgSprache.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("DEUTSCH", "DE"))
|
|
cboProgSprache.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("TÜRKISCH", "TR"))
|
|
cboProgSprache.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("ENGLISCH", "EN"))
|
|
|
|
|
|
cboFirma.Items.Clear()
|
|
cboFirma.Items.Add("VERAG")
|
|
cboFirma.Items.Add("ATILLA")
|
|
cboFirma.Items.Add("IMEX")
|
|
cboFirma.Items.Add("UNISPED")
|
|
cboFirma.Items.Add("AMBAR")
|
|
cboFirma.Items.Add("FRONTOFFICE")
|
|
cboFirma.Items.Add("VERIMEX")
|
|
cboFirma.Items.Add("ALLE")
|
|
|
|
|
|
cboFirmaHaupt.Items.Clear()
|
|
cboFirmaHaupt.Items.Add("VERAG")
|
|
cboFirmaHaupt.Items.Add("ATILLA")
|
|
cboFirmaHaupt.Items.Add("IMEX")
|
|
cboFirmaHaupt.Items.Add("UNISPED")
|
|
cboFirmaHaupt.Items.Add("AMBAR")
|
|
cboFirmaHaupt.Items.Add("FRONTOFFICE")
|
|
cboFirmaHaupt.Items.Add("VERIMEX")
|
|
|
|
|
|
cboFaktGrp.Items.Clear()
|
|
cboFaktGrp.fillWithSQL("SELECT [Code],[Bezeichnung] FROM tblFakturierungsgruppe", False, "ADMIN", False)
|
|
cboFaktGrp.changeItem("")
|
|
|
|
|
|
ZOLLDATENBEARB = False
|
|
|
|
txtPwd.Visible = False
|
|
berechtigungen = UID.getBerechtigungen()
|
|
cbxEinsteigsDat.Checked = False
|
|
cbxGebDat.Checked = False
|
|
If Not IsNothing(berechtigungen) Then
|
|
For Each d As cBerechtigungen In berechtigungen
|
|
If d.prog_codename = "ADMIN" Then cboAdminBer.Items.Add(d.ber_name)
|
|
If d.prog_codename = "DISPO" Then cboDispoBer.Items.Add(d.ber_name)
|
|
If d.prog_codename = "UID" Then cboUidBer.Items.Add(d.ber_name)
|
|
If d.prog_codename = "PARKZEIT" Then cboParkzeitBer.Items.Add(d.ber_name)
|
|
If d.prog_codename = "ZOLL" Then cboZollBer.Items.Add(d.ber_name)
|
|
If d.prog_codename = "SDL" Then cboSdlBer.Items.Add(d.ber_name)
|
|
If d.prog_codename = "AVISO" Then cboAvisoBer.Items.Add(d.ber_name)
|
|
Next
|
|
cboAdminBer.SelectedIndex = 0
|
|
End If
|
|
' cboNiederlassung.SelectedIndex = 0
|
|
|
|
If FirmaTmp <> "" Then
|
|
cboFirma.Text = FirmaTmp
|
|
End If
|
|
|
|
cboAbteilung.Items.Clear()
|
|
cboAbteilung.fillWithSQL("SELECT [abt_kuerzel],[abt_bezeichnung] FROM tblAbteilungen", False, "ADMIN", True)
|
|
cboNiederlassung.Items.Clear()
|
|
cboNiederlassung.fillWithSQL("SELECT [nl_kuerzel],[nl_bezeichnung] FROM tblNiederlassungen", False, "ADMIN", True)
|
|
|
|
|
|
'cboAbteilung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
|
|
'cboAbteilung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Zollabteilung", "ZOLL"))
|
|
'cboAbteilung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("quick-stop", "QS"))
|
|
'cboAbteilung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Buchhaltung", "BH"))
|
|
'cboAbteilung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("EDV", "EDV"))
|
|
'cboAbteilung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Fiskal", "FISK"))
|
|
'cboAbteilung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Geschäftsführung", "GF"))
|
|
'cboAbteilung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Lager", "LAGER"))
|
|
' cboAbteilung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("MDM", "MDM"))
|
|
'cboAbteilung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Verrechnung", "VRR"))
|
|
|
|
|
|
|
|
' cboNiederlassung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("", ""))
|
|
' cboNiederlassung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Suben", "SUB"))
|
|
' cboNiederlassung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Salzburg", "SBG"))
|
|
' cboNiederlassung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Waidhaus", "WAI"))
|
|
' cboNiederlassung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Nickelsdorf", "NKD"))
|
|
|
|
|
|
txtGebDat.Format = DateTimePickerFormat.Custom
|
|
txtGebDat.CustomFormat = "dd.MM.yyyy"
|
|
datGekuendigtAm.Format = DateTimePickerFormat.Custom
|
|
datGekuendigtAm.CustomFormat = "dd.MM.yyyy"
|
|
datEinstiegsdatum.Format = DateTimePickerFormat.Custom
|
|
datEinstiegsdatum.CustomFormat = "dd.MM.yyyy"
|
|
If mid >= 0 Then
|
|
'mid = frmMitarbeiter.mid
|
|
mitarbeiter = UID.getMitarbeiterById(mid)
|
|
usrBerechtigung = UID.getUserBerechtigungen(mid)
|
|
' usrBerechtigungNEU = UID.getUserBerechtigungenNEU(mid)
|
|
|
|
If Not IsNothing(mitarbeiter) Then
|
|
initMitarbeiter()
|
|
Else
|
|
MsgBox("Fehler beim Laden der Daten!")
|
|
End If
|
|
Else
|
|
rbtnGeschlechtM.Checked = True
|
|
' btnSave.Visible = False
|
|
TabControl2.TabPages.Remove(TabPage3)
|
|
txtPwd.Text = "0000"
|
|
End If
|
|
|
|
If False Then
|
|
|
|
For Each ber As cUserBerechtigungen In usrBerechtigungNEU
|
|
If ber.bepr_programm = "ADMIN" Then cbxADMIN.Checked = True ': cboAdminBer.Text = ber.ber_name
|
|
If ber.bepr_programm = "SDL" Then cbxSDL.Checked = True ': cboSdlBer.Text = ber.ber_name
|
|
If ber.bepr_programm = "AVISO" Then cbxAVISO.Checked = True ': cboAvisoBer.Text = ber.ber_name
|
|
Next
|
|
|
|
End If
|
|
|
|
For Each ber As cUserBerechtigungen In usrBerechtigung
|
|
|
|
If ber.bepr_programm = "ADMIN" Then cbxADMIN.Checked = True : cboAdminBer.Text = ber.ber_name
|
|
If ber.bepr_programm = "DISPO" Then cbxDISPO.Checked = True : cboDispoBer.Text = ber.ber_name
|
|
If ber.bepr_programm = "UID" Then cbxUID.Checked = True : cboUidBer.Text = ber.ber_name
|
|
If ber.bepr_programm = "PARKZEIT" Then cbxPARKZEIT.Checked = True : cboParkzeitBer.Text = ber.ber_name
|
|
If ber.bepr_programm = "ZOLL" Then cbxZOLL.Checked = True : cboZollBer.Text = ber.ber_name
|
|
If ber.bepr_programm = "SDL" Then cbxSDL.Checked = True : cboSdlBer.Text = ber.ber_name
|
|
If ber.bepr_programm = "AVISO" Then cbxAVISO.Checked = True : cboAvisoBer.Text = ber.ber_name
|
|
Next
|
|
|
|
End Sub
|
|
Private Sub initMitarbeiter(Optional _isUpdate As Boolean = True)
|
|
isUpdate = _isUpdate
|
|
'isUpdate = True
|
|
' mit_id.Text = mitarbeiter.mit_id
|
|
Label48.Text = mitarbeiter.mit_id
|
|
txtUsername.Text = mitarbeiter.mit_username
|
|
txtAbweichenderAnzeigename.Text = mitarbeiter.mit_abweichenderAnzeigename
|
|
txtPwd.Text = mitarbeiter.mit_pwd
|
|
If mitarbeiter.mit_geschlecht = "m" Then rbtnGeschlechtM.Checked = True
|
|
If mitarbeiter.mit_geschlecht = "w" Then rbtnGeschlechtW.Checked = True
|
|
txtTitel.Text = mitarbeiter.mit_affix
|
|
txtVname.Text = mitarbeiter.mit_vname
|
|
txtNname.Text = mitarbeiter.mit_nname
|
|
If mitarbeiter.mit_gebdat = "" Then
|
|
cbxGebDat.Checked = False
|
|
Else
|
|
cbxGebDat.Checked = True : txtGebDat.Text = mitarbeiter.mit_gebdat
|
|
End If
|
|
txtStrasse.Text = mitarbeiter.mit_strasse
|
|
txtHausnummer.Text = mitarbeiter.mit_hausnr
|
|
txtLand.Text = mitarbeiter.mit_land
|
|
txtPlz.Text = mitarbeiter.mit_plz
|
|
txtOrt.Text = mitarbeiter.mit_ort
|
|
cboNiederlassung.changeItem(mitarbeiter.mit_niederlassung)
|
|
cboFaktGrp.changeItem(mitarbeiter.mit_fakturierungsgruppe)
|
|
cboAbteilung.changeItem(mitarbeiter.mit_abteilung)
|
|
cboPosition.Text = mitarbeiter.mit_position
|
|
txtDurchwahl.Text = mitarbeiter.mit_durchwahl
|
|
txtTelNr.Text = mitarbeiter.mit_telefonnr
|
|
txtEmail.Text = mitarbeiter.mit_email
|
|
txtMobiltel.Text = mitarbeiter.mit_mobiltel
|
|
cbxAnrufen.Checked = mitarbeiter.mit_allowAnruf
|
|
txtInfo.Text = mitarbeiter.mit_info
|
|
txtATGRNAccessCode_AT51FP7.Text = mitarbeiter.mit_ATGRNAccessCode_AT51FP7
|
|
txtATGRNAccessCode_AT52VA6.Text = mitarbeiter.mit_ATGRNAccessCode_AT52VA6
|
|
txtDakosySB.Text = mitarbeiter.mit_DAKOSY_SB
|
|
txtDyFullName.Text = If(mitarbeiter.mit_DAKOSY_SBFull, "")
|
|
txtTelotecSB.Text = mitarbeiter.mit_TELOTEC_SB
|
|
txtCSUser.Text = mitarbeiter.mit_CSuser
|
|
txtCSPW.Text = mitarbeiter.mit_CSpwd
|
|
txtLohnNr.Text = mitarbeiter.mit_PersonalNr
|
|
txtTelNr.Text = mitarbeiter.mit_telefonnr
|
|
txtprivateEMail.Text = mitarbeiter.mit_emailprivat
|
|
|
|
cboALIASDomain.changeItem(mitarbeiter.mit_AliasAD_Domain)
|
|
txtALIASUser.Text = mitarbeiter.mit_AliasAD_Username
|
|
|
|
cboALIASDomain2.changeItem(mitarbeiter.mit_AliasAD_Domain2)
|
|
txtALIASUser2.Text = mitarbeiter.mit_AliasAD_Username2
|
|
|
|
|
|
If mitarbeiter.mit_firma = "ALL" Then
|
|
cboFirma.Text = "ALLE"
|
|
cboFirmaHaupt.Text = mitarbeiter.mit_FirmaHaupt
|
|
Else
|
|
cboFirma.Text = mitarbeiter.mit_firma
|
|
End If
|
|
|
|
cbxChatBenutzer.Checked = mitarbeiter.mit_ChatBenutzer
|
|
cboFirmaFMZOLL.changeItem(If(mitarbeiter.mit_firmaFMZoll, ""))
|
|
|
|
cboTeam.changeItem(If(mitarbeiter.mit_teamId, ""))
|
|
|
|
cbxHO.Checked = mitarbeiter.mit_homeoffice
|
|
cbxTimasNichtStempeln1.Checked = mitarbeiter.mit_timasNichtStempeln
|
|
|
|
|
|
|
|
cboKasse.changeItem("")
|
|
If mitarbeiter.mit_FMZollPersID IsNot Nothing Then
|
|
cboKasse.changeItem(SQL.getValueTxtBySql("SELECT [Standard_RKSV_KasseId] FROM [Personal] WHERE ID='" & mitarbeiter.mit_FMZollPersID & "'", "FMZOLL"))
|
|
End If
|
|
|
|
|
|
If mitarbeiter.mit_FirmenDatenAnzeige IsNot Nothing AndAlso mitarbeiter.mit_FirmenDatenAnzeige <> "" Then
|
|
For Each f In mitarbeiter.mit_FirmenDatenAnzeige.ToString.Split(",")
|
|
'Dim i = 0
|
|
For i = 0 To MyListBox1.Items.Count - 1
|
|
' If DirectCast(i, VERAG_PROG_ALLGEMEIN.MyListItem).Value = f Then
|
|
' MsgBox(MyListBox1.Items.IndexOf(i))
|
|
'End If
|
|
If DirectCast(MyListBox1.Items(i), VERAG_PROG_ALLGEMEIN.MyListItem).Value.ToString = f.ToString Then
|
|
MyListBox1.SetSelected(i, True)
|
|
End If
|
|
Next
|
|
Next
|
|
End If
|
|
|
|
If mitarbeiter.mit_Sprachkentnisse IsNot Nothing AndAlso mitarbeiter.mit_Sprachkentnisse <> "" Then
|
|
For Each f In mitarbeiter.mit_Sprachkentnisse.ToString.Split(",")
|
|
For i = 0 To lbSprachen.Items.Count - 1
|
|
If DirectCast(lbSprachen.Items(i), VERAG_PROG_ALLGEMEIN.MyListItem).Value.ToString = f.ToString Then
|
|
lbSprachen.SetSelected(i, True)
|
|
End If
|
|
Next
|
|
Next
|
|
End If
|
|
|
|
|
|
If mitarbeiter.mit_einstiegsdatum = "" Then
|
|
cbxEinsteigsDat.Checked = False
|
|
Else
|
|
cbxEinsteigsDat.Checked = True : datEinstiegsdatum.Text = mitarbeiter.mit_einstiegsdatum
|
|
End If
|
|
|
|
|
|
If mitarbeiter.mit_gekuendigt Then
|
|
cbxGekuendigt.Checked = True
|
|
If mitarbeiter.mit_kuendigungsdatum <> "" Then
|
|
datGekuendigtAm.Text = mitarbeiter.mit_kuendigungsdatum
|
|
End If
|
|
Else
|
|
cbxGekuendigt.Checked = False
|
|
End If
|
|
|
|
If mitarbeiter.mit_FMZollPersID > 0 Then
|
|
cboPersonal._value = mitarbeiter.mit_FMZollPersID
|
|
End If
|
|
|
|
If mitarbeiter.mit_DpUserStandardDP IsNot Nothing Then cboDP.changeItem(mitarbeiter.mit_DpUserStandardDP)
|
|
If mitarbeiter.mit_DpUserStandardFirma IsNot Nothing Then cboDPFirma.changeItem(mitarbeiter.mit_DpUserStandardFirma)
|
|
If mitarbeiter.mit_DpUserStandardFirma2 IsNot Nothing Then cboDPFirma2.changeItem(mitarbeiter.mit_DpUserStandardFirma2)
|
|
|
|
If mitarbeiter.mit_sprache IsNot Nothing Then cboProgSprache.changeItem(mitarbeiter.mit_sprache)
|
|
|
|
cbxSpedBuch.Checked = mitarbeiter.mit_FMZollPersIDKasseIsnotSpedBuch
|
|
|
|
If mitarbeiter.mit_FMZollPersIDSpedBuch > 0 Then
|
|
cboSpedbuch._value = mitarbeiter.mit_FMZollPersIDSpedBuch
|
|
End If
|
|
|
|
If mitarbeiter.mit_standartFiliale > 0 Then
|
|
MyComboBox2._value = mitarbeiter.mit_standartFiliale
|
|
End If
|
|
|
|
If mitarbeiter.mit_standardPreisliste > 0 Then
|
|
MyComboBox3._value = mitarbeiter.mit_standardPreisliste
|
|
End If
|
|
|
|
cbxTestaccount.Checked = If(mitarbeiter.mit_TESTonly, False)
|
|
|
|
initFoto()
|
|
' picFoto.ImageLocation = mitarbeiter.mit_foto
|
|
End Sub
|
|
|
|
Sub initFoto()
|
|
If mitarbeiter.mit_foto_DocId IsNot Nothing Then
|
|
Try
|
|
picFoto.BackgroundImage = Image.FromFile(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(mitarbeiter.mit_foto_DocId))
|
|
Catch ex As Exception
|
|
picFoto.BackgroundImage = My.Resources.personGray_m
|
|
End Try
|
|
ElseIf mitarbeiter.mit_geschlecht = "w" Then
|
|
picFoto.BackgroundImage = My.Resources.personGray_w
|
|
Else
|
|
picFoto.BackgroundImage = My.Resources.personGray_m
|
|
End If
|
|
End Sub
|
|
Private Sub btnCancel_Click(sender As Object, e As EventArgs) Handles btnCancel.Click
|
|
Me.Close()
|
|
End Sub
|
|
|
|
Private Sub btnOK_Click(sender As Object, e As EventArgs) Handles btnOK.Click
|
|
Dim newMid As Integer = 0
|
|
If txtVname.Text = "" And txtNname.Text = "" Then MsgBox("Bitte geben Sie einen Namen ein!") : Exit Sub
|
|
getMitarbeiter()
|
|
If isUpdate Then
|
|
mitarbeiter.mit_id = mid
|
|
If UID.updateMitarbeiter(mitarbeiter) Then saveBerechtigungen(newMid) : Me.Close()
|
|
Else
|
|
If UID.insertMitarbeiter(mitarbeiter, newMid) Then saveBerechtigungen(newMid) : Me.Close()
|
|
End If
|
|
|
|
End Sub
|
|
Private Sub saveBerechtigungen(newMitId As Integer)
|
|
|
|
If newMitId > 0 Then
|
|
mid = newMitId
|
|
End If
|
|
|
|
Dim ber_admin As String = ""
|
|
Dim ber_dispo As String = ""
|
|
Dim ber_uid As String = ""
|
|
Dim ber_parkzeit As String = ""
|
|
Dim ber_zoll As String = ""
|
|
Dim ber_sdl As String = ""
|
|
Dim ber_aviso As String = ""
|
|
For Each ber As cUserBerechtigungen In usrBerechtigung
|
|
If ber.bepr_programm = "ADMIN" Then ber_admin = ber.ber_name
|
|
If ber.bepr_programm = "DISPO" Then ber_dispo = ber.ber_name
|
|
If ber.bepr_programm = "UID" Then ber_uid = ber.ber_name
|
|
If ber.bepr_programm = "PARKZEIT" Then ber_parkzeit = ber.ber_name
|
|
If ber.bepr_programm = "ZOLL" Then ber_zoll = ber.ber_name
|
|
If ber.bepr_programm = "SDL" Then ber_sdl = ber.ber_name
|
|
If ber.bepr_programm = "AVISO" Then ber_aviso = ber.ber_name
|
|
Next
|
|
|
|
|
|
If cbxADMIN.Checked Then
|
|
UID.insertUpdateBerechtigungProg(mid, Nothing, "ADMIN", True)
|
|
Else
|
|
UID.deleteBerechtigungProg(mid, "ADMIN")
|
|
End If
|
|
|
|
If cbxAVISO.Checked Then
|
|
UID.insertUpdateBerechtigungProg(mid, Nothing, "AVISO", True)
|
|
Else
|
|
UID.deleteBerechtigungProg(mid, "AVISO")
|
|
End If
|
|
|
|
If cbxDISPO.Checked Then
|
|
UID.insertUpdateBerechtigungProg(mid, Nothing, "DISPO", True)
|
|
Else
|
|
UID.deleteBerechtigungProg(mid, "DISPO")
|
|
End If
|
|
|
|
If cbxSDL.Checked Then
|
|
UID.insertUpdateBerechtigungProg(mid, Nothing, "SDL", True)
|
|
Else
|
|
UID.deleteBerechtigungProg(mid, "SDL")
|
|
End If
|
|
|
|
|
|
Dim akt_ber_admin As String = ""
|
|
Dim akt_ber_dispo As String = ""
|
|
Dim akt_ber_uid As String = ""
|
|
Dim akt_ber_parkzeit As String = ""
|
|
Dim akt_ber_zoll As String = ""
|
|
Dim akt_ber_sdl As String = ""
|
|
Dim akt_ber_aviso As String = ""
|
|
If cbxADMIN.Checked Then akt_ber_admin = cboAdminBer.Text
|
|
If cbxDISPO.Checked Then akt_ber_dispo = cboDispoBer.Text
|
|
If cbxUID.Checked Then akt_ber_uid = cboUidBer.Text
|
|
If cbxPARKZEIT.Checked Then akt_ber_parkzeit = cboParkzeitBer.Text
|
|
If cbxZOLL.Checked Then akt_ber_zoll = cboZollBer.Text
|
|
If cbxSDL.Checked Then akt_ber_sdl = ""
|
|
If cbxAVISO.Checked Then akt_ber_aviso = cboAvisoBer.Text
|
|
|
|
If Not ber_admin = akt_ber_admin Then 'WEnn sich die Berechtigung geändert hat
|
|
Dim berid As Integer = getBerId("ADMIN", cboAdminBer.Text) 'ID anhand der ausgewählten Berechtigung holen
|
|
If akt_ber_admin = "" Then : UID.deleteBerechtigungProg(mid, "ADMIN") ' wenn keine gesetzt ist -> Berechtigung löschen
|
|
ElseIf ber_admin = "" Then : UID.insertBerechtigungProg(mid, berid, "ADMIN", True) ' wenn vorher keine gesetzt war -> insert
|
|
Else : UID.updateBerechtigungProg(mid, berid, "ADMIN") ' bei Änderung -> update
|
|
End If
|
|
End If
|
|
|
|
'If Not ber_dispo = akt_ber_dispo Then
|
|
' Dim berid As Integer = getBerId("DISPO", cboDispoBer.Text)
|
|
' If akt_ber_dispo = "" Then : UID.deleteBerechtigungProg(mid, "DISPO")
|
|
' ElseIf ber_dispo = "" Then : UID.insertBerechtigungProg(mid, berid, "DISPO", True)
|
|
' Else : UID.updateBerechtigungProg(mid, berid, "DISPO")
|
|
' End If
|
|
'End If
|
|
|
|
If Not ber_uid = akt_ber_uid Then
|
|
Dim berid As Integer = getBerId("UID", cboUidBer.Text)
|
|
If akt_ber_uid = "" Then : UID.deleteBerechtigungProg(mid, "UID")
|
|
ElseIf ber_uid = "" Then : UID.insertBerechtigungProg(mid, berid, "UID", True)
|
|
Else : UID.updateBerechtigungProg(mid, berid, "UID")
|
|
End If
|
|
End If
|
|
|
|
If Not ber_parkzeit = akt_ber_parkzeit Then
|
|
Dim berid As Integer = getBerId("PARKZEIT", cboParkzeitBer.Text)
|
|
If akt_ber_parkzeit = "" Then : UID.deleteBerechtigungProg(mid, "PARKZEIT")
|
|
ElseIf ber_parkzeit = "" Then : UID.insertBerechtigungProg(mid, berid, "PARKZEIT", True)
|
|
Else : UID.updateBerechtigungProg(mid, berid, "PARKZEIT")
|
|
End If
|
|
End If
|
|
|
|
|
|
If Not ber_zoll = akt_ber_zoll Then
|
|
Dim berid As Integer = getBerId("ZOLL", cboZollBer.Text)
|
|
If akt_ber_zoll = "" Then : UID.deleteBerechtigungProg(mid, "ZOLL")
|
|
ElseIf ber_zoll = "" Then : UID.insertBerechtigungProg(mid, berid, "ZOLL", True)
|
|
Else : UID.updateBerechtigungProg(mid, berid, "ZOLL")
|
|
End If
|
|
End If
|
|
' If Not ber_sdl = akt_ber_sdl Then
|
|
'Dim berid As Integer = getBerId("SDL", cboSdlBer.Text)
|
|
' If akt_ber_sdl = "" Then : UID.deleteBerechtigungProg(mid, "SDL")
|
|
' ElseIf ber_sdl = "" Then : UID.insertBerechtigungProg(mid, berid, "SDL", True)
|
|
' Else : UID.updateBerechtigungProg(mid, berid, "SDL")
|
|
' End If
|
|
' End If
|
|
' If Not ber_aviso = akt_ber_aviso Then
|
|
'Dim berid As Integer = getBerId("AVISO", cboAvisoBer.Text)
|
|
' If akt_ber_aviso = "" Then 'UID.deleteBerechtigungProg(mid, "AVISO")
|
|
'ElseIf ber_aviso = "" Then : UID.insertBerechtigungProg(mid, berid, "AVISO", True)
|
|
' Else : UID.updateBerechtigungProg(mid, berid, "AVISO")
|
|
' End If
|
|
' End If
|
|
End Sub
|
|
|
|
Private Function getBerId(ByVal codename As String, ByVal name As String) As String
|
|
For Each ber As cBerechtigungen In berechtigungen
|
|
If ber.prog_codename = codename And ber.ber_name = name Then Return ber.ber_id
|
|
Next
|
|
Return "-1"
|
|
End Function
|
|
|
|
Private Sub getMitarbeiter()
|
|
mitarbeiter.mit_username = txtUsername.Text
|
|
mitarbeiter.mit_abweichenderAnzeigename = txtAbweichenderAnzeigename.Text
|
|
mitarbeiter.mit_pwd = txtPwd.Text
|
|
mitarbeiter.mit_affix = txtTitel.Text
|
|
If rbtnGeschlechtM.Checked Then mitarbeiter.mit_geschlecht = "m"
|
|
If rbtnGeschlechtW.Checked Then mitarbeiter.mit_geschlecht = "w"
|
|
mitarbeiter.mit_vname = txtVname.Text
|
|
mitarbeiter.mit_nname = txtNname.Text
|
|
If cbxGebDat.Checked Then mitarbeiter.mit_gebdat = txtGebDat.Text Else mitarbeiter.mit_gebdat = ""
|
|
mitarbeiter.mit_strasse = txtStrasse.Text
|
|
mitarbeiter.mit_hausnr = txtHausnummer.Text
|
|
mitarbeiter.mit_land = txtLand.Text
|
|
mitarbeiter.mit_plz = txtPlz.Text
|
|
mitarbeiter.mit_ort = txtOrt.Text
|
|
mitarbeiter.mit_niederlassung = cboNiederlassung._value
|
|
mitarbeiter.mit_fakturierungsgruppe = cboFaktGrp._value
|
|
mitarbeiter.mit_abteilung = cboAbteilung._value
|
|
mitarbeiter.mit_position = cboPosition.Text
|
|
mitarbeiter.mit_durchwahl = txtDurchwahl.Text
|
|
mitarbeiter.mit_email = txtEmail.Text
|
|
mitarbeiter.mit_mobiltel = txtMobiltel.Text
|
|
mitarbeiter.mit_allowAnruf = cbxAnrufen.Checked
|
|
mitarbeiter.mit_info = txtInfo.Text
|
|
mitarbeiter.mit_ATGRNAccessCode_AT51FP7 = txtATGRNAccessCode_AT51FP7.Text
|
|
mitarbeiter.mit_ATGRNAccessCode_AT52VA6 = txtATGRNAccessCode_AT52VA6.Text
|
|
mitarbeiter.mit_DAKOSY_SB = txtDakosySB.Text
|
|
mitarbeiter.mit_DAKOSY_SBFull = txtDyFullName.Text
|
|
mitarbeiter.mit_TELOTEC_SB = txtTelotecSB.Text
|
|
mitarbeiter.mit_AliasAD_Domain = cboALIASDomain._value
|
|
mitarbeiter.mit_AliasAD_Username = txtALIASUser.Text
|
|
mitarbeiter.mit_AliasAD_Domain2 = cboALIASDomain2._value
|
|
mitarbeiter.mit_AliasAD_Username2 = txtALIASUser2.Text
|
|
mitarbeiter.mit_teamId = If(cboTeam._value = "", Nothing, cboTeam._value)
|
|
mitarbeiter.mit_CSuser = txtCSUser.Text
|
|
mitarbeiter.mit_CSpwd = txtCSPW.Text
|
|
mitarbeiter.mit_PersonalNr = txtLohnNr.Text
|
|
mitarbeiter.mit_telefonnr = txtTelNr.Text
|
|
mitarbeiter.mit_homeoffice = cbxHO.Checked
|
|
mitarbeiter.mit_timasNichtStempeln = cbxTimasNichtStempeln1.Checked
|
|
mitarbeiter.mit_emailprivat = txtprivateEMail.Text
|
|
|
|
|
|
If IsNumeric(cboPersonal._value) AndAlso cboPersonal._value > 0 Then
|
|
mitarbeiter.mit_FMZollPersID = cboPersonal._value
|
|
Else
|
|
mitarbeiter.mit_FMZollPersID = -1
|
|
End If
|
|
|
|
mitarbeiter.mit_FirmenDatenAnzeige = ""
|
|
For Each a In MyListBox1.SelectedItems
|
|
If DirectCast(a, VERAG_PROG_ALLGEMEIN.MyListItem).Value = "A" Then
|
|
' For Each i In MyListBox1.Items
|
|
mitarbeiter.mit_FirmenDatenAnzeige = "A"
|
|
' Next
|
|
Exit For
|
|
End If
|
|
Next
|
|
If mitarbeiter.mit_FirmenDatenAnzeige = "" Then
|
|
For Each i In MyListBox1.SelectedItems
|
|
mitarbeiter.mit_FirmenDatenAnzeige &= DirectCast(i, VERAG_PROG_ALLGEMEIN.MyListItem).Value & ","
|
|
Next
|
|
End If
|
|
If mitarbeiter.mit_FirmenDatenAnzeige <> "" And mitarbeiter.mit_FirmenDatenAnzeige.ToString.EndsWith(",") Then
|
|
mitarbeiter.mit_FirmenDatenAnzeige = mitarbeiter.mit_FirmenDatenAnzeige.ToString.Substring(0, mitarbeiter.mit_FirmenDatenAnzeige.ToString.Length - 1)
|
|
End If
|
|
|
|
|
|
|
|
mitarbeiter.mit_Sprachkentnisse = ""
|
|
'For Each a In lbSprachen.SelectedItems
|
|
' If DirectCast(a, VERAG_PROG_ALLGEMEIN.MyListItem).Value = "DE" Then
|
|
' mitarbeiter.mit_Sprachkentnisse = "DE"
|
|
' Exit For
|
|
' End If
|
|
'Next
|
|
If mitarbeiter.mit_Sprachkentnisse = "" Then
|
|
For Each i In lbSprachen.SelectedItems
|
|
mitarbeiter.mit_Sprachkentnisse &= DirectCast(i, VERAG_PROG_ALLGEMEIN.MyListItem).Value & ","
|
|
Next
|
|
End If
|
|
If mitarbeiter.mit_Sprachkentnisse <> "" And mitarbeiter.mit_Sprachkentnisse.ToString.EndsWith(",") Then
|
|
mitarbeiter.mit_Sprachkentnisse = mitarbeiter.mit_Sprachkentnisse.ToString.Substring(0, mitarbeiter.mit_Sprachkentnisse.ToString.Length - 1)
|
|
End If
|
|
|
|
|
|
|
|
|
|
mitarbeiter.mit_FMZollPersIDKasseIsnotSpedBuch = cbxSpedBuch.Checked
|
|
mitarbeiter.mit_FMZollPersIDSpedBuch = Nothing
|
|
If IsNumeric(cboPersonal._value) AndAlso cboPersonal._value > 0 And cbxSpedBuch.Checked Then
|
|
mitarbeiter.mit_FMZollPersIDSpedBuch = cboSpedbuch._value
|
|
End If
|
|
|
|
mitarbeiter.mit_DpUserStandardDP = cboDP._value
|
|
mitarbeiter.mit_DpUserStandardFirma = cboDPFirma._value
|
|
mitarbeiter.mit_DpUserStandardFirma2 = cboDPFirma2._value
|
|
|
|
mitarbeiter.mit_sprache = cboProgSprache._value
|
|
|
|
If IsNumeric(MyComboBox2._value) AndAlso MyComboBox2._value > 0 Then
|
|
mitarbeiter.mit_standartFiliale = MyComboBox2._value
|
|
Else
|
|
mitarbeiter.mit_standartFiliale = -1
|
|
End If
|
|
|
|
If IsNumeric(MyComboBox3._value) AndAlso MyComboBox3._value > 0 Then
|
|
mitarbeiter.mit_standardPreisliste = MyComboBox3._value
|
|
Else
|
|
mitarbeiter.mit_standardPreisliste = -1
|
|
End If
|
|
|
|
mitarbeiter.mit_firmaFMZoll = If(cboFirmaFMZOLL._value = "", Nothing, cboFirmaFMZOLL._value)
|
|
|
|
If ZOLLDATENBEARB Then
|
|
mitarbeiter.mit_EZOLL_SB = If(cboEZOLL_SB._value = "", Nothing, cboEZOLL_SB._value)
|
|
mitarbeiter.mit_ATLAS_SB = If(cboATLAS_SB._value = "", Nothing, cboATLAS_SB._value)
|
|
mitarbeiter.mit_EZOLL_SB_UNISPED = If(cboEZOLL_SB_UNISPED._value = "", Nothing, cboEZOLL_SB_UNISPED._value)
|
|
End If
|
|
|
|
If mitarbeiter.mit_FMZollPersID IsNot Nothing And cboKasse._value <> "" Then
|
|
|
|
cboKasse.changeItem(SQL.doSQL("UPDATE [Personal] SET Standard_RKSV_KasseId='" & cboKasse._value & "' WHERE ID='" & mitarbeiter.mit_FMZollPersID & "'", "FMZOLL"))
|
|
End If
|
|
|
|
If cboFirma.Text = "ALLE" Then
|
|
mitarbeiter.mit_firma = "ALL"
|
|
mitarbeiter.mit_FirmaHaupt = cboFirmaHaupt.Text
|
|
Else
|
|
mitarbeiter.mit_firma = cboFirma.Text
|
|
End If
|
|
mitarbeiter.mit_ChatBenutzer = cbxChatBenutzer.Checked
|
|
|
|
If cbxEinsteigsDat.Checked Then mitarbeiter.mit_einstiegsdatum = datEinstiegsdatum.Text Else mitarbeiter.mit_einstiegsdatum = ""
|
|
mitarbeiter.mit_gekuendigt = cbxGekuendigt.Checked
|
|
If cbxGekuendigt.Checked Then mitarbeiter.mit_kuendigungsdatum = datGekuendigtAm.Text Else mitarbeiter.mit_kuendigungsdatum = ""
|
|
'If picFoto.ImageLocation <> "" Then mitarbeiter.mit_foto = picFoto.ImageLocation
|
|
initFoto()
|
|
mitarbeiter.mit_TESTonly = cbxTestaccount.Checked
|
|
|
|
End Sub
|
|
|
|
Private Sub Label8_Click(sender As Object, e As EventArgs)
|
|
txtPwd.Visible = Not txtPwd.Visible
|
|
End Sub
|
|
|
|
Private Sub PictureBox2_Click(sender As Object, e As EventArgs) Handles picFoto.Click
|
|
Dim fd2 As Windows.Forms.OpenFileDialog = New Windows.Forms.OpenFileDialog()
|
|
|
|
fd2.Title = "Bild auswählen"
|
|
' fd.InitialDirectory = "F:\PROGRAMME\ADMIN_DATA\Fotos_Mitarbeiter\"
|
|
fd2.Filter = "Image Files(*.BMP;*.JPG;*.GIF;*.PNG)|*.BMP;*.JPG;*.GIF;*.PNG"
|
|
fd2.FilterIndex = 2
|
|
fd2.RestoreDirectory = True
|
|
|
|
If fd2.ShowDialog() = DialogResult.OK AndAlso fd2.FileName <> "" Then
|
|
|
|
Dim Extension = New IO.FileInfo(fd2.FileName).Extension
|
|
Dim docId = -1
|
|
If saveToDS(Extension, fd2.FileName, docId) Then
|
|
|
|
mitarbeiter.mit_foto_DocId = docId
|
|
Try
|
|
picFoto.BackgroundImage = Image.FromFile(VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(mitarbeiter.mit_foto_DocId))
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message & ex.StackTrace)
|
|
End Try
|
|
End If
|
|
End If
|
|
Exit Sub
|
|
|
|
|
|
Dim fd As OpenFileDialog = New OpenFileDialog()
|
|
Dim strFileName As String
|
|
|
|
If Not System.IO.Directory.Exists("\\192.168.0.90\f\PROGRAMME\ADMIN_DATA\Fotos_Mitarbeiter\") Then
|
|
System.IO.Directory.CreateDirectory("\\192.168.0.90\f\PROGRAMME\ADMIN_DATA\Fotos_Mitarbeiter\")
|
|
End If
|
|
If Not System.IO.Directory.Exists("\\192.168.0.91\f\PROGRAMME\ADMIN_DATA\Fotos_Mitarbeiter\") Then
|
|
System.IO.Directory.CreateDirectory("\\192.168.0.91\f\PROGRAMME\ADMIN_DATA\Fotos_Mitarbeiter\")
|
|
End If
|
|
|
|
fd.Title = "Bild auswählen"
|
|
fd.InitialDirectory = "F:\PROGRAMME\ADMIN_DATA\Fotos_Mitarbeiter\"
|
|
|
|
fd.Filter = "Image Files(*.BMP;*.JPG;*.GIF;*.PNG)|*.BMP;*.JPG;*.GIF;*.PNG"
|
|
fd.FilterIndex = 2
|
|
fd.RestoreDirectory = True
|
|
|
|
If fd.ShowDialog() = DialogResult.OK Then
|
|
strFileName = fd.FileName
|
|
picFoto.ImageLocation = strFileName
|
|
|
|
Dim myValue = InputBox("Bitte Name eingeben (mit Endung)", "FileName", cut_file(strFileName))
|
|
If myValue <> "" Then
|
|
FileCopy(fd.FileName, "\\192.168.0.91\f\PROGRAMME\ADMIN_DATA\Fotos_Mitarbeiter\" & myValue)
|
|
FileCopy(fd.FileName, "\\192.168.0.90\f\PROGRAMME\ADMIN_DATA\Fotos_Mitarbeiter\" & myValue)
|
|
End If
|
|
mitarbeiter.mit_foto = strFileName
|
|
End If
|
|
End Sub
|
|
|
|
Public Function saveToDS(Extension, sourcePath, Optional ByRef da_id = -1) As Boolean
|
|
|
|
Dim DS As VERAG_PROG_ALLGEMEIN.cDATENSERVER = Nothing
|
|
If da_id > 0 Then
|
|
DS = New VERAG_PROG_ALLGEMEIN.cDATENSERVER(da_id)
|
|
Else
|
|
DS = New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "MITARBEITER", "PERSONAL_FOTOS", "", "", mitarbeiter.mit_nname & "_" & mitarbeiter.mit_id & Extension, -1, False)
|
|
End If
|
|
|
|
' Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "MITARBEITER", "PERSONAL_FOTOS", "", "", MA.mit_nname & "_" & MA.mit_id, -1, False)
|
|
' MsgBox(DS.da_id)
|
|
If Not DS.uploadDataToDATENSERVER(sourcePath,,, False,, False) Then MsgBox("Fehler beim Speichern: Datenserver!") : Return False
|
|
If DS.da_id <= 0 Then MsgBox("Keine DocId!") : Return False
|
|
da_id = DS.da_id
|
|
' destPath = DS.GET_TOP1_PATH
|
|
Return True
|
|
End Function
|
|
|
|
Private Function cut_file(ByVal file As String) As String ' Funktion zum Entfernen der Backslashs / Ordner While file.Contains("\") file = file.Remove(0, 1) End While Return file End Function
|
|
While file.Contains("\")
|
|
file = file.Remove(0, 1)
|
|
End While
|
|
Return file
|
|
End Function
|
|
|
|
Private Sub cbxADMIN_CheckedChanged(sender As Object, e As EventArgs) Handles cbxADMIN.CheckedChanged
|
|
cboAdminBer.Enabled = cbxADMIN.Checked
|
|
End Sub
|
|
|
|
|
|
Private Sub cbxUID_CheckedChanged(sender As Object, e As EventArgs) Handles cbxUID.CheckedChanged
|
|
cboUidBer.Enabled = cbxUID.Checked
|
|
End Sub
|
|
|
|
Private Sub cbxDISPO_CheckedChanged(sender As Object, e As EventArgs) Handles cbxDISPO.CheckedChanged
|
|
cboDispoBer.Enabled = cbxDISPO.Checked
|
|
End Sub
|
|
|
|
Private Sub cbxPARKZEIT_CheckedChanged(sender As Object, e As EventArgs) Handles cbxPARKZEIT.CheckedChanged
|
|
cboParkzeitBer.Enabled = cbxPARKZEIT.Checked
|
|
End Sub
|
|
|
|
Private Sub cbxZOLL_CheckedChanged(sender As Object, e As EventArgs) Handles cbxZOLL.CheckedChanged
|
|
cboZollBer.Enabled = cbxZOLL.Checked
|
|
End Sub
|
|
Private Sub cbxSDL_CheckedChanged(sender As Object, e As EventArgs) Handles cbxSDL.CheckedChanged
|
|
cboSdlBer.Enabled = cbxSDL.Checked
|
|
End Sub
|
|
Private Sub cbxAVISO_CheckedChanged(sender As Object, e As EventArgs) Handles cbxAVISO.CheckedChanged
|
|
cboAvisoBer.Enabled = cbxAVISO.Checked
|
|
End Sub
|
|
|
|
Private Sub Label8_Click_1(sender As Object, e As EventArgs) Handles Label8.DoubleClick
|
|
txtPwd.Visible = True
|
|
Label8.Visible = False
|
|
End Sub
|
|
|
|
Private Sub btnSave_Click(sender As Object, e As EventArgs)
|
|
If txtVname.Text = "" And txtNname.Text = "" Then MsgBox("Bitte geben Sie einen Namen ein!") : Exit Sub
|
|
getMitarbeiter()
|
|
If isUpdate Then
|
|
mitarbeiter.mit_id = mid
|
|
If UID.updateMitarbeiter(mitarbeiter) Then Me.Close()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub CheckBox1_CheckedChanged(sender As Object, e As EventArgs) Handles cbxEinsteigsDat.CheckedChanged
|
|
datEinstiegsdatum.Enabled = cbxEinsteigsDat.Checked
|
|
End Sub
|
|
|
|
Private Sub CheckBox2_CheckedChanged(sender As Object, e As EventArgs) Handles cbxGebDat.CheckedChanged
|
|
txtGebDat.Enabled = cbxGebDat.Checked
|
|
End Sub
|
|
|
|
|
|
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
|
|
frmMitarbBerechtigungen.codename = "SDL"
|
|
frmMitarbBerechtigungen.progId = 7
|
|
frmMitarbBerechtigungen.maId = mid
|
|
frmMitarbBerechtigungen.Show()
|
|
End Sub
|
|
|
|
Private Sub cbxGekuendigt_CheckedChanged(sender As Object, e As EventArgs) Handles cbxGekuendigt.CheckedChanged
|
|
datGekuendigtAm.Enabled = cbxGekuendigt.Checked
|
|
End Sub
|
|
|
|
|
|
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
|
|
Dim frmBenutzerBerGruppen As New frmBenutzerBerGruppen(mid, 7, "SDL")
|
|
frmBenutzerBerGruppen.Show(Me)
|
|
End Sub
|
|
|
|
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
|
|
Dim frmBenutzerBerGruppen As New frmBenutzerBerGruppen(mid, 1, "ADMIN")
|
|
frmBenutzerBerGruppen.Show(Me)
|
|
End Sub
|
|
|
|
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
|
|
Dim frmBenutzerBerGruppen As New frmBenutzerBerGruppen(mid, 5, "AVISO")
|
|
frmBenutzerBerGruppen.Show(Me)
|
|
End Sub
|
|
|
|
|
|
Private Sub cbxSpedBuch_CheckedChanged(sender As Object, e As EventArgs) Handles cbxSpedBuch.CheckedChanged
|
|
cboSpedbuch.Enabled = sender.checked
|
|
If sender.checked Then
|
|
Label37.Text = "Benutzer Kasse:"
|
|
Else
|
|
Label37.Text = "Zuordnung / FM-ZOLL Personal - Tabelle:"
|
|
End If
|
|
End Sub
|
|
|
|
|
|
Private Sub cboNiederlassung_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboNiederlassung.SelectedIndexChanged
|
|
|
|
End Sub
|
|
|
|
|
|
Private Sub tbcntr_TabIndexChanged(sender As Object, e As EventArgs) Handles tbcntr.SelectedIndexChanged
|
|
If tbcntr.SelectedIndex = 1 Then
|
|
Try
|
|
cboATLAS_SB.fillWithSQL("SELECT [bassba_sbnr],[bassba_sbnr] FROM [atlas].[dbo].[bassba] ORDER BY bassba.bassba_sbnr", False, If(cboNiederlassung._value = "SBG", "ATLAS_SBG", "ATLAS"), True)
|
|
Catch ex As Exception
|
|
MsgBox("ATLAS Problem")
|
|
tbcntr.SelectedIndex = 0
|
|
Exit Sub
|
|
End Try
|
|
|
|
Try
|
|
cboEZOLL_SB.fillWithSQL("SELECT [PersonalID],[UserID] FROM [zzPersonal] where lizenznr='S01122' ORDER BY UserID ", False, "EZOLL", True)
|
|
Catch ex As Exception
|
|
MsgBox("EZOLL Problem")
|
|
tbcntr.SelectedIndex = 0
|
|
Exit Sub
|
|
End Try
|
|
Try
|
|
cboEZOLL_SB_UNISPED.fillWithSQL("SELECT [PersonalID],[UserID] FROM [zzPersonal] where lizenznr='S01133' ORDER BY UserID ", False, "EZOLL_UNISPED", True)
|
|
Catch ex As Exception
|
|
MsgBox("EZOLL UNISPED Problem")
|
|
tbcntr.SelectedIndex = 0
|
|
Exit Sub
|
|
End Try
|
|
|
|
If If(mitarbeiter.mit_EZOLL_SB_UNISPED, -1) > 0 Then
|
|
cboEZOLL_SB_UNISPED._value = mitarbeiter.mit_EZOLL_SB_UNISPED
|
|
End If
|
|
If If(mitarbeiter.mit_EZOLL_SB, -1) > 0 Then
|
|
cboEZOLL_SB._value = mitarbeiter.mit_EZOLL_SB
|
|
End If
|
|
If If(mitarbeiter.mit_ATLAS_SB, "") <> "" Then
|
|
cboATLAS_SB._value = mitarbeiter.mit_ATLAS_SB
|
|
End If
|
|
|
|
ZOLLDATENBEARB = True
|
|
ElseIf tbcntr.SelectedIndex = 3 Then
|
|
timas = New VERAG_PROG_ALLGEMEIN.cTimasAPI("timas")
|
|
|
|
If IsNothing(mitarbeiter.mit_timasId) Then
|
|
cbxTimasAngelegt.Checked = False
|
|
timas.getAllGroups(dtTimas)
|
|
initDGV(dtTimas)
|
|
Else
|
|
cbxTimasAngelegt.Checked = True
|
|
End If
|
|
|
|
|
|
btnMAanlegen.Visible = Not cbxTimasAngelegt.Checked
|
|
txtLohnNr.Enabled = Not cbxTimasAngelegt.Checked
|
|
txtClientNr.Enabled = Not cbxTimasAngelegt.Checked
|
|
dgvData.Visible = Not cbxTimasAngelegt.Checked
|
|
TabControl1.Visible = Not cbxTimasAngelegt.Checked
|
|
rtfInfoTimas.Visible = cbxTimasAngelegt.Checked
|
|
btngetInfo.Visible = cbxTimasAngelegt.Checked
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
|
|
Dim frmBenutzerBerGruppen As New frmBenutzerBerGruppen(mid, 3, "DISPO")
|
|
frmBenutzerBerGruppen.Show(Me)
|
|
End Sub
|
|
|
|
Private Sub lkl_LinkClicked(sender As Object, e As LinkLabelLinkClickedEventArgs) Handles lkl.LinkClicked
|
|
If vbYes = MsgBox("Möchten Sie das Kennwort wirklich zurücksetzen? " & vbNewLine & "Der Benutzer wird beim nächsten Login zur Eingabe aufgefordert.", vbYesNoCancel) Then
|
|
' txtPwd.Text = "0000"
|
|
getMitarbeiter()
|
|
mitarbeiter.mit_PasswortChanged = Nothing
|
|
UID.updateMitarbeiter(mitarbeiter)
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub cboFirma_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboFirma.SelectedIndexChanged
|
|
cboTeam.Items.Clear()
|
|
If cboFirma.Text <> "" Then
|
|
cboTeam.fillWithSQL("SELECT team_id, team_bezeichnung FROM tblTeams WHERE team_firma='" & cboFirma.Text & "'", False, "ADMIN", True)
|
|
End If
|
|
cboFirmaHaupt.Enabled = (cboFirma.Text = "ALLE")
|
|
End Sub
|
|
|
|
Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
|
|
|
|
lblCheckconnection.Text = ""
|
|
|
|
If txtCSUser.Text = "" Then
|
|
lblCheckconnection.Text = "User ist leer!"
|
|
Exit Sub
|
|
End If
|
|
If txtCSPW.Text = "" Then
|
|
lblCheckconnection.Text = "Passwort ist leer!"
|
|
Exit Sub
|
|
End If
|
|
|
|
Dim cs = New cCreditSafeAPI("creditsafe")
|
|
Dim statuscode = cs.authenticate(txtCSUser.Text, txtCSPW.Text)
|
|
Select Case statuscode
|
|
|
|
Case 200 : lblCheckconnection.Text = "Zugangsdaten OK"
|
|
|
|
Case Else
|
|
lblCheckconnection.Text = "User konnte nicht authentifiziert werden (" & statuscode & ")"
|
|
|
|
End Select
|
|
|
|
End Sub
|
|
|
|
Private Sub cbxShowPW_CheckedChanged(sender As Object, e As EventArgs) Handles cbxShowPW.CheckedChanged
|
|
txtCSPW.UseSystemPasswordChar = Not cbxShowPW.Checked
|
|
End Sub
|
|
|
|
Private Sub Button7_Click(sender As Object, e As EventArgs) Handles btnADladen.Click
|
|
Dim frmAD = New frmADsearch()
|
|
If frmAD.ShowDialog = DialogResult.OK Then
|
|
|
|
txtEmail.Text = frmAD.setNoNullableValue(frmAD.activeDirectoryObj.ADEntry.Properties("mail").Value)
|
|
txtUsername.Text = frmAD.setNoNullableValue(frmAD.activeDirectoryObj.ADEntry.Properties("sAMAccountName").Value)
|
|
txtVname.Text = frmAD.setNoNullableValue(frmAD.activeDirectoryObj.ADEntry.Properties("givenName").Value)
|
|
txtNname.Text = frmAD.setNoNullableValue(frmAD.activeDirectoryObj.ADEntry.Properties("sn").Value)
|
|
txtStrasse.Text = frmAD.setNoNullableValue(frmAD.activeDirectoryObj.ADEntry.Properties("streetAdress").Value)
|
|
txtPlz.Text = frmAD.setNoNullableValue(frmAD.activeDirectoryObj.ADEntry.Properties("postalCode").Value)
|
|
txtOrt.Text = frmAD.setNoNullableValue(frmAD.activeDirectoryObj.ADEntry.Properties("I").Value)
|
|
txtMobiltel.Text = frmAD.setNoNullableValue(frmAD.activeDirectoryObj.ADEntry.Properties("Mobile").Value)
|
|
txtDurchwahl.Text = frmAD.setNoNullableValue(frmAD.activeDirectoryObj.ADEntry.Properties("telephoneNumber").Value)
|
|
txtALIASUser.Text = frmAD.setNoNullableValue(frmAD.activeDirectoryObj.ADEntry.Properties("sAMAccountName").Value)
|
|
txtEmailExtension.Text = frmAD.setNoNullableValue(frmAD.activeDirectoryObj.ADEntry.Properties("extensionAttribute7").Value)
|
|
cboALIASDomain.changeItem(frmAD.activeDirectoryObj.domain)
|
|
cboAbteilung.changeItem(frmAD.setNoNullableValue(frmAD.activeDirectoryObj.ADEntry.Properties("department").Value))
|
|
cboNiederlassung.changeItem(frmAD.setNoNullableValue(frmAD.activeDirectoryObj.ADEntry.Properties("company").Value))
|
|
|
|
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Private Sub mnuItem_Clicked(sender As Object, e As EventArgs)
|
|
ContextMenuStrip1.Hide() 'Sometimes the menu items can remain open. May not be necessary for you.
|
|
Dim item As ToolStripMenuItem = TryCast(sender, ToolStripMenuItem)
|
|
|
|
If item IsNot Nothing Then
|
|
synchActiveDirectoryADMIN(item.Name)
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Private Sub btnUpdateAD_Click(sender As Object, e As EventArgs) Handles btnUpdateAD.Click
|
|
|
|
If cboALIASDomain._value = "" Or txtALIASUser.Text = "" Then
|
|
Exit Sub
|
|
End If
|
|
|
|
|
|
ContextMenuStrip1.Items.Clear()
|
|
|
|
Dim ADToADMIN = New ToolStripMenuItem() With {.Text = "Active Directory -> ADMIN (nur leere Felder werden befüllt)", .Name = "ADtoADMIN", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
|
Dim ADMINToAD = New ToolStripMenuItem() With {.Text = "ADMIN -> Active Directory (nur leere Felder werden befüllt)", .Name = "ADMINtoAD", .Font = New Font(Me.Font.FontFamily, Me.Font.Size)}
|
|
AddHandler ADToADMIN.Click, AddressOf mnuItem_Clicked
|
|
ContextMenuStrip1.Items.Add(ADToADMIN)
|
|
AddHandler ADMINToAD.Click, AddressOf mnuItem_Clicked
|
|
ContextMenuStrip1.Items.Add(ADMINToAD)
|
|
|
|
|
|
ContextMenuStrip1.Show(Cursor.Position)
|
|
|
|
End Sub
|
|
|
|
Private Sub synchActiveDirectoryADMIN(AdminTOAD As String)
|
|
|
|
Dim a As MsgBoxResult = MsgBox("Die Daten des Mitarbeiters mit dem AD synchronisieren?", vbYesNo)
|
|
If a = vbYes Then
|
|
|
|
Dim ldap As String = ""
|
|
|
|
Select Case cboALIASDomain._value
|
|
Case "imex.local"
|
|
ldap = "LDAP://DC=IMEX,DC=LOCAL"
|
|
Case "VERAGNEUHAUS.local"
|
|
ldap = "LDAP://DC=VERAGNEUHAUS,DC=LOCAL"
|
|
Case "VERAGOST"
|
|
ldap = "LDAP://DC=VERAG,DC=OST,DC=DMN"
|
|
End Select
|
|
|
|
|
|
Dim dirEntry As System.DirectoryServices.DirectoryEntry
|
|
Dim dirSearcher As System.DirectoryServices.DirectorySearcher
|
|
Try
|
|
dirEntry = New System.DirectoryServices.DirectoryEntry(ldap)
|
|
dirSearcher = New System.DirectoryServices.DirectorySearcher(dirEntry)
|
|
|
|
dirSearcher.Filter = " (&(objectClass=user)(objectCategory=person)(|(samAccountName=*" & txtALIASUser.Text & "*)))"
|
|
|
|
Dim sr As DirectoryServices.SearchResult = dirSearcher.FindOne()
|
|
If sr Is Nothing Then
|
|
Dim b As MsgBoxResult = MsgBox("User ist im AD nicht vorhanden?" & vbNewLine & "Solle der Mitarbeiter " & txtALIASUser.Text & " in der Domain " & cboALIASDomain.Text & " angelegt werden?", vbYesNo)
|
|
If b = vbYes Then
|
|
Dim frmAD = New frmADsearch("Referenzuser (Gruppenberechtigungen werden von diesem User übernommen)!")
|
|
|
|
If frmAD.ShowDialog = DialogResult.OK Then
|
|
|
|
MsgBox("The Lightweight Directory Access Protocol (LDAP) provider does not CURRENTLY support this method!")
|
|
'Sobald diese Funktion unterstützt wird, kann nachfolgende Funktion aktiviert werden
|
|
'https://learn.microsoft.com/en-us/dotnet/api/system.directoryservices.directoryentry.copyto
|
|
'Dim NewADAccount As DirectoryEntry = New DirectoryEntry(frmAD.activeDirectoryObj.ADEntry.Parent.Path, txtALIASUser.Text, txtPwd.Text)
|
|
'frmAD.activeDirectoryObj.ADEntry.CopyTo(NewADAccount)
|
|
|
|
End If
|
|
Else
|
|
Exit Sub
|
|
End If
|
|
|
|
End If
|
|
|
|
Dim de As System.DirectoryServices.DirectoryEntry = sr.GetDirectoryEntry()
|
|
|
|
If de.SchemaClassName <> "user" Then
|
|
MsgBox("hinterlegter AD-User ist nicht vom Typ USER")
|
|
Exit Sub
|
|
End If
|
|
|
|
If AdminTOAD = "ADMINtoAD" Then
|
|
|
|
|
|
|
|
If (isFilled(de.Properties("givenName").Value)) Then de.Properties("givenName").Value = txtVname.Text
|
|
If (isFilled(de.Properties("department").Value)) Then de.Properties("department").Value = cboAbteilung._value
|
|
If (isFilled(de.Properties("company").Value)) Then de.Properties("company").Value = cboFirma.SelectedValue
|
|
If (isFilled(de.Properties("sn").Value)) Then de.Properties("sn").Value = txtNname.Text
|
|
If (isFilled(de.Properties("mail").Value)) Then de.Properties("mail").Value = txtEmail.Text
|
|
If (isFilled(de.Properties("streetAdress").Value)) Then de.Properties("streetAdress").Value = txtStrasse.Text
|
|
If (isFilled(de.Properties("postalCode").Value)) Then de.Properties("postalCode").Value = txtPlz.Text
|
|
If (isFilled(de.Properties("I").Value)) Then de.Properties("I").Value = txtOrt.Text
|
|
If (isFilled(de.Properties("mobile").Value)) Then de.Properties("mobile").Value = txtMobiltel.Text
|
|
If (isFilled(de.Properties("telephoneNumber").Value)) Then de.Properties("telephoneNumber").Value = txtTelNr.Text
|
|
If (isFilled(de.Properties("otherTelephone").Value)) Then de.Properties("otherTelephone").Value = txtDurchwahl.Text
|
|
|
|
If cbxGekuendigt.Checked Then
|
|
Dim expire As DateTime = datGekuendigtAm.Value
|
|
expire = expire.AddDays(1)
|
|
de.Properties("accountExpires").Value = expire.ToFileTime.ToString
|
|
|
|
End If
|
|
de.CommitChanges()
|
|
Else
|
|
|
|
|
|
|
|
If txtEmail.Text = "" Then txtEmail.Text = de.Properties("mail").Value
|
|
If txtUsername.Text = "" Then txtUsername.Text = de.Properties("sAMAccountName").Value
|
|
If txtVname.Text = "" Then txtVname.Text = de.Properties("givenName").Value
|
|
If txtNname.Text = "" Then txtNname.Text = de.Properties("sn").Value
|
|
If txtStrasse.Text = "" Then txtStrasse.Text = de.Properties("streetAdress").Value
|
|
If txtPlz.Text = "" Then txtPlz.Text = de.Properties("postalCode").Value
|
|
If txtOrt.Text = "" Then txtOrt.Text = de.Properties("I").Value
|
|
If txtMobiltel.Text = "" Then txtMobiltel.Text = de.Properties("mobile").Value
|
|
If txtDurchwahl.Text = "" Then txtDurchwahl.Text = de.Properties("otherTelephone").Value
|
|
If txtALIASUser.Text = "" Then txtALIASUser.Text = de.Properties("sAMAccountName").Value
|
|
If txtEmailExtension.Text = "" Then txtEmailExtension.Text = de.Properties("extensionAttribute7").Value
|
|
Dim phoneNr = de.Properties("telephoneNumber").Value
|
|
If phoneNr <> "" Then
|
|
|
|
Dim pattern = "-.*" 'enfernt alle zeichen nach -
|
|
Dim myString = Regex.Replace(phoneNr, pattern, "")
|
|
pattern = "DW.*" 'enfernt alle zeichen nach DW
|
|
myString = Regex.Replace(myString, pattern, "")
|
|
If txtTelNr.Text = "" Then txtTelNr.Text = myString.Trim()
|
|
|
|
End If
|
|
|
|
'cboALIASDomain.changeItem(frmAD.activeDirectoryObj.domain)
|
|
'cboAbteilung.changeItem(frmAD.setNoNullableValue(frmAD.activeDirectoryObj.ADEntry.Properties("department").Value))
|
|
'cboNiederlassung.changeItem(frmAD.setNoNullableValue(frmAD.activeDirectoryObj.ADEntry.Properties("company").Value))
|
|
|
|
End If
|
|
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message)
|
|
End Try
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Private Sub txtALIASUser_TextChanged(sender As Object, e As EventArgs) Handles txtALIASUser.TextChanged, cboALIASDomain.TextChanged
|
|
|
|
If txtALIASUser.Text <> "" AndAlso cboALIASDomain._value <> "" Then
|
|
btnUpdateAD.Enabled = True
|
|
Else
|
|
btnUpdateAD.Enabled = False
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Public Function isFilled(value As String) As Boolean
|
|
|
|
If value IsNot Nothing Then
|
|
If value <> "" Then
|
|
Return False ' Werte aus AD sollen nur gesetzt, nicht überschr
|
|
Else
|
|
Return True
|
|
End If
|
|
End If
|
|
Return True
|
|
|
|
End Function
|
|
|
|
|
|
Private Sub btnMAanlegen_Click(sender As Object, e As EventArgs) Handles btnMAanlegen.Click
|
|
|
|
Dim newMid As Integer = 0
|
|
If txtVname.Text = "" And txtNname.Text = "" Then MsgBox("Bitte geben Sie einen Namen ein!") : Exit Sub
|
|
getMitarbeiter()
|
|
If isUpdate Then
|
|
mitarbeiter.mit_id = mid
|
|
If UID.updateMitarbeiter(mitarbeiter) Then saveBerechtigungen(newMid)
|
|
Else
|
|
If UID.insertMitarbeiter(mitarbeiter, newMid) Then saveBerechtigungen(newMid)
|
|
End If
|
|
|
|
|
|
If checkMandatoryFields() Then
|
|
timas.createEmployee(mitarbeiter, rtfInfoTimas.Text, txtClientNr.Text, dtTimas)
|
|
If rtfInfoTimas.Visible = False AndAlso rtfInfoTimas.Text <> "" Then MsgBox(rtfInfoTimas.Text)
|
|
tbcntr_TabIndexChanged(sender, e)
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Private Sub btngetInfo_Click(sender As Object, e As EventArgs) Handles btngetInfo.Click
|
|
If Not cbxTimasAngelegt.Checked Then
|
|
rtfInfoTimas.Text = "Mitarbeiter nicht im Timas angelegt!"
|
|
Exit Sub
|
|
End If
|
|
|
|
timas.getInfo(mitarbeiter, rtfInfoTimas.Text)
|
|
|
|
End Sub
|
|
|
|
Private Sub cbxTimasAngelegt_CheckedChanged(sender As Object, e As EventArgs) Handles cbxTimasAngelegt.CheckedChanged
|
|
|
|
btnMAanlegen.Visible = Not cbxTimasAngelegt.Checked
|
|
txtLohnNr.Enabled = Not cbxTimasAngelegt.Checked
|
|
txtClientNr.Enabled = Not cbxTimasAngelegt.Checked
|
|
dgvData.Visible = Not cbxTimasAngelegt.Checked
|
|
rtfInfoTimas.Visible = cbxTimasAngelegt.Checked
|
|
btngetInfo.Visible = cbxTimasAngelegt.Checked
|
|
btnDelete.Visible = cbxTimasAngelegt.Checked
|
|
|
|
End Sub
|
|
|
|
Private Function checkMandatoryFields() As Boolean
|
|
|
|
|
|
If Not cbxEinsteigsDat.Checked Or mitarbeiter.mit_einstiegsdatum = "" Then
|
|
MsgBox("Einstiegsdatum prüfen!")
|
|
Return False
|
|
End If
|
|
|
|
If txtClientNr.Text = "" Then
|
|
MsgBox("ClientNr prüfen!")
|
|
Return False
|
|
End If
|
|
|
|
If CDate(mitarbeiter.mit_einstiegsdatum).ToShortDateString <= DateTime.Parse("01/01/2000") Then
|
|
MsgBox("Einstiegsdatum darf nicht vor 01.01.2000 liegen!")
|
|
Return False
|
|
End If
|
|
|
|
If mitarbeiter.mit_gekuendigt Then
|
|
MsgBox("Bereits gekündige MA können nicht angelegt werden!")
|
|
Return False
|
|
End If
|
|
|
|
If mitarbeiter.mit_vname = "" Or mitarbeiter.mit_nname = "" Then
|
|
MsgBox("Vor- und Nachnamen angeben!")
|
|
Return False
|
|
End If
|
|
|
|
If mitarbeiter.mit_firma = "" Then
|
|
MsgBox("Firma angeben!")
|
|
Return False
|
|
End If
|
|
|
|
If txtLohnNr.Text = "" Then
|
|
|
|
If Not vbYes = MsgBox("Möchten Sie den Mitarbeiter ohne Lohnnummer anlegen?" & vbNewLine & "Ohne Lohnnummer kann kein Abgleich ins Lohnsystem erfolgen!", vbYesNoCancel) Then
|
|
Return False
|
|
End If
|
|
|
|
End If
|
|
|
|
Return True
|
|
|
|
End Function
|
|
|
|
Sub initDGV(dt As DataTable)
|
|
|
|
If dtTimas.Columns.Count > 0 Then
|
|
|
|
If TabControl1.TabCount = 0 Then
|
|
For Each row As DataRow In dt.DefaultView.ToTable(True, "groupType").Rows
|
|
Dim TabIndex As Integer 'Anzahl der erstellten Tabs, bei keinem Tab ist der Index 0
|
|
TabIndex = TabControl1.TabCount
|
|
TabControl1.TabPages.Add(row("groupType"))
|
|
If TabIndex = 0 Then
|
|
Dim tab As TabPage = Me.TabControl1.SelectedTab
|
|
Dim dv = New DataView(dt)
|
|
dv.RowFilter = "groupType = '" & tab.Text & "'"
|
|
dgvData.DataSource = dv
|
|
dgvData.AllowUserToAddRows = False
|
|
dgvData.AllowUserToDeleteRows = False
|
|
If dgvData.Columns.Count > 0 Then
|
|
With dgvData
|
|
.RowHeadersWidth = 10
|
|
.Columns("id").Visible = False
|
|
.Columns("name").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
|
.Columns("groupType").Visible = False
|
|
.Columns("info").Width = 250
|
|
.Columns("set").Width = 20
|
|
.Columns("set").HeaderText = "X"
|
|
.Dock = DockStyle.Fill
|
|
|
|
End With
|
|
tab.Controls.Add(Me.dgvData)
|
|
End If
|
|
End If
|
|
|
|
Next
|
|
End If
|
|
End If
|
|
|
|
|
|
End Sub
|
|
|
|
|
|
Private Sub TabControl1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles TabControl1.SelectedIndexChanged
|
|
If dgvData Is Nothing And dgvData.Rows.Count < 1 Then Exit Sub
|
|
Dim tab As TabPage = Me.TabControl1.SelectedTab
|
|
If ((Not tab Is Nothing) AndAlso (Not tab.Controls.Contains(Me.dgvData))) Then
|
|
Dim dv = New DataView(dtTimas)
|
|
dv.RowFilter = "groupType = '" & tab.Text & "'"
|
|
dgvData.DataSource = dv
|
|
If dgvData.Columns.Count > 0 Then
|
|
tab.Controls.Add(Me.dgvData)
|
|
End If
|
|
|
|
If (Me.isDataLoaded) Then
|
|
End If
|
|
End If
|
|
End Sub
|
|
|
|
Private isDataLoaded As Boolean = True
|
|
|
|
Private Sub btnDelete_Click(sender As Object, e As EventArgs) Handles btnDelete.Click
|
|
If Not cbxTimasAngelegt.Checked Then
|
|
rtfInfoTimas.Text = "Mitarbeiter nicht im Timas angelegt!"
|
|
Exit Sub
|
|
End If
|
|
|
|
If vbYes = MsgBox("Soll die Verknüpfung zu Timas gelöscht werden?", vbYesNoCancel) Then
|
|
getMitarbeiter()
|
|
mitarbeiter.mit_PersonalNr = DBNull.Value
|
|
mitarbeiter.mit_timasId = DBNull.Value
|
|
If UID.updateMitarbeiter(mitarbeiter) Then
|
|
MsgBox("Mitarbeitverknüpfung gelöscht!")
|
|
End If
|
|
|
|
End If
|
|
|
|
End Sub
|
|
|
|
|
|
|
|
Private Sub datEinstiegsdatum_ValueChanged(sender As Object, e As EventArgs) Handles datEinstiegsdatum.ValueChanged, cbUrlaubInStund.CheckedChanged, txtUrlaubsabsp.TextChanged, cboDaysPerWeek.SelectedIndexChanged
|
|
|
|
If cbxEinsteigsDat.Checked And mitarbeiter.mit_einstiegsdatum <> "" Then
|
|
|
|
If CDate(mitarbeiter.mit_einstiegsdatum).ToShortDateString >= DateTime.Parse("01/01/2000") Then
|
|
|
|
|
|
If txtWoStd.Text <> "" AndAlso IsNumeric(txtWoStd.Text) AndAlso cboDaysPerWeek.Text <> "" AndAlso IsNumeric(cboDaysPerWeek.Text) Then
|
|
Dim einstiegsdat As Date = CDate(mitarbeiter.mit_einstiegsdatum)
|
|
|
|
Dim endOfCurrentYear = New DateTime(einstiegsdat.Year, 12, 31)
|
|
|
|
Dim span = endOfCurrentYear - einstiegsdat
|
|
|
|
If cbxGekuendigt.Checked AndAlso mitarbeiter.mit_kuendigungsdatum <> "" AndAlso CDate(mitarbeiter.mit_kuendigungsdatum).ToShortDateString >= DateTime.Parse("01/01/2000") Then
|
|
Dim kuendigungsdatum As Date = CDate(mitarbeiter.mit_kuendigungsdatum)
|
|
span = kuendigungsdatum - einstiegsdat
|
|
End If
|
|
|
|
Dim days As Double = span.TotalDays
|
|
Dim uansp As Double = 0
|
|
Dim aliquU As Double = 0
|
|
|
|
calcUrlaubsabspruch(cbUrlaubInStund.Checked, uansp)
|
|
|
|
If days > 0 AndAlso uansp > 0 Then
|
|
If IsNumeric(txtUrlaubsabsp.Text) Then uansp = txtUrlaubsabsp.Text
|
|
If Not cbUrlaubInStund.Checked Then
|
|
aliquU = Math.Round((uansp / 365) * span.TotalDays, 2, MidpointRounding.AwayFromZero)
|
|
txtaliquUA.Text = aliquU
|
|
lblHoursOrDays2.Text = "D"
|
|
Else
|
|
aliquU = Math.Round((uansp / 365) * span.TotalDays, 2, MidpointRounding.AwayFromZero)
|
|
txtaliquUA.Text = aliquU
|
|
lblHoursOrDays2.Text = "H"
|
|
End If
|
|
|
|
|
|
End If
|
|
|
|
|
|
End If
|
|
End If
|
|
|
|
End If
|
|
End Sub
|
|
|
|
'Private Sub cboDaysPerWeek_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboDaysPerWeek.SelectedIndexChanged
|
|
|
|
' calcUrlaubsabspruch(cbUrlaubInStund.Checked)
|
|
|
|
'End Sub
|
|
|
|
Private Sub calcUrlaubsabspruch(UrlaubInStunden As Boolean, ByRef urlaubsabspruch As Double)
|
|
If Not UrlaubInStunden Then
|
|
If cboDaysPerWeek.SelectedItem <> "" Then
|
|
If Not cbabwJahresurlaub.Checked Then
|
|
urlaubsabspruch = 5 * cboDaysPerWeek.SelectedItem
|
|
End If
|
|
lblHoursOrDays1.Text = "D"
|
|
End If
|
|
Else
|
|
If cboDaysPerWeek.SelectedItem <> "" AndAlso IsNumeric(txtWoStd.Text) AndAlso txtWoStd.Text > 0 Then
|
|
If Not cbabwJahresurlaub.Checked Then
|
|
urlaubsabspruch = (txtWoStd.Text / cboDaysPerWeek.SelectedItem) * cboDaysPerWeek.SelectedItem * 5
|
|
End If
|
|
lblHoursOrDays1.Text = "H"
|
|
End If
|
|
End If
|
|
txtUrlaubsabsp.Text = urlaubsabspruch
|
|
End Sub
|
|
|
|
|
|
End Class
|
|
|