From 6ce26b06145727909b339359eb1980ac7678ef29 Mon Sep 17 00:00:00 2001 From: "d.breimaier" Date: Wed, 28 Jun 2023 16:55:54 +0200 Subject: [PATCH] =?UTF-8?q?Rest-API=20WIKI,=20Mitarbeiter=20kopieren=20Rec?= =?UTF-8?q?hte=20=C3=BCbernehmen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- UID/ADMIN.vbproj | 3 + UID/Mitarbeiter/frmMitarbDetails.vb | 13 +- .../usrCntlMitarbeiter.Designer.vb | 26 ++- UID/Mitarbeiter/usrCntlMitarbeiter.vb | 207 +++++++++++++++++- UID/cProgramFunctions.vb | 11 +- UID/cSqlDb.vb | 13 +- 6 files changed, 255 insertions(+), 18 deletions(-) diff --git a/UID/ADMIN.vbproj b/UID/ADMIN.vbproj index 754f859..41cbedb 100644 --- a/UID/ADMIN.vbproj +++ b/UID/ADMIN.vbproj @@ -87,6 +87,9 @@ False C:\Program Files (x86)\GrapeCity\ActiveReports 15\Tools\BouncyCastle.Crypto.dll + + \\ylps023046.verag.ost.dmn\D$\Andreas\Programmierung\VB\ADMIN\ADMIN\cNCTSPartnerWorker\bin\Debug\ChilkatDotNet47.dll + ..\packages\ClosedXML.0.95.4\lib\net46\ClosedXML.dll diff --git a/UID/Mitarbeiter/frmMitarbDetails.vb b/UID/Mitarbeiter/frmMitarbDetails.vb index 96eb9c0..ab84a96 100644 --- a/UID/Mitarbeiter/frmMitarbDetails.vb +++ b/UID/Mitarbeiter/frmMitarbDetails.vb @@ -388,18 +388,23 @@ Public Class frmMitarbDetails 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() : Me.Close() + If UID.updateMitarbeiter(mitarbeiter) Then saveBerechtigungen(newMid) : Me.Close() Else - If UID.insertMitarbeiter(mitarbeiter) Then saveBerechtigungen() : Me.Close() + If UID.insertMitarbeiter(mitarbeiter, newMid) Then saveBerechtigungen(newMid) : Me.Close() End If End Sub - Private Sub saveBerechtigungen() + 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 = "" diff --git a/UID/Mitarbeiter/usrCntlMitarbeiter.Designer.vb b/UID/Mitarbeiter/usrCntlMitarbeiter.Designer.vb index 3f44174..a880b5d 100644 --- a/UID/Mitarbeiter/usrCntlMitarbeiter.Designer.vb +++ b/UID/Mitarbeiter/usrCntlMitarbeiter.Designer.vb @@ -25,6 +25,8 @@ Partial Class usrCntlMitarbeiter Me.components = New System.ComponentModel.Container() Me.Button6 = New System.Windows.Forms.Button() Me.Panel2 = New System.Windows.Forms.Panel() + Me.Button8 = New System.Windows.Forms.Button() + Me.Button7 = New System.Windows.Forms.Button() Me.Button5 = New System.Windows.Forms.Button() Me.Button4 = New System.Windows.Forms.Button() Me.Button3 = New System.Windows.Forms.Button() @@ -84,6 +86,8 @@ Partial Class usrCntlMitarbeiter ' 'Panel2 ' + Me.Panel2.Controls.Add(Me.Button8) + Me.Panel2.Controls.Add(Me.Button7) Me.Panel2.Controls.Add(Me.Button6) Me.Panel2.Controls.Add(Me.Button5) Me.Panel2.Controls.Add(Me.Button4) @@ -94,6 +98,24 @@ Partial Class usrCntlMitarbeiter Me.Panel2.Size = New System.Drawing.Size(92, 684) Me.Panel2.TabIndex = 24 ' + 'Button8 + ' + Me.Button8.Location = New System.Drawing.Point(10, 285) + Me.Button8.Name = "Button8" + Me.Button8.Size = New System.Drawing.Size(75, 43) + Me.Button8.TabIndex = 20 + Me.Button8.Text = "Upload WIKI" + Me.Button8.UseVisualStyleBackColor = True + ' + 'Button7 + ' + Me.Button7.Location = New System.Drawing.Point(10, 236) + Me.Button7.Name = "Button7" + Me.Button7.Size = New System.Drawing.Size(75, 43) + Me.Button7.TabIndex = 19 + Me.Button7.Text = "Clipboard WIKI" + Me.Button7.UseVisualStyleBackColor = True + ' 'Button5 ' Me.Button5.Image = Global.ADMIN.My.Resources.Resources.del @@ -369,7 +391,7 @@ Partial Class usrCntlMitarbeiter 'UserKopierenToolStripMenuItem ' Me.UserKopierenToolStripMenuItem.Name = "UserKopierenToolStripMenuItem" - Me.UserKopierenToolStripMenuItem.Size = New System.Drawing.Size(180, 22) + Me.UserKopierenToolStripMenuItem.Size = New System.Drawing.Size(146, 22) Me.UserKopierenToolStripMenuItem.Text = "User kopieren" ' 'usrCntlMitarbeiter @@ -434,4 +456,6 @@ Partial Class usrCntlMitarbeiter Friend WithEvents dgvVERIMEX As VERAG_PROG_ALLGEMEIN.MyDatagridview Friend WithEvents ContextMenuStrip1 As ContextMenuStrip Friend WithEvents UserKopierenToolStripMenuItem As ToolStripMenuItem + Friend WithEvents Button7 As Button + Friend WithEvents Button8 As Button End Class diff --git a/UID/Mitarbeiter/usrCntlMitarbeiter.vb b/UID/Mitarbeiter/usrCntlMitarbeiter.vb index bc67a22..dd53373 100644 --- a/UID/Mitarbeiter/usrCntlMitarbeiter.vb +++ b/UID/Mitarbeiter/usrCntlMitarbeiter.vb @@ -1,7 +1,10 @@ Imports System.ComponentModel -Imports GrapeCity.Viewer.Common.Model -Imports VERAG_PROG_ALLGEMEIN -Imports VERAG_PROG_ALLGEMEIN.TESTJSON +Imports System.Net +Imports System.Text +Imports System.Windows.Controls +Imports VERAG_PROG_ALLGEMEIN.cChilkat_Helper + + Public Class usrCntlMitarbeiter @@ -13,6 +16,7 @@ Public Class usrCntlMitarbeiter Private Anzahl As Integer Private locZeilen As Integer = -1 Public mid As Integer = -1 + Dim FUNC = New cProgramFunctions Private Sub uctrlMitarbeiter_Load(sender As Object, e As EventArgs) Handles MyBase.Load ConnStr = frmMain.ConnStr @@ -54,7 +58,7 @@ Public Class usrCntlMitarbeiter - Dim sql As String = "SELECT mit_id,mit_username,mit_vname, mit_nname ,mit_niederlassung,mit_abteilung,mit_email,mit_durchwahl,mit_gekuendigt FROM tblMitarbeiter WHERE (mit_firma='" & firma & "' OR (mit_firma='ALL' AND mit_FirmaHaupt='" & firma & "' )) " + Dim sql As String = "SELECT mit_id,mit_username,mit_vname, mit_nname ,mit_niederlassung,mit_abteilung,mit_email,mit_durchwahl,mit_gekuendigt, isnull(mit_foto_DocId,'') as mit_foto_DocId FROM tblMitarbeiter WHERE (mit_firma='" & firma & "' OR (mit_firma='ALL' AND mit_FirmaHaupt='" & firma & "' )) " If txtSuche.Text <> "" Then sql &= " AND (mit_username LIKE '%" & txtSuche.Text & "%' OR mit_nname LIKE '%" & txtSuche.Text & "%' OR mit_vname LIKE '%" & txtSuche.Text & "%') " @@ -223,6 +227,8 @@ Public Class usrCntlMitarbeiter .Columns(8).Width = 80 .Columns(8).HeaderText = "Gekündigt" + '.Columns(9).Visible = False + End With End Sub @@ -466,13 +472,202 @@ Public Class usrCntlMitarbeiter Me.Cursor = Cursors.WaitCursor Dim frmMitarbDetails As New frmMitarbDetails() - frmMitarbDetails.mid = id frmMitarbDetails.Show(Me) frmMitarbDetails.isUpdate = False - frmMitarbDetails.txtVname.Text = "Kopie von" & frmMitarbDetails.txtVname.Text + frmMitarbDetails.Label1.Text = "Mitarbeiterkopie" + frmMitarbDetails.txtPwd.Text = "" + frmMitarbDetails.txtCSPW.Text = "" + frmMitarbDetails.txtVname.Text = "Kopie von " & frmMitarbDetails.txtVname.Text + frmMitarbDetails.Label48.Text = "00" Me.Cursor = Cursors.Default End Sub + + Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click + Try + Me.Cursor = Cursors.WaitCursor + Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL + Dim sqlstr As String = "SELECT '|' + mit_vname + '|' + mit_nname + '|' + isnull(mit_niederlassung,'-') + '|' + isnull(mit_abteilung,'-') + '|' + isnull(mit_email,'-') + '|' + isnull(mit_durchwahl,'-') + '|' + CASE WHEN mit_firma='ALL' THEN mit_firmaHaupt ELSE mit_firma + '|' END as Firma FROM tblMitarbeiter WHERE mit_gekuendigt=0 AND [mit_TESTonly]=0 AND [mit_pseudoUser]=0 And isnull(mit_niederlassung,'')<>'' and isnull(mit_abteilung,'')<>'' and isnull(mit_nname,'') <>'' And isnull(mit_vname,'') <>'' Order by mit_id" + Dim sqlstrpic As String = "SELECT isnull(mit_foto_DocId,0) as MAfoto FROM tblMitarbeiter WHERE mit_gekuendigt=0 AND [mit_TESTonly]=0 AND [mit_pseudoUser]=0 And isnull(mit_niederlassung,'') <>'' and isnull(mit_abteilung,'')<>'' and isnull(mit_nname,'') <>'' And isnull(mit_vname,'') <>'' Order by mit_id" + Dim dt As DataTable = SQL.loadDgvBySql_Param(sqlstr, "ADMIN") + Dim dt2 As DataTable = SQL.loadDgvBySql_Param(sqlstrpic, "ADMIN") + + dt2.Columns.Add("path", GetType(String)) + For Each row As DataRow In dt2.Rows + + Dim filename As String + If row.Item("MAfoto") > 0 Then + Dim filePath = New StringBuilder() + Dim file = VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(row(0)) + Dim filenameFull = New IO.FileInfo(file).Name.ToLower + filePath.Append("|![") + filePath.Append(filenameFull) + filePath.Append("](/mitarbeiterfotos/") + filePath.Append(filenameFull) + filePath.Append(" =150x150)") 'Bildgröße + filename = filePath.ToString + Else + filename = "|-" + End If + row.Item("path") = filename + Next + + Dim content = New StringBuilder() + + content.Append("|Foto|Name|Nachname|Niederlassung|Abteilung|EMail|Telefonnummer|Firma|" & vbNewLine) + content.Append("|-|-|-|-|-|-|-|-|" & vbNewLine) + + + For Each row As DataRow In dt.Rows + Dim index = dt.Rows.IndexOf(row) + content.Append(dt2.Rows(index).Item("path")) + content.Append(row(0)) + content.Append(vbNewLine) + Next + content.Append("{.interactive-table}") + + Dim data As New DataObject() + data.SetData(DataFormats.Text, content) + Clipboard.SetDataObject(data) + Me.Cursor = Cursors.Default + MsgBox("Daten in Zwischenablage gespeichert") + + + Catch ex As Exception + MsgBox(ex.Message & ex.StackTrace) + Me.Cursor = Cursors.Default + End Try + + + End Sub + + Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click + + Me.Cursor = Cursors.WaitCursor + Dim token = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcGkiOjEsImdycCI6MSwiaWF0IjoxNjg3OTMzNDU3LCJleHAiOjE3MTk0OTEwNTcsImF1ZCI6InVybjp3aWtpLmpzIiwiaXNzIjoidXJuOndpa2kuanMifQ.ul2loFYVHdco2Ia2LcS4nme4PdgcuU6QKrunucECebX5LhcsSyuEg-lKiP2X3JXW57Ym4oCBjamDd5-5uqbQd9hOQ5CDO6yqK2r8TPNxivK29oAl2wfcHaKOe7QNti0yRlMpomJjc_5qaegeeLjN5w-lYbbqtSz_6y8GkPPr0P3l4coIk5IzngGazj8XLYGGN6y5qT4s8IR0sNhfz0hJAlIeVTeFKl8KFZMpFKvBnOjkL0GYOYjrHzPLSUAhe8hCGVcA7rWsweVjjvOclFDDFwZ0SwOY0TZqvz-LOsZ3V7ucQaT3flAjuHiEhODGJguQRBs67U8lVO2cxbJJyR3FUA" + Dim dgv As New DataGridView + + If TabControl1.SelectedIndex = 0 Then + + dgv = dgvVERAG + + ElseIf TabControl1.SelectedIndex = 1 Then + + dgv = dgvATILLA + + ElseIf TabControl1.SelectedIndex = 2 Then + + dgv = dgvIMEX + + ElseIf TabControl1.SelectedIndex = 3 Then + + dgv = dgvUNISPED + + ElseIf TabControl1.SelectedIndex = 4 Then + + dgv = dgvAMBAR + + ElseIf TabControl1.SelectedIndex = 5 Then + + dgv = dgvFRONTOFFICE + + ElseIf TabControl1.SelectedIndex = 5 Then + + dgv = dgvVERIMEX + + End If + + + For Each row As DataGridViewRow In dgv.Rows + Dim test As Boolean = False + If row.Cells("mit_foto_DocId").Value > 0 Then + Dim file = VERAG_PROG_ALLGEMEIN.cDATENSERVER.GET_PDFPath_BY_DocID(row.Cells("mit_foto_DocId").Value) + Dim succeess = uploadPictureToWiki(token, 4, file) + test = True + End If + + Next + Me.Cursor = Cursors.Default + Try + + Catch ex As Exception + Me.Cursor = Cursors.Default + MsgBox(ex.Message & ex.StackTrace) + End Try + + End Sub + + Private Function uploadPictureToWiki(authenticationToken As String, folderIDx As Integer, image As String) As String + Try + + VERAG_PROG_ALLGEMEIN.cChilkat_Helper.UnlockCilkat() + + Dim API_STRING = "https://wiki.verag.ag" + Dim rest As New Chilkat.Rest + Dim success As Boolean + Dim failureDesc As String + + rest.VerboseLogging = True + Dim bTls As Boolean = True + Dim port As Integer = 443 + Dim bAutoReconnect As Boolean = True + success = rest.Connect(API_STRING, port, bTls, bAutoReconnect) + If (success <> True) Then + Debug.WriteLine("ConnectFailReason: " & rest.ConnectFailReason) + Debug.WriteLine(rest.LastErrorText) + failureDesc = rest.LastErrorText + Return failureDesc + End If + + API_STRING &= "/u" + + rest.AddHeader("Authorization", "Bearer " & authenticationToken) + rest.AddHeader("Content-Type", "multipart/form-data") + + Dim filename = New IO.FileInfo(image).Name + + Dim fileStream As New Chilkat.Stream + fileStream.SourceFile = image + + rest.PartSelector = "1" + rest.AddHeader("Content-Disposition", "form-data; name=""mediaUpload""") + rest.AddHeader("Content-Type", "text") + Dim json As New Chilkat.JsonObject + success = json.AddIntAt(-1, "folderId", folderIDx) + Debug.WriteLine(json.Emit()) + success = rest.SetMultipartBodyString(json.Emit()) + + rest.PartSelector = "2" + rest.AddHeader("Content-Disposition", "form-data; name=""mediaUpload""; filename=""" & filename & """") + rest.AddHeader("Content-Type", "image/jpeg") + success = rest.SetMultipartBodyStream(fileStream) + + Dim responseBody As String = rest.FullRequestMultipart("POST", API_STRING) + If (rest.LastMethodSuccess <> True) Then + Debug.WriteLine(rest.LastErrorText) + Return rest.LastErrorText + End If + + If (rest.ResponseStatusCode <> 200) Then + Debug.WriteLine(rest.ResponseHeader) + Return rest.ResponseStatusCode & " " & rest.ResponseStatusText + Else + Debug.WriteLine("File uploaded") + End If + + rest.ClearAllHeaders() + rest.ClearAllParts() + rest.PartSelector = "" + + + + + Catch ex As WebException + VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name) + End Try + End Function + + End Class diff --git a/UID/cProgramFunctions.vb b/UID/cProgramFunctions.vb index 9ac629f..daaf15b 100644 --- a/UID/cProgramFunctions.vb +++ b/UID/cProgramFunctions.vb @@ -1124,7 +1124,7 @@ Public Class cProgramFunctions End Try End Sub - Public Function CalendarWeek(ByVal nWeek As Integer, _ + Public Function CalendarWeek(ByVal nWeek As Integer, ByVal nYear As Integer) As Date ' Wochentag des 4. Januar des Jahres ermitteln @@ -1137,9 +1137,18 @@ Public Class cProgramFunctions ' Gesuchte KW ermitteln Return dFirst.AddDays((nWeek - 1) * 7) End Function + + Public Function MessageTimeOut(sMessage As String, sTitle As String, iSeconds As Integer) As Boolean + Dim Shell = CreateObject("WScript.Shell") + Shell.Run("mshta.exe vbscript:close(CreateObject(""WScript.shell"").Popup(""" & sMessage & """," & iSeconds & ",""" & sTitle & """))") + MessageTimeOut = True + End Function + End Class + + Public Class SQLVariable Private TextSQLName As String Private ValueSQLVALUE As Object diff --git a/UID/cSqlDb.vb b/UID/cSqlDb.vb index 2153b98..5e043b5 100644 --- a/UID/cSqlDb.vb +++ b/UID/cSqlDb.vb @@ -4,7 +4,7 @@ Imports ADMIN.cMeineFunktionen Imports System.Data.SqlClient Imports System.Globalization Imports System.Text.RegularExpressions - +Imports GrapeCity.Enterprise.Data.Expressions.Evaluation Public Class cSqlDb Public Shared Function GetNewOpenConnection() As SqlConnection @@ -44,7 +44,7 @@ Public Class sqlConn ' Specify a connection string. Replace the given value with a ' valid connection string for a Northwind SQL Server sample ' database accessible to your system. - Dim connectionString As String = _ + Dim connectionString As String = "Data Source=DEVELOPER\DEVSQL;Initial Catalog=ADMIN;Integrated Security=false;User ID=sa;Password=BmWr501956;" ' Create a new data adapter based on the specified query. @@ -657,7 +657,7 @@ Public Class cBrgDb d.brg_at_woche_zolaris = dr.Item("brg_at_woche_zolaris") d.brg_de_tag_atlas = dr.Item("brg_de_tag_atlas") d.brg_de_woche_atlas = dr.Item("brg_de_woche_atlas") - + d.brg_de2_tag = dr.Item("brg_de2_tag") d.brg_de2_woche = dr.Item("brg_de2_woche") d.brg_de2_tag_atlas = dr.Item("brg_de2_tag_atlas") @@ -1545,12 +1545,12 @@ Public Class cMitarbeiter End Function - Public Function insertMitarbeiter(ByVal m As VERAG_PROG_ALLGEMEIN.cMitarbeiter) As Boolean + Public Function insertMitarbeiter(ByVal m As VERAG_PROG_ALLGEMEIN.cMitarbeiter, ByRef mid As Integer) As Boolean Dim hAuswahl As String = "" 'Änderung Dim sql = "INSERT INTO tblMitarbeiter " & - "(mit_username,mit_abweichenderAnzeigename, mit_pwd, mit_geschlecht, mit_affix, mit_vname, mit_nname, mit_gebdat, mit_strasse,mit_hausnr,mit_land,mit_plz,mit_ort,mit_niederlassung, mit_abteilung, mit_position, mit_durchwahl, mit_email, mit_mobiltel, mit_allowAnruf,mit_info, mit_einstiegsdatum, mit_gekuendigt, mit_kuendigungsdatum, mit_foto,mit_firma,mit_firmaFMZoll,mit_FMZollPersID,mit_FMZollPersIDKasseIsnotSpedBuch,mit_FMZollPersIDSpedBuch,mit_standartFiliale,mit_DpUserStandardDP,mit_EZOLL_SB,mit_ATLAS_SB,mit_FirmenDatenAnzeige,mit_DAKOSY_SB,mit_DAKOSY_SBFull,mit_DpUserStandardFirma,mit_DpUserStandardFirma2,mit_TESTonly,mit_PasswortChanged,mit_TELOTEC_SB,mit_AliasAD_Domain,mit_AliasAD_Username,mit_AliasAD_Domain2,mit_AliasAD_Username2,mit_teamId,mit_ChatBenutzer,mit_FirmaHaupt,mit_ChatEasteregg,mit_MAVerzeichnis_SettingsTstmp,mit_MAVerzeichnis_allowGebDat,mit_MAVerzeichnis_allowWohnadresse,mit_MAVerzeichnis_allowGebDatOhneJahr,mit_MAVerzeichnis_Spitzname,mit_foto_DocId,mit_MAVerzeichnis_Motto,mit_sprache,mit_fakturierungsgruppe, mit_CSuser, mit_CSpwd ) VALUES " & + "(mit_username,mit_abweichenderAnzeigename, mit_pwd, mit_geschlecht, mit_affix, mit_vname, mit_nname, mit_gebdat, mit_strasse,mit_hausnr,mit_land,mit_plz,mit_ort,mit_niederlassung, mit_abteilung, mit_position, mit_durchwahl, mit_email, mit_mobiltel, mit_allowAnruf,mit_info, mit_einstiegsdatum, mit_gekuendigt, mit_kuendigungsdatum, mit_foto,mit_firma,mit_firmaFMZoll,mit_FMZollPersID,mit_FMZollPersIDKasseIsnotSpedBuch,mit_FMZollPersIDSpedBuch,mit_standartFiliale,mit_DpUserStandardDP,mit_EZOLL_SB,mit_ATLAS_SB,mit_FirmenDatenAnzeige,mit_DAKOSY_SB,mit_DAKOSY_SBFull,mit_DpUserStandardFirma,mit_DpUserStandardFirma2,mit_TESTonly,mit_PasswortChanged,mit_TELOTEC_SB,mit_AliasAD_Domain,mit_AliasAD_Username,mit_AliasAD_Domain2,mit_AliasAD_Username2,mit_teamId,mit_ChatBenutzer,mit_FirmaHaupt,mit_ChatEasteregg,mit_MAVerzeichnis_SettingsTstmp,mit_MAVerzeichnis_allowGebDat,mit_MAVerzeichnis_allowWohnadresse,mit_MAVerzeichnis_allowGebDatOhneJahr,mit_MAVerzeichnis_Spitzname,mit_foto_DocId,mit_MAVerzeichnis_Motto,mit_sprache,mit_fakturierungsgruppe, mit_CSuser, mit_CSpwd ) OUTPUT INSERTED.mit_id VALUES " & "(@mit_username,@mit_abweichenderAnzeigename,@mit_pwd,@mit_geschlecht,@mit_affix,@mit_vname,@mit_nname,@mit_gebdat,@mit_strasse,@mit_hausnr,@mit_land,@mit_plz,@mit_ort,@mit_niederlassung,@mit_abteilung,@mit_position,@mit_durchwahl,@mit_email,@mit_mobiltel,@mit_allowAnruf,@mit_info,@mit_einstiegsdatum,@mit_gekuendigt,@mit_kuendigungsdatum,@mit_foto,@mit_firma,@mit_firmaFMZoll,@mit_FMZollPersID,@mit_FMZollPersIDKasseIsnotSpedBuch,@mit_FMZollPersIDSpedBuch,@mit_standartFiliale,@mit_DpUserStandardDP,@mit_EZOLL_SB,@mit_ATLAS_SB,@mit_FirmenDatenAnzeige,@mit_DAKOSY_SB,@mit_DAKOSY_SBFull,@mit_DpUserStandardFirma,@mit_DpUserStandardFirma2,@mit_TESTonly,@mit_PasswortChanged,@mit_TELOTEC_SB,@mit_AliasAD_Domain,@mit_AliasAD_Username,@mit_AliasAD_Domain2,@mit_AliasAD_Username2,@mit_teamId,@mit_ChatBenutzer,@mit_FirmaHaupt,@mit_ChatEasteregg,@mit_MAVerzeichnis_SettingsTstmp,@mit_MAVerzeichnis_allowGebDat,@mit_MAVerzeichnis_allowWohnadresse,@mit_MAVerzeichnis_allowGebDatOhneJahr,@mit_MAVerzeichnis_Spitzname,@mit_foto_DocId,@mit_MAVerzeichnis_Motto ,@mit_sprache,@mit_fakturierungsgruppe, @mit_CSuser, @mit_CSpwd )" @@ -1623,10 +1623,11 @@ Public Class cMitarbeiter cmd.Parameters.AddWithValue("@mit_fakturierungsgruppe", m.mit_fakturierungsgruppe) cmd.Parameters.AddWithValue("@mit_CSuser", If(m.mit_CSuser, DBNull.Value)) cmd.Parameters.AddWithValue("@mit_CSpwd", If(m.mit_CSpwd, DBNull.Value)) + cmd.Parameters.AddWithValue("@mit_id", DBNull.Value) Try - cmd.ExecuteNonQuery() + mid = cmd.ExecuteScalar() Return True Catch ex As SqlException MsgBox(System.Reflection.MethodInfo.GetCurrentMethod.Name & ": Datensatz kann nicht gespeichert werden!" & vbCrLf & vbCrLf & ex.Message, vbExclamation, "Fehler beim Speichern Data")