I am trying to write a update method in my BLL (OvertimeController.vb) that will first call another method (select) and check for a certain criteria before performing the update. Specifically I want to count the number of rows where the specified conditions are met and if less than 2 allow the update. I have both the select and the stored procedures working, but I can find a way to get the Select to fire within the Update. Here is what I have...
<DataObjectMethod(DataObjectMethodType.Select)> _
Public Shared Function OverTime_Get48Check(ByVal Id As Integer, ByVal ModuleId As Integer, ByVal Shift As String, ByVal SignedUpUser As String, ByVal CreatedByUser As String, ByVal DateSignedUp As DateTime) As List(Of OverTimeInfo)
Return CBO.FillCollection(Of OverTimeInfo)(DataProvider.Instance().PSLPD_OverTime_Get48Check(Id, ModuleId, Shift, SignedUpUser, CreatedByUser, DateSignedUp))
End Function
<DataObjectMethod(DataObjectMethodType.Update)> _
Public Shared Sub OverTime_SignUp48Check(ByVal objTest As OverTimeInfo)
If OverTime_Get48Check.Count < 2 Then
DataProvider.Instance.PSLPD_OverTime_SignUp48Check(objTest.ID, objTest.ModuleId, objTest.Shift, objTest.SignedUpUser, objTest.CreatedByUser, objTest.DateSignedUp)
Else : Throw New ApplicationException("48 Hour Rule Violation")
End If
End Sub
The error I'm getting is on the highlighted call to the First method and it is :
Argument not specified for the parameter 'Shift' of the 'Public Shared Function Overtime_Get48Check(Id As Integer, ModuleId As Integer, Shift As String, SignedUpUser As String, CreatedByUser As String, DateSignedUp As DateTime) As Systems.Collections.Generic.List(Of OverTimeInfo)'
Any guidance on how to call a select method, count the rows returned and complete the Update if the the count is less than two would be greatly appreciated.
John