You are here

Version 10.04

Subscribe to Syndicate

Jun 15, 2015 Important security update released

Key Changes in Version 10.04.00

The following changes have been made to Theatre Manager since version 10.03

  1. Volunteer Module: Added custom fields that can be used in the volunteer module. Replicated the tabs for tasks and letter on the volunteer/personnel data entry screen and standardized some upper tabs to make it easier to enter data for the volunteer/personnel without switching screens
  2. Change how the pertinent tables are locked during the sale of a ticket or subscription to reduce contention on the event and performance records. This should eliminate issues when multiple users are trying to sell subscriptions at the same time, and eliminate random deadlock during ticket sales under high volume.
  3. Second generation listener now handles entry of credit card and confirmation of credit card screens. (It doesn't do final checkout page yet).
  4. There is an Apache update (2.4.12) with the latest openssl available. It has an additional configuration parameter to gzip the maps - and speed up the response to the browser by sending compressed information out the end user's browser. (Click for general upgrade instructions).
You should be able to install V10.04 on top of 10.03 and it should work with your old pages.

Point Release Version History

Point releases are minor version fixes and small enhancements to any particular version.

  • 10.04.02 - Mar 23, 2015
  • 10.04.03 - Apr 10, 2015
  • 10.04.04 - Apr 14, 2015
  • 10.04.05 - Apr 17, 2015
  • 10.04.07 - Apr 19, 2015
  • 10.04.08 - Apr 21, 2015
  • 10.04.09 - Apr 24, 2015
  • 10.04.10 - Apr 26, 2015
  • 10.04.11 - Apr 28, 2015
  • 10.04.12 - Apr 30, 2015
  • 10.04.18 - May 4, 2015
  • 10.04.20 - May 12, 2015
  • 10.04.22 - May 15, 2015
  • 10.04.23 - May 18, 2015
  • 10.04.25 - May 28, 2015
  • 10.04.26 - May 29, 2015
  • 10.04.27 - Jun 15, 2015

Personnel/Volunteer Custom Fields

There have been some changes to personnel window:

The upper tabs offer more information:

  • The Detail/Notes tab has more information on it
  • the Marketing tab has been added to this window. It has the same custom fields on it that the marketing tab on the patron window has and is placed here for ease of entry of some things like picture or gender.

The bottom part of the window now has 4 tabs

  • activities - which was there before
  • letters - for convenience when managing personnel and adding contracts, this an exact repeat of the patron window except it does not show web listener related items
  • tasks - is also a repeat of the patron window so that you can add tasks for personnel easily
  • relationships - is also a repeat of the patron window to allow adding relationships on one window for volunteer management

This means, for personnel management, there are quite a number of fields available for tracking status and activities:

  • 12 custom personnel only flags
  • 10 custom personnel only lookup fields
  • 1 custom personnel only date
  • 2 custom marketing dates - shared with the patron window
  • 8 custom marketing fields - shared with the patron window
  • birthday
  • SIN number (social security)
  • Equity Number
  • passport
  • picture of the patron - shared on the patron window
  • overall personnel status
  • and all the other patron fields and relationships info

Record locking processes

The record locking processes in ticket sales have been revised to remove database level contention for subscriptions and regular ticket sales. For many years, the manner in which TM updates summary statistics was to do it at the same time of the ticket sale. This could cause deadlock (two people trying to update the same record) under conditions of higher than normal single tickets sales or when two people tried to sell a subscription at exactly the same time. The updating of statistics has been delayed in a separate transaction by micro seconds - freeing the actual ticket sale to occur much quicker and with less database i/o. Anybody with onsales or using subscriptions are encouraged to upgrade.


  • Added support for optional events in a subscription. The user can renew (or create a new subscription) and remove the optional items.
  • Fixed an bug in the online subscription process where the cart would not be displayed correctly unless the subscription house was the first event address to the database.
  • Change order that cart items are displayed when a subscription is booked online. Now items are shown in the explicit order of date for mandatory events and the optional events are displayed after the optional events so that they can be removed

Web Sales - Second Gen Listener

  • The credit card entry screen and confirmation screen have been converted to second generation listener. At this time, the functions not converted to second gen listener are: final payment window, subscriptions and plugins.
  • Revise how the sold seat map is used to make it even more live with the current status of the seats sold and held. Previously, a separate field contained the seat letter status. The revised method captures the value from the actual seat each time a map is requested to make it more live.
  • Fixed an issue that stopped forwarding patrons to the checkout window from the cart window on venues using plugin's (10.04.08)
  • Add support for pass redemptions used when order plugins are installed at a venue (10.04.10)
  • Second gen listener can now be configured to start a classic listener under it - meaning (10.04.18)
      the classic listener can now be a service under a second gen listener
  • It does not need to be started visually -- it should restart after a machine reboot
  • There can be multiple classic listeners under one second gen listener - provided you have the CPU and resources for it
  • All web services started under any number of second gen listeners on any number of machines now count as one licence. Meaning, if you have web sales, it takes one licence, regardless of number of machines. This is not the same as starting many classic listeners as standalone machines - which counts as one per classic listener. The recommendation is to start classic listeners as part of second gen listeners. (10.04.18)
  • Fixed a corner case where if a venue had all its licences in use, and the classic listener as a service restarted itself, it would not start until somebody logged out. This has been fixed (10.04.23)
  • Payment Processing

    • The payment window will take values on the contractual agreement tab into account when suggesting the payment due. If there is a deposit due and final payment due amounts, and the dates are the future, then the suggested payment amount will be one of (10.04.04):
      • The full amount owing - if the final payment due date is passed, or it is unchanged from the order date
      • The deposit due amount - if the deposit due date is passed, but it is before the final payment date
      • Zero, if the deposit due date is not yet occurred. If the patron is making an advanced payment, they user will need to type it in.
    • The user can now specify which credit cards can be used to pay for tickets to a performance online. Normally, all credit cards are accepted, but you can now restrict certain cards for one performance - up until a specific date. After that date, all cards will be accepted. Any cart with a performance with a restricted credit card list will only be able to use those credit cards for the entire purchase. (10.04.04)
    • The tag/reference # sent to various credit card providers now states the cart number if the order was taken online. Previously, the cart number was labelled the order number (10.04.07)


    • Fixed the check for update process
    • Added search of tasks by event and venue
    • Current age of patron is added to the course reports
    • Fix subtotalling on the course relationship report
    • Allow 'Cant buy a Thing' passes/gift certificates to be sold online
    • Invoices have been updated to handle taxes on personnel
    • Fix the access controls on donation campaign detail. the donation list, GL and transaction tabs permissions were off by one tab
    • Adjust error message colour when dropping plugin code onto plugins window
    • Notifications have been enabled for performances - if a sale or refund on a performance has occurred and there is a notification set for it, it will be sent out to users (10.04.03)
    • Adjust payment allocation report to deal with case where order with fees had value but order had no value -and- it had refunded payments. This could occur if tickets were sold and paid for, payment was refunded and balance written off to a negative order fee. The result on the report was the inability to allocate no payments to order fees. (10.04.04)
    • Fix an issue where upgrading to from version 10.01 might complain about a non-existent field in the job file (10.04.05)
    • Add logo and address as options that can print on the tax receipts (10.04.05)
    • Shorten the list of tasks on the end of day sales posting by removing any item that is pushed to a background job task. This keeps the list showing only items that will take time for the user, and not clutter the screen with tasks that are running in the background (10.04.05)
    • Change the notification process for sales and other box office activities so that it is delayed and only run in the end of day 'create sales entry' process. This fixes issues where some reports that posted transactions were not running notifications -- as it is now centralized. Opening the transaction monitor will cause them to run right away. In the near future the second gen listeners will take over and do a timed activity and do them more frequently. The current change is to ensure that they always occur, even if delayed a bit. (10.04.05)
    • The member/pass/gift certificate entry window will now display a tax calculator button for those pass types that could include taxes. This allows the full value of the item to be entered and the tax back-calculated out of the price so that the price of the item becomes 'before tax'. This will save using a calculator (10.04.07)
    • Searching for shopping carts now includes the 'name/company' and 'email/phone' search fields (10.04.07)
    • Mail list window now allows search by two criteria (10.04.09)
    • Form letter window now allows search by two criteria (10.04.09)
    • Report criteria selection for the mail list field now includes mail list description and folder. You may need to right-click and restore columns to see these in the report parameter window (10.04.09)
    • You can now assign and remove gifted ticket on the play attendance window (10.04.09)
    • You can now refund tickets to an individual order on the play attendance window (10.04.09)
    • You can now 'open' the order window directly from the receivables listing window in addition to the existing ability to open the patron window directly (10.04.09)
    • Fixed issue in donation receipts (4 per page on legal) where the benefit amount was printing when it was empty (10.04.09)
    • Remove diagnostic message from postgres stored procedure which could appear in some database logs, depending on logging level. This does not fix anything - just silences an unnecessary message. (10.04.11)
    • Fix 'prevent overselling' for general admission events at the box office where the sales were happening faster than the hold counts could be updated. This issue arose due to a recent performance optimization (10.04.12)
    • Fix a pricing problem for 'pay what you can' events sold as general admission where the tickets were marked as 'group' tickets. The taxes could be calculated incorrectly (10.04.12)
    • Assign proper transaction source to employees in the case where a master user created the employee for another outlet. It may mean a few employees have incorrect transaction source in some outlet versions (10.04.12)
    • Defer addition of cleanup jobs for web logs till after EOD create sales entries (10.04.20)
    • Change warning message when informing user who is writing off a number of passes of the total remaining value of the passes being written off (10.04.25)
    • Fix issue changing sales promotion (10.04.26)

    Upgrade Steps

    Upgrading to version 10.04 requires, at a minimum:

    • Ensure that a second generation listener is running prior to the update using a simple test: just look at your web site and if you get a response, it is ok.
    • Follow the general upgrade steps and:
      • Install TM on ONE workstation.
      • Start TM and let it update the database. You will see a message informing when others can log in
      • This is a push-out release if you are at version 10.01 or later
    • Read current and prior version release notes for version 10.03 back to the version you are currently using. All releases in version 10 are cumulative, so you get everything since the last release.
    • Read the suggestions for 'Things a venue may need to do' at the bottom of each release.

    Things a venue may need to do:

    • Examine the new fields for personnel management and implement those you wish.
    • There are no web page changes required for this version
    • Update Apache to latest OpenSSL version (mac: 1.0.2a, windows: 1.0.1m)

    Changes to Web Pages

    Please download the latest web page updates and compare the web pages to your existing pages.

    The following itemizes the changes made to web pages:

    In the 3rd Column are 3 flags.

    • R=Required Page Change - must be made
    • M=Mandatory. Only make the page changes if you want one of the new features.
    • O=Optional. Mainly cosmetic or only make the change if it is needed because you want to implement the feature that the description column speaks about. Existing web pages should still work with this version of Theatre Manager - so this change can be deferred to later.

    No web pages have been changed for version 10.04 - only changes to tmError.txt. If you are using 10.03 web pages, things will run without altering web pages at all.
    Files in the main WebPagesEN directory
    tmError.txt There are some new messages that are used by the second gen listener for the checkout pages. If you do not add the messages to this file, you will get the default provided by the second generation listener. O