docs: def select(TableName,DestinationTableName=QUERY_BUFFER,ParameterNames=None,Conditions=None,Output=True,File=None):
      """
      INPUT PARAMETERS: 
          TableName:            name of source table              (required)
          DestinationTableName: name of resulting table           (optional)
          ParameterNames:       list of parameters or expressions (optional)
          Conditions:           list of logincal expressions      (optional)
          Output:   enable (True) or suppress (False) text output (optional)
          File:     enable (True) or suppress (False) file output (optional)
      OUTPUT PARAMETERS: 
          none
      ---
      DESCRIPTION:
          Select or filter the data in some table 
          either to standard output or to file (if specified)
      ---
      EXAMPLE OF USAGE:
          select('sampletab',DestinationTableName='outtab',ParameterNames=(p1,p2),
                  Conditions=(('and',('>=','p1',1),('<',('*','p1','p2'),20))))
          Conditions means (p1>=1 and p1*p2<20)
      ---
      """
      # TODO: Variables defined in ParameterNames ('LET') MUST BE VISIBLE IN Conditions !!
      # check if table exists
      if TableName not in LOCAL_TABLE_CACHE.keys():
          raise Exception('%s: no such table. Check tableList() for more info.' % TableName)
      if not ParameterNames: ParameterNames=LOCAL_TABLE_CACHE[TableName]['header']['order']
      LOCAL_TABLE_CACHE[DestinationTableName] = {} # clear QUERY_BUFFER for the new result
      RowObjectDefault = getDefaultRowObject(TableName)
      VarDictionary = getVarDictionary(RowObjectDefault)
      ContextFormat = getContextFormat(RowObjectDefault)
      RowObjectDefaultNew = newRowObject(ParameterNames,RowObjectDefault,VarDictionary,ContextFormat)
      dropTable(DestinationTableName) # redundant
      createTable(DestinationTableName,RowObjectDefaultNew)
      selectInto(DestinationTableName,TableName,ParameterNames,Conditions)
      if DestinationTableName!=QUERY_BUFFER:
          if File: outputTable(DestinationTableName,File=File)
      elif Output:
          outputTable(DestinationTableName,File=File)