Property
A property defines the individual parts of an object. An example of a simple property would be a string type that represents a last name. A property can also define foreign links to other objects inside the same system. These foreign links may be: another defined object, another collection of objects, or an object that will be selected at runtime.
Property Definition
The following are used to define each property in the XML configuration file. See below for details on each descriptor.
| Name | string | X | empty | Name of the property. |
| Description | string | | empty | Short description of the property. |
| DataConnectionKey | string | | inherit | Key in the web.config with the data connection string. |
| DataStore | DataStoreType | | inherit | Type of storage for this property. |
| DataType | TurnDataType | | Unset | Data type of information stored in the property. |
| DefaultValue | string | | empty | Default value of information stored in the property. |
| ReportOperation | string | | empty | Report operation that will be done on this column. |
| ForeignName | string | | empty | The foreign name of the object linked to this property. |
| ForeignType | TurnDataType | | Unset | The type of the foreign object. |
| ForeignTextProperty | string | | empty | The foreign property that contains the text description. |
| ForeignValueProperty | string | | empty | The foreign property that contains the value. |
| ForeignLoadMethod | ForeignLoadMethodType | | UnSet | The method for loading the foreign data. |
| ForeignLoadFilterKey | string | | empty | The property to key on when filtering foreign data. |
| ForeignLoadFilterValue | string | | empty | The value to filter on when looking at the foreign filter key. |
| ForeignLoadOrderKey | string | | empty | The property to key on when ordering foreign data. |
| ForeignCacheTime | int | | 0 | The amount of time to cache the foreign data. |
| IsBase | bool | | false | Is this an abstract property? |
| IsRequired | bool | | true | Is the property required when creating a record. |
| IsSearchable | bool | | false | Is the property looked at when searching the records. |
| IsDuplicateCheck | bool | | true | Is the property looked at when determining a duplicate record. |
| IsLoadBy | bool | | false | Is the property used as a key to load a specific record. |
| IsInput | bool | | true | Is the property an input when creating a record. |
| InputPrompt | string | | empty | The text that prompts for the data. |
| InputMethod | InputMethodType | | UnSet | The method of input for the property. |
| InputMax | int | | 0 | The maximum size for input. |
| InputWidth | int | | 0 | The width of the input control. |
| InputHeight | int | | 0 | The height of the input control. |
| InputRegExId |
string | |
empty | The ID in the pattern library that will be used to validate this property's input. |
| RenderMethod | RenderMethodType | | SingleLine | The method for rendering out the property. |
| IsGridVisible | bool | |
true | Is the property displayed on the grid view. |
| IsDetailVisible | bool | |
true | Is the property displayed on the detail view. |
| DisplayFormatId | string | |
empty | The ID in the pattern library that the string will be formatted to. |
Name
The name of the property will be it's identifier in the object. It is also the field name in the data storage. No spaces are allowed in the name.
Description
The description of the property is used as an aid to developers reading the system configuration.
DataConnectionKey
The DataConnectionKey represents the value in the web.config file that will contain the connection string. The DataConnection property of the TurnProperty class will return the connection string by getting it from the web.config.
DataStore
The DataStore is the type of data storage that will hold data that is recorded by the object. Currently the system only uses the MS SQL database.
DataType
The type of data that is being represented by the property. The table below describes the avalible types:
| UnSet | No data type set |
| Guid | Unique identifier that is the primary key for the majority of the objects |
| Integer |
32-bit, -2,147,483,648 to 2,147,483,647 |
| Decimal | 128-bit, ±1.0 × 10e−28 to ±7.9 × 10e28 |
| Double | ±5.0 × 10−324 to ±1.7 × 10308 |
| Long |
64-bit, -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 |
| String | String of Unicode characters |
| DateTime |
A particular instance of time and date that can be represented in a variety of ways |
| SecurityRole | A TurnObjects security role |
| PlaceHolder | Shows where properties are added when combining to a base schema |
| DynamicObject | A foreign dynamic object that is determined at run time |
| StaticObject | A foreign static object that is determined at design time |
| Collection | A collection of system objects |
| OptionCollection |
A collection of options that are avalible selections |
DefaultValue
The default value for each property is set when the object is set to default, not when instatiated. Depending on the type of data the property represents, the default value can be any number of things. The table below shows special strings you can use to set specific default values for a property.
Integer Long Decimal Float | ##NEW## | -1 |
| DateTime | ##CURRENT## | Current time |
| Guid | ##NEW## ##EMPTY## | New unique ID Empty ID |
StaticObject DynamicObject | ##DEFAULT## | Sets default values for the foreign object |
ReportOperation
The type of operation that will be used to report on the property. The following options are avalible:
| None | No reporting done on this property |
| CountNonNull | Number of record that are not null |
| CountUnique | Unique number of records |
| Count | Number of records |
| Average | Average of records (column should be numeric) |
| Sum | Sum of records (column should be numeric) |
ForeignName
The name of the foreign object that will be linked to by this property. This can be an object in the system or the name of an existing data store, a database table name etc. No spaces are allowed in the name.
ForeignType
The type of object the foreign object represents. Normally the foreign type will be one of the following:
| DynamicObject | A foreign dynamic object that is determined at run time |
| StaticObject | A foreign static object that is determined at design time |
| Collection | A collection of system objects |
| OptionCollection |
A collection of options that are avalible selections |
ForeignTextProperty
The foreign property that contains the text description. This is the human friendly description of the value that is represented by the ForeignValueProperty. This is primarily used when linking to an OptionCollection.
Properties of the input type DrillDownList use ForeignTextProperty as a way to define the levels of the drill down. The levels are comma delimeted and start with the highest level first.
ForeignValueProperty
The foreign property that contains the value. This is the value that will be recorded in the data store for this property.
ForeignLoadMethod
The method for loading the foreign data.
| TurnSystem | Load from the system configuration file. These are the options defined in the PropertyOptions section. |
| SqlLoad | Load the options from the database table specified by the ForeignName. |
| ObjectCollection | Load the options from the avalible items in the collection of TurnObjects defined in the ForeignName. |
| Calculation | The value is calculated from the values of other properties in the schema. The calculation is described in the ForeignValueProperty of the property. |
ForeignLoadFilterKey
The property to key on when filtering foreign data.
ForeignLoadFilterValue
The value to filter on when looking at the foreign filter key.
ForeignLoadOrderKey
The property to key on when ordering foreign data.
ForeignCacheTime
The amount of time to cache the foreign data. The option to cache the foreign data improves performance by allowing the system to cache the data for a specified amount of time. Options loaded from PropertyOptions are part of the system and are already cached with the system.
IsBase
Determine if the property is represented in the base class. This will only be set to true inside a configuration file that is describing a base class.
IsRequired
Is the property required when creating a record? If the property is true the UI for the input controls will validate that a value has been set.
IsSearchable
Is the property looked at when searching the records. If this is set to true the property, and all properties with IsSearchable set, will be looked at when searching for a specified string. The specified string to search on is held by the SearchString property on the collection class.
IsDuplicateCheck
Is the property looked at when determining a duplicate record.
IsLoadBy
Is the property used as a key to load a specific record. Normally the primary key is used to identify a particular record. If a property IsLoadBy then the object can be loaded by setting the property to a value and then calling the LoadBy method.
IsInput
Is the property an input when creating a record.
InputPrompt
The text that prompts for the data.
InputMethod
The method of input for the property.
| UnSet | No method set. |
| TextBox | Textbox with specified height,width,max characters. |
| DropDownList | DropDown list with specified height,width. |
| ListBox | ListBox list with specified height,width. |
| CheckBox | CheckBox |
| RadioButtonList | RadioButtonList |
| Hidden | Hidden properties are avalible in the input UI, but not displayed. This is useful when storing a value that the user does not input. |
| DrillDownList | A DrillDownList will have multiple dropdowns that are useful when many options are avalible. The user can select broad catagories that will narrow the option avalible in the next selection. |
| Grid | A grid represents child items that are connected to the main item. |
| Inline | An inline item is a foreign object that will be displayed according to it's own properties inline with the properties of this object. |
| TextBoxLookUp | This textbox will contain a value that is used to load another object in the system. The loaded object becomes the value for the property. |
| Separator | The separator is a UI indicator only and is used to logically separate sections in the input UI. |
InputMax
The maximum size for input. Primarily used for text entry to limit the number of characters allowed in a TextBox.
InputWidth
The width of the input control.
InputHeight
The height of the input control. If this is set > 0 using a TextBox the box will become a multiline box.
InputRegExId
The ID in the pattern library that will be used to validate this property's input.
RenderMethod
The method for rendering out the property.
| SingleLine | One line for the prompt and input. |
| DoubleLine | One line for the prompt and one line for the input. |
| SameLine | On the same line as the previous input. |
IsGridVisible
Is the property displayed on the grid view.
IsDetailVisible
Is the property displayed on the detail view.
DisplayFormatId
The ID in the pattern library that the string will be formatted to.
Options list from the database
| ForeignLoadMethod | SqlLoad |
| ForeignName | Name of the table in the database |
| ForeignType | OptionCollection |
| ForeignTextProperty | Field on the table with the text that will be on each option. |
| ForeignValueProperty | Field on the table with the value that will represent each option. |
| ForeignLoadFilterKey | Field used to filter the options from the table. |
| ForeignLoadFilterValue | Value that will compared against to filter the options. |
| ForeignCacheTime | Number of seconds the options will be cached. |
Options list from the TurnSystem
| DataType | Datatype of the value stored for the selected option |
| ForeignType | OptionCollection |
| ForeignLoadMethod | TurnSystem |
| ForeignLoadFilterValue | The name of the option set to load. |
Static Child Object
| DataType | Datatype of the primary key in the child object. |
| ForeignName | Name of the child object |
| ForeignType | StaticObject |
| InputMethod | Inline |
Dynamic Child Object
| DataType | Datatype of the primary key in the child object |
| ForeignName | Name of the property in this object that holds the schema name of the dynamic object. |
| ForeignType | DynamicObject |
| InputMethod | Inline |
Collection Of Child Objects
| DataType | Collection |
| ForeignName | Object name that is the collection |
| ForeignType | Collection |
| ForeignValueProperty | Property on the object collection that is used to join to this object |
© 2008 TurnObjects All rights reserved. Legal | Privacy
|