'''' This code is part of Document Solutions for Word demos.'' Copyright (c) MESCIUS inc. All rights reserved.''ImportsSystem.GlobalizationImportsGrapeCity.Documents.Word '' This example demonstrates the available logical functions'' that can be used with the 'calc' report templates feature.PublicClassDataTplCalcLogicalFunctionCreateDocx() AsGcWordDocument'' A simple data source to be used by the logical functions:Dim data = {True} Dim doc = NewGcWordDocument() '' Add the data source: doc.DataTemplate.DataSources.Add("ds", data) '' Styles and templates to show results:Dim bulletListTemplate = doc.ListTemplates.Add(BuiltInListTemplateId.BulletDefault, "bulletListTemplate")Dim exStyle = doc.Styles(BuiltInStyleId.Heading3)Dim resStyle = doc.Styles(BuiltInStyleId.Strong) Dim paras = doc.Body.ParagraphsDim add As Action(OfString) =Sub(expr)'' Four zero-width spaces are inserted after the opening brace to prevent template expansion: paras.Add(expr.Insert(1, NewString(ChrW(&H200B), 4)) + " : ", exStyle).ListFormat.Template = bulletListTemplate paras.Last.GetRange().Runs.Add(expr, resStyle)EndSub add("{{ calc Iif(ds.value, ""Iif result true"", ""Iif result false"") }}") add("{{ calc IsNull(""Some data"") }}") add("{{ calc Not IsNull(""Some data"") }}") '' Process the templates: doc.DataTemplate.Process(CultureInfo.GetCultureInfo("en-US")) '' Add a short note describing the demo at the top of the document: paras.Insert("This example demonstrates the available logical functions " +"that can be used with the 'calc' report templates feature. " +"Please see this example's source code for full details.",InsertLocation.Start) paras.Insert("Report templates: available calc logical functions", doc.Styles(BuiltInStyleId.Heading1), InsertLocation.Start) '' Done:Return docEndFunctionEndClass