Changes

Submit Logic

1,526 bytes added, 20:22, 23 October 2017
no edit summary
* The '''Submit Logic''' feature is associated with a particular [[status]] and submit button. Associating the conditions with each [[status]] and button allows for different statuses to control sets of '''Submit Logic''' rules.
NOTE: Focus here is on basic Submit Logic validation using Submit Buttons. Details on how Submit Buttons interact with SmartCheck validation will be covered in the [[SmartCheck_Validation#Add_SmartCheck_Validation_to_Submit_Button|SmartCheck Validation article.]]  ==Accessing the Submit Logic Function==
To access the '''Submit Logic''' feature:
* Click the '''Settings''' tab within the UTA, then access the Level 1, 2 or 3 settings page as appropriate. * Click on the [[Statuses]] '''Submit & Save Buttons''' link in either the Level 1 settings section, or Level 2 settings sectionpage.[[Image:SubmitLogic1.png|800px]]
 * The '''Submit Button& Save Buttons''' tab page is displayed next to . It should list all existing Submit buttons, and have a option for [[Submit_buttons#Creating_A_Save_.26_Submit_Button|creating new submit buttons]] at the '''Status Trigger''' tab. Click on this or scroll down to top of the Submit Button sectionscreen.
[[Image:SubmitButton1SubmitLogic2.png|800px]]
 * Click on the hyperlink in Edit icon for one of the Label column for listed Submit & Save Button options. You will be brought to the Submit Button that you intend configuration screen.  [[Image:SubmitLogic3.png|800px]]   * Click on the Submit Logic tab. You will be brought to add the Submit Logic configuration screen, which should list all existing Submit logic against, and have a option for creating new Submit Logic at the top of the screen.
In [[Image:SubmitLogic4.png|800px]]   * Click the resulting window scroll down New button to the '''begin adding new Submit Logic''' section[[Image:SubmitLogic5.png|800px]]
[[Image:SubmitLogic.png]]
Click the New button to begin adding a New Condition.
Each '''Condition''' consists of the following fields:
 * '''Order''' - the order in which the condition can be executed. Each condition is executed in sequence based on the order. When all conditions have executed, any failed conditions will stop the submission process and all messages for failed conditions will be displayed in a consolidated fashion.* '''Name''' - a narrative name for the condition. * '''Description''' - narrative description of the condition. * '''Pass Condition''' - stores the expression that represents the condition. [[Entity]] does not change status when condition evaluates as false.* '''Failure Message''' - stores the message to be displayed if the condition is not met.  
==Condition Construction==
"@datetime(currentdate)@"<"@datetime(level1.Contract Start Date)@"
:'''Note''' you will need to create a [[System Variable]] that stores the cut-off date and time in the following format: '''yyyy-mm-dd hh:mm:ss''' (24 hour clock)
  6. '''Criteria''': an '''XML table node is not blank''' "<ssEscape>@level1.xml.Budget.comment-section.row.comment.nodevalue@</ssEscape>" != "" 
'''Additional examples''':
* '''@level2.sum(megawatts)@ > 5''' - the sum of the megawatts field in all level 2 is greater than 5.
* '''@level2.sum(#12345#)@ > 5''' - same as previous example but using the [[Custom Field|custom field]] ID.
* '''"@level1.Anticipated Project End Date@" BETWEEN "@rootcompany.Project Start Date@" AND "@rootcompany.Project End Date@"''' - the date entered into the ''Anticipated Project End Date'' field is between the system-wide Project Start and End Dates (see [[Root Company Variable]]s)* '''"@opportunity.peopleid@'"!='"0'"''' - Ensure that a contact has been added to the Level 1 Person standard field.* ''''"@contacts.count(*):rolename='Supervisor'@"="1'"''' - Ensure there is exactly 1 contact at Level 1 with the role of Supervisor.* ''''"@companies.count(*):rolename='Funding Agency'@"<"3'"''' - Ensures there are less than 3 Funding Agencies in the Companies section.* ''''"@contact.supervisor.email@'"!='"@contact.referee.email@'"''' - Ensure that the contact assigned at Level 1 with the role of Supervisor is not also assigned with the role Referee.
* '''"@level1.Proposal.filename@"!=""''' - Ensures you have a Proposal uploaded in the single file upload on the Level 1.
* '''"@level1.Plan Details.numofpages@"<=6''' - Ensures the number of pages for a PDF file upload field is not more than six pages
* '''"@level1.Multiple File Uploads.numoffiles@">0''' - Ensures the number of files uploaded to a Multiple Files upload field is greater than 0
* '''"@level1.type@"!="New Grant"||"@level1.xml.ExternalPeers.peer.peer.nodecount@">2''' - Ensures that the level 1 type is 'New Grant' and number of nodes/items entered in the XML worksheet is greater than 2 items.
* '''"@level1.Amount Awarded.value@ " <= 500000''' - Ensures that the ''Amount Awarded'' field is under $500,000. The ''.value'' is necessary when the ''Amount Awarded'' field is stored in currency format.
* ''' INSTR("@level1.[#(?object=activity::criteria=typename='Referee Form' and statusname='Submitted' and eownerid=@me.userid@)~index~#]@","1")=0''' - Ensures the current user can't submit more than 1 review
* ''' @level1.Grant Amount@>=@level1.level2.sum(#1478912.value#)@+@level2.#1478912.value#@''' - Confirms the payment total does not exceed the approved total.
* ''' LENGTH("@level1.Check Boxes@")-LENGTH(REPLACE("@level1.Check Boxes@",";",""))+1>=3 ''' - Confirms that at least 3 checkboxes have been selected in a [[Custom Field Type: Select Many – Check Boxes|Select Many - Check Boxes]] field.
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Note that semicolons cannot be included in submit logic criteria. If using list syntax, employ double colons ("::") to separate arguments.</pre>
* [[Submit Logic on Save or Save Draft Buttons]]
[[Category:Universal Tracking Application]][[Category:Validation]][[Category:Process Flow]]
Smartstaff, administrator
687
edits