Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
IQA Advanced
Lori Bertrand
C Systems Global
Advanced IQA
• Advanced Options in Sources Tab
• Advanced Options in Filters Tab
• Advanced Options in Display Tab
• Advanced Options in Security tab
• IQA Groups
• Other Data Sources
• IQA Queries Online
• Other Advanced Options
• Styling IQA Display
Advanced Options Sources Tab
Join Options
• Standard “pre-defined” joins for common business object sources
• CsContact to CsAddress based on preferred mail, preferred bill, preferred ship)
• CsContact to CsDemo objects
• CsContact to CsActivity
• CsContact to CsName* objects
Join Options
• Custom Join creation, i.e.• CsContact to CSAddress based on address purpose
• CsContact to CsRegistration (by ST_ID or BT_ID)
• CsContact to CsCommittee Member (ID)
• CsContact to CsInvoice (ST_ID or BT_ID)
Select Custom to create your own Join logic
The message “one or more sources have not been related” will display until you have defined all necessary joins/relations
Join Options
• Advanced Join options on Sources
Join Options
Join Types
• Equals
• Left Join (include all records from “left” source and “any” records from “right” even if no “right” source records
• Exists (include all records from the “left” where a matching record “exists” in the “right” source records)
• Not Exists (include all records from “left” source where “no records exist” in right source records)
• Or Exists
• And Exists
• Use Force Order • Require SQL Server to join the tables in a query in
the order you specify.
• Use No Lock locking hint• Require SQL Server to ignore record locks.
Join Types
• Use Join method for security enforcement• If enabled, when users run the query, iMIS checks to
make sure they have permission to read every source within the query before displaying the results, whether the source is a business object, another query, or both. When disabled, iMIS does not check the security for every source and instead only enforces the security setting for the main query.
Join Types
Advanced Options Filters Tab
Filter Options
• Where/Where Not
• Multiple option
• Comparison options
• Prompt
• Add Filter – AND/OR
• Where/Where Not
Filter Options
• Multiple• Can be tricky. Check to make sure your values were
saved.
Filter Options
Filter comparison options• Will change based on type of field (date vs text vs
number)
Filter Options
Filter Options
• Require user to provide at least one value• enforce a selection of at least one filter (parameter)
value
• Limit the number of results displayed
Filter Options
• Advanced options – Functions• on Display (controls # records displayed)
• On Filters (controls # records searched)
• Max
• Min
• Count
Filter Options - Functions
• Advanced options – Functions• on Display (controls # records displayed)
Filter Options - Functions
Advanced OptionsDisplay Tab
Display Options - Alias field usage
• Change the title of the results column
• Link to another record (web view)
Select View All in the View drop downScroll all the way to the bottom of the list of fields
Display Options - SQL expressions
SQL expressions - examples
Date instead of Datetime
• Convert(varchar,vBoCSContact.JoinDate,101)
Yes/No instead of True/False on boolean field display
• Case when vBoCSName_Demo.eNewsletter = 1 then “Yes” else “No” end
Concatenated fields
• (Case when vBoCSContact.DESIGNATION = ‘’ then vBoCSContact.Prefix + ‘ ‘ else ‘’ end) + vBoCSContact.FirstName + ‘ ‘ + (case when vBoCSContact.MiddleName <> ‘’ then vBoCSContact.MiddleName + ‘ ‘ else ‘’ end) + vBoCSContact.LastName + (Case when vBoCSContact.DESIGNATION <> ‘’ then ‘, ‘ + vBoCSContact.DESIGNATIONelse ‘’ end)
Hyperlinks in display fields
• '<a href=mailto:' + vBoCsContact.Email + '>' + vBoCsContact.Email + '</a>‘
Website
• '<a href=http://' + vBoCsContact.Website + ' target="_blank">' + vBoCsContact.Website + '<a>'
SQL Expressions - Hyperlinks
Display Options - Subtotals
Advanced OptionsSecurity
Advanced Options - Security
• Add Security to IQA folders
• Add Security to IQA queries• Consider online queries
• Control levels of security – Read Only, Add, Edit, Delete
• Specific Roles, Groups, Member Types, Users
• Dynamic Groups
• Adding new Roles (i.e. Finance, Membership)
Click on the Folder; click Edit. View the Access settings
Advanced Options - Security
Role based security
Advanced Options - Security
Important:Be sure to uncheck the default Everyone role
Check the Role(s) that will apply
Edit the permission levels as needed
System Setup >> Security Administration >> Roles >> Add Role
Advanced Options - Security
Insert the Role on the Members record –User Credentials
Advanced Options - Security
Dynamic Group based security
Advanced Options - Security
Advanced OptionsIQA Dynamic Groups
IQA Dynamic Groups
Need to include a data source with a ContactKey property.
IQA Dynamic Groups
Need to include ContactKey in Display.
IQA Dynamic Groups
Provide the Group Name. Indicate field to use for ContactKey. Select a schedule option.Click button to Create Group.
Advanced OptionsOther Data Sources
Query on a Query
• Cross module query on query, i.e. use my Membership query in Customers but want to connect and pull info from an Event or Orders query that already exists
• Query linked to query to use exclusion logic
• Note the path to queries is different from the standard business objects. Often you look in either Contact Management, Event Management, Order Management or Fundraising (depending on which module the existing query is tied to).
Query on a Query
SQL Views as Business Object
Create VIEW [dbo].[vw_CSYS_EmailNotUsername]
AS
select n.id, n.email, u.UserId
from name n, usermain u
where n.id = u.ContactMaster
and n.email <> u.UserId
SQL Views as business object
• Create new business object and point to the sql view you created. Add fields as properties. Publish the new business object.
IQA Queries Online
IQA Online - Special Filters
• Need to include a data source that provides the UserKey
• @SelectedUser• On behalf of• Company
administrator
• @LoggedInUser
Linking to another content page
~/iCore/Fundraising/Manage_Donor.aspx&ID=[code_id]
Add query to content page
Query related content options
Add query to content page
Use QueryMenu ipart – to display grid results
Add query to content page
Use QueryChartipart to display results in a chart format
Styling IQA Display
Styling IQA display - Javascript
• Add html ipart to content page that has the query menu ipart
• Configure the HTML ipart. Important add the jquery while in HTML mode.
Styling IQA display - Javascript
• Hide Grid• <script
type="text/javascript">jQuery(function(){//removes table structure from IQA grid outputjQuery(".StaffList.col-md-4").unwrap().unwrap().unwrap().first().prev().remove();jQuery(".StaffList .col-md-4").first().prev().remove();jQuery(".StaffList .col-md-4").unwrap();});</script>
Styling IQA display - Javascript
Styling IQA display - Javascript
Styling IQA Display - CSS
Styling IQA Display
• Right Justify number fields/columns
.join005Page thead th.rgHeader:nth-child(2), .join005Page tbody tr td:nth-child(2), .join005Page theadth.rgHeader:nth-child(3), .join005Page tbody tr td:nth-child(3) { text-align: right!important;}
VS
Styling IQA display
Right Justify Columns
Styling IQA Display - CSS
• Suppress sort on column headings.deactivateHeader .rgHeader { pointer-events: none; cursor: none;}.deactivateHeader .RadGrid_MetroTouch.rgHeader a { text-decoration: none!important; font-weight: bold; color: black!important;}
Questions?
Thank you for participating.
SPONSORED BY: