The administrator can specify how each task should be configured (i.e. to account for any variation in the requirements of the task). This configuration data, which is stored as Keyword/Value pairs, is sent back to the Task Server when the task is performed.
The task will inform the Clarity server of the information required, using an XML format similar to:
<?xml version="1.0" encoding="utf-8"?>
<TaskParameters>
<TaskParameter type="Textbox" name="View(s) To Print" default="[3D]" hintTip="Enter the name of a saved view/sheet set in your project, or [3D] for a default 3D view."/>
<TaskParameter type="Textbox" name="FBX Filename" default="[Document].fbx" hintTip="Enter the name of the FBX file to be created (or a prefix if you are specifying multiple views). You can use [Document] to insert the title of the Revit model within the name."/>
<TaskParameter type="Combobox" name="Level Of Detail" default="Dynamic" hintTip="Do you want the level-of-detail to be based on the view settings (dynamic) or a fixed value?">
<Item name="Dynamic"/>
<Item name="1"/>
<Item name="2"/>
<Item name="3"/>
<Item name="4"/>
</TaskParameter>
<TaskParameter type="Combobox" name="Include Boundary Edges" default="Yes" hintTip="Should boundary edges be included in the export?">
<Item name="Yes"/>
<Item name="No"/>
</TaskParameter>
<TaskParameter type="Combobox" name="Stop On Error" default="Yes" hintTip="Should the export stop if one view encounters an error?">
<Item name="Yes"/>
<Item name="No"/>
</TaskParameter>
</TaskParameters>
The XML contains a list of TaskParameters, each with a type of either:
Textbox, or
Combobox (Include a list of Items under the task parameter to provide the list of names)
The Task parameter should have:
A name
A default value
(Optional) A hintTip: Represented by the question mark / bubble help that displays next to the TaskParameter to give the administrator any hints on how to use it.
Generally, these task parameters are static; however, they can be slightly dynamic by populating them at runtime when GetConfiguration() is run.
For example, the PDF paper sizes can be read from the server when the application starts.
In addition, several additional fields have been defined in the XML for more advanced behaviors:
- autocomplete: a SQL select statement against the project database to populate an optional drop-down for a textbox entry.
- For visibility control, add:
- parent: the name of the other parameter that controls the visibility of this entry.
- action: "Visible" (only option, at present)
- condition: "EQ" (equals) or "StartsWith"
- value: value of the parent that should trigger visibility of this item.
Additional Notes (contact support for more information):
There is also an option to have javascript validation of your task parameter selections built within the XML.
It is now possible to substitute your own custom HTML view front end for the above questions, rather than the default two-column configuration details.