m-taha
New member
- Local time
- Today, 23:04
- Joined
- Dec 6, 2019
- Messages
- 29
Hello everyone, I'd really like some help with this.
We have a Hour Report Form For Employees to report their work hours which is clear of course everyone has it. What I want to do is if an Employee is a Temporary Employee then they can't report hours as "Holiday" if they take a day off.
This is my attempt (failed attempt) at trying to make this portion of the code work (the code was written by my coworker who is guiding me through my training)
this is his:
and i tried to add this :
Case 3: 'NichtLeistung
Me!obnr = Auftrag
Me!LeistungsgruppeNr = Leistungsgruppe
If Me!c5 = -1 Then
Me!LinkNr = Planschritt
Else
If DCount("PersonalNr", "tblPersoanlStundenplanung", "PersPlan_Temporaere = -1") Then
If Me!LinkNr = DCount("IDPlanschritt", "qryUnionPlanschritte", "Planschritt = 'ferien'") Then
MsgBox ("Choice not available for you")
Exit Sub
End If
Else
Me!LinkNr = Null
End If
End If
i got this error when executing it.
I really appreciate the help.
We have a Hour Report Form For Employees to report their work hours which is clear of course everyone has it. What I want to do is if an Employee is a Temporary Employee then they can't report hours as "Holiday" if they take a day off.
This is my attempt (failed attempt) at trying to make this portion of the code work (the code was written by my coworker who is guiding me through my training)
this is his:
Code:
Private Sub Befehl69_Click()
Dim Datum, Mitarbeiter, Auftrag, Planschritt, Leistungsgruppe, Kommentar As Variant
Dim insertQuery As String
Dim qdf As QueryDef
'Testweise auf False um Fehlerquelle auszuschliessen fg
Application.Echo False
Datum = Me!mDatum
Mitarbeiter = Me!PersNr
Auftrag = Me!obnr
Leistungsgruppe = Me!LeistungsgruppeNr
Planschritt = Me!LinkNr.Column(1)
Kommentar = Me!Kommentar
If validateInput(Auftrag, Planschritt, Me!Anz, Mitarbeiter, Datum, Leistungsgruppe) = False Then
Application.Echo True
Exit Sub
End If
'If Me!LinkNr.text = "Regie" Then
' Me!Rahmen_Regie_Akkord.Value = True
' Else
' Me!Rahmen_Regie_Akkord.Value = False
'End If
Dim NrAuftrag As Long
Dim IDMandant As Integer
Dim rst As DAO.Recordset
Dim Server As String
IDMandant = GetConfigValue("IDMandant")
If GetInstanz = 1 Then
Server = ""
Else
Server = "\DEV"
End If
If Me.txtNrMandant <> IDMandant Then
'Rapport auf Auftrag eines anderen Mandanten
Dim cmd As ADODB.Command
Set cmd = New ADODB.Command
cmd.ActiveConnection = "Driver={ODBC Driver 13 for SQL Server};Server=merz-ts01" & Server & ";Database=eDach_Stammdaten; Trusted_Connection=yes;"
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "sp_GetMithilfeAuftrag"
cmd.Parameters.Append cmd.CreateParameter("@NrHauptAuftrag", adInteger, adParamInput, 255, Auftrag)
cmd.Parameters.Append cmd.CreateParameter("@NrMandant_Hauptauftrag", adInteger, adParamInput, 255, Me.txtNrMandant)
cmd.Parameters.Append cmd.CreateParameter("@NrMandant_Mithilfeauftrag", adInteger, adParamInput, 255, IDMandant)
cmd.Parameters.Append cmd.CreateParameter("@NrMithilfeauftrag", adInteger, adParamOutput, 255)
cmd.Execute
NrAuftrag = cmd.Parameters("@NrMithilfeauftrag").Value
If DLookup("[Planschritt]", "qryUnionPlanschritte", "[IDPlanschritt]=" & Planschritt & " AND [IDMandant]=" & Me.txtNrMandant) = "Regie" Then
Planschritt = CInt(GetConfigValue("planschritt_mithilfe_regie"))
Else
Planschritt = CInt(GetConfigValue("planschritt_mithilfe"))
End If
'Auftragsverantwortung zuweisen
' Andreas in sql query nehmen für webapp
'CurrentDb.Execute "UPDATE tblAufträge SET Auftrag_Baustellenleitung = " & GetConfigValue("PersNr_Verantwrtung_Mithilfeauftraege")
'Kunden vom Objekt übertragen
'CurrentDb.Execute "INSERT INTO tblZuo_Auftrag_Kunde ( Auftrag_nr, Kunden_Nr, NrFunktion, Hauptansprechpartner, Rechnungsadresse, VorAdresse, COAdresse )" _
' & "SELECT tblAufträge.IDAuftrag, tblZuo_Objekt_Kunde.Kunden_Nr, tblZuo_Objekt_Kunde.NrFunktion, tblZuo_Objekt_Kunde.Hauptansprechpartner, tblZuo_Objekt_Kunde.Rechnungsadresse, tblZuo_Objekt_Kunde.VorAdresse, tblZuo_Objekt_Kunde.COAdresse" _
' & "FROM (tblObjekt LEFT JOIN tblZuo_Objekt_Kunde ON tblObjekt.IDObjekt = tblZuo_Objekt_Kunde.Objekt_Nr) RIGHT JOIN tblAufträge ON tblObjekt.IDObjekt = tblAufträge.ObjektNr" _
' & "WHERE tblAufträge.IDAuftrag = " & IDAuftrag
Else
NrAuftrag = Auftrag
End If
'Datensatz speichern
Set rst = CurrentDb.OpenRecordset("tblRapport", dbOpenDynaset, dbSeeChanges)
rst.AddNew
rst!NrMandant_Rapport = IDMandant
rst!Datum = Datum
rst!PersNr = Mitarbeiter
rst!AuftragNr = NrAuftrag
rst!Anz = Me.Anz
rst!Rapport_MwSt = 0.077
rst!Rapport_Regiestunden = Me.Rahmen_Regie_Akkord
rst!LinkNr = Planschritt
rst!Kommentar = Kommentar
rst.Update
'Name und Datum stehen lassen wenn häkchen gesetzt sind
If Me!c1 = -1 Then
Me!mDatum = Datum
Else
Me!mDatum = Date
End If
If Me!c3 = -1 Then
Me!PersNr = Mitarbeiter
Else
Me!PersNr = Null
End If
Select Case optRapportart2.Value
Case 1: 'Produktiv
If Me!c2 = -1 Then
Me!obnr = Auftrag
Else
Me!obnr = Null
End If
If Me!c4 = -1 Then
'Me!obnr = Auftrag
Me!LeistungsgruppeNr = Leistungsgruppe
Else
Me!LeistungsgruppeNr = Null
End If
'Me!LinkNr.Requery
If Me!c5 = -1 Then
Me!LeistungsgruppeNr = Leistungsgruppe
Me!LinkNr = Planschritt
Else
Me!LinkNr = Null
End If
Case 2: 'Unproduktiv
Me!obnr = Auftrag
If Me!c4 = -1 Then
Me!LeistungsgruppeNr = Leistungsgruppe
Else
Me!LeistungsgruppeNr = Null
End If
Me!LinkNr.Requery
If Me!c5 = -1 Then
Me!LeistungsgruppeNr = Leistungsgruppe
Me!LinkNr = Planschritt
Else
Me!LinkNr = Null
End If
Case 3: 'NichtLeistung
Me!obnr = Auftrag
Me!LeistungsgruppeNr = Leistungsgruppe
If Me!c5 = -1 Then
Me!LinkNr = Planschritt
Else
Me!LinkNr = Null
End If
Case 4: 'Ämtli
If Me!c2 = -1 Then
Me!obnr = Auftrag
Else
Me!obnr = Null
End If
If Me!c4 = -1 Then
Me!LeistungsgruppeNr = Leistungsgruppe
Else
Me!LeistungsgruppeNr = Null
End If
Me!LinkNr.Requery
If Me!c5 = -1 Then
Me!LeistungsgruppeNr = Leistungsgruppe
Me!LinkNr = Planschritt
Else
Me!LinkNr = Null
End If
End Select
Me!Anz = Null
Me!NrProfitCenter = Null
Me!Kommentar = Null
DoCmd.GoToControl ("bef_datum_-1")
Me!Anzeige_Rapporte.Requery
Me!Anzeige_Material.Requery
Me!Anzeige_Arbeiten.Requery
'Me!Anzeige_SollStd.Visible = False
'Me!Anzeige_Rapportiert.Visible = False
Me!Anzeige_Stundentotal.Requery
'Me!Rahmen_Regie_Akkord = 0
'If Me!c2 = -1 And Me!Auftr_Wartungsvertrag = -1 Then
' Me!Rahmen_Regie_Akkord.Visible = True
'Else
' Me!Rahmen_Regie_Akkord.Visible = False
'End If
Application.Echo True
Me.frmStundenrapportsubKommentare.Requery
End Sub
and i tried to add this :
Case 3: 'NichtLeistung
Me!obnr = Auftrag
Me!LeistungsgruppeNr = Leistungsgruppe
If Me!c5 = -1 Then
Me!LinkNr = Planschritt
Else
If DCount("PersonalNr", "tblPersoanlStundenplanung", "PersPlan_Temporaere = -1") Then
If Me!LinkNr = DCount("IDPlanschritt", "qryUnionPlanschritte", "Planschritt = 'ferien'") Then
MsgBox ("Choice not available for you")
Exit Sub
End If
Else
Me!LinkNr = Null
End If
End If
i got this error when executing it.
I really appreciate the help.