ajtruckle / meeting-schedule-assistant-support

Get support for Meeting Schedule Assistant.
https://www.publictalksoftware.co.uk/meeting-schedule-assistant/
4 stars 0 forks source link

Custom Congregations Report — Date Range #15

Closed ajtruckle closed 10 months ago

ajtruckle commented 11 months ago

Is your feature request related to a problem? Please describe. We can write our own custom scripts but there is no way for us to easily limit information to a chosen date range. This becomes an issue when reading information from the Assignment History database for inclusion on a report.

Describe the solution you'd like Can the Congregations > Report Viewer > Setup window be updated to include:

  1. A Custom report mode option.
  2. An area to specify a date range (for information read from the Assignments History database).

Additional context Public Talks has a Custom Reports Setup window which has a similar feature:

Custom Reports Setup


Here is one example use case. I wanted to try to replicate this custom report script in Meeting Schedule Assistant:

Custom Report Script — Hospitality List

Sample

This could be replicated quite easily using the Congregations Report Viewer by reading the assignment history database. But, then it dawned on me that I couldn't limit the data displayed to a specific date range. I am sure that this flexibility could be useful for other types of Congregation Reports.

ajtruckle commented 11 months ago

I was thinking of something like this:

Updated Setup window

This report would create a XML file, something like:

<CongregationDatabaseReport>
    <Settings>
        <LanguageCode>en</LanguageCode>
        <Direction>ltr</Direction>
        <ForeignGroupMode>false</ForeignGroupMode>
        <ReportMode>Custom</ReportMode>
    </Settings>
    <AssignmentHistory>
        <PublicTalkInfo>
            <MeetingDate Day="31" DayShort="Sun" DayFull="Sunday" Month="10" MonthShort="Dec" MonthFull="December" Year="2023">31/12/2023</MeetingDate>
            <PublicTalkChairman>Chairman</PublicTalkChairman>
            <PrayerOpen>Brother</PrayerOpen>
            <PrayerClose/>
            <VideoConferenceHost/>
            <VideoConferenceCohost/>
            <ZoomAttendant/>
            <PublicTalkSpeaker>Name</PublicTalkSpeaker>
            <PublicTalkCongregation>Congregation</PublicTalkCongregation>
            <PublicTalkTheme>Is There a True Religion From God's Standpoint?</PublicTalkTheme>
            <PublicTalkNumber>173</PublicTalkNumber>
            <PublicTalkHospitality/>
            <WatchtowerConductor>Conductor</WatchtowerConductor>
            <WatchtowerReader>Reader</WatchtowerReader>
            <BibleVersesReader/>
            <Interpreter/>
            <AwayTalks>
                <AwayTalk>
                    <Speaker>Speaker</Speaker>
                    <TalkNumber>180</TalkNumber>
                    <Congregation>Congregation</Congregation>
                    <MeetingDate Day="31" DayShort="Sun" DayFull="Sunday" Month="10" MonthShort="Dec" MonthFull="December" Year="2023">31/12/2023</MeetingDate>
                    <MeetingTime>10:00</MeetingTime>
                </AwayTalk>
            </AwayTalks>
            <Misc/>
        </PublicTalkInfo>
    </AssignmentHistory>
</CongregationDatabaseReport>

A XSL template can now be written to display the Hospitality Report.

ajtruckle commented 10 months ago

Proposed GUI changes:

New Window

ajtruckle commented 10 months ago

@cengizu

I have been giving this some thought 🤔 and have decided to make some addition changes to the GUI. This is what we have now:

New Window

The Report mode is now a combo box and makes it easier for me to extend the built-in report modes. Also, the Assignment History snippet (extracted using your chosen date range) is now included in the XML for all report modes. This allows the user more flexibility for writing their own scripts.

ajtruckle commented 10 months ago

@cengizu Here is updated help documentation: Congregations-Setup.pdf

stecchio66 commented 10 months ago

@ajtruckle Very good work. The help documentation is simple, clear but complete.