Printing Letters Alternate
Why an Alternate Version?
The mailings engine in SeedCode Calendar Complete prints letters (and generates) emails based on merge fields. This gives you great control over the text side of the letter, but not much control over the layout side. If you need each letter to have a different layout appearance yo may want to look at our alternate letter system.
In this alternate version, also part of SeedCode Calendar Complete, each of your templates is a layout, instead of a record.
The “Print Contact ( Action )” script has this alternate version currently as a disabled script step in the “Letter” section of the script. If you’d like to try this alternate version out, re-enable that step and disable the one above the alternate comment (the one performing “add contacts to mailing...”)
If you choose to print the found set instead of a single record, you’ll find the the sort order of the found set is preserved between printing routines. This means that your envelopes and letters will print in the same order.
The following notes pertain just to this alternate version of printing letters.
How do I create new letter templates?
When you run this script, you’re presented with a pop-up window from which you can select which letter template to use.
You can easily add to this list by creating new letter templates. Simply enter layout mode from the contact’s overview screen and navigate to the last layouts in the file. These layouts begin with “Letter – ”. You can duplicate any of these “Letter – ” layouts as the basis for your own layout. As long as you keep the “Letter – ” at the beginning of the layout name then your new layouts will appear in the pop-up window from which they can be selected.
The content of the letter, the body, is “on” the layout as a text object so that it can include merge fields. Using the letters in this way, you’d create a new layout (or modify an existing layout) for each letter you’d need. If you don’t need merge fields in your letter body, consider making one layout with a global field for its body text so that you can reuse the same letter layout over and over.
Why is the list of possible letter layouts Blank?
There are a couple possible reasons for this. Firstly, this list need to be populated by a script before you arrive at the layout. If you just navigate to this layout by hand you may not see the correct list. To populate this list set the field "Filters::FilterLetterLayoutsAvailableText" to the following before you take users to the layout:
Let ( [ n = LayoutNames ( Get ( FileName ) ) ; p = "Letter - " // the string you're using to prefix your letter layout(s) ] ;
n ; PatternCount ( Left ( n ; Position ( n ; p ; 1 ; 1 ) ) ; "¶" ) + 1 ; PatternCount ( n ; p )
) // End MiddleV
) // End Let
Then call a "Commit Record/Request" script step.
If you this is still not showing the correct layout, you may have renamed the value list “Letter Layouts”; that name must be exactly that. Finally, you may have no layouts beginning with “Letter – ” which is our criteria for including the layout in the list.