Reports+-+Point+Form+Narratives+Setup

Rev 2016-04-05: Version 2 Tired of verbose and repetitious sentences in narrative reports and the effort involved in customising and tweaking them so that grammar and prepositions and pronouns were correct, I got the idea some years ago that what I might prefer is a hybrid of the tabular format of the Individual Summary and Family Group Sheet with event/fact notes embedded rather than at the end. Jerry Bryan demonstrated such a concept with his Oct 12, 2015 RootsMagic Forums posting, "[|Preparing an RM Descendant Narrative Report for a Family Reunion for This Year]". While he did so using largely manual procedures, this SQLite script makes it easy to try out a similar format and then restore your prior format.


 * ~ Settings ||~ Normal ||~ Point Form ||
 * Normal - "Keep facts in same paragraph"

Point Form - space character starts fact, 0 Carriage Returns

Note that for all examples of Point Form, the RootsMagic report settings option for paragraphing is set to "Keep facts in same paragraph".

Although the Point Form is not strictly point form because the facts run together in the same paragraph, it is actually better for fast reading than is the Normal report because there are fact names that catch the eye, the 'sentences' are terse and consistent and it is the most efficient in use of space and paper. || ||  ||
 * Normal - "New paragraph after every fact"

Point Form - 2 Carriage Returns start fact

Both of these waste trees! || ||  ||
 * Normal - "New paragraph after facts with notes"

Point Form - 1 Carriage Return starts fact

This Point Form layout is the most attractive of the three or, at least, comes closest to the concept of a hybrid of the Individual Summary and Narrative report. || ||  ||


 * Features**:
 * Backs up key tables or parts thereof to 'x' versions which are used by the complementary script to restore back to the previous format.
 * User control* over fact/event sentence heading format: one of plain, bold, italics, underlined.
 * User control* over fact/event sentence lead-in carriage returns.
 * Changes default sentences to point form without [person] variables.
 * Default sentences begin with the fact type name as a heading. This is the name defined in Lists>Fact Type List; the user can edit user-defined fact types in RootsMagic.
 * Alternate Names are labelled by their type, if assigned in the Edit Person screen.
 * Shared events show the role names of the sharers.
 * Adds _Heading event to provide the initial [person] sentence as the first 'fact' so each person's section will start with the person's name and not be stated as 'factless'. Version 2 does not do this; instead it uses a Jerry Bryan trick of putting a line feed/carriage return after the [Person] variable for the Birth sentence template, normally the person's first event. This does require a Birth event as the first event to be output to the narrative report.
 * Adds two trailing CR/LF to the Note field of the last family event (by SortDate) of each couple to force the spouse's subsection of a person's report section to start a new paragraph. (V2)


 * The script works best with a SQLite manager that supports run-time variables such as SQLite Expert Personal to provide control over the format of fact headings and fact paragraphing. Those that do not support them, such as SQLiteSpy, default to bold and no s. In either case, a RMNOCASE collation extension is needed. To add the RNMOCASE collation extension, see either:
 * Faking It - RMNOCASE for SQLite Expert Personal
 * Faking It - RMNOCASE for SQLiteSpy

__Version 2__ __Version 1__


 * Use**:
 * 1) Open your database (safer to use a copy) with your SQLite manager.
 * 2) Load the RMNOCASE extension.
 * 3) Load the SQLite script Reports-PointFormNarrativeSetup.sql.
 * 4) Execute the script.
 * 5) SQLite will throw an error if the database has been previously modified by this script without subsequently running Reports-RestoreAfterPointForm.sql. Load and run the latter and return to step 3.
 * 6) If prompted for a value for $FactNameFormat_ibun, type in one of the letters: __i__talics, __b__old, __u__nderline, __n__o and OK. Any value other than i, u, n is the same as b.
 * 7) If prompted for a value for $ParagraphCR_0_1_2, type in one of the numbers 0,1,2 to define the number of Carriage Returns prepended to the sentence. Any value other than 1 or 2 is the same as 0 - a leading space character.
 * 8) On successful completion the results window will display a status message so reporting.
 * 9) Open RootsMagic and generate narrative reports. Use the Report Settings Option "Keep fact sentences in same paragraph" to start, especially if you have chosen to have lead-in carriage returns.
 * 10) You can leave the report preview open and rerun the scripts to switch back to original and to different point form formats. After each execution of a script, you can quickly see its effects from report view with Alt-t to return to Report Settings and  to regenerate the report with the changes.
 * 11) You may want to try some other scripts that affect reports after having set up your database for point-form reports:
 * Paragraphing
 * Reports, Narrative, Jerry Bryan Trick to cause a childless child to be reported in their generation section.
 * Places - first name exploit for improved narratives so that full place names are not repeated for a person
 * Reports - Concordance for Indexes