If you want it clean without errors, you can just utilize WITH function. Something like this.
With( {TodaysAttendance: Filter('[dbo].[Today Activity Attendance]','Grade Sort' < 0)},
Filter(TodaysAttendance, Not(IsBlank(MorningSigninTime)))
This will basically get a temporary variable of the delegable data into TodaysAttendance, then run the 2nd filter inside powerapps which doesn't need delegation. However, thing to note, is you can still only return 500 default up to 2000 records with the setting of records for the first query.
Either way works, I prefer WITH as I can do more with that data being stored locally.