Type statement
Type usertype   elementname As typename
      [ elementname As typename]
...
End Type
Defines a user-defined data type containing one or more elements.
The Type statement has these parts:
Part Description
Type Marks the beginning of a user-defined type.
usertype Name of a user-defined data type. It follows standard variable naming conventions.
elementname Name of an element of the user-defined data type. It follows standard variable-naming conventions.
subscripts Dimensions of an array element. You can declare multiple dimensions.
typename One of these data types: Integer, Long, Single, Double, String (for variable-length strings), String * length (for fixed-length strings), Variant, or another user-defined type. The argument typename can't be an object type. End Type Marks the end of a user-defined type.
Once you have declared a user-defined type using the Type statement, you can declare a variable of that type anywhere in your script. Use Dim or Static to declare a variable of a user-defined type. Line numbers and line labels aren't allowed in Type...End Type blocks.
User-defined types are often used with data records because data records frequently consist of a number of related elements of different data types. Arrays cannot be an element of a user defined type in BlueZone Basic.
Example
' This sample shows some of the features of user defined types
 
Type type1
   a As Integer
   d As Double
   s As String
End Type
 
Type type2
   a As String
   o As type1
End Type
 
Type type3
   b As Integer
   c As type2
End Type
 
Dim type2a As type2
Dim type2b As type2
Dim type1a As type1
Dim type3a as type3
 
Sub Form_Click ()
   a = 5
   type1a.a = 7472
   type1a.d = 23.1415
   type1a.s = "YES"
   type2a.a = "43 - forty three"
   type2a.o.s = "Yaba Daba Doo"
   type3a.c.o.s = "COS"
   type2b.a = "943 - nine hundred and forty three"
   type2b.o.s = "Yogi"
   MsgBox type1a.a
   MsgBox type1a.d
   MsgBox type1a.s
   MsgBox type2a.a
   MsgBox type2a.o.s
   MsgBox type2b.a
   MsgBox type2b.o.s
   MsgBox type3a.c.o.s
   MsgBox a
End Sub