Differences

This shows you the differences between two versions of the page.

Link to this comparison view

cfl_ch_5-variables [2019/01/30 09:22]
127.0.0.1 external edit
cfl_ch_5-variables [2019/01/31 11:26] (current)
kcifreo
Line 1: Line 1:
- +
  
 **Variables** are the basic properties, or data points, associated with the product. The main purpose for creating variables is to capture the information necessary for pricing products. However, variables are just as valuable for capturing the information used in production. **Variables** are the basic properties, or data points, associated with the product. The main purpose for creating variables is to capture the information necessary for pricing products. However, variables are just as valuable for capturing the information used in production.
- 
- 
  
 In CFL, variables may be either local or global. Local variables are used for temporary calculations during order entry. They are convenient when simplifying complex calculations,​ but they cannot directly hold user-entered information. Global variables are used for storing information,​ calculations,​ and other data that are used throughout the program. Anything a user enters or gets back will use global variables. In CFL, variables may be either local or global. Local variables are used for temporary calculations during order entry. They are convenient when simplifying complex calculations,​ but they cannot directly hold user-entered information. Global variables are used for storing information,​ calculations,​ and other data that are used throughout the program. Anything a user enters or gets back will use global variables.
- 
- 
  
 CFL provides a number of variables types for use. Each data type is designed to allow the user to specify the defaults and related information to make using the variable much easier. The variable data types supported in CFL are: CFL provides a number of variables types for use. Each data type is designed to allow the user to specify the defaults and related information to make using the variable much easier. The variable data types supported in CFL are:
-    * Boolean/​Yes-No 
-    * Date Time 
-    * Image 
-    * Numeric 
-    * Object 
-    * Selection List 
-    * Table Lookup 
-    * Text 
  
 +  * Boolean/​Yes-No
 +  * Date Time
 +  * Image
 +  * Numeric
 +  * Object
 +  * Selection List
 +  * Table Lookup
 +  * Text
  
 +==== Boolean/​Yes-No Variables ====
  
-Boolean/​Yes-No Variables  +**Boolean/​Yes-No Variables** ​ are variables whose value can be either yes(true) or no(false).
- +
-**Boolean/​Yes-No Variables** are variables whose value can be either yes(true) or no(false). +
- +
  
 Internally, Control will treat 0 as false and anything this is not zero as true. Internally, Control will treat 0 as false and anything this is not zero as true.
  
 +==== DateTime Variables ====
  
- +**DateTime Variables** ​ are variables whose value stores a date and/or time. Dates and times can be added and subracted.
-DateTime Variables  +
- +
-**DateTime Variables** are variables whose value stores a date and/or time. Dates and times can be added and subracted. +
- +
  
 Internally, Control stores the date in the integer part of a number and the time is the function of the day. (Ex. Noon is 0.5 where as 6 p.m. is 0.75.) The date is stored as the number of days since 12/30/1899. Internally, Control stores the date in the integer part of a number and the time is the function of the day. (Ex. Noon is 0.5 where as 6 p.m. is 0.75.) The date is stored as the number of days since 12/30/1899.
  
 +==== Image Variables ====
  
 +**Image Variables** ​ store many things. They store:
  
-Image Variables ​ 
- 
-**Image Variables** store many things. They store: 
   * the path to the original image file   * the path to the original image file
   * a thumbnail of the file image   * a thumbnail of the file image
   * the date and time the file was last edited   * the date and time the file was last edited
  
 +==== Number Variables ====
  
 +**Number Variables** ​ store real numbers with up to 12 digit precision.
  
-Number ​Variables ​+==== Object ​Variables ​====
  
-**Number ​Variables** store real numbers with up to 12 digit precision.+**Object ​Variables** ​ are complex variables that store the parent object of a UDF. The parent object may be a Company, a Contact, an Employee, or a Transaction.
  
 +==== Selection List Variables ====
  
 +**Selection List Variables** ​ store two things. The variables store a string corresponding to the selection made. They also store the name of the list being used.
  
-Object ​Variables ​+==== Table Lookup ​Variables ​====
  
-**Object ​Variables** ​are complex variables that store the parent object of UDF. The parent object may be a Companya Contact, an Employee, or a Transaction.+**Table Lookup ​Variables** ​ ​hold ​reference to 12, or 3 dimensional look up tables and stores the value that is looked up.
  
 +==== Text Variables ====
  
 +**Text Variables** ​ hold strings of values. The strings may be up to 65,000 characters long.
  
-Selection List Variables  +==== Variable Properties ​====
- +
-**Selection List Variables** store two things. The variables store a string corresponding to the selection made. They also store the name of the list being used. +
- +
- +
- +
-Table Lookup Variables  +
- +
-**Table Lookup Variables** hold a reference to 1, 2, or 3 dimensional look up tables and stores the value that is looked up. +
- +
- +
- +
-Text Variables  +
- +
-**Text Variables** hold strings of values. The strings may be up to 65,000 characters long. +
- +
- +
- +
-Variable Properties ​ +
- +
  
 Control 4.2 introduced a new feature called **Variable Properties**. Similar to how like selection list properties allow multiple values to be associated with one selection list choice, variable properties allow you to retrieve and store multiple values for a single variable. Control 4.2 introduced a new feature called **Variable Properties**. Similar to how like selection list properties allow multiple values to be associated with one selection list choice, variable properties allow you to retrieve and store multiple values for a single variable.
- 
- 
  
 An unlimited number of variable properties are allowed for each variable, and are frequently used for values that may be calculated but not often referenced or for which the creation of a separate variable is not desired. An unlimited number of variable properties are allowed for each variable, and are frequently used for values that may be calculated but not often referenced or for which the creation of a separate variable is not desired.
- 
- 
  
 Inside of any CFL formula, you can use the following functions: Inside of any CFL formula, you can use the following functions:
Line 99: Line 69:
  
 **GetVariablePropertyText( variable, "​property",​ DefaultValue )** **GetVariablePropertyText( variable, "​property",​ DefaultValue )**
- 
- 
  
 Where, Where,
- 
- 
  
 Variable.Property is the name of the variable and property, separated by a period. Variable.Property is the name of the variable and property, separated by a period.
- 
- 
  
 Value is the value you are setting the property to. Value is the value you are setting the property to.
- 
- 
  
 DefaultValue is the value to use if no such property is defined on the referenced variable. DefaultValue is the value to use if no such property is defined on the referenced variable.
  
 +|**Function** ||**Parameters** ||**Returns…** ||
 +|**SetVariableProperty** ||Variable, \\ PropertyName \\ Value||No value. This function sets the variable property S to Value but does not return anything. \\ S should be of the form "​VariableName.PropertyName",​ such as "​Calculations.TotalArea"​ or "​Colors.RGBValue"​||
 +|**GetVariablePropertyValue** ||Variable, \\ PropertyName,​ \\ DefaultValue||The numeric or boolean variable property named in S if it exists, otherwise the DefaultValue is returned.||
 +|**GetVariablePropertyText** ||Variable, \\ PropertyName,​ \\ DefaultValue||The text variable property named in S if it exists, otherwise the DefaultValue is returned.||
  
 +\\
  
-|| **Function** || **Parameters** || **Returns…** || 
-|| **SetVariableProperty** || Variable, \\ PropertyName \\ Value || No value. This function sets the variable property S to Value but does not return anything. \\ S should be of the form "​VariableName.PropertyName",​ such as "​Calculations.TotalArea"​ or "​Colors.RGBValue"​ || 
-|| **GetVariablePropertyValue** || Variable, \\ PropertyName,​ \\ DefaultValue || The numeric or boolean variable property named in S if it exists, otherwise the DefaultValue is returned. || 
-|| **GetVariablePropertyText** || Variable, \\ PropertyName,​ \\ DefaultValue || The text variable property named in S if it exists, otherwise the DefaultValue is returned. ||