Meeting Schedule Assistant v19.0.6 is now available

Meeting Schedule Assistant Logo with white background
Theocratic Software

I am pleased to announce that there is a new version of Meeting Schedule Assistant available. You are encouraged to upgrade to this edition as it addresses several bugs that were brought to my attention.

Backup Settings

There was an issue with the Backup Settings feature. It was showing each file name in a popup message box. I have now resolved this issue and the backup feature works correctly.

Student Selector

There was also an issue with the Student Selector window. This window indicates all existing students for the week by highlighting them in different colours. It was not showing the existing students correctly. This has now been resolved.

Google Calendar – Portuguese Brazil

Several brothers had raised an issue with the Google Calendar Sync feature. The issue (RESULT_ADD_CALENDAR_ERROR) appeared in version 19.0.5 and initially I could not work out what was wrong.

I added a logging feature to the GoogleAuthAndSync utility to help us detect what the issue was. It was a good enhancement to the utility because I quickly realised that the issue was related to a badly formatted Portuguese-Brazil translation (one that I had done myself). Oops! So this has now been resolved and the sync feature should be working as expected.

So if you are using this version of the program or later and have an error with the Google Sync feature, please navigate to your user application data folder (%appdata%). You will see in there a file:

test-google-log.txt

Looking at that file will help us resolve further issues.

Edit Student Assignments Window

The Edit Student Assignments window now remembers its position.

Sing Out Joyfully To Jehovah

The new song book has now been released in Arabic and is being used at the meeting beginning January 7th. The Midweek Editor has been updated:

Arabic songs list
Sing Out Joyfully To Jehovah – Arabic

At the time of writing this is the status for the remaining languages:

  • Czech (not available)
  • Punjabi (not available)
  • Tamil (partially completed)

Exporting to HTML – Midweek Editor

The Midweek Editor currently has no dedicated Export to HTML feature. The only way to do it was:

  • Right-click the schedule in the Editor and Paste it into Microsoft Word.
  • Navigate to the temporary XML data file that the Editor was using in the user application data folder and open it in Internet Explorer and use View Source. Then you could copy that to a text file and save it as HTML.

You can still use the above workarounds but there is now a dedicated Export feature on the File menu. There are some benefits to using this approach:

  • It is instantly creating the HTML file for you.
  • It is embedding the CSS styling into the HTML file so it will have the right look and feel. Otherwise you would still have to copy the CSS file to the same folder.

Exporting can be performed using the default Workbook and Worksheet templates. No user action is required.

However, if you have customised an XSL script and want to use the Export feature then you will have to make a one off adjustment to the XSL data file. Example (using Workbook-S-140):

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
27
28
29
30
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml">
  <xsl:output method="html" indent="yes" version="4.01"
   doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
   doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"/>
  <xsl:param name="CSSFile1"></xsl:param>
  <xsl:template match="/">
    <html xmlns="http://www.w3.org/1999/xhtml">
      <xsl:attribute name="lang">
        <xsl:value-of select="//Settings//LanguageCode"/>
      </xsl:attribute>
      <xsl:attribute name="dir">
        <xsl:value-of select="//Settings/Direction"/>
      </xsl:attribute>
      <head>
        <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
        <xsl:choose>
          <xsl:when test="$CSSFile1 !=''">
            <style type="text/css">
              <xsl:value-of select="$CSSFile1"/>
            </style>
          </xsl:when>
          <xsl:otherwise>
            <link rel="stylesheet" type="text/css" href="Workbook-S-140.css"/>
          </xsl:otherwise>
        </xsl:choose>
        <title>
          <xsl:value-of select="//Labels/Congregation"/>&#160;<xsl:value-of select="//Labels/Title" />
        </title>
      </head>

The parameters need to be called CSSFile1, CSSFile2 etc. The example shown is for when you are only using one CSS file. It you are using two or more, then please contact me and I will explain what you need to do.

If is only a one-off change needed for your script, and only if you are using a customised script.

Exporting to HTML – Assignments Editor

The Assignments Editor used to be able to export to HTML. But I had to remove the feature when I upgraded to editor to use XML / XSL.

As a workaround you could use the Report Settings window and right-click etc. on the view there.

However, I have now been able to re-instate direct exporting. The same instructions apply as previously described.

Any custom “images” that you use in your HTML will need to be manually copied to the same folder as the HTML file if you want them to be displayed. These kinds of resources can’t be embedded.

Teaching Assignment

I realised there was a bug with the XSL script for the default Workbook and Workbook-S-140 XSL files and how it was presenting the information. I have fixed all the default files. However, if you are using a custom script then I am afraid it will need a minor adjustment.

Workbook-S-140 Changes

 <!-- Teaching assigning - 10 minute talk on the first week of the month -->
  <xsl:template match="Teaching">
    <tr>
      <xsl:apply-templates select="Time" mode="End"/>
      <td class="cellTheme" colspan="2">
        <span class="bulletAYFM">&#8226;</span>
        <span class="textTheme">
          <xsl:value-of select="Type"/>
        </span>
        <xsl:apply-templates select="Theme"/>
        <xsl:apply-templates select="Time" mode="Duration"/>
        <xsl:apply-templates select="StudyPointDescription"/>
      </td>
     
      <!-- There is only ONE "Name" element, so we need to factor in for the two extra classes-->
      <xsl:apply-templates select="Name"/>
      <xsl:if test = "../@NumberClasses &gt;= 2">
        <!-- Include the "Name" element again -->
        <xsl:apply-templates select="Name"/>
      </xsl:if>
      <xsl:if test = "../@NumberClasses &gt;= 3">
        <!-- Include the "Name" element again -->
        <xsl:apply-templates select="Name"/>
      </xsl:if>
    </tr>
  </xsl:template>

Workbook Changes

The changes required here are a bit more involved as there was a second bug with the column widths:

  <xsl:template match="Teaching">
    <tr>
      <td class="borderDotTime">
        <xsl:value-of select="Time"/>
      </td>
      <td class="borderDotTheme">
        <xsl:choose>
          <xsl:when test="../NumberClasses=2">
            <xsl:attribute name="class">borderDotTheme2Classes</xsl:attribute>
          </xsl:when>
          <xsl:when test="../NumberClasses&gt;2">
            <xsl:attribute name="class">borderDotTheme3Classes</xsl:attribute>
          </xsl:when>
        </xsl:choose>
        <xsl:value-of select="Theme" disable-output-escaping="yes"/>
        <br />
        <span class="textMethod">
          <xsl:text>[</xsl:text>
          <xsl:value-of select="StudyPointDescription"/>
          <span class="textStudyNumberReference">
            <xsl:text> </xsl:text>
            <xsl:value-of select="StudyPointDescription/@StudyPoint"/>
          </span>
          <xsl:text>]</xsl:text>
        </span>
      </td>
      <td class="borderDotName">
        <xsl:value-of select="Name"/>&#160;
      </td>
      <!-- There is only ONE "Name" element, so we need to factor in for the two extra classes-->
      <xsl:if test = "../NumberClasses &gt;= 2">
        <!-- Include the "Name" element again -->
        <td class="borderDotName">
          <xsl:value-of select="Name"/>&#160;
        </td>
      </xsl:if>
      <xsl:if test = "../NumberClasses &gt;= 3">
        <!-- Include the "Name" element again -->
        <td class="borderDotName">
          <xsl:value-of select="Name"/>&#160;
        </td>
      </xsl:if>
    </tr>
  </xsl:template>

S-89 Slips – Alternative Template

I am working on a slightly modified S-89 slip template:

Improved Template

This template indicates if it is the:

  • #1 Initial Call
  • #2 Initial call
  • #3 Initial Call
  • #1 First Return Visit
  • #2 First Return Visit

At the moment I don not know if we are going to need to indicate multiple Second Return Visit assignments in this way.

The updated template is available in the existing Templates Download ZIP archive. Those of you who have already requested the templates can just download the ZIP again. Install the templates in the usual manner and then select the new “v1” version from the drop-down list.

Latest Download

Meeting Schedule Assistant

Supported operating systems:

Windows 7 (Service Pack 1)
Windows 8.1
Windows 10
Size: 10.4 MB
Version: 20.0.1
Published: 13/11/2019
Share this:

2 thoughts on “Meeting Schedule Assistant v19.0.6 is now available

  1. Greetings.

    Please update your handout with an error. The following message is displayed:

    “Disable the download of the Handout over the internet.”

    Can you help me?
    Ver. 19,6

Comments are closed.