Variables hold information about various facts/values required during execution of apps. It is some sort of global dictionary of variables and parameters that hold and store information. The variable objects are hold in application objects. Variable objects can be grouped naming them using convention Group Name e.g. all customer related variables can be grouped under Customer. One group can be well used for a specific application or in multiple applications. For example,Customer.Age, Customer.Name, etc. would put these Variables into logical group Customer which would contain all variables that describe the customer information. The system uses directories corresponding to variable group name to store variable details in encryped XML files.
This type indicates a variablethat have minimum basic properties and store values may not be used for specific purpose. All other types of Variables inherit the properties of simple variable. Simple Variables have following properties.
| Property | Purpose |
|---|---|
|
Name |
It is name of the variable. Variable names can be of any length. It should contain at least an alphabet. Spaces and hyphens can be included inside variable names. Since the literals (constants) are not included inside the quotes, the system does not allow variable names which partially match with other names in the variable objects. For example, Customer. Age and Customer. Age Status would be conflicting and system would accept only one whichever created first. In such case Customer. Status of Age can be used in place of Customer. Age Status. Reserved words are not allowed to be variable names. |
|
Data Type |
The data types supported: Variant, Boolean, Number, Real, Text, Matrix, Compound, Trend, Date, URL, Document |
|
Description |
Description about variable. It is helpful in system documentation. Should ideally specify what is the use of variable, where and how it is used etc. Tags <User></User> and <System></System> can be used to differentiate between system and user description respectively. |
|
Title |
The title of the variable that would appear on reports as heading. Default is variable name. |
|
Menu Name |
Name of the menu linked to this variable. Menu can be assigned to variable to validate the possible values, to convert data from one format to another etc. Along with menu name, property: IsUsingMenuCode can be used to use values as Menu Code instead of Menu Option. If this property is set Menu Code is used in place of Menu Option. |
|
Default Value |
Default value assigned to variable. |
|
Database Field |
This property is used when variable value is to be fetched from the database at run-time. It is set to name of Dynamic Query. Alternative to this is to use GET_DB_FIELD function. |
|
Mask |
Value of the variable can be formatted using Mask. This mask is used in reports and applicable to only numeric and date Vars. Mask can be used to enter dates in specific format. |
|
Display Format |
When variable value is displayed on report. This HTML formatting would be used. The format text should contain [Value] where value would be populated. e.g.<b><font Colour='Green'>[Value]</font></b> value would be green and bold. If NoShowis set as format text, then value of variable would not be displayed on report, however variable value would be available (may be used calculation, etc.) |
|
WhenAdded Script |
The JavaScript code which is executed at run-time whenever variable is initialised with some value either through the database or by user. This is required when values of other values to be derived by procedural calculations etc. The script can include Variable Object Names inside the script. The system automatically creates corresponding JavaScript which can be executed during run-time. The script can be server side (.asp) or client side (.htm). Depending upon the file name extension assigned. The JavaScript code is stored in the file specified in Script Filename property. WhenAddedScripts play crucial role in implementing procedural logic along with Intelligent systems. The following example script is written on variableManufacturing.Unit: Whenever user enters Unit, the script would calculate Manufacturing.UnitFactor. The Variables that to be computed must use special JavaScript library function called as SetValue. |
Input variable type is used when input to the variable is to be entered by the user at run-time through html pages.
| Property | Purpose | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Dynamic Menu |
Like Menu option which holds list of possible values for a variable. The dynamic menu holds the value at run-time. Values are retrieved from database or from static menu based on filter. When the possible values of the variable are to be retrieved and populated from database at run-time, dynamic menu is linked to variable. For example, if a variable takes list of cities in a selected State, the value of variable depends upon State selected. A dynamic menu is assigned in such a case which retrieves list of cities by sending state name/code as filter. |
||||||||||||
|
Question |
A prompt to be displayed on web page. It can include [variable name], which would be replaced by the corresponding value at run-time. |
||||||||||||
|
Description |
Description of variable to be displayed to convey interpretation/purpose of the input, etc. The description text can be in HTML format. The description can include [variable name] |
||||||||||||
|
Minimum, Maximum |
Applicable in case of integer and real variables. It helps to validate the data entered by the user. The system adds a JavaScript code to the web-page to perform these validations. If increment value is set then navigation menu is added (increment and decrement) to the control. |
||||||||||||
|
Validation Condition |
A JavaScript code to be used to validate the data entered. It can include [variable name]. For example: Customer. Gross Savings<=Customer. Gross Income. The system automatically converts the Java Code into executable Java Code when web-page is generated. The validation message can be set in Validation Message property. |
||||||||||||
|
Form Title |
This title is used when variable value is to be entered through the data entry form generated. |
||||||||||||
|
Input Control |
Control to be used Web-page. Controls correspond to data types and other property set. For example, to get integer, real, matrix, data etc. Text box is used. If menu is assigned to a variable, then either Radio Box or Dropdown box is used. For compound text data type, (if menu is assigned) check boxes are used. The Max Length can be specified in case of input from Textbox. If the data type is compound, the maximum occurrences of inputs can be specified. For example, if BankAccounts is a variable of compound type with bank account names and max accounts can be entered is 5. It can be set maximum occurrences to 5. |
||||||||||||
|
Image File Name |
Any Image to be displayed along with webpage as a popup. |
||||||||||||
|
Web Page File |
Name of the web page that would created to get the value of variable from user and automatically invoked by the system at run-time. The default template name is automatically assigned by the system if not specified depending upon the variable name. It replaces all special characters like space, dot('.') with hyphen. These web pages are created on the path that corresponds to application group prefixed with app name. When web pages are created, the system uses a template file as a formatting template where html controls and JavaScript code are inserted by the system. This file is picked up from the subdirectory corresponding to application group. The web-page generated itself is stored in that subdirectory and accessed from it at run-time. |
||||||||||||
|
Template File |
The name of the html file used to create web-page based on various variable parameters. This file must either contain a tag <!--INSERT HERE--> or separate tag like entries like [PROMPT], [CONTROL], [DESCRIPTION], [OPTION_IMAGE], [OPTION_DESCRIPTION], [IMAGE] to insert appropriate contents and control. This file also should contain buttons (or URLs for) like OK, Back, Break Session and corresponding JavaScript code. Web page may not be visible or created if this file name is not set properly or does not contain mandatory tags. Normally default files: Template.htm and Popup_Template.htm are copied by the system into application directory. These can be modified based on requirements. Template file also contains [JAVASCRIPT_URL] where javascript file path and default.css is inserted. Default.css file contains various HTML formatting to be set to various parts of html page.
|
Report Variables are useful when a report to be assigned to it, generated at run-time and displayed when variable value is asked or variable is encountered during Q&A session. These reports are either generated by executing SQL query (or Rule Filter) or displaying current status of Vars. SQL queries are specific to user logged in and can configured by using Query Interface. These parameters are also applicable to goal variable.
| Property | Purpose |
|---|---|
|
Report ID |
ID of the report that is attached to the variable. This ID works as default report ID which is displayed whenever value of variable is asked. When report ID is connected to Goal variable. Session output would be formatted using this report ID if variable is used as Goal Variable in ShowReport.aspx URL. |
|
Default Report Title |
Default title to be appeared on report. It can be HTML formatted. |
|
CBR Report ID |
ID of the CBR report that is attached to the variable. This ID works as default report ID which is displayed whenever matching cases are shown. |
|
Default CBR Report Title |
Default CBR report title to be appeared on CBR matching result. |
|
View URL/Expression |
Used to display URL link or expression when variable value is displayed on report. This can include Variables included in []. Values would be replaced at run time for each row in case it is SQL report. It populates values at run time into Variables for each row. |
Goal variable play very important roles. Intelligent systems (expert systems/CBR/ANNs) are linked to goal variables and act as starting point to execute expert system/CBR or ANN. Various access rights are set to goal variable rather than individual Vars. Depending upon these access rights users are permitted to execute various intelligent systems. Some of the features are same as that of report variable.
| Property | Purpose |
|---|---|
|
Form Interface |
A form interface can be linked to Goal variable to enter the data in batch mode rather than asking one variable input to the user through Q&A session. Merely adding form interface to the variable does not automatically invoke the form. Whenever variable value is asked explicitly or by expert system Q&A, form is invoked to get the values. |
|
Neural network |
ID of the neural network linked to this variable. It can show the results derived by running the neural network. |
|
CBR Schema |
Schema ID of Case-Schema linked to this variable. Whenever matching cases to be fetched for this variable goal, this schema would be used by Case Engine to retrieve similar cases. |
| Property | Purpose |
|---|---|
|
Selected Variable |
Shows the selected variable name. |
|
New Varible |
For adding new variable. Variable names can be of any length. The name should contain at least one alphabet. Spaces and underscores can be included inside variable names. Reserved words are not allowed to be variable names. |
|
Type |
Shows the Type of varible(i.e input,goal,simple,report) |
|
Data Type |
Shows data type of variable (i.e Variant, Boolean, Number, Real, Text, Matrix, Compound, Trend, Date, URL, Document,) |
|
Element Type |
The compound type represents the data type of contents stored in compound list. It is enabled when variable data type is compound. |
|
Document Type |
The type of document data. Enabled when variable data type is document. |
|
Is multi-lingual? |
Check this option when variable is used in application which supports multiple languages. |
|
Contains Var Name? |
This option can be set when a variable itself contains another variable name (make sure it is not the same variable name). Note the inside variable is only used to ask its value during (QnA sessions), it is not used (substituted) for any calculations etc. This is helpful when different variable inputs are required based on context e.g. asking input for next undefined feature in CBR to complete case. |
|
Initial Value |
For defining Minimum,Maximum,Increment and Default values for variable. |
| Property | Purpose |
|---|---|
|
Simple Menu |
The variable takes input from predefined values from this menu. |
|
Dynamic Menu |
Input to variable is assigned from dynamic menu. |
|
Database field |
The variable takes value returned by executing database query. This does not work when variable is part of UDF. |
|
Form ID |
The variable may take group inputs instead of one input. In such case, form is assigned to the variable. Once inputs are entered in form value 'Complete' is assigned to the variable. |
|
When Needed UDF |
When a variable needs a value as part of rule execution, it is computed by executing this UDF, this UDF must return value and return data type of UDF should be same as that of variable type. |
|
When Added UDF |
When variable value is asked (through UI or from DB) and assigned, this UDF is executed. This can be used to initialise other variables or run some code. |
| Property | Purpose |
|---|---|
|
Title |
The title of the variable that would appear on reports (in form prompt is form title is not defined) as heading. Default:variable name. |
|
Tooltip |
This text will be used as tool-tip text for variable title. |
|
Mask |
Value of the variable can be formatted using mask characters. Applicable to only numeric and date variables. Mask can be used to enter dates in specific format. |
|
Display Format |
When variable value is displayed on report. This HTML formatting would be used. The format text should contain [Variable_Name] where value would be populated. e.g. value of variable would be shown as green and bold. |
|
View URL/Expression |
Used for putting URL link or expression when variable value is displayed on report. This can include variables includes in []. Values would be replaced at run time for each row in case it is SQL report. |
|
Other Options |
Is show lang output?:When value of variable is displayed, it will be displayed in selected language based on session, if multi-lang menu is connected to variable no need to set this. If input variable and text box is used for getting input and if this option is checked, language text will be converted into english text and variable will hold english value. |
| Property | Purpose | ||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Language |
Shows language supported by WKA Studio. |
||||||||||||||||||||||||||||||||||
|
Prompt |
Prompt which appears in question and answer mode. |
||||||||||||||||||||||||||||||||||
|
Description |
Adds description of the variable when template to enter the data is created. It appears at run-time. |
||||||||||||||||||||||||||||||||||
|
UI Control Options |
|
| Property | Purpose |
|---|---|
|
Form Title |
Title of the variable which is used in form, the content type selected must be 'Variable_Title'. |
|
Validation Condition |
JavaScript expression to validate the data entered for this variable at run-time. This expression must be true, if it does not satisfy the condition, validation message is prompted using alert function of JavaScript. WKAS variables can be included in the expression (provided their values are already entered or being entered through form) by including them in square brackets. For example, condition colour should not be green is [VarGroup.Colour]=='Green'. The system automatically inserts extra code to get variable values when web page/form is generated. The validation message must be set in Validation Message property in case condition is used. In case of multilingual for variables using Text controls values can be included in ^s e.g. [VarGroup.Color]='^Green^', based on language, Green will be translated when script is created. |
|
Validation Message |
Message (using JavaScript expression) to be displayed when validation condition is not satisfied. Include text in ^s when text is to be translated into selected language e.g. '^Invalid Colour^:'+[VarGroup.Colour] |
|
File Names |
Web Page:File name of web page for input type variable. A HTML webpage is created by this name prefixed with 'LangCode_AppName_'. This page is automatically invoked by the system at run time whenever variable value is required. Must have htm or html extension. |
|
Generic Attribute |
Common attributes like colour, weight, shape etc. are represented using variable names defined in respective variable group e.g. Mobile.Colour, Shoe.Colour, etc. However, their underlying possible values can remain same. They are represented using generic attributes. |
|
Scan UDF |
Select UDF which will be executed when value of this variable is found, this UDF must take argument as variable name itself. |