The''' Custom Lookup Options''' is a feature that allows you to import custom datasets for lookups and validation based on client-specific needs. For example, you can upload a CSV file whose data can be used as options within a select-type custom field such as '''Select One – Dropdown''', '''Select One - Radio Button''', or '''Lookup - Autocomplete Options'''.
=Configuration - Essentials=
As an example, let's upload a custom lookup CSV containing university and course information. A sample of this CSV data can be found ''UniversityCourseLookup.csv'' is included in the appendix at the end of this article for reference.
===Importing a New Custom Lookup===
# Navigate to '''Global Settings''' > '''Custom Lookup Options''' and click on the '''Import Custom Lookup Options''' button represented by an import icon.<br />[[File:2021-07-ticket-124709-1.png|thumb|none|300px]]
# You will now access step 1 one of the '''Custom Lookup Options Import''' wizard. Upload a CSV containing your custom data. The first row of the CSV must include column headers. A A sample CSV is provided under the of ''UniversityCourseLookup.csv'Settings Explained''' section below is included in the appendix at the end of this article.
# Give your custom lookup a descriptive name under '''Lookup Name''' that will help you remember what it is for. For our example, we will call our lookup "UniversityCourseLookup".
# Select one of the columns for the '''Lookup Key'''. The lookup key is a non-unique identifier that is associated with ''one or more'' records rows in the table. In our example, our lookup key is the "University ID" because this number corresponds to the different universities in our dataset.# The '''Primary Key''' is optional. A primary key is a unique identifier that corresponds to a ''single'' record row in our table. For our example, the primary key is "Course ID" because each row in the table has a uniquely different Course ID that distinguishes it from every other row. Click '''Next''' to continue.
# Check over the sample of the uploaded data to ensure it has been processed as intended. Toggle which columns you want to include in the final import. Click '''Next''' to proceed.
# The last step will let you review the final changes. Click '''Next''' to complete the import process.
===Updating an Existing Custom Lookup===
# To update an existing custom lookup, import the updated file and be sure to type out the exact name of the lookup you want to update in the '''Lookup Name''' field. Specify the lookup key and any primary key needed. Click '''Next''' to continue.
# You will see a warning that notifies you that an existing lookup with the same name already exists. All existing records for rows with that lookup name will be deleted and re-imported with the new updated data. Click '''Next''' to continue and click '''Yes''' on the alert pop-up.
# Click '''Next''' to finish the import.
# Create a custom field of type '''Select One - Dropdown List'''.
# Toggle on '''Enable Dynamic Content'''
# You should will now see a new toggle called '''Use Custom Lookup Options'''. Toggle this on.# You should will now see additional settings for the custom lookup. Under the '''Lookup Name''' dropdown, select the custom lookup you want to reference. Under '''Option Text Identifier''', type the name of the lookup column whose values you want to populate in the dropdown. In our example, we want to expose the available course names in the dropdown so we will type the name of the column that contains that information: "Course".
[[File:2021-07-ticket-124709-7.png|thumb|none|800px|Configuration settings for a standalone dropdown using a custom lookup.]]
===Setting Up a Parent-Child Dropdown List===
# Create a custom field of type '''Select One - Dropdown List''' and set the '''Parent Field''' to the parent dropdown list created above.
# Toggle on '''Enable Dynamic Content'''
# You should will now see a new toggle called '''Use Custom Lookup Options'''. Toggle this on.# You should will now see additional settings for the custom lookup. Under the '''Lookup Name''' dropdown, select the custom lookup you want to reference. Under '''Option Text Identifier''', type the name of the lookup column whose values you want to populate in the dropdown. In our example, we want to expose the available course names in the dropdown so we will type the name of the column that contains that information: "Course".
[[File:2021-07-ticket-124709-9.png|thumb|none|800px|Configuration settings for the child dropdown.]]
====End Result of Parent-Child Dropdown====
The available options within the child dropdown should will now change depending on the selections made in the parent dropdown. In our example, changing the university in the parent dropdown will change the available courses we can select in the child dropdown.
===Setting Up a Successive Dropdown Lists===In the previous example, all the predefined options had to be hardcoded into to the custom field configuration settings. This could be a tedious an inefficient laborious process if the custom data needs regular updates or new entries. The process can be simplified by importing multiple lookups. The section will illustrate how to use successive dropdown lists and reference multiple custom lookups without having to hardcode predefined options.
As an example, we want to set up a chain of parent-child dropdowns for course registration. We want the user to first select from a list of available universities, then select from a list of available faculties at that selected university, and lastly, we want the user to select from a list of available courses under that university faculty.
====End Result of Successive Parent-Child Dropdowns====
The available options within the child dropdown will now change depending on the selections made in the parent dropdown. In our example, changing the university in the parent dropdown will change the available faculty listings in the subsequent faculty dropdown. The user's selection in this faculty dropdown will then filter the available options in the course dropdown.
[[File:2021-07-ticket-124709-14.png|thumb|none|800px|Successive parent and child dropdowns.]]
=Settings Explained=
|-
||Lookup Key
||The Lookup Key is a non-unique identifier used to return all records rows with a matching Lookup Name.
|-
||Primary Key
||(Optional) The Primary Key is an optional unique key used to return a single record row that matches the Lookup Name and Primary Key value. Records Rows without a matching Primary Key will be imported as new recordsrows.
|}
|-
||Option Value Identifier
||(Optional) The name of the column header from your custom dataset whose values are unique for each row. If a '''Primary Key''' has been was defined for when importing the custom lookup,you can leave this field blank.
|}
University ID,Primary Key,University<br data-attributes="%20/" />100,100,--- Please Select ---<br data-attributes="%20/" />100,100,Totally Totes College<br data-attributes="%20/" />200,200,Obviously OBVI College<br data-attributes="%20/" />300,300,Artisanal Art College<br data-attributes="%20/" />400,400,Coffee for Me University<br data-attributes="%20/" />500,500,Asymmetrical University of Aesthetics<br data-attributes="%20/" />600,600,University of Cold-pressed Flannel
===FacultyLookup.csv===
University ID,Faculty ID,Faculty,University<br data-attributes="%20/" />100,100,--- Please Select ---,--- Please Select ---<br data-attributes="%20/" />100,101,Arts & Literature ,Totally Totes College<br data-attributes="%20/" />100,102,Natural Sciences,Totally Totes College<br data-attributes="%20/" />100,103,Humanities,Totally Totes College<br data-attributes="%20/" />100,104,Mathematics,Totally Totes College<br data-attributes="%20/" />200,201,English Literature,Obviously OBVI College<br data-attributes="%20/" />200,202,Physical Sciences,Obviously OBVI College<br data-attributes="%20/" />200,203,History & Humanities,Obviously OBVI College<br data-attributes="%20/" />200,204,Mathematics & Computer Science,Obviously OBVI College<br data-attributes="%20/" />300,301,Literature ,Artisanal Art College<br data-attributes="%20/" />300,302,"Biology, Chemistry, and Physics",Artisanal Art College<br data-attributes="%20/" />300,303,"History, AnthropolyAnthropology, and Psychology",Artisanal Art College<br data-attributes="%20/" />300,304,Mathematics & Philosophical Sciences,Artisanal Art College<br data-attributes="%20/" />400,401,Faculty of English Literature,Coffee for Me University<br data-attributes="%20/" />400,402,Faculty of Natural Sciences,Coffee for Me University<br data-attributes="%20/" />400,403,Faculty of History,Coffee for Me University<br data-attributes="%20/" />400,404,Faculty of Mathematics & Computing,Coffee for Me University<br data-attributes="%20/" />500,501,Modern Arts & Literature,Asymmetrical University of Aesthetics<br data-attributes="%20/" />500,502,Hard Sciences,Asymmetrical University of Aesthetics<br data-attributes="%20/" />500,503,Modern History & Anthropology,Asymmetrical University of Aesthetics<br data-attributes="%20/" />500,504,Mathematics & Computing,Asymmetrical University of Aesthetics<br data-attributes="%20/" />600,601,Department of English,University of Cold-pressed Flannel<br data-attributes="%20/" />600,602,Department of Science,University of Cold-pressed Flannel<br data-attributes="%20/" />600,603,Department of History,University of Cold-pressed Flannel<br data-attributes="%20/" />600,604,Department of Mathematics,University of Cold-pressed Flannel
===UniversityCourseLookup.csv===
University ID,Course ID,Faculty ID,University,Faculty,Course<br data-attributes="%20/" />100,1000,100,--- Please Select ---,--- Please Select ---,--- Please Select ---<br data-attributes="%20/" />100,1001,101,Totally Totes College,Arts & Literature ,Gothic Literature in the 19th Century<br data-attributes="%20/" />100,1002,102,Totally Totes College,Natural Sciences,Organic Compounds in Chemistry<br data-attributes="%20/" />100,1003,103,Totally Totes College,Humanities,Introduction to Modern History<br data-attributes="%20/" />100,1004,104,Totally Totes College,Mathematics,Introduction to Calculus <br data-attributes="%20/" />100,1005,101,Totally Totes College,Arts & Literature ,Comparitive Mythology & Folklore<br data-attributes="%20/" />100,1006,101,Totally Totes College,Arts & Literature ,Introduction to Latin American Literature<br data-attributes="%20/" />200,2001,202,Obviously OBVI College,Physical Sciences,Fluid Dynamics in Brownian Motion<br data-attributes="%20/" />200,2002,204,Obviously OBVI College,Mathematics & Computer Science,Advanced Lorentz Transformations<br data-attributes="%20/" />200,2003,201,Obviously OBVI College,English Literature,Analysis of Arthurian Legend<br data-attributes="%20/" />200,2004,202,Obviously OBVI College,Physical Sciences,Morphology in Evolution<br data-attributes="%20/" />200,2005,202,Obviously OBVI College,Physical Sciences,Thermodynamics<br data-attributes="%20/" />200,2006,203,Obviously OBVI College,History & Humanities,Early Modern Period<br data-attributes="%20/" />300,3001,303,Artisanal Art College,"History, AnthropolyAnthropology, and Psychology",Architecture of the Roman Empire<br data-attributes="%20/" />300,3002,302,Artisanal Art College,"Biology, Chemistry, and Physics",Anatomy of the Human Body<br data-attributes="%20/" />300,3003,304,Artisanal Art College,Mathematics & Philosophical Sciences,Topology of Non-Euclidean Systems <br data-attributes="%20/" />300,3004,301,Artisanal Art College,Literature ,Ancient Epics and Poetry<br data-attributes="%20/" />300,3005,303,Artisanal Art College,"History, AnthropolyAnthropology, and Psychology",History of the Dutch Golden Age<br data-attributes="%20/" />300,3006,302,Artisanal Art College,"Biology, Chemistry, and Physics",Virology and Epidemiology<br data-attributes="%20/" />400,4001,402,Coffee for Me University,Faculty of Natural Sciences,Inorganic Compounds in Chemistry<br data-attributes="%20/" />400,4002,401,Coffee for Me University,Faculty of English Literature,Russian Literature in the 19th Century<br data-attributes="%20/" />400,4003,401,Coffee for Me University,Faculty of English Literature,Proto-Indo European Folklore (Thesis)<br data-attributes="%20/" />400,4004,401,Coffee for Me University,Faculty of English Literature,Introduction to English Literature<br data-attributes="%20/" />400,4005,402,Coffee for Me University,Faculty of Natural Sciences,Nomenclature of Organic Compounds<br data-attributes="%20/" />400,4006,403,Coffee for Me University,Faculty of History,Monarchies Through the Ages<br data-attributes="%20/" />500,5001,504,Asymmetrical University of Aesthetics,Mathematics & Computing,Polynomial Differentiation<br data-attributes="%20/" />500,5002,501,Asymmetrical University of Aesthetics,Modern Arts & Literature,Ancient Greek Classics<br data-attributes="%20/" />500,5003,501,Asymmetrical University of Aesthetics,Modern Arts & Literature,Introduction to Renaissance Literature<br data-attributes="%20/" />500,5004,502,Asymmetrical University of Aesthetics,Hard Sciences,Quantum Mechanics<br data-attributes="%20/" />500,5005,504,Asymmetrical University of Aesthetics,Mathematics & Computing,Introduction to Algebraic Topology<br data-attributes="%20/" />500,5006,501,Asymmetrical University of Aesthetics,Modern Arts & Literature,Magic Realism in Latin American Literature<br data-attributes="%20/" />600,6001,602,University of Cold-pressed Flannel,Department of Science,Radiation and Thermonuclear Reactions<br data-attributes="%20/" />600,6002,602,University of Cold-pressed Flannel,Department of Science,Kinematics and Dynamics<br data-attributes="%20/" />600,6003,603,University of Cold-pressed Flannel,Department of History,Rise and Fall of the Mughal Empire<br data-attributes="%20/" />600,6004,603,University of Cold-pressed Flannel,Department of History,Neo-Classical Archteture Architecture Through the Ages<br data-attributes="%20/" />600,6005,602,University of Cold-pressed Flannel,Department of Science,Cardiovascular System Processes<br data-attributes="%20/" />600,6006,604,University of Cold-pressed Flannel,Department of Mathematics,Polynomial Field Theory[[Category:Tools]]