About Tags and the Project Database When using another tag to reference the index of an array, if the value of the tag is outside the size of the array, then the following results are given: • If IndexTag is greater than the size of the array, then MyArray[ IndexTag ] will point to the end position of the array; and • If IndexTag is less than 0, then MyArray[ IndexTag ] will point to the start position of the array. Array Tags An array tag consists of a set of tags that all have the same name, but use unique array indexes (a matrix of n lines and one column) to differentiate between each tag. An array index can be a fixed value, another tag or an expression.
Maximum array sizes are determined by product specifications. You can use array tags to: • Simplify configurations • Enable multiplexing in screens, recipes, and communication interfaces • Save development time during tag declaration You specify array tags in one of two formats: • For a simple array tag, type: ArrayTagName [ ArrayIndex ] • For a complex array tag (where the array index is an expression consisting of a tag and an arithmetic operation), type: ArrayTagName [ ArrayIndex + c ] Where: • ArrayTagName is the tag name; • [ ArrayIndex ] is the unique index (fixed value or another tag); • + is an arithmetic operation; and • c is a numerical constant. Note:
• You must specify a maximum index for each array tag by typing a value ( n ) in the Array Size column of an Project Tags datasheet or in the Array Size field on a New Tag dialog. When you create an n -position array tag, IWS actually creates n +1 positions (from 0 to n ). For example, if you specify ArrayTag[15] , the array will have 16 elements, where 0 is the start position and 15 is the end position. • You must not use spaces in an array tag. When IWS reads a tag it begins with the first character and continues until it finds the first space or null character. Consequently, the system does not recognize any characters following the space as part of the array tag.
For example, if you type a[second + 1] , IWS regards a[second as the tag and considers it invalid because IWS does not find (recognize) the closing bracket. However, if you type a[second +1] , this is a valid array tag. You can specify an array tag wherever you would use a variable name. Also, because array tags greatly simplify configuration tasks and can save development time, we suggest using them whenever possible. For example, suppose you want to monitor the temperature of four tanks. The conventional configuration method is: • temperature1 — high temperature on tank 1 • temperature2 — high temperature on tank 2 Page 51