/* Main rule instead of a!gridTextColumn() */ a!applyComponents( function: rule!productCatOrDesc( productCategory: local!productCategory, productCategoryArray: index(local!products.data, "PRODUCT_CATEGORY", {}), productDescription: local!productDescription, productDescriptionArray: index(local!products.data, "PRODUCT_DESCRIPTION", {}), idx: _ ), array: 1+enumerate(count(local!products.data)) ) /* Sub Rule Definition */ productCatOrDesc( productCategory Number, productCategoryArray Number (Multiple), productDescription Number, productDescriptionArray Number (Multiple), idx Number ) /* Sub Rule */ with( local!data: if( rule!APN_isBlank( /* assumes you have Appian common objects */ ri!productDescritpionArray[ri!idx] ), rule!RADARR_ER_applyCategoryByCategoryID( productCategory: ri!productCategory, categoryID: ri!productCategoryArray[ri!idx] ), rule!RADARR_ER_applyDescriptionNameByDescriptionID( productDescription: ri!productDescription, descriptionID: ri!productDescriptionArray[ri!idx] ) ), a!gridTextColumn( label: "Product", field: "PRODUCT_CATEGORY", data: local!data ) )