Changes

Jump to: navigation, search

Advanced Logic

162 bytes added, 18:18, 13 August 2014
no edit summary
'''Advanced Logic''' gives [[System Administrator]]s a higher level of control over the entire interface.
This feature allows control of the [[visibility ]] and/or access to [[Interfaces|interface]] elements such as buttons or tabs based on [[Administrator|administrator]] defined conditions.
[[Image:AdvancedLogicAdvancedLogicAugust2014.png|link=]]
==Location==
This feature is available in 3 places:
# '''Advanced Logic''' link on the [[Global Settings]] page (In the [[Business & System Configuration]] section) - to establish system-wide rules.
# '''Advanced Logic''' link on the '''Settings''' Page within each [[Universal Tracking Application]] - for rules specific the to each UTA.
# In the [[:Category:Transactions|Transaction Types]] section on [[Global Settings]] - for both ''People'' and ''Company'' Transaction Types
==Overview==
'''Object''': The object that is being controlled.<br />
'''Condition''': A logical statement that when true will make the object statement true, and when false will make the object statement false.
''For example, you can disable the '''Delete''' button when viewing '''Contacts''' at Level 1 for [[User]]s in a specific [[Role|role]] by using the '''Advanced Logic''' setting on the [[Global Settings]] page.
:[[Image:AdvancedLogicDCAdvancedLogicDCAugust2014.PNGpng|link=]]
''In the above example, users who are in the role ID 1234 "Program Director" or role ID 1235 "Applicant" will be prevented from deleting contacts at Level 1{{l1}}.''
If the object being controlled is a button, the contents of the '''Caption''' field will replace the text on the button::[[Image:Advanced_Logic_Caption.PNG]]:[[Image:Advanced_Logic_Button.PNG]]==Sample Conditional Statements==
The '''MessageNOTE:''' When possible, avoid using IDs (i.e., typeid, statusid). Using field is not currently usednames rather than IDs allows for better readability and cloning. * Using role name vs. role id !@me.inRole(Organization Contact)@ rather than 'instr('@me.rolelist@', it is there to allow future functionality',10733,')=0'
==Sample Conditional Statements==
* Not true for the Level 1 template with typeid ''12345''
* True for when current user is in the role IDs 1234 ''Program Director'' or 1235''Applicant'': instr('@me.rolelistinRole(Program Director)@',',1234,') OR instr('@me.rolelistinRole(Applicant)@',',1235,')
* False for when current user is in both IDs 1234 the roles ''Program Director'' and 1235''Applicant'': instr('!@me.rolelistinRole(Program Director)@',',1234,')=0 AND instr('!@me.rolelistinRole(Applicant)@',',1235,')=0
==See Also==
For help constructing logical statements To see the options available for '''Advanced Logic''':{{DeterminingIDs}}settings, visit our [[Advanced Logic Options]] page.
To see the options available for Advanced Logic settings, visit our * [[Advanced Logic OptionsBoolean Operators]]* [[UTA Settings Page]]* [[inRole]] page.
[[Category:Global Settings]][[Category:UTA Settings]][[Category:Universal Tracking Application]][[Category:Advanced Logic]]
8,849
edits

Navigation menu