Changes

Web Page View Field Variables

22,978 bytes added, 20:45, 17 March 2023
no edit summary
The [[Web Page View Field]] provides the ability to display a fully formatted document or web page.
In constructing this type of page HTML is used in conjunction with the following variables.  ==Variable List== <u>'''User Variables'''</u>
=Variable List=
==Current User==
''Note: "me" -- refers to the current user''
'''@me.companyname@'''
<u>'''UTA Level 1@me.type@''' (returns 'User', Sales Opportunity and Job Variables'Local User Administrator' or 'Global User Administrator'</u>)
==UTA Level 1, Sales Opportunity and Job Variables==
'''@name@''' - standard field '''Application Name'''.
'''@status@''' - standard field '''Status'''
'''@typecaption@''' - standard field '''Application Template Type Caption'''. '''@statuscaption@''' - standard field '''Status Caption''' '''@type_lang@''' - standard field '''Application Template Type (Based on user language setting)'''. '''@status_lang@''' - standard field '''Status (Based on user language setting)''' '''@description@'''
'''@requirements@'''
'''@probability@'''
 
'''@modifiedby@''' / '''@modifiedbyid@'''
'''@modifieddate@'''
'''@enddate@'''
 
'''@createddate@'''
 
'''@createdby@'''
'''@jobquestions@''' - displays as combo boxes
'''@owner.field@'''
Example: '''@owner.fullname@''' or '''@owner.address@'''
'''@peopleperson.field@'''
Example: '''@peopleperson.fullname@''' or '''@peopleperson.address@'''
'''@company.field@'''
Example: '''@company.name@''' or '''@company.address@'''
Example '''@company.owner.email@'''
'''@branch.field@'''
Example: '''@branch.name@''' or '''@branch.address@'''
'''@apptype@''' the Application ID (appid) of the UTA.
<u>'''==UTA Level 2 / Activities Variables'''</u>==
'''@subject@'''
'''@owner@'''
 
'''@eownerid@''' - userid of the owner
'''@contact@'''
'''@eventid@'''
 
'''@typename@'''
'''@objectid@'''
'''@rootcompanyid@'''
'''@rootcompany.name@'''
'''@contact.field@'''
<u>'''==UTA Level 2 variables called from UTA Level 3'''</u>== If your '''Web Page View''' is When working at Level 3, you can call Level 2 variables using:
'''@parent.'''''fieldname'''''@''' or '''@parent.#'''''fieldid'''''#@''' (Note: All field names should be entirely lower case.)
<u>'''UTA Level 1 variables called from UTA Level 3'''</u>
If your '''Web Page View''' is at Level 3, you can call Level ` 1 variables using:
'''@parent.parent.'''''fieldname'''''@''' or '''@parent.parent.#'''''fieldid'''''#@''' (Note: All field names should be entirely lower case.)
==Field List==
<u>'''Level 3 Associated Parent (Opportunity) '''</u>
 
Where Payment Allocation is enabled you have two models to choose from before configuring: usually the Associated Parent is a Funding Stream of Overall Budget (event) and the associated object is the Disbursement (Level 3). In less granular cases the Associated Parent is the opportunity.
 
<u>'''Level 3 Associated Parent'''</u>
 
 
If Payment Allocation is enabled, you can pull fields from the Associated Parent using the following variable:
 
'''@linkparent.''fieldname''@'''
 
If your associated payment is linked to the event you can pull fields from the opporunity using the following variable:
 
'''@linkparent.''parent''.fieldname@''' So '''@linkparent.''parent''.branch@''' will return: '''SmartSimple Inc.'''
 
On the company/branch:
 
'''@linkparent.parent.branch.''Transit''@''' will return: '''''1950'''''
 
=Field List=
<u>'''People Fields'''</u>
firstname, lastname, fullname, title, email, phone, company, address, address2, city,
province, state, country, postalcode, owner, modifieddate, cost, costunit, type, resourcename, isrecource, uprefix (prefix), usuffix (suffix), uphoneext (Phone Extension)
<u>'''Company Fields'''</u>
name, address, address2, city, province, state, country, postalcode, phone, fax, website
<u>'''Lead Fields'''</u>
status, description, name, phone, fax, address, address2, city, state, province, country,
postalcode, website, firstname, lastname, contactphone, title, email, dat_added
=UTA Contact and Account Variables=How to display contact information for people associated in the Contacts sectionOwner: : <span style="font-size: medium;">'''@owner.''fieldname''@'''</span>Person (Level 1 only): : <span style="font-size: medium;">'''@person.''fieldname'''''@</span>Assigned (Level 2 only): : <span style="font-size: medium;">'''@assigned.''fieldname''@'''</span>Company (Level 1 only):
: <span style="font-size: medium;">'''@client.''fieldname''Use the variable@''':</span>Use @client.categoryids@ to return a list of [[Determining the categoryid|category IDs]] - comma delimited - note the leading comma - e.g. ",1234,555,666,"
Use @contactclient.rolenamecategories@ to return a list of category names - comma delimited e.field@g. "Agency,Marketing,Good client"
'''where'''==Level 1 Contacts/Accounts=====Individual===To display information for a <u>single</u> contact/account in the Level 1 contacts/accounts section:
: <span style="font-size: medium;">'''@contact.''rolename .fieldname''@''' </span> &nbsp; or &nbsp; <span style= the name of the role that has been assigned to the contact on the Level One item"font-size: medium;"> '''@company.''rolename.fieldname''@'''</span>'''where:'''
* ''rolename'' = the name of the role that has been assigned to the contact/account on the Level One item* ''fieldname''field = the name of the field that is located on the contact's record'''.Example:
@contact.adjuster.firstname@ or @company.funding agency.address@
ExampleNote: @if there is more than one contact/account assigned with the rolename specified, only one will be displayed.adjuster.firstname@ or @contact.project manager.address@
==How to =List===To display contact information for Companies (Accounts) associated a list of multiple contacts/accounts in the Contacts Level 1 contacts/accounts section==:
: <span style="font-size: medium;">'''Use the variable[#(?object=contact) ~''fieldname''~ #]'''</span> or <span style="font-size:medium;"> '''[#(?object=company) ~''fieldname''~ #]''' </span>See [[#To display a list of Activities (Level 2 or 3), Notes, Contacts or Companies|below]] for details on how to filter and sort the list(s).
@* '''Note''': to display the role that the contact or account is assigned on the Level 1 record use: <span style="font-size: medium;">'''~role~'''</span>* '''Note''': to display the name of the contact's company.rolename.field@use: <span style="font-size: medium;">'''~companyname~'''</span>
'''where'''==Level 2 Contacts/Accounts=====Individual===To display information for a <u>single</u> contact in the Level 2 contacts section:
: <span style="font-size: medium;">'''@contacts.''rolename = the name of the role that has been assigned to the Company on the Level One item.fieldname''@''' </span>'''where:'''
* ''rolename'' = the name of the role that has been assigned to the contact on the Level Two item* ''fieldname''field = the name of the field that is located on the Companycontact's record'''.Example:
@contacts.adjuster.firstname@
ExampleNote: @companyif there is more than one contact assigned with the rolename specified, only one will be displayed.insurance companies.name@ or @company.consulting firms.address@
==How to =Contacts===To display a list of UTA the contacts assigned at Level 1 Activities, Contacts or Companies==2:
: <span style="font-size: medium;">'''[#(?object= [activity,contact,user,company,association,level-1 (applies to contacts only) or transaction~firstname~ ~lastname~ ~email~ #]'''</span>To display only contacts assigned at Level 2 with a specific role/roles (only relevant if the Level 2 Multiple Contact List is enabled)
: <pre><tablespan style="font-size: medium;">'''[#(?object=object;orderbycontact::criteria=roleid=field12345)<tr><td>~fieldfirstname~</td><td>~fieldlastname~</td><td>~fieldemail~</td><td>$customfield id$</td></tr>#]'''</table></prespan>To get the intersection record identifier (equivalent to ~oprid~ at Level 1) (i.e. for use in [[Pandora]] functions)
: <span style="font-size: medium;">'''[#(?object=contact) ~lnkid~ #]'Example''</span>To display the contact's profile status: <prespan style="font-size: medium;">'''[#(?object=contact) ~firstname~ ~lastname~ ~ustatusid~ #]'''</span>'''Notes:''' * Contacts at level 2 cannot be filtered by rolename, only roleid* If the multiple contact list is enabled use '''~role~''' to display the assigned role. ===Accounts===To display information for a <u>single</u> account in the Level 2 accounts section: : <span style="font-size: medium;">'''@companies.''rolename.fieldname''@'''<table/span>To display a list of the companies assigned at Level 2: : <span style="font-size: medium;">'''[#(?object=activitycompany::orderby=name)~name~ #]'''</span>To get the intersection record identifier (i.e. for use in [[Pandora]] functions) : <span style="font-size: medium;">'''[#(?object=company) ~clnkid~ #]'''</span>'''Notes:''' :* The Account standard field is only available at Level 2 when the Multiple Account list is enabled. See [[Relating Contacts and Accounts to the Universal Tracking Application#The Account List Field|here]] for details. ==To display Level 1 Company Role or Contact Role custom fields==<span style="font-size: medium;">'''[#(?object=company;)$?opc_''customfieldid''$#]'''</span> or <span style="font-size: medium;">'''[#(?object=contact;orderby)$?opr_''customfieldid''$#]'''</span>  '''where:''' * customfieldid =startdatethe numeric id of the custom field '''Note:''' for level 2 records (when the multiple contact/company list(s) are enabled)use $?opr2_''customfieldid''$ and $?opc2_''customfieldid''$ Following the same format above, you can also reference custom fields on the company role using the @#field id#@ syntax. <u>'''Contact Detail'''<tr/u~uprefix~ ~firstname~ ~lastname~ ~uaddress~ ~uaddress2~ ~ucity~, ~ustate~ ~upostalcode~ ==To display Company Association or Contact Association fields==The syntax for extracting information on the entity to which they are associated is as follows . . . <tdspan style="font-size: medium;">'''[#(?object=association)~name~ ~subjectstandard field name~$?afc_custom field id$ $?afc_custom field name$#]<br /td><tdbr />'''[#(?object=companyassociation)~locationstandard field name~$custom field id$ $custom field name$#]'''</tdspan'''where:''' * standard field name = name of the standard field* custom field id = the numeric id of the custom field* custom field name = the name of the custom field  The syntax for extracting information on fields that are on the intersection, rather than the entity to which they are associated, is as follows . . . <tdspan style="font-size: medium;">'''[#(?object=association) ~startdateafcompanyid~#]<br /td><br /tr>'''[#(?object=companyassociation)~afroleid~ #]'''</tablespan>   Other '''intersection''' specific variables options include: * ~afcid~: association (intersection) record id.* ~afcompanyid~: [[companyid]] of associated company* ~afcontactid~: [[userid]] of associated contact* ~afroleid~: [[roleid]] of association* ~afstartdate~: start date of association* ~afenddate~: end date of association
<table>[#(?object=contact;orderby=lastname)<tr><td>~firstname~</td><td>~lastname~</td>Role Based Custom Fields==When you have a [[Custom Field]] such as a [[Web Page View]] or [[MS Word Merge]] that is located <tdu>~email~</td></tr>#]'''on'''</tableu>a User Role or Company Role you can access:
<table>[#(?object=contact;orderby=lastname;criteria=rolename='Internal People')<tr><td>~firstname~</td><td>~lastname~</td><td>~email~</td></tr>#[UTA]]</table>Level 1 Information:
: <table>[#(?objectspan style=contact"font-size: medium;orderby=lastname;criteria=rolename=">'''@levelone.''fieldname''@''Internal People')<tr><td>~firstname~</tdspan>or <tdspan style="font-size: medium;">~lastname~</td><td>~email~</td><td>~role~</td></tr>#]'''@levelone.''customfieldid''@'''</tablespan>Contact Information:
: </prespan style="font-size: medium;">*Note: Search results normally display in ascending order. You may use '''desc''@contact.' option to display results in descending order.'fieldname''Example@''':<pre/span> or <table>[#(?objectspan style=activity"font-size: medium;orderby=startdate desc)<tr"><td>~subject~'''@contact.''customfieldid''@'''</td><td>~location~</td><td>~startdate~</td></tr>#]</tablespan> Company Information:
Results will be sorted on Startdate in Descending order: <span style="font-size: medium;">'''@company.''fieldname''@'''</span> or <span style="font-size: medium;">'''@company.''customfieldid''@'''</span>When you want to refer to a User Role based [[Custom Field]] '''<u>from</preu>''' a [[UTA]] Level 1 record use the following syntax:Owner:
: <span style="font-size: medium;">'''@owner.''fieldname''To sort on custom field@''':<pre/span><table> [#(?object=activity;orderby=tbl_custom field id.valuestr)<tr><td>~location~</td><td>~startdate~</td></tr>#]</table>Person:
e: <span style="font-size: medium;">'''@person.g. where custom field id=999999''fieldname''@'''</prespan>Contact:
: <span style="font-size: medium;">'''@contact.''rolename''.''fieldname'To list a specific activity type only'@'''</span>:''where rolename is the role they are assigned on the Level 1 record''<pre>=To Display a List of Activities, Notes, Transactions, Contacts, Companies, Consumers, Providers===Syntax==: <tablespan style="font-size: medium;">'''[#(?object=activity;orderby=startdate;criteria=typename=''objectname''::{options})<tr><td>~subject''standardfieldname''~</td><td>~location~</td><td>~startdate~</td></tr>$''customfieldname''$#]'''</tablespan>'''Where:'''
e:* ''objectname'' is the name of the item to be listed.g. where typename=:: Either: '''address, activity , assign, contact, user, group, company, notes, association, companyassociation, transaction, timesheet''', '''level-1''', '''utaproviderL1''', '''utaproviderL2''', '''utaconsumerL1''', '''utaconsumerL2''' or '''linkactivity''': :* ''standardfieldname'' is the nameof a standard field (between tildes, ~):* ''customfieldname'' is the name of a custom field (between dollar signs, $)
<table>[#(?object=activity;orderby=startdate;criteria=typeid='')<tr><td>~subject~</td><td>~location~</td><td>~startdate~</td></tr>#]</table>'Notes:'''
e:* You can refer to [[Custom Fields]] in the list using the Custom Field ID instead of the field name, still between dollar signs ('''$12345$'''):* '''level-1''' can only be used as an object when referenced from a contact record. Also '''level-1''' will only list the level 1s that the contact has been added to in the contacts section.:* You can include text as well as variables within the [#...#] syntax.:* When using this syntax for [[Web Page View]]s, [[Custom Field Type: Read Only – System Variables|Read Only – System Variables]] etc. you will usually want to include HTML table formatting within the '''[#...#]''' syntax (see examples below). For [[MS Word Merge]] custom fields the table defined on the MS Word Template document, with the columns delimited by pipes (|) within the '''[#...#]'''.:* '''~Index~''' can be used to number the lines (1, 2, 3...) '''Note:''' ~index~ does not work for all lists.gFor example, it cannot be used when listing contacts associated with a Level 1. where typeid=:** ''~Index~'' (upper case '141414I'</pre>) starts numbering at 1, ''~index~'' (lower case 'i') starts numbering at 0.~eventid~ will display the id of the level 2.
'''To list activity based on a specific status name or status id''':
<pre>
<table>[#(?object=activity;orderby=startdate;criteria=statusname='')<tr><td>~subject~</td><td>~location~</td><td>~startdate~</td></tr>#]</table>
e.g. where statusname='status name''Options:'''
{| class="wikitable"|-||'''Option'''||'''Effect'''|-||<span style="font-size: medium;">orderby=''standardfieldname''</span>||Sorts the list in ascending order by the standard field specified|-||<span style="font-size: medium;">orderby=''standardfieldname'' desc<table/span>[#(?object||Sorts the list in descending order by the standard field specified|-||<span style=activity"font-size: medium;">orderby=startdatetbl_''customfieldid''.valuestr</span>||Sorts the list in ascending order by the custom field specified|-||<span style="font-size: medium;">criteria=status.id''standardfieldname''='')'value'''<tr/span>||Filters the list by the standard field and value specified|-||<tdspan style="font-size: medium;">~subject~criteria=tbl_''customfieldid''.valuestr='''value'''</tdspan>||Filter the list by the custom field and value specified|-||<tdspan style="font-size: medium;">~location~criteria=(''standardfieldname''='''value''' or ''standardfieldname''='''value''')</tdspan>||For multiple criteria when '''either''' conditional criteria can apply|-||<tdspan style="font-size: medium;">~startdate~criteria=(''standardfieldname''='''value''' AND ''standardfieldname''='''value''')</tdspan>||For multiple criteria when '''both''' conditional criteria must apply|-||<span style="font-size: medium;">groupfunction=''aggregatefunction''</trspan>#]||Performs specified aggregate function on the listed fields<br /table>Ex. sum, count, countdistinct|}
* ''multiple options (i.e.g. where status.id=a criteria and an orderby option) can be included, separated by doubled colons (::)'1234'</pre>
'''To format the start date and start timeImportant:''' Any custom fields that you use as criteria or orderby '''must'''appear in the display. If you do not wish to display the field you can place it in a comment. (i.e.:<pre>~date_format(startdate,'%Y&lt;!--$12343$-%m-%d'>) However, if referencing a field as startdate~</pre>a property of a table you must show the value.
'''or''Examples:'<pre>~date_format(startdate,'%h:%i %p') as starttime~</pre>
*Note: If you wish to use ''"orderby=startdate"'', along with To generate a date format other than yyyy-mm-dd you must use list of Level 2 activities for a slightly different syntax.*Using ''"~date_format(startdate,'%d-%m-%Y') as startdate~"'' when using ''"orderby=startdate"'' will cause the date to be ordered by dd-mm-yyyy (rather than yyyy-mm-dd, which is chronological)[[MS Word Merge]]:
*To avoid this, change ''"date_format [#(startdate,'%d-%m-%Y'?object=activity) as |~statusname~|~typename~|$speciality$|$123456$|#]:: ''See [[MS Word Merge]] for further details on including tables on MS Word Merge documents'startdate'''"'' to ''"date_format(startdate,'%d: :* To reference the Consumer UTA Level 1 owner name and ownerid from a Provider UTA Level 1 Read Only -%m-%Y') as '''sdate'''"''System Variable custom field
[#(?object=utaconsumer::criteria=statusname IN ('Placed','Resigned/Terminated'))~ownername~,~ownerid~ #]
:* To Display custom fields via List Syntax for Invoicing (objectname=appliedtoinvoices). Grabbing a custom field value off the invoice (ie. 282588) and into an adjustment.
'''To list level two entity at level one using level two fieldname instead of customfield ID <prestyle="white-space: -o-pre-wrap; word-wrap: break-word;">Example: [#(?object=activity;criteria=typeid='19997';appliedtoinvoices)<tr><td>~index~</td><td>Folder</td><td>$Field Name$</td><td>$customfieldID$</td><td>$customfieldID282588$</td></tr> #]</pre>::: ''Note: refer to the custom field by the number ONLY, do not use the custom field name.''
==How to display a UTA contact role or company role record==
:* To generate a list of all contacts for a [[Web Page View]] or [[Custom Field Type: Read Only – System Variables|Read Only – System Variables]] custom field (note that the HTML table formatting is included within the '''[#(?object=company;orderby=name)<td>~name~</td><td>~customfields~</td>...#]''' syntax)
[#(?object==How to display Level 1 Company Role or Contact Role custom fields==contact) #]
[#(?object=company;orderby=name)<td>{||-!|First Name!|Last Name!|E-mail Address!|Cell Phone Number|-||~firstname~||~lastname~||~email~||$?opc_fieldidCell Phone$</td>#]|}
::: '''OR'Note: The first line creates a header row for the table''
[#:* For a list of Level 2 (?object=contact;orderby=fullnameor Level 3)<td>$?opr_fieldid$</td>#]activities sorted by Start Date in descending order:
fieldid [#(?object= the numeric id of the custom fieldactivity::orderby=startdate desc)#]
Following the same format above, you can also reference custom fields on the company role using the @#field id#@ syntax.{||-||~subject~||~location~||~startdate~|}
<u>'''Contact Detail'''</u>
~uprefix~ ~firstname~ ~lastname~:* For a list of contacts assigned to a Level 1 with the role of "Internal People", sorted by surname:
~uaddress~ ~uaddress2~[#(?object=contact::orderby=lastname::criteria=rolename='Internal People')#]
{||-||~ucityfirstname~, ||~ustatelastname~ ||~upostalcodeemail~|}
==How :* For a list of level 1 records, including owner details, that a Company has been asssigned to Display a Date or Time Format==:
'''The following date variables are available for a long date format'''[#(?(object =level-1) NAME:~name~ OWNERID: ~ownerid~ OWNERNAME: ~ownername~ #]
'''@longclosedate@''':* To display the level 1 ID of the level 1 records:
'''@longstartdate@'''[#(?(object =level-1) OPPORTUNITY ID: ~op.opportunityid as oppid~ #]
'''@longenddate@'''
'''@fullstartdate@'''
Example: @longstartdate@ returns "Tuesday, November 15, 2005"* For a list of all companies that the owner of a [[UTA]] record is associated with:
'''The following date variables are also available''': @owner.[#(?object=association)~name~ (Phone ~phone~) #]@
@now@ - full current date and time
@currentdate@ :* To get a comma- full separated list of the companyids of all the companies the current date onlyuser is associated with with roleid 54545:
'''To display only specific elements of the current date''' ,@me.[#(?object=association::criteria=roleid=54545)~afcompanyid~,#]@
@month(currentdate)@ - month number
@day:* For a list of all contacts associated to the current user's parent company record (currentdateassociated to the company with [[roleid]] 12345)@ - day:
@yearme.parent.[#(currentdate?object=association::criteria=roleid='12345')~firstname~ ~lastname~ (Phone ~phone~) #]@ - year
@dayweek:* For a list of a company's Active(currentdatecurrent date is between start and end date)@ - name of dayassociations:
[#(?object=association::criteria=(afstartdate is null OR afstartdate<='@monthnamedate(currentdate)@ - name of month') AND (afenddate is null OR afenddate>='@date(currentdate)@'))~userid~,#]
'''To display only specific elements :* For a list of the full start date''':all contacts/users located under a company with a given role
@month [#(fullstartdate?object=user::criteria=rolelist like '%,12345,%')@ - month number~email~ #]
@day(fullstartdate)@ - day
@year(fullstartdate)@ - year:* To count the number of contacts assigned with the role of Reviewer:
@dayweek [#(fullstartdate?object=contact::criteria=rolename="Reviewer"::groupfunction=count)@ - name of day~userid~#]
@monthname(fullstartdate)@ - name of month
'''You can also parse out :* To include and format a particular date format stored in a date custom field''':(see also [[sscalculation]])
<pre>[#(?object=activity)<!--@yearsscalculation(date_format(datefield"$fieldname$","%M %d, %Y"))@ - returns the year value in datefield->#]</pre>
@month(datefield)@ - returns the month value in datefield
@day(datefield)@ - returns the day value in datefield:* With Multiple Criteria:
<pre style="white-space: -o-pre-wrap; word-wrap: break-word;">[#(?object=contact::criteria=(rolename='External'or rolename='For Time fields:''Internal'))~firstname~ ~lastname~#]</pre>
@hour(datefield)@ - returns the hour value in datefield (0-12)
@ampm(datefield)@ to provide :* To sort descending by a reference for am/pmcustom field called ''Total Hours'' with a custom field id of ''67292'':
@hour24<pre style="white-space: -o-pre-wrap; word-wrap: break-word;">[#(datefield?object=activity::orderby=tbl_67292.valuestr desc)@ - returns Subject: ~subject~Total Hours: $Total Hours$Start Date: ~startdate~#]</pre>'''Note:''' ''$Total Hours$'' in the list could be listed as ''$67292$'' with the hour value in datefield (0-24)same result.
@minute(datefield)@ - returns the minute value in datefield
@second(datefield)@ - returns the second value in datefield
==How to hide :* To sort descending reviews in a specific status by a custom field on a separate UTA Level 1 field called ''$Staff Final Score$'' with a variable if it is missing==<pre>Put <!--hideifnotfound--> custom field id of ''1584168'' in front of variable name like thisnumeric order:
Example<pre style="white-space: <!-o-pre-hideifnotfoundwrap; word-wrap: break-word;">@parent[#(?object=utaconsumerL1::orderby=tbl_15868.contact.adjuster.email@valuestr*1::criteria=(statusname='Member Review'))
</pre>
'''Note:''' ''$Staff Final Score$'' in the list could be listed as ''$15868$'' with the same result.
==How to display different content based on a value using SSlogic==
To display content based on a value from a variable add '''&lt;!--@sslogic('@branch.name@'='Internal Staff')--&gt;''' in front of the content and '''&lt;!--@end--&gt;''' at the end of the content. If there are 2 different pieces of content to be displayed based on a value and all others add '''&lt;!--@else--&gt;''' between the 2 pieces of content.
 :* To list a specific activity type only: <pre><!style="white-space: -@sslogic(CONDITION)o-pre-> The content to be displayed when condition is true. This can be more than one line.<!--@endwrap; word-wrap: break-word;">[#(?object=activity::orderby=startdate::criteria=typename='This Activity Type')~subject~~location~~startdate~#]
</pre>
* The content to be displayed (the middle line) can either be in plaintext or in HTML.
* Be sure there are single quotes around the variable and value.
* SSlogic does not support nested logic statements.
:* To list activities based on the [[Determining the typeid|type ID]] ('''Level 2 and Level 3 only'''):
 
[#(?object=activity::orderby=startdate::criteria=typeid='24160')#]
 
{|
|-
||~subject~
||~location~
||~startdate~
|}
 
 
:* To include a hyperlink to the object (for Accounts):
 
[#(?object=company::criteria=rolename="Cooperating Organization")#]
 
{|
|-
||[s_viewcompany.jsp?companyid=~companyid~ ~name~]
||~role~
|}
 
 
:* To list activities based on status:
 
[#(?object=activity::orderby=startdate::criteria=statusname='Open')#]
 
{|
|-
||~subject~
||~location~
||~startdate~
|}
 
 
:* To list activities based on the status ID ('''Level 2 and Level 3 only'''):
 
[#(?object=activity::orderby=startdate::criteria=status.statusid='24160')#]
 
{|
|-
||~subject~
||~location~
||~startdate~
|}
'''Example:* To list UTA Providers:'''* The following will display a Christmas tree image if the month is December<pre style="white-space: -o-pre-wrap; word-wrap: break-word;">[#(?object=utaproviderL1::criteria=rolename="Panel") ~name~ ~typename~ ~statusname~ ~enddate~ $Panel Review Date$ $Panel ID</pre>
<pre>
<!--@sslogicsscalculation(month(now@xml.XML Field.People.Person[#(?criteria="~type.nodevalue~" == "A"))=121+#]@ 0)--></pre> <img srcpre style='images"white-space: -o-pre-wrap; word-wrap: break-word;">lt;br>#]</xmasstree.jpg'pre>  :* To list notes (from the record that contains the notes): <!pre style="white-space: -@endo-pre-wrap; word-wrap: break-word;">[#(?object=notes::orderby=createddate desc)~notes~~createddate~~username~#]
</pre>
::: ''Note: This syntax is for "Public (Default)" notes only, not custom note types.
::
::* To list all companies under a parent company record:
 
[#(?object=company) ~name~ #]
'''[[SSlogic|See here]] for more information and further examples.'''::* To list all L3 allocations within a L2 budget record:
[#(?object==How to display check boxes in linkactivity) ~subject~ #]  ::* To sum or count all the L3 allocations from the Web Page View==budget L2 record:
To display Select Many - Check Box type custom fields as check boxes in a web page view add ''' @checkboxlinkactivity.sum('fieldname/fieldnumber','option name'...)@''' to the check box controlor @linkactivity.count(...)@
This syntax works if the check boxes are on the same '''To list level. or2 notes for each level 2 record at level 1:
'''Example<pre style="white-space: -o-pre-wrap; word-wrap: break-word;">[#(?object=activity:''' :orderby=startdate desc)~subject~~description~~startdate~[@(?object=notes::orderby=createddate desc)@]</pre>{||-||~notes~||~createddate~||~username~|}<input typepre style="checkboxwhite-space: -o-pre-wrap; word-wrap: break-word;" @checkbox('12345','yes')@>#]
</pre>
:::: ''Note: This syntax is for "Public (Default)" notes only, not custom note types.
'''To do a sum of all the unpaid payment transaction:
 
{|
|-
||Total Paid: [#(?object=transaction::criteria=trstranstype=11 and tbl_1145339.valuestr='Paid'::groupfunction=sum)$1145183$ <!--"145339$-->#] Note: $1145339$ - Status of payment $1145183$ - Payment Amount
|}
 
==Referencing Standard Fields of UTA Providers==
{| class="wikitable"
|+style="text-align:left"|Level 1 Field Name and Variable List
|-
!|Field Name
!|Variable
|-
||Application Name
||~name~
|-
||Type Name
||~typename~
|-
||Type ID
||~type~
|-
||Status Name
||~statusname~
|-
||Status ID
||~statusid~
|-
||Start Date
||~startdate~
|-
||End Date
||~enddate~
|-
||Close Date
||~closedate~
|-
||Branch
||''No variables''
|-
||Branch ID
||~branchid~
|-
||Currency
||''No variables''
|-
||Exchange Currency
||''No variables''
|-
||Currency Exchange Rate
||''No variables''
|-
||Customer
||~client~
|-
||Customer ID
||~companyid~
|-
||Modified By
||''No variables''
|-
||Modified Date
||''No variables''
|-
||Owner (full name)
||~ownername~
|-
||Owner (userid)
||~updatedby~
|-
||Person (full name)
||''No variables''
|-
||Person (userid)
||~oppeopleid~
|-
||Role Name
||~rolename~
|-
||Role ID
||~conroleid~
|}
 
'''Example:'''
 
<pre style="white-space: -o-pre-wrap; word-wrap: break-word;">[#(?object=utaproviderL1) ~typename~ | ~statusname~ <br />#]</pre>
 
{| class="wikitable"
|+style="text-align:left"|Level 2 Field Names and Variables List
|-
!|Field Name
!|Variable
|-
||Activity Type
||~typename~
|-
||Activity Type ID
||~typeid~
|-
||Owner
||~ownername~
|-
||Owner ID
||~eownerid~
|-
||Assigned People
||''No variables''
|-
||Status
||~statusname~
|-
||Status ID
||~statusid~
|-
||Subject
||~subject~
|-
||Description
||~description~
|-
||Location
||~location~
|-
||Amount
||~eamount~
|-
||Start Date
||~startdate~
|-
||End Date
||~enddate~
|-
||Opportunity ID
||~cevconoppid~
|-
||Event ID
||~cevprovevtid~
|-
||Rolename
||~rolename~
|-
||Role ID
||~cevroleid~
|}
 
'''Example:'''
 
<pre style="white-space: -o-pre-wrap; word-wrap: break-word;">[#(?object=utaproviderL2) ~typename~ | ~statusname~ <br />#]</pre>
If you have multiple different UTAs connected as providers, you  can use criteria to filter:
 
<pre style="white-space: -o-pre-wrap; word-wrap: break-word;">[#(?object=utaproviderL1::criteria=provappid="12345") ~typename~ | ~statusname~ <br />#]</pre>
 
==To Format the Start Date or Start Time==
::: <span style="font-size: medium;">'''~date_format(startdate,'%Y-%m-%d') as startdate~'''</span>
:::: or
::: <span style="font-size: medium;">'''~date_format(startdate,'%h:%i %p') as starttime~'''</span>
'''Note:'''
 
:::* If you wish to use ''"orderby=startdate"'', along with a date format other than yyyy-mm-dd you must use a slightly different syntax.
:::* Using ''"~date_format(startdate,'%d-%m-%Y') as startdate~"'' when using ''"orderby=startdate"'' will cause the date to be ordered by dd-mm-yyyy (rather than yyyy-mm-dd, which is chronological)
:::* To avoid this, change ''"date_format(startdate,'%d-%m-%Y') as '''startdate'''"'' to ''"date_format(startdate,'%d-%m-%Y') as '''sdate'''"''
 
==Displaying Both Level 2 and Level 3 Activities at Level 1==
When displaying a list of '''Level 2''' activities using the '''[#(?object=activity;)...#]''' syntax, the corresponding '''Level 3''' activities can be displayed under each of the parent '''Level 2''' activities.
 
 
To facilitate this you must create a [[Custom Field Type: Read Only – System Variables|Read Only - System Variable]] field '''at''' Level 2 that contains the list of Level 3 activities, formatted and filtered as desired.
 
:::: ''You can use [[Visibility Condition]]s, [[Role Field Permissions]] or [[Status Field Permissions]] to prevent the field from being displayed on the Level 2 record.
'''Example:'''
 
::* Create a Level 2 [[Custom Field Type: Read Only – System Variables|Read Only - System Variable]] Custom Field called '''Level 3 Activity List''' with the following:
 
[@(?object=activity::orderby=typename)@]
 
{|
|-
||Level 3 Activity: ~typename~
||~location~
|}
 
Then create either a [[Web Page View]] or [[Custom Field Type: Read Only – System Variables|Read Only - System Variable]] at Level 1:
[#(?object=activity:See Also: [[Updateable Web Page View Fields]orderby=startdate) #] if you wish the Web Page View check boxes to have the ability to change the underlying data.
{||-||Level 2 Activity: ~subject~||~statusname~||~startdate~||~enddate~|-||| colspan="3"|$Level 3 Activity List$|}:::: '''where''' "Level 3 Activity List" is the name you gave the [[Custom Field Type: Read Only – System Variables|Read Only – System Variable]] field  ===Level 3s with Less Than 25 Fields===How If Level 3 has less than 25 fields it is not necessary to display level two check boxes create a [[Custom Field Type: Read Only – System Variables|Read Only – System Variable]] Custom Field on level one in the Web Page ViewLevel 2 that lists the Level 3 activities. Instead you can use the following syntax '''within''' the '''[#...#]''' that lists the Level 2 activities: ::: <span style=="font-size: medium;">'''[@checkboxvalue(id||values to be checked?object=activity)~standardfieldname~ $customfieldname$@]'''</span>'''Note:''' ::* This syntax will only work if there are '''less than 25 fields at Level 3.'''
<input type="checkbox" name="checkboxb20" value="Limited community support" @checkboxvalue($1199639$||Limited community support)@> '''Example:'''
::* Use two "'''|'''" (pipes) to separate '''id''' and '''value''' to be checkedwhere 1199639 is customfield idif it is used on the same level '''@1199639@'''if it is used on the child level '''$1199639$'''To display a list of Level 2 activities, including any Level 3 activities under their parent Level 2 activity:
This works for level one check boxes on level one web page viewANDworks for level two check boxes on level one web page viewANDworks for level three check boxes on level one web page view[#(?object=activity::orderby=startdate) #]
{||-||Level 2 Activity: ~subject~||~statusname~||~startdate~||~enddate~|-||| colspan="3"|[@(?object=How to display level three activities at level one in the Web Page View=activity;orderby=typename)@]{||-||Level 3 Activity: ~typename~||~location~|}|}
When displaying ==Displaying a list Specific Number of '''Level 2''' activities using the [ # (?objectItems in a List=object;orderby=field) # ] processor, the corresponding '''Level 3''' activities can now be displayed under each When you want to display only specific number of the parent '''Level 2''' activities by using or transactions in a [ @ (?object=object;orderby=field) @ [Web Page View]]use the following syntax.
This new feature allows level one web page fields to display level 3 items. This a type syntax for displaying level 2 items. <pre><table borderstyle=1"white-space: -o-pre-wrap; word-wrap: break-word;">[#(?object=activity;object::orderby=startdatefield) <tr><td colspan=2>!--@sslogic(~subjectindex~</td><td='num')--> ~locationstandard field~$custom field$ <br /td> <td>~startdate~</td></tr!--@end--> #]<br /table>
</pre>
'''where:'''This is the syntax showing level 3 items inside level 2 items. ::* num = number of activities that should be displayed =XML Variables===Count how many options were selected==
<pre>
<table border=1>!--@sscalculation(@xml.XML Field.People.Person[#(?objectcriteria=activity;orderby"~type.nodevalue~" =startdate= "A") <tr1+#]@ 0)--><td colspan=2>~subject~</td><td>~location~</td><td>~startdate~</td></trpre><tr><td> ==Filtered XML display output==<table bgcolor="00FFFF"pre> @xml.XML Field.People.Person[@#(?objectcriteria="~type.nodevalue~" =activity;orderby=startdate"A")<tr><td>~subjectFirstName.nodevalue~</td><td>~locationLastName.nodevalue~<br /td><td>~startdate~#]@</tdpre></tr>@] <=Date/table>Time Variables=<==Standard Fields Date/td>Time==</tr> #]</table> '''Variable List:'''
::: {| border="1" cellpadding="5"'''Start Date''''''End Date''''''Close Date'''<br /pre>''Level 1 only'''''Modified Date''''''Display Format'''@startdate@@enddate@@closedate@@modifieddate@Date formatted according to user preferences (At Level 1 Modified Date also includes the time: 15:40)@longstartdate@@longenddate@@longclosedate@@longmodifieddate@Friday, January 23, 2009@fullstartdate@@fullenddate@@fullclosedate@@fullmodifieddate@2009-01-23 15:40:00@datetime(fullstartdate)@@datetime(fullenddate)@@datetime(fullclosedate)@@datetime(fullmodifieddate)@2009-01-23 15:40:00@date(fullstartdate)@@date(fullenddate)@@date(fullclosedate)@@date(fullmodifieddate)@2009-01-23
==How to display Level 3 Activities at Level 1 using Read Only-System Variable Field in Web Page View==
The '''Read Only'''-System Variable field can now be used in the '''Web Page View''' field.
This is useful for displaying ::* '''Level 3Note''' activities at the : ''Start Time'' and ''End Time'Level 1'are stored within the '' in a fullstartdate''and 'Web Page View'fullenddate'' fieldfields respectively. They can be accessed and formatted using the variables elements listed below.
Currently we can display '''Level 3''' activities at To display specific elements of the Start Date, Start Time, End Date, End Time, Close Date, Modified Date'''Level 1''' using the following syntax:
<pre><table ::: {| border="1>[#(?object=activity;orderby=startdate) <tr><td colspan=2>~subject~</td><td>~location~</td><td>~startdate~</td></tr><tr><td> <table bgcolor" cellpadding="00FFFF5"> [@month(fullstartdate)@month number in ''Start Date''@monthname(fullstartdate)@name of month in ''Start Date''@day(fullstartdate)@day in ''Start Date''@dayweek(fullstartdate)@name of day in ''Start Date''@year(fullstartdate)@year in ''Start Date''@hour(fullstartdate)@hour in ''Start Time'' using 12 hour clock (0-12)@ampm(fullstartdate)@AM or PM reference for ''Start Time''@hour24(fullstartdate)@hour in ''Start Time'' using 24 hour clock (0-24)@minute(?object=activity;orderby=startdatefullstartdate)<tr><td>~subject~</td><td>~location~</td><td>~startdate~</td></tr>@] minute in ''Start Time''
</table>::: '''Note:''' For '''End Date''', '''Close Date''' or '''Modified Date''' replace '''fullstartdate''' with '''fullenddate''', '''fullclosedate''' or '''fullmodifieddate''' respectively.'''<::: ''(seconds are not available for standard date/td>time fields)''</tr>::: ''('''Close Date''' does not have a time associated with it) '''Examples:'''#]:: </table> </pre>::* To display the Start Date in the format '''February 22, 1985''' you would use:
@monthname(fullstartdate)@ @day(fullstartdate)@, @year(fullstartdate)@
::* To display the End Time in the format '''06:45PM''' you would use:
This method, however, has the limitation that only '''Level 3''' activities with less than 25 fields can be displayed using this technique. @hour(fullenddate)@:@minute(fullenddate)@@ampm(fullenddate)@
To display ==Current Date/Time=='''Level 3Variable List:''' activities that have more than 25 fields, the following method is now available:
::: {| border="1. Create a '''Read Only " cellpadding="5"VariableContentDisplayComment@datetime(currentdate)@current date and time as for yyyy-mm-dd HH:mm:ss2013-01-22 17:55:22See also [[Obtain Server Date and Time]]@date(currentdate)@current date as for yyyy-mm-dd2013-05- System Variable''' field at '''Level 2'''17&nbsp;@currentdate@current date2009 January 25&nbsp;@now@current date and time2009 August 25 11:05AMWorkflows only.Not available within [[UTA]]s
2. Format the field as you would a '''Web Page View''' field. For example:
<pre><table border=1>[#(?object=activity;orderby=startdate) <tr><td colspan=2>~subject~</td><td>~location~</td><td>~startdate~</td></tr>#]</table></pre>'''To display specific elements of the current date or time''':
::: {| border="1" cellpadding="5"
@month(currentdate)@current month number@monthname(currentdate)@name of current month@day(currentdate)@current day@dayweek(currentdate)@name of current day@year(currentdate)@current year@hour(currentdate)@current hour using 12 hour clock (0-12)@ampm(currentdate)@AM or PM reference for current time@hour24(currentdate)@current hour using 24 hour clock (0-24)@minute(currentdate)@current minute
3. You can now use the field in ::: (seconds are not available for the Web Page View as you would any other field. For examplecurrent time)'''Examples:'''
<pre><table border=1>[#(?object=activity;orderby=startdate)<tr><td colspan=2>~subject~<::* To display the current date/td><td>~location~</td><td>~startdate~</td></tr><tr><td colspan=2>$123456$</td></tr>#]</table></pre>time in the format '''Friday at 19:55''' you would use:
==How to suppress the Page Footer with Printing the Page== @dayweek(currentdate)@ at @hour24(currentdate)@:@minute(currentdate)@
To suppress ==Custom Fields Date/Time=='''For a custom field on the footer when printing same level as the page Web Page View Field, you need to change your browser settings.can parse out a particular date/time in a date field'''
::: {| border="1" cellpadding="5"VariableContentDisplay@date('''Internet Explorer'fieldname'')@custom field date as for yyyy-mm-dd2013-05-17
1. Choose the '''File Page Setup''' [[Menu|menu]].
2. Delete the @month(''fieldname'Header')@month number in '' and fieldname''05@monthname('Footer'fieldname'' text.)@name of month in ''fieldname''May@day(''fieldname'')@day in ''fieldname''17@dayweek(''fieldname'')@name of day in ''fieldname''Friday@year(''fieldname'')@year in ''fieldname''2013@hour(''fieldname'')@hour in ''fieldname'' using 12 hour clock (0-12)12@ampm(''fieldname'')@AM or PM reference for time in ''fieldname''AM@hour24(''fieldname'')@hour in ''fieldname'' using 24 hour clock (0-24)00@minute(''fieldname'')@minute in ''fieldname''00@second(''fieldname'')@second in ''fieldname''00
3. If required, change the margins.
'''FireFoxExamples:'''
1. Choose ::* To display the custom field '''File Page SetupDate Of Birth''' [[Menu|menu]].in the format '''31-01-2001''' you would use:
2. Click the '''Margins & Header/Footer''' tab. @day(date of birth)@-@month(date of birth)@-@year(date of birth)@
3. Set all '''HeaderNote:''' and '''Footer''' options This syntax will not work for custom fields on a different level. You will not be able to reference, for example, @day(parent.'''Blank'fieldname'')@. To parse out date/time information from a custom field on a different level, use the [[Sscalculation#Using_sscalculation_to_Change_Date_Formats_of_Data_in_Custom_Fields|sscalculation]] syntax.
3. If required, change =Miscellaneous Variables===Adding an image from Upload fields==Users can return image thumbnails or meta data from multiple file fields using the margins.list syntax below":
==How to control print behavior==::* Show thumbnail image using thunbnailpath option:
'''To define a page break place the following code in the HTML source before the content you deem as the next page''':<pre>@multi file name.template[# <div styleimg src="PAGE-BREAK-AFTER: always~thumbnailpath~"><br stylealt="" width="height:0; line-height:0240"></div>#]@
</pre>
'''To change the page orientation to landscape first place the following in the header portion (<head></head>) of the HTML'''::* Show thumbnail image and file name using filepath option: <pre>@multi file name.template[# <style typeimg src="text~filepath~/thumbnail/css?maxwidth=240" mediaalt="print">div.page { writing-mode: tb-rl;height: 80%;margin: 10% 0%;margin-right: 80pt;filter: progid:DXImageTransform.Microsoft.BasicImage(Rotationwidth=1);}<"240" /style>~filename~#]@
</pre>
'''Then place <pre><div class="page"></div> </pre>in the HTML source around the "page" content.'''
Example: <pre><div class="page">This is the page content that needs to be in landscape</div></pre>:* Show thumbnail image and file name using compressedpath option:
Please note that the page orientation control only works with Internet Explorer and is not the greatest quality print due to the page being converted to an image then rotated<pre>@multi file name.template[# <img src="~compressedpath~/thumbnail/?maxwidth=240" alt="" width="240" />~filename~#]@</pre>
==How to control print behavior when saving as a PDF==::* Show file name, size and upload date:
To define a page break in a PDF add <pd4ml:pagepre>@multi file name.breaktemplate[# ~filename~, ~filesize~, ~uploaddate~#]@</pre> before the content you deem as the next page.
To change the orientation of a page to landscape in a PDF add <pd4ml:page.break pageFormat="rotate"> before the content you deem as the next page.
==How Adding a File Upload button==To display a button to upload to display a Dynamic Data grid [[Single File]] or [[Multiple Files]] custom field==:
To show ::* Single File:::: <span style="font-size: medium;"><input class="Button" type="button" value="Button Label" /></span>:: ::* Multiple Files:::: <span style="font-size: medium;"><input class="Button" type="button" value="Button Label." /></span>'''where:''':: ::* ''customfieldid'' = the data grid field in id of the webpage view Single or Multiple file custom field use the syntax (without '''cf_''@fieldname.table@'.)
==How to display the Transaction types=='''Example:'''
In order to display a transaction <input class="Button" type and its fields use the following example:="button" value="Multiple files..." />
Syntax'''Note:''' if adding to a [[Web Page View]] you will need to add the following to the page: <pre>function include_dom(script_filename) {[# var html_doc = document.getElementsByTagName('head').item(?object=transaction0);orderby var js =fieldnamedocument.createElement('script');criteria=typename= js.setAttribute('language', 'javascript')<tr><td>$customfieldid$<; js.setAttribute('type', 'text/td><td>$customfieldid$<javascript'); js.setAttribute('src', script_filename); html_doc.appendChild(js); return false;}function includejsfiles() { include_dom("/td></tr>#]validate.js");}
</pre>
Example CodeYou will also have to call the ''includejsfiles'' function in the body onload:
[#(?object=transaction;orderby=tbl_1041842.valuestr desc;criteria=typename='Co-Principal Investigor, Co-Applicant, Additional Author')
<tr><!--~typename~--><td>$1041842$</td><td>$1041843$</td><td>$1041844$</td><td>$1041845$</td></tr>
#]
To retrieve all '''Company''' transactions for the company attached to '''Level 1''' (Standard field - Customer):
 '''Alternatively:''' You may also use @fieldname.uploadlink@ to get the url for the upload page and construct your own function to open the window. '''Example:'''  <input class="Button" type="button" value="Upload" /><pre>function openupload(url){ @company upload_window = window.[#open(?objecturl,'upload_window', 'menubar=transactionyes,scrollbars=yes,width=800,height=600,status=no,resizable=yes,dependent=yes,alwaysRaised=yes')<tr><td>~details~</td><td>~subject~</td><td>~startdate~</td></tr>#]@; upload_window.opener = window; upload_window.focus();}
</pre>
'''Note:''' this method will only open the single file upload page. ==Displaying a Dynamic Data Grid field==To retrieve all show a [[Custom Field Type: Dynamic Data – Data Grid|Dynamic Data – Data Grid]] field in a webpage view field use the following syntax: ::: <span style="font-size: medium;">'''Branch@fieldname.table''' transactions @</span>==Retrieving History for Fields with Track Changes Enabled==The following syntax is used to retrieve standard or custom field history: For the branch attached to [[Status]] standard field: ::: <span style="font-size: medium;">'''@HistoryOf(status)@'''</span>::: <span style="font-size: medium;">'''@HistoryOf(statuscaption)@'''Level 1</span>For a [[Custom Field]]:::: <span style="font-size: medium;">''' @HistoryOf(Standard field ''customfieldid'')@'''</span>OR::: <span style="font- Branchsize: medium;">'''@HistoryOf(''customfieldname'')@'''</span>'''Notes:''':::* ''HistoryOf'' is case sensitive.::: * See the [[HistoryOf function]] page for a complete description of this variable and its uses.
<pre!--:::* You can only obtain the history of the Status field and [[Custom Fields]] in this way.-->==For Hybrid Sign-Up Pages==::: The @branchuser_input_form@ will display the associated user sign up form on a company sign up page if included in the HTML template of the company sign up page.[#  ==Currency Format==::: You can use the following syntax to format a custom field with currency: @format(?objectL2 Subcontract total y1,currency,USD,2)@. The last parameter can be changed from 2 to 0 to display as a whole number.==Session Variables==When using features such as Organization Switching, you may want to pull in specific data based on your current session. :: Company Fields: '''@sessioncompany.fieldname@'''Example: @sessioncompany.name@ would return the Company Name of the organization you are currently logged in as. =transaction)Controls===Hide a variable if it is missing==Put the following in front of variable name. ::: <trspan style="font-size: medium;"><td'''&lt;!--hideifnotfound-->~details~'''</tdspan>'''Example''': <tdpre>~subject~ </td!--hideifnotfound--><td>~startdate~</td></tr>#]@parent.contact.adjuster.email@
</pre>
'''Note:''' the &lt;!--hideifnotfound--> and the variable must be in immediate succession, and not separated by a space. ==How to display different content based on a value using SSlogic==To retrieve all display content based on a value from a variable add '''&lt;!--@sslogic('@branch.name@'='Internal Staff')--&gt;''' in front of the content and '''People&lt;!--@end--&gt;''' transactions for at the [[User|user]] attached end of the content. If there are 2 different pieces of content to be displayed based on a value and all others add '''Level 1&lt;!--@else--&gt;''' (Standard field - Owner):between the 2 pieces of content.
<pre>
<!--@owner.[#sslogic(?object=transactionCONDITION)<tr--> The content to be displayed when condition is true. This can be more than one line.<td!--@end-->~details~</td><td>~subject~</td><td>~startdate~</td></tr>#]@
</pre>
To retrieve ::* The content to be displayed (the middle line) can either be in plaintext or in HTML.::* Be sure there are single quotes around the variable and value.::* SSlogic does not support nested logic statements. '''Level 1''' transactions at '''Level 2Example:''' ::* The following will display a Christmas tree image if the month is December:
<pre>
<!--@parent.[#sslogic(month(now(?object))=transaction12)<tr--> <td>~details~<img src="images/td><td>~subject~<xmasstree.jpg" alt="" /td><td>~startdate~</td></tr!--@end-->#]@
</pre>
To retrieve the '''Level 1See [[SSlogic]] for more information and further examples.''' transactions at '''Level 2''' by transaction type:
<pre>==How to display check boxes in the Web Page View==To display Select Many - Check Box type custom fields as check boxes in a web page view add '''@parent.[#checkbox(?object=transaction;criteria=typename='Name of Transaction Typefieldname/fieldnumber','option name')@''' to the check box control. This syntax works if the check boxes are on the same level. '''Example:''' <trpre><td>$fieldid$<input type="checkbox" /td><td>$fieldid$</td><td>$fieldid$</td><td>$fieldid$</td></tr>#]@
</pre>
::: See Also: [[Updateable Web Page View Fields]] if you wish the Web Page View check boxes to have the ability to change the underlying data.==How to display level two check boxes on level one in the Web Page View==@checkboxvalue(id values to be checked)@  <input name="checkboxb20" type="checkbox" value="Limited community support" />  ::* Use two "'''|'''" (pipes) to separate ''Impact'id'': Transactions ' and '''value''' to be checked where 1199639 is customfield idif it is used on the same level '''Company@1199639@''' and [[User]] objects can now be displayed in a [[UTA]] web page view. The transaction does not have to directly associated with if it is used on the child level '''Level 1$1199639$''' item. This works for level one check boxes on level one web page viewANDworks for level two check boxes on level one web page viewANDworks for level three check boxes on level one web page view   
'''==How to suppress the Page Footer with Printing the Page==To get suppress the modified date of a transaction use footer when printing the following:'''page you need to change your browser settings.
~trsts~ ''or'Internet Explorer''' 1. Choose the '''File Page Setup''' [[Menu|menu]]. 2. Delete the '''Header''' and '''Footer' ~date_format(trsts,'%Y-%m-%d') as lastmodified~text.==How to display specific number of activities or transactions==When you want to display only specific number of activities or transactions from underlying level3. If required, use change the following syntaxmargins.<pre> [#(?object=object;orderby=field) '''FireFox'''  <!--@sslogic(~index~=1. Choose the '''File Page Setup''num')--> [[Menu|menu]]. ~standard field~ $custom field$ <br /> <!--@end--> #] <br 2. Click the '''Margins & Header/> Footer''' tab.
where, num= number of activities that should be displayed</pre>3. Set all '''Header''' and '''Footer''' options to '''Blank'''.
== Role base Web page view field ==3. If required, change the margins.
When you have ==How to control print behaviour=='''To define a role base web page view field or company based webpage view field break place the following code in the HTML source before the content you can access deem as the levelone, contacts, or company information.next page''':
@levelone.custom field name/custom field id@
@levelone.standard field name@
@company.custom field name/custom field id@ @company.standard field name@'''To change the page orientation to landscape first place the following in the header portion ('''
@contact.custom fieldname/custom field id@ @contact.standard field name@''') of the HTML''':
'''<strong>Then place'''</strong>
<pre> </pre>
'''in the HTML source around the "page" content.'''
Example:
<div class="page">This is the page content that needs to be in landscape</div>
Please note that the page orientation control only works with Internet Explorer and is not the greatest quality print due to the page being converted to an image then rotated.
==How to control print behaviour when saving as a PDF==
To define a page break in a PDF add before the content you deem as the next page.
== Retrieving Custom Field History ==To change the orientation of a page to landscape in a PDF add before the content you deem as the next page.
The following syntax is used to retrieve custom field history::* See [[PDF Writer Custom Tags]] for further [[PDF]] formatting options
<pre>For Status =Troubleshooting=: :* '''Issue''': 2 variables run together (thus removing the ending @HistoryOfand beginning @)::* '''Resolution''': Place a non-breaking space tag (status&amp;nbsp;)@between the variables.
For Customfield : @HistoryOf(####)@ where #### is the Custom Field ID. (The field name is not accepted in this case.)
@HistoryOf()@ ****************************************** Case sensitive ********************************************************
</pre>
==Troubleshooting==::** '''Issue''': For a list of level 2 activities, the code is showing instead of the field headings and values you've designated.::** '''Resolution''': Insert a comment tag before the first cell tag. i.e.
* In the event of 2 variables running together (removing the ending @ and beginning @) the issue can be resolved by placing a non-breaking space tag (&nbsp;) in between each other.* For your list of level 2 activities, your code is showing instead of the field headings and values you've designated.<pre> </pre>
Try inserting a comment tag before the first cell tag. i.e.<pre><tr><!--~index~--><td></pre> 
==See Also==
::* [[SSlogicRoot Company Variable]]s::* [[sslogic]]::* [[ssattach]]::* [[sscalculation]]::* [[Web Page View Field]]::* [[Attach a PDF to a Web Page View]]::* [[Updateable Web Page View Fields]]::* [[Changing the Status from a Web Page View]]::* [[Custom Field Type: Display Only – Web Page View]]::* [[:Category:PDF|PDF Category]]::* [[PDF Writer Custom Tags]]::* [[Adding JavaScript JS files to Web Page View Pages]]::* [[Custom Field ID|Determining the Custom FieldID]]
[[Category:Custom Fields]][[Category:Variables]][[Category:JavaScript ExamplesPDF]]
Smartstaff
2
edits