While the Group Schedule Status Board is a great way to view members who have been scheduled for upcoming services, there is not really an easy way to send them all a communication. An idea has already been submitted to add this functionality, but until then, you can create a new page that allows you to view and easily send a communication to upcoming scheduled group members. 

From the People > Group Scheduling page, use the Admin Toolbar to add a new child page:

GroupScheduling.png

When the list of child pages is displayed, click the + icon to add a new page with a name of "Scheduled Group Members".

NewPage.png

After clicking Add, your new page will appear in the list. Go ahead and click on it to navigate to the new blank page:

NewPage2.png

From the new page, click the Page Zones option from the admin toolbar:

Edit_Zones.png

And then click the "Zone Block" option for the "Main" zone:

MainZone.png

When the "Main Zone" dialog with the (empty) list of blocks is displayed, click the + icon to add a new block to the main zone. When adding the block, select the "Dynamic Data" block type, and then click "Save" to add the block.

AddBlock.png

Your page will still appear blank because the new block has not yet been configured. Now click the "Block Configuration" icon in the admin toolbar to edit your block's settings:

EditBlock.png

And then click the "Edit Criteria" icon for your new block:

EditCriteria.png

Enter the SQL Query (see below) and set all of the other properties to create the report:

BlockSettings.png

Here is the contents of the Query field:

SELECT
	P.[Id],
	CONCAT( P.[NickName] + ' ', P.[LastName] ) AS [Name],
	O.[OccurrenceDate] AS [Date], 
	S.[Name] AS [Schedule],
	L.[Name] AS [Location],
	G.[Name] AS [Group]
FROM [AttendanceOccurrence] O
INNER JOIN [Attendance] A ON A.[OccurrenceId] = O.[Id]
INNER JOIN [PersonAlias] PA ON PA.[Id] = A.[PersonAliasId]
INNER JOIN [Person] P ON P.[Id] = PA.[PersonId]
INNER JOIN [Group] G ON G.[Id] = O.[GroupId]
INNER JOIN [Schedule] S ON S.[Id] = O.[ScheduleId]
LEFT OUTER JOIN [Location] L ON L.[Id] = O.[LocationId]
WHERE O.[OccurrenceDate] >= GETDATE()
AND A.[ScheduledToAttend] = 1
ORDER BY 
	O.[OccurrenceDate],
	P.[LastName],
	P.[NickName]

Save the block settings and you'll now see a list of all the upcoming group members that have schedules:

report.png

From this list, you can then use the Filter Options to filter results to a specific date range, location, group, or schedule. Once your list is filtered, you can use the Communication icon to send those group members a communication.