protected override CommandCanExecuteResult CanExecute() { if (CurrentNode == null || CurrentQueryBlock == null || CurrentNode.Id != OracleGrammarDescription.Terminals.Identifier) return false; _missingColumn = CurrentQueryBlock.AllColumnReferences.SingleOrDefault(c => c.ColumnNode == CurrentNode); if (_missingColumn == null) return false; _table = GetSingleObjectReference(_missingColumn); return _missingColumn.ColumnNodeColumnReferences.Count == 0 && _missingColumn.ColumnNodeObjectReferences.Count <= 1 && _table != null && _table.Type == OracleObjectType.Table; }
protected override CommandCanExecuteResult CanExecute() { if (CurrentNode == null || CurrentQueryBlock == null || CurrentNode.Id != OracleGrammarDescription.Terminals.Identifier) { return(false); } _missingColumn = CurrentQueryBlock.AllColumnReferences.SingleOrDefault(c => c.ColumnNode == CurrentNode); if (_missingColumn == null) { return(false); } _table = GetSingleObjectReference(_missingColumn); return(_missingColumn.ColumnNodeColumnReferences.Count == 0 && _missingColumn.ColumnNodeObjectReferences.Count <= 1 && _table != null && _table.Type == OracleObjectType.Table); }