Changes

Custom Field Type: Special – MS Word Merge

7,539 bytes added, 18:14, 4 December 2018
no edit summary
This field type provides the ability to dynamically create an MS Word document from underlying [[SmartSimple]] data. __TOC__
The feature works as follows:==General Description==* Any MS Word document can be used, up This field type provides the ability to and including MS Word 2007 documents. * You can use a normal Word document (doc or .docx), or you can use Word templates (.dot or .dotx).* You must first dynamically create a document which includes the an MS Word Form Fields to be populated by SmartSimple. Each Form Field must be provided with a name (called a '''Bookmark''' in MS Word). This name will be used to link the form field on the Word document to a Standard or Custom Field within from underlying [[SmartSimple]]data.
Configuring a Word Merge in SmartSimple is a three-step process:
==# Create the MS Word document that will be used as the template. (See [[Adding Form Fields to a MS Word Document:==]] for instructions.)===MS Word 2000-2003:===* From the '''View''' Menu select '''Toolbars''' and enable # Upload the '''Forms''' Toolbar* Click in your Word document wherever you wish to insert a Form Field[[SmartFolder]]. (See [[Uploading Word Merge Document to a SmartFolder]] for instructions.)* On the Forms Toolbar click on the first button # '''This page describes how to insert create a Form Custom Field into your document: [[ImageType:FormsToolbar.gif]]* RightSpecial -click on MS Word Merge custom field that maps the Form Field and select Properties. Then provide a name for SmartSimple fields you wish to merge to the field in the Bookmark sectionWord template.'''
<!--<span class="mceNonEditable template" id="bs_template:@@@TPL0@@@" data-bs-name=" FieldOptions" data-bs-type="template" data-bs-id="0"><span class="mceNonEditable template" id="bs_template:@@@TPL0@@@" data-bs-name=" FieldOptions" data-bs-type="template" data-bs-id="0"><span class="mceNonEditable template" id="bs_template:@@@TPL0@@@" data-bs-name=" FieldOptions" data-bs-type="template" data-bs-id="0"><span class="mceNonEditable template" id="bs_template:@@@TPL0@@@" data-bs-name=" FieldOptions" data-bs-type="template" data-bs-id="0"><span class="mceNonEditable template" id="bs_template:@@@TPL0@@@" data-bs-name=" FieldOptions" data-bs-type="template" data-bs-id="0"><span class="mceNonEditable template" id=MS Word 2007"bs_template:@@@TPL0@@@" data-bs-name=" FieldOptions" data-bs-type="template" data-bs-id="0">{{ FieldOptions }}</span></span></span></span></span></span>-->* Click on the Menu button and select '''Word Options'''<!--<span class="mceNonEditable template" id="bs_template:@@@TPL2@@@" data-bs-name="AppearMandatory" data-bs-type="template" data-bs-id="2"><span class="mceNonEditable template" id="bs_template:@@@TPL2@@@" data-bs-name=" AppearMandatory" data-bs-type="template" data-bs-id="2"><span class="mceNonEditable template" id="bs_template:@@@TPL2@@@" data-bs-name=" AppearMandatory" data-bs-type="template" data-bs-id="2"><span class="mceNonEditable template" id="bs_template:@@@TPL2@@@" data-bs-name=" AppearMandatory" data-bs-type="template" data-bs-id="2"><span class="mceNonEditable template" id="bs_template:@@@TPL1@@@" data-bs-name=" AppearMandatory" data-bs-type="template" data-bs-id="1"><span class="mceNonEditable template" id="bs_template:@@@TPL1@@@" data-bs-name=" AppearMandatory" data-bs-type="template" data-bs-id="1"><span class="mceNonEditable template" id="bs_template:@@@TPL1@@@" data-bs-name=" AppearMandatory" data-bs-type="template" data-bs-id="1">{{ AppearMandatory }}</span></span></span></span></span></span></span>* In the '''Popular''' selection ''Show Developer Tab in the Ribbon''<span class="mceNonEditable template" id="bs_template:@@@TPL3@@@" data-bs-name="ToolTip" data-bs-type="template" data-bs-id="3"><span class="mceNonEditable template" id="bs_template:@@@TPL3@@@" data-bs-name=" ToolTip" data-bs-type="template" data-bs-id="3"><span class="mceNonEditable template" id="bs_template:@@@TPL3@@@" data-bs-name=" ToolTip" data-bs-type="template" data-bs-id="3"><span class="mceNonEditable template" id="bs_template:@@@TPL3@@@" data-bs-name=" ToolTip" data-bs-type="template" data-bs-id="3"><span class="mceNonEditable template" id="bs_template:@@@TPL2@@@" data-bs-name=" ToolTip" data-bs-type="template" data-bs-id="2"><span class="mceNonEditable template" id="bs_template:@@@TPL2@@@" data-bs-name=" ToolTip" data-bs-type="template" data-bs-id="2"><span class="mceNonEditable template" id="bs_template:@@@TPL2@@@" data-bs-name=" ToolTip" data-bs-type="template" data-bs-id="2">{{ ToolTip }}</span></span></span></span></span></span></span>* Click in your Word document wherever you wish to insert a Form Field.* On the Developer Menu select the '''Legacy Tools''' icon which is in the Controls section<span class="mceNonEditable template" id="bs_template:@@@TPL4@@@" data-bs-name="HideFieldForNewRecord" data-bs-type="template" data-bs-id="4"><span class="mceNonEditable template" id="bs_template:@@@TPL4@@@" data-bs-name=" HideFieldForNewRecord" data-bs-type="template" data-bs-id="4"><span class="mceNonEditable template" id="bs_template:@@@TPL4@@@" data-bs-name=" HideFieldForNewRecord" data-bs-type="template" data-bs-id="4"><span class="mceNonEditable template" id="bs_template:@@@TPL4@@@" data-bs-name=" HideFieldForNewRecord" data-bs-type="template" data-bs-id="4"><span class="mceNonEditable template" id="bs_template: [[Image@@@TPL3@@@" data-bs-name=" HideFieldForNewRecord" data-bs-type="template" data-bs-id="3"><span class="mceNonEditable template" id="bs_template:2007Forms.gif]]* On the Legacy Forms menu click the first icon to insert a Form Field.* Right@@@TPL3@@@" data-bs-name=" HideFieldForNewRecord" data-bs-type="template" data-bs-id="3"><span class="mceNonEditable template" id="bs_template:@@@TPL3@@@" data-bs-click on the Form Field and select Properties. Then provide a name for the field in the Bookmark section.=" HideFieldForNewRecord" data-bs-type="template" data-bs-id="3">{{ HideFieldForNewRecord }}</span></span></span></span></span></span></span>
<span class="mceNonEditable template" id="bs_template:@@@TPL5@@@" data-bs-name="OptionsTab" data-bs-type="template" data-bs-id="5"><span class="mceNonEditable template" id="bs_template:@@@TPL5@@@" data-bs-name=" OptionsTab" data-bs-type="template" data-bs-id="5"><span class="mceNonEditable template" id="bs_template:@@@TPL5@@@" data-bs-name=" OptionsTab" data-bs-type="template" data-bs-id="5"><span class="mceNonEditable template" id="bs_template:@@@TPL5@@@" data-bs-name=" OptionsTab" data-bs-type="template" data-bs-id="5"><span class="mceNonEditable template" id="bs_template:@@@TPL4@@@" data-bs-name=" OptionsTab" data-bs-type="template" data-bs-id="4"><span class="mceNonEditable template" id="bs_template:@@@TPL4@@@" data-bs-name=" OptionsTab" data-bs-type="template" data-bs-id="4"><span class="mceNonEditable template" id="bs_template:@@@TPL4@@@" data-bs-name=" OptionsTab" data-bs-type="template" data-bs-id="4">{{ OptionsTab }}</span></span></span></span></span></span></span>
<span class="mceNonEditable template" id="bs_template:@@@TPL6@@@" data-bs-name="AppearMandatory" data-bs-type="template" data-bs-id="6"><span class="mceNonEditable template" id="bs_template:@@@TPL6@@@" data-bs-name=" AppearMandatory" data-bs-type="template" data-bs-id="6"><span class="mceNonEditable template" id="bs_template:@@@TPL6@@@" data-bs-name=" AppearMandatory" data-bs-type="template" data-bs-id="6"><span class="mceNonEditable template" id="bs_template:@@@TPL6@@@" data-bs-name=" AppearMandatory" data-bs-type="template" data-bs-id="6"><span class="mceNonEditable template" id="bs_template:@@@TPL5@@@" data-bs-name=" AppearMandatory" data-bs-type="template" data-bs-id="5"><span class="mceNonEditable template" id="bs_template:@@@TPL5@@@" data-bs-name=" AppearMandatory" data-bs-type="template" data-bs-id="5"><span class="mceNonEditable template" id="bs_template:@@@TPL5@@@" data-bs-name=" AppearMandatory" data-bs-type="template" data-bs-id="5">{{ AppearMandatory }}</span></span></span></span></span></span></span>
<span class="mceNonEditable template" id="bs_template:@@@TPL7@@@" data-bs-name="DisableFromGlobalSearch" data-bs-type="template" data-bs-id="7"><span class="mceNonEditable template" id="bs_template:@@@TPL7@@@" data-bs-name=" DisableFromGlobalSearch" data-bs-type="template" data-bs-id="7"><span class="mceNonEditable template" id="bs_template:@@@TPL7@@@" data-bs-name=" DisableFromGlobalSearch" data-bs-type="template" data-bs-id="7"><span class="mceNonEditable template" id="bs_template:@@@TPL7@@@" data-bs-name=" DisableFromGlobalSearch" data-bs-type="template" data-bs-id="7"><span class="mceNonEditable template" id="bs_template:@@@TPL6@@@" data-bs-name=" DisableFromGlobalSearch" data-bs-type="template" data-bs-id="6"><span class="mceNonEditable template" id="bs_template:@@@TPL6@@@" data-bs-name=" DisableFromGlobalSearch" data-bs-type="template" data-bs-id="6"><span class="mceNonEditable template" id="bs_template:@@@TPL6@@@" data-bs-name=" DisableFromGlobalSearch" data-bs-type="template" data-bs-id="6">{{ DisableFromGlobalSearch }}</span></span></span></span></span></span></span>-->
<!--==Value Storage==
<span class="mceNonEditable template" id="bs_template:@@@TPL8@@@" data-bs-name="ValueStoresTo" data-bs-type="template" data-bs-id="8"><span class="mceNonEditable template" id="bs_template:@@@TPL7@@@" data-bs-name=" ValueStoresTo" data-bs-type="template" data-bs-id="7"><span class="mceNonEditable template" id="bs_template:@@@TPL7@@@" data-bs-name=" ValueStoresTo" data-bs-type="template" data-bs-id="7"><span class="mceNonEditable template" id="bs_template:@@@TPL7@@@" data-bs-name=" ValueStoresTo" data-bs-type="template" data-bs-id="7">{{ ValueStoresTo }}</span></span></span></span>
<span class="mceNonEditable template" id="bs_template:@@@TPL9@@@" data-bs-name=" CFPermissionsTab" data-bs-type=Upload to SmartFolder"template" data-bs-id="9"><span class=When the document/"mceNonEditable template is ready it must be uploaded to a [[Smart Folder]]. Once it has been uploaded take note of either" id="bs_template: * The file ID, which can be obtained by hovering your mouse over the file link<br />@@@TPL8@@@" data-bs-name=" CFPermissionsTab" data-bs-ortype="template" data-* The the folder ID, which can be obtained by rightbs-clicking on the folder link and selecting Properties:id="8"><br>[[Imagespan class="mceNonEditable template" id="bs_template:FolderID.PNG|left]]<br@@@TPL8@@@" data-bs-name=" CFPermissionsTab" data-bs-type="template" data-bs-id="8">The folder ID is the resourceID. For example if the URL is<pre>httpspan class="mceNonEditable template" id="bs_template://smart.smartsimple.org/s_editresource.jsp?resourceid@@@TPL8@@@" data-bs-name=" CFPermissionsTab" data-bs-type="template" data-bs-id=67159"8">{{ CFPermissionsTab }}</prespan>the Folder ID is 67159<br/span><br/span><br/span>-->==Set Up: Creating the MS Word Merge Field==You ===Setting the Values===Now that the Word document to be used as the template [[Adding Form Fields to a MS Word Document|has been created (step 1)]] and [[Uploading Word Merge Document to a SmartFolder|uploaded to a SmartFolder (step 2)]], you can now create proceed to step 3: creating the MS Word Merge custom field in [[SmartSimple]] that will be used to dynamically populate the document.<br>[[Image:WordMerge1.png]]* In the '''Values''' section: , the form fields you created on the MS Word document are now assigned by name to the associated [[SmartSimple]] Field Names or [[Custom Field ID|Field IDs]]. The syntax is ''Mergefield = @SmartSimple field name@;'' where ''Mergefield'' is a Bookmark you have assigned to a Form Field in [[Adding Form Fields to a MS Word Document|step 1]]. : ''Examples:''::''signatory=@me.fullname@;'' :::or ::''datesigned=@#565346#@;'': [[Image:WordMergeValues.png|link=]]* Each ''Form Field'' on the MS Word Merge Document should be represented on a different line in the MS Word Merge Field '''NoteValues''': Field references are section, and each line must end with a semi-colon delimited.* The variables used for the '''MS Word Merge''' are the same as for a [[Web Page View Field]] and can be found at [[Web Page View Field Variables]].* Only fields containing text can be used for the Word Merge. Please note that you cannot use image fields, file fields etc.* [[Rich Text]] fields are not suitable for including in MS Word Merges because of the additional encoding to support formatting.* The sequence is not important, as the variables are matched using the bookmark name.** The only exception is when SmartSimple variables are merged to a Word table; the table references must be at the bottom of the list of '''Values'''. See [[Including Tables in a Word Merge Document|this page]] for instructions on configuration.
* You can assign more than one field from SmartSimple into a single MS Word form field, and include other text and characters:
:*:''time=@starth@:@startminute@ @startpmam@;'' would display in this format: '''"12:35 pm"''' in the time form field:*::or::* ''contractdetails=@duration@ with a monthly fee of $@monthlyfee@;'' would result in '''"24 months with a monthly fee of $200"''' in the contractdetails form field  * You can include ''&lt;!--hideifnotfound-->''In generalin front of variables that may not be present to ensure nothing is displayed, rather than the variables used for the variable name.** An example would be ''monthlyfee=&lt;!--hideifnotfound-->@monthly fee@;''MS * You can include HTML code embedded within tags. The SmartSimple Word Merge''' are engine will apply the HTML formatting to the value before merging to the same as Word document.** Note that HTML code will only function when merging to a single record, not for a the [[Web Page Exporting List View Field]] and can be found at [[Web Page View Field VariablesResults to Microsoft Word|batch merge mode]].** Example:
<pre>bookmarkname===Including Tables===You can also add data to one or more existing '''tables''' in the resultant MS Word document if you have multiple records that you need to include.''For example: all Level 2 Activities related to a Level 1 entity''* In the example below the first table (identified by position and referenced as table_1) is set to the records associated with the [[Entity|entity]].</pre>[[Image:WordMergeTable.PNG]]* In the MS Word document you must create a table with the relevant number of columns. The table should only include a single row with the column headings #(the heading do '''not''' have to match the field names within SmartSimple.?object=activity)* You do '''not''' have to create form fields within the table. New rows will be created automatically and populated with data in the order specified in in the MS Word Merge Custom Field '''Values''' section.* The table you create in MS Word for the example above would look like this:[[Image:WordTable.PNG]#]
{| style="width: 100%;"
|-
!|#
!|Date
!|Details
|-
| style="width: 10%;"|~Index~
| style="width: 40%;"|<!--@sscalculation(DATE_FORMAT("~startdate~","%d %M %Y"))-->
| style="width: 10%;"|$Activity Details$
|}
<pre>;</pre>
** You can use the following special characters in this section to control the output on the MS Word Merge document:
*** ^p = Line break
*** ^t = Tab
===Custom Field IDs===
You can use the Extract IDs and Display Field Names links in the section to display associated Field IDs and Field Names.<br/>[[Image:Extract.PNG|link=|400px]]<br />''This is for information only. Data in the 'See [[Custom Field IDs section does not control any behaviour]] for more information.'''
===Smart Folder/File ID===
You must also specify the either the Field ID or File ID (as described [[#Upload to SmartFolderUploading_Word_Merge_Document_to_a_SmartFolder|abovein the previous step]]) of the MS Word document.<br/>[[Image:FileID.PNG|link=]] *** If you specify the Folder ID, all documents in the folder will be displayed in a combo-box upon initiating the Word merge. The [[User|user]] can select the document that he/she wishes to create.:***::''Useful if you have several different versions of a document to be generated from the same underlying data''*** If you specify the File ID, that specific document will be createdused as the template for the Word merge.
==Generating the Document==
*** In order to generate the document when viewing or editing a record you simply click the button associated with the MS Word Merge. :***:''If a Folder ID was specified in the [[Custom Field]] settings you will be prompted to select which document should be used.''*** The document will be dynamically created and the [[SmartSimple]] data added.***'''Note''': If the [[User|user]] wishes to edit or retain the document he/she may need to use the MS Word '''Save As''' feature. Some [[Browser|browsers]] may cause it to be read only initially.  ==Uploading the MS Word Merge Document to a Custom Field==The document created when you click on the MS Word Merge button is "disconnected" from [[SmartSimple]]. If you wish *** Remember to upload check the document to [[SmartSimple]] you can use one size of two techniques:* Login and upload the document to the appropriate single or multiple file field.<br />-or-* Use the [[SmartDoc for Microsoft Word Integration|SmartDoc Plug-In]] to automatically upload , header and footer pictures may interrupt the document to a specified single or multiple file field, without directly logging into the systemmerge.  '''SmartDoc plug-in document uploading:'''
* To use the ==Field Options==All common options:<br />[[SmartDoc for Microsoft Word IntegrationCustom Fields - General Information #General_Settings|SmartDoc Plug-InGeneral Settings]] to upload a Word document you need to specify the field within SmartSimple that will be used to store the document. It can be either a <br />[[Custom Fields - General Information #Role Field Permissions and Status Field Type: Link – Single FilePermissions|Single FilePermissions & Availability]] or <br />[[Custom Field Type: Link – Multiple FilesFields - General Information #Classic Options|Multiple FileClassic Options]] field.<br />* The field name is set in the MS Word Merge Field type - For further information, please refer to [[Custom FieldFields – General Information]] setting.<br /><br />[[Image:StoreToOptions listed below are specific to this particular field type.PNG]]<br>* All '''Value''' - Allows the form fields you created on the MS Word document are now assigned by name to the associated [[Custom Field Type: Link – Single File|Single FileSmartSimple]] and Field Names or [[Custom Field Type: Link – Multiple FilesID|Multiple FileField IDs]] fields on the same level as the MS Word Merge field will be available in the * '''Value Stores ToCustom Field IDs''' combo box.* Each user will need to download - You can use the Extract IDs and install the latest version of Display Field Names links in the [[SmartDoc for Microsoft Word Integration|SmartDoc Plug-In]] section to take advantage of this featuredisplay associated Field IDs and Field Names.<br>Once the MS {{ButtonLabel}} For Word Merge document has been generated as described [[#Generating fields, the Document|above]] the [[user]] can edit the document and/or save it locally if desireddefault label is "Open". <br>Selecting the * '''Upload DocumentSmartFolder / File ID''' button on - Here you can specify the either the Field ID or File ID (as described [[SmartDoc for Microsoft Word IntegrationUploading_Word_Merge_Document_to_a_SmartFolder|SmartDocin the previous step]] toolbar in ) of the MS Word will cause the document to uploaded to [[SmartSimple]] and attached to the designated field.
==See Also==
{{WordMergeLinks}}
[[Category:Enhancements]][[Category:Custom Fields]][[Category:Plug-Ins for Microsoft Office]]{{CustomFieldPageFooter}}
Smartstaff, administrator
421
edits