Dienstplan
This commit is contained in:
@@ -3170,7 +3170,7 @@ Public Class cDienstplan
|
||||
Dim data As New List(Of cDienstDetails)
|
||||
|
||||
Using conn As SqlConnection = cSqlDb.GetNewOpenConnection()
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblDienstplanEintraegeDetails as det INNER JOIN [tblDienstplanSchichtenZeiten] as sz ON det.dedet_id=sz.dsz_dedetId WHERE dedet_niederlassung=@dedet_niederlassung ", conn)
|
||||
Using cmd As New SqlCommand("SELECT * FROM tblDienstplanEintraegeDetails as det INNER JOIN [tblDienstplanSchichtenZeiten] as sz ON det.dedet_id=sz.dsz_dedetId WHERE dedet_niederlassung=@dedet_niederlassung AND dedet_splitschicht=0 ", conn)
|
||||
cmd.Parameters.AddWithValue("@dedet_niederlassung", niederlassung)
|
||||
Dim dr = cmd.ExecuteReader()
|
||||
While dr.Read
|
||||
@@ -3662,6 +3662,50 @@ Public Class cDienstplan
|
||||
End Function
|
||||
|
||||
|
||||
Public Function insertByDienstEintrag(ByVal daten As cDienstEintrag, niederlassung As String) As Boolean
|
||||
Dim sql As String = " begin tran" &
|
||||
" if exists (select * from tblDienstplanEintraege with (updlock,serializable) where dstetr_datum = @dstetr_datum AND dstetr_dstmaId=@dstetr_dstmaId AND dstetr_niederlassung=@dstetr_niederlassung AND dstetr_art=@dstetr_art) " &
|
||||
" begin " &
|
||||
" UPDATE tblDienstplanEintraege " &
|
||||
" SET dstetr_dstmaId=@dstetr_dstmaId, dstetr_art=@dstetr_art, dstetr_von=@dstetr_von, dstetr_bis=@dstetr_bis, dstetr_grund=@dstetr_grund, dstetr_info=@dstetr_info,dstetr_niederlassung=@dstetr_niederlassung,dstetr_pause=@dstetr_pause " &
|
||||
" WHERE dstetr_datum = @dstetr_datum AND dstetr_dstmaId=@dstetr_dstmaId AND dstetr_niederlassung=@dstetr_niederlassung " &
|
||||
" End " &
|
||||
" Else " &
|
||||
" begin " &
|
||||
"INSERT INTO tblDienstplanEintraege " &
|
||||
"( dstetr_dstmaId, dstetr_datum, dstetr_art, dstetr_von, dstetr_bis, dstetr_grund, dstetr_info, dstetr_niederlassung,dstetr_pause) VALUES " &
|
||||
"( @dstetr_dstmaId, @dstetr_datum, @dstetr_art, @dstetr_von, @dstetr_bis, @dstetr_grund, @dstetr_info,@dstetr_niederlassung,@dstetr_pause )" &
|
||||
" End " &
|
||||
" commit tran "
|
||||
|
||||
|
||||
Using conn As SqlConnection = cSqlDb.GetNewOpenConnection()
|
||||
Using cmd As New SqlCommand(sql, conn)
|
||||
cmd.Parameters.AddWithValue("@dstetr_id", daten.dstetr_id)
|
||||
cmd.Parameters.AddWithValue("@dstetr_dstmaId", daten.dstetr_dstmaId)
|
||||
cmd.Parameters.AddWithValue("@dstetr_datum", daten.dstetr_datum)
|
||||
cmd.Parameters.AddWithValue("@dstetr_art", daten.dstetr_art)
|
||||
cmd.Parameters.AddWithValue("@dstetr_von", daten.dstetr_von)
|
||||
cmd.Parameters.AddWithValue("@dstetr_bis", daten.dstetr_bis)
|
||||
cmd.Parameters.AddWithValue("@dstetr_pause", CDbl(daten.dstetr_pause))
|
||||
cmd.Parameters.AddWithValue("@dstetr_grund", daten.dstetr_grund)
|
||||
cmd.Parameters.AddWithValue("@dstetr_info", daten.dstetr_info)
|
||||
cmd.Parameters.AddWithValue("@dstetr_niederlassung", niederlassung)
|
||||
|
||||
'MsgBox(daten.dstetr_dstmaId)
|
||||
Try
|
||||
cmd.ExecuteNonQuery()
|
||||
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 Programm")
|
||||
End Try
|
||||
End Using
|
||||
End Using
|
||||
Return False
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
|
||||
Public Function getDienstEintragList(datum As Date, niederlassung As String) As List(Of cDienstEintrag)
|
||||
Dim sql As String = " SELECT * FROM tblDienstplanEintraege WHERE dstetr_datum = @dstetr_datum AND dstetr_niederlassung=@dstetr_niederlassung "
|
||||
@@ -3748,6 +3792,7 @@ Public Class cDienstplan
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Public Function updateDienstEintragArtChange(ByVal dstetr_id As Integer, ByVal dstetr_datum As String, ByVal abteilung As String, ByVal von As String, ByVal bis As String, pause As String) As Boolean
|
||||
Dim sql As String = " UPDATE tblDienstplanEintraege " &
|
||||
" SET dstetr_art=@abteilung, dstetr_von=@von, dstetr_bis=@bis , dstetr_pause=@dstetr_pause" &
|
||||
@@ -3957,13 +4002,21 @@ Public Class cDienstplan
|
||||
Return False
|
||||
End Function
|
||||
|
||||
Public Function getDstStunden(maId As Integer, datum_von As Date, datum_bis As Date, niederlassung As String) As Double
|
||||
Public Function getDstStunden(maId As Integer, datum_von As Date, datum_bis As Date, niederlassung As String, Optional onlySplitschichten As Boolean = False) As Double
|
||||
Try
|
||||
Dim stunden As Double
|
||||
Dim rgx As New Regex("^\d{2}:\d{2}$")
|
||||
Dim whereSQL As String = ""
|
||||
If onlySplitschichten Then
|
||||
whereSQL = " AND dedet_splitschicht = 1"
|
||||
Else
|
||||
whereSQL = " AND dedet_splitschicht = 0"
|
||||
End If
|
||||
|
||||
|
||||
Using conn As SqlConnection = cSqlDb.GetNewOpenConnection()
|
||||
'Using cmd As New SqlCommand(" SELECT dstetr_datum,dstetr_von,dstetr_bis,dstetr_pause,dstetr_art FROM tblDienstplanEintraege WHERE dstetr_dstmaId=" & maId & " AND dstetr_datum BETWEEN '" & datum_von.ToShortDateString & "' AND '" & datum_bis.ToShortDateString & "' AND (dstetr_art LIKE 'ZOLL%' OR dstetr_art IN('QS','KS','URL','DBL' ,'NACHT','SO','BS','DR')) ", conn)
|
||||
Using cmd As New SqlCommand(" SELECT dstetr_datum,dstetr_von,dstetr_bis,dstetr_pause,dstetr_art FROM tblDienstplanEintraege WHERE dstetr_dstmaId=" & maId & " AND dstetr_datum BETWEEN '" & datum_von.ToShortDateString & "' AND '" & datum_bis.ToShortDateString & "' AND replace( replace([dstetr_art] ,'BS','DR') ,'SO','DR') IN (SELECT case WHEN dedet_bezeichnungDP<>'' then dedet_bezeichnungDP ELSE dedet_abt END FROM [tblDienstplanEintraegeDetails] WHERE dedet_niederlassung=@niederlassung AND ( dedet_benutzerdefinierteSchicht=1 OR dedet_stdWieArbeitszeit=1 )) ", conn)
|
||||
Using cmd As New SqlCommand(" SELECT dstetr_datum,dstetr_von,dstetr_bis,dstetr_pause,dstetr_art FROM tblDienstplanEintraege WHERE dstetr_dstmaId=" & maId & " AND dstetr_datum BETWEEN '" & datum_von.ToShortDateString & "' AND '" & datum_bis.ToShortDateString & "' AND replace( replace([dstetr_art] ,'BS','DR') ,'SO','DR') IN (SELECT case WHEN dedet_bezeichnungDP<>'' then dedet_bezeichnungDP ELSE dedet_abt END FROM [tblDienstplanEintraegeDetails] WHERE dedet_niederlassung=@niederlassung AND ( dedet_benutzerdefinierteSchicht=1 OR dedet_stdWieArbeitszeit=1 )" & whereSQL & ") ", conn)
|
||||
cmd.Parameters.AddWithValue("@niederlassung", niederlassung)
|
||||
|
||||
Dim dr = cmd.ExecuteReader()
|
||||
|
||||
Reference in New Issue
Block a user