Displaying Study Points on the S-140 Schedule

Is there a way to display the counsel number of the item on the Workbook page as the Worksheet page ?Abel

This is a good question. The S-38 instructions state:

7. Counsel: Following each of the four student assignments, the Life and Ministry Meeting chairman has approximately one minute to provide commendation and counsel based on the Ministry School book. When the chairman introduces a student’s assignment, he will not announce the point of counsel that the student is working on.

As a result the software does not show the counsel numbers on the schedule by default since it is my understanding that this information should not be public. However, if you have a valid reason for including this information then it can be done by making a modification to the S-140 template.

Getting Started

Please look through the Video Tutorials where you will see several that explain what is involved with customizing scripts and how to do it. The following summary is based on the S-140 Workbook template:

Summary
Use the File Explorer and navigate to the %appdata%\Meeting Schedule Assistant folder.

Locate the S-140 Workbook.XSL document and copy it. Call the new file something like S-140 Workbook – Counsel Numbers.XSL.

(Don’t edit the original file as it will be replaced if you upgrade the program. Also, please make sure your file name begins with “S-140 Workbook”)

Right-click the copied file, select Properties and untick Read-only.

Understanding The Schedule Data

The underlaying schedule data is in XML format. Here is an example from the schedule for the student items:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<AYFM NumberClasses="1">
    <StudentItem IsTalk="0" IsSampleVideo="1">
        <Type>Initial Call Video</Type>
        <Material>Play and discuss the video</Material>
        <Time StartTime12="7:47" StartTime24="19:47" EndTime12="7:51" EndTime24="19:51">4 min.</Time>
        <Students ChairmanHandleSampleVideo="1" Class="1"/>
    </StudentItem>
    <StudentItem IsTalk="0" IsSampleVideo="0">
        <Type>First Return Visit</Type>
        <Material>Use the sample conversation</Material>
        <Time StartTime12="7:51" StartTime24="19:51" EndTime12="7:54" EndTime24="19:54">3 min. or less</Time>
        <Students Class="1">
            <Student StudyPoint="39" StudyPointDescription="Effective Conclusion">Sister 1</Student>
            <Assistant>Sister 2</Assistant>
        </Students>
    </StudentItem>
    <StudentItem IsTalk="0" IsSampleVideo="0">
        <Type>Bible Study</Type>
        <Material>bhs 197-198 ¶4-5</Material>
        <Time StartTime12="7:55" StartTime24="19:55" EndTime12="8:01" EndTime24="20:01">6 min. or less</Time>
        <Students Class="1">
            <Student StudyPoint="27" StudyPointDescription="Extemporaneous Delivery" Duplicate="1">Brother 1</Student>
            <Assistant>Brother 2</Assistant>
        </Students>
    </StudentItem>
</AYFM>

Customizing the XSL Template

There is not much room available on the S-140 Schedule for showing extra details. Let us assume that you want to show the counsel number after the students name. Then you would change this bit in the script by using a text editor. I suggest NotePad++.

354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
  <!--Displays the student and assistant for the current student item-->
  <xsl:template match="Students">
    <td class="cellName">
      <xsl:choose>
        <xsl:when test="../@IsSampleVideo=1">
          <xsl:choose>
            <xsl:when test="@ChairmanHandleSampleVideo=0">
              <xsl:value-of select="//Labels/Counsellor"/>
            </xsl:when>
            <xsl:otherwise>
              <!--Trims the " :" from the end of the chairman label-->
              <xsl:value-of select="normalize-space(translate(//Labels/Chairman,':',''))"/>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:when>
        <xsl:otherwise>
          <xsl:choose>
            <xsl:when test="Student/@Duplicate=1">
              <span class="textDuplicate">
                <xsl:value-of select="Student"/>
                <xsl:text> (#</xsl:text>
                <xsl:value-of select="Student/@StudyPoint"/>
                <xsl:text>)</xsl:text>
              </span>
            </xsl:when>
            <xsl:otherwise>
              <xsl:value-of select="Student"/>
              <xsl:text> (#</xsl:text>
              <xsl:value-of select="Student/@StudyPoint"/>
              <xsl:text>)</xsl:text>
            </xsl:otherwise>
          </xsl:choose>
          <xsl:if test="../@IsTalk=0">
            <br/>
            <xsl:choose>
              <xsl:when test="Assistant/@Duplicate=1">
                <span class="textDuplicate">
                  <xsl:value-of select="Assistant"/>
                </span>
              </xsl:when>
              <xsl:otherwise>
                <xsl:value-of select="Assistant"/>
              </xsl:otherwise>
            </xsl:choose>
          </xsl:if>
        </xsl:otherwise>
      </xsl:choose>
    </td>
  </xsl:template>

Now try to use this modified schedule in the Midweek Editor and you will see the counsel numbers after the students names.

Bible Reading Assignments

As per the request made in the comments, here is the changes required to display the study point for each Bible Reading assignment. The line numbers shown here assume that you have already made the changes described above to your script:

268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
  <!--Displays all of the bible reading students for each class-->
  <xsl:template match="BibleReadingItem">
    <tr>
      <xsl:apply-templates select="Time" mode="End"/>
      <td class="cellTheme">
        <span class="bulletTFGW">&#8226;</span>
        <span class="textTheme">
          <xsl:value-of select="Type"/>
        </span>
        <xsl:apply-templates select="Time" mode="Duration"/>
        <xsl:apply-templates select="Material"/>
      </td>
      <td class="cellPosition">
        <xsl:value-of select="//Labels/Student"/>
      </td>
      <xsl:for-each select="Readers/Reader">
        <td class="cellName">
          <xsl:choose>
            <xsl:when test="@Duplicate=1">
              <span class="textDuplicate">
                <xsl:value-of select="."/>
                <xsl:text> (#</xsl:text>
                <xsl:value-of select="@StudyPoint"/>
                <xsl:text>)</xsl:text>              
              </span>
            </xsl:when>
            <xsl:otherwise>
              <xsl:value-of select="."/>
              <xsl:text> (#</xsl:text>
              <xsl:value-of select="@StudyPoint"/>
              <xsl:text>)</xsl:text>
            </xsl:otherwise>
          </xsl:choose>
        </td>
      </xsl:for-each>
    </tr>
  </xsl:template>
[Total: 1    Average: 2/5]

2 thoughts on “Displaying Study Points on the S-140 Schedule

  1. Hi brother,
    It is very nice to see the counsel number after the student names. I have one problem with the Bible Reader student. I don’t know how to configure it. For the rest, very nice. The body of elders are very proud for it.
    Please, let me know how to introduce counsel point for the reader student.
    Thanks for your help.

    Kind regards,

    Abraham NANA

  2. Hi Abraham

    Thanks for your comments. I have updated the article to include the changes needed for Bible Reading assignments.

    Your brother

    Andrew

Comments are closed.