################################################################################
#   This is the definition file for tool shanks with an ASCII File as the 
#    database
#
###############################################################################

DB_PREFIX  "DB("
DB_SUFFIX  ")"
ESS_PREFIX "ESS("
ESS_SUFFIX ")"


#############################################################################
#    The list of DB_ALIAS
#
#    All the <alias> defined here can be used in the class description at the end
#    of this file in order to define the fields that should appear in
#    the search criteria and search result dialogs within UG for every class.
#
#    DB_ALIAS  <alias>
#    {
#       DB_ID       < Attribute Identifier defined in the ASCII Data File >
#       DB_ID_TYPE  < Type of the identifier >
#           d _ double
#           i _ integer
#           s _ string
#           OPTIONS       "opt1" "opt2 " "opt3" 
#           OPTIONS_IDS   "val1"  "val2" "val3"
#           DIALOG_NAME "label in search criteria dialog"
#           RSET_NAME   "label in search result dialog"
#    }
#
#    OPTIONS and OPTIONS_IDS can be ommitted, If they are specified
#    then a corresponding option menu is created in the Search Criteria Dialog
#    instead of a simple search field.
#############################################################################

#    The DB_ALIAS of the library reference. It is mandatory that this DB_ALIAS
#    appears in the alias list
#    
        DB_ALIAS  libref 
        {
           DB_ID        LIBRF
           DB_ID_TYPE   s
           DIALOG_NAME "Libref"
           RSET_NAME   "Libref"
        }
		
		
        DB_ALIAS  RecType 
        {
           DB_ID        RTYPE
           DB_ID_TYPE   i	
        }

##################################################################

        DB_ALIAS Type
        {
           DB_ID         STYPE
           DB_ID_TYPE    i
        }

        DB_ALIAS  N_Sections
        {
           DB_ID       SNUM 
           DB_ID_TYPE   i
        }

        DB_ALIAS  Description
        {
           DB_ID       DESCR 
           DB_ID_TYPE   s
        }

#######################################################################

        DB_ALIAS  Seq_no
        {
           DB_ID       SEQ
           DB_ID_TYPE   i
        }


        DB_ALIAS  Diameter 
        {
           DB_ID        DIAM
           DB_ID_TYPE   d	
           DIALOG_NAME "(D) Diameter "
           RSET_NAME "(D) Diameter "
        }

        DB_ALIAS Height
        {
           DB_ID      LENGTH
           DB_ID_TYPE d
           DIALOG_NAME "(L) Height"
           RSET_NAME   "(L) Height"
        }

       DB_ALIAS  TaperAngle
        {
           DB_ID     TAPER
           DB_ID_TYPE   d	
           DIALOG_NAME "(B) Taper Angle"
           RSET_NAME   "(B) Taper Angle"
        }

        DB_ALIAS  CornerRadius
        {
           DB_ID       CRAD
           DB_ID_TYPE   d	
           DIALOG_NAME "(R1) Corner Radius"
           RSET_NAME   "(R1) Corner Radius"
        }
        

###################################################################
#################################################################


LIBREF     libref


#########################################################################
#                      The Class Hierarchy                              #
#########################################################################

CLASS SHANK
{
   TYPE QRY
   QUERY  "[DB(libref)] != [0] && DB(RecType) == [1]"
   DIALOG libref
   RSET   libref Type
   UI_NAME "Shank"

   CLASS MILLING_DRILLING
   {
      TYPE QRY
      QUERY  "[DB(Type)] == [01]"
      DIALOG libref Type 
      RSET   libref Description N_Sections 
      UI_NAME "Milling_Drilling"
   }
}
