SPECIAL TOPIC WEBINAR: COOKING WITH ZERION SHARING OUR FAVORITE FORM BUILDING SOLUTIONS December 21, 2016 Host: Berit Johannessen [email protected] Presenter: Jonathan Hsu [email protected] Meet the Team Penny Lau Berit Johannessen Jonathan Hsu Nalut "Tak" Sangtakraw Ben Ray Recipe List Aggregating subforms nested in another subform Using key values or labels for option list smart controls Using required labels for client validation Clearing a date element Checking for an empty text field PENNY'S RECIPE Aggregating subforms nested in another subform Recipe Overview Challenge: Using the built-in iformbuilder.math.sum() function with a grandchild element. It is difficult to understand the syntax for referencing a subform element as the parent to the aggregation element. Solution: When referencing a subform element, use the following structure: parentFormName.subformDCN[index]. This tree structure is further modified depending on if the subform is a single or multiple paging element. Penny Lau BERIT'S RECIPE Using key values or labels for option list smart controls Recipe Overview Challenge: In the past, we have always instructed users to use the Sort Order/ Index Value and Binary Values for Smart Control statements. If the form builder changes the order of the options, the statement then breaks. Solution: Use ZCDisplayValue or ZCDisplayKey in Smart Control Statements to allow for option list order to change at anytime without breaking the functionality by matching the key value or label. The match must be exact and is casesensitive. Berit Johannessen JON'S RECIPE Using required labels for client validation Recipe Overview Challenge: Data collector does not get immediate feedback on failed client validation as well as occasional inconsistencies in using the Client Validation field. Solution: Use a label element that has been set to required. Since the label element does not have a "required" property by default, you have to begin by creating a text element that will be set as required. Then afterwards change the element type to a label and the required property will persist. Jonathan Hsu TAK'S RECIPE Clearing a date element Recipe Overview Challenge: Once a Date or Time element is populated, there is no way to clear its value. Solution: Add a Select element to trigger the Dynamic Value of the Date element and delete its value. When the Select element is toggled, the Dynamic Value of the Date element will be updated. Nalut "Tak" Sangtakraw BEN'S RECIPE Checking for an empty text field Recipe Overview Challenge: Checking for an empty string "" or null value will not always validate a blank text field. Also, if the text field only has spaces, it should not be considered as populated. Solution: Add a second element and use the .trim().length JavaScript Dynamic Value to determine if a text field has any input. The command first removes any leading and trailing white space. Next, the string length is calculated which is used to determine if there is any input in the field. Ben Ray Support & Resources Customer Success Center Release Notes Webinars White Papers Case Studies Online/On-site Training Community THANK YOU [email protected] In the next 48 hours, you will receive an email with access to: • Recording Of Session • Session PDF • Form Packages
© Copyright 2026 Paperzz