Важно: В Excel за Microsoft 365 и Excel 2021 Power View се премахва на 12 октомври 2021 г. Като алтернатива можете да използвате интерактивната визуална среда, предоставена отPower BI Desktop,която можете да изтеглите безплатно. Можете също лесно да импортирате работни книги на Excel в Power BI Desktop.
Симптоми
Да предположим, че използвате Power View в Microsoft SharePoint 2013, а версията на SQL Server е SQL Server 2012 сервизен пакет 2 (SP2) или SQL Server 2014. Когато се опитате да добавите няколко филтъра към отчет на Power View, получавате следното съобщение за грешка:
System.ArgumentException: Името "<име на>" е зададено два пъти, в индекс 0 и индекс 1. Дублираните имена не са разрешени.
Име на параметъра: ключове[1]
в Microsoft.Data.Common.CommandTrees.ExpressionBuilder.internal.EnumerableValidator'3.Validate(IEnumerable'1 argument, String argumentName, Int32 expectedElementCount, Boolean allowEmpty, Func'3 map, Func'2 collect, Func'3 deriveName)
в Microsoft.Data.Common.CommandTrees.ExpressionBuilder.internal.EnumerableValidator'3.Validate()
в Microsoft.Data.Common.CommandTrees.ExpressionBuilder.internal.ArgumentValidation.ValidateGroupBy(DbGroupExpressionBinding input, IEnumerable'1 keys, IEnumerable'1 aggregates, DbExpressionList& validKeys, ReadOnlyCollection'1& validAggregates)
в Microsoft.Reporting.QueryDesign.ExpressionTrees.ExpressionBuilder.internal.QueryExpressionBuilder.GroupBy(QueryGroupExpressionBinding input, IEnumerable'1 groupItems, IEnumerable'1 aggregates)
в Microsoft.Reporting.QueryDesign.QueryDefinitionModel.internal.QdmExpressionBuilder.QdmGroupBy(изрази IEnumerable'1)
в Microsoft.Reporting.QueryDesign.QueryDefinitionModel.Internal.QdmExpressionBuilder.QdmFilter(IGrouping'2 predicates)
в System.Linq.Enumerable.WhereSelectEnumerableIterator'2.MoveNext()
в System.Linq.Buffer'1..ctor(IEnumerable'1 source)
в System.Linq.Enumerable.ToArray[TSource](IEnumerable'1 source)
в Microsoft.Reporting.QueryDesign.QueryDefinitionModel.Internal.QdmExpressionBuilder.QdmFilters(IEnumerable'1 filterConditions)
в Microsoft.Reporting.QueryDesign.QueryDefinitionModel.internal.FilterQueryFactory.AddRowCount(QueryBuilder queryBuilder, group, EntitySet entity, IEnumerable'1 rowCountFilterContext)
в Microsoft.Reporting.QueryDesign.QueryDefinitionModel.internal.FilterQueryFactory.CreateValueWithCountQuery(QueryBuilder queryBuilder, List'1 columns, поле IEdmFieldInstanceInstance, FilterCondition availableValueFilter, FilterCondition activeValueRetentionFilter, GroupReference& groupRef)
в Microsoft.Reporting.QueryDesign.QueryDefinitionModel.internal.FilterQueryFactory.CreateValueListQuery(EntityDataModel model, IEdmFieldInstance fieldInstance, Int32 topCount, FilterCondition availableValueFilter, FilterCondition activeValueRetentionFilter, IEnumerable'1 exclusionPathSegments, ValueListQuerySchema& schema)
в Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FilterValueQueryFactory.CreateFilterValuesQuery[TFilterMode](TFilterMode filterMode, Int32 maxRowCount, FormulaFilterCondition availableValueFilter, FormulaFilterCondition activeValueRetentionFilter, ValueListQuerySchema& схема)
на Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.ListFilterMode.ListDataLoader.<LoadDataImpl>d__15.MoveNext()
на Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.MoveNextChecked()
на Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.ResumeIterator(Boolean synchronous)
на Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.BeginExecuteCore(IEnumerator'1 asyncMethod)
на Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorImpl.BeginExecute(Func'2 asyncMethod)
на Microsoft.Reporting.AsyncEnumerator.BeginExecute(Func'2 asyncMethod, AsyncCallback потребителCallback, Object userState, AsyncEnumeratorSettings settings)
на Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FilterMode.DataLoader'1.BeginLoadData(AsyncCallback потребителCallback, Object userState)
в Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FilterMode.DataLoader'1.LoadDataAsync()
на Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FieldFilter.LoadDataAsyncCore()
в Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FilterManager.OnEditCompleted()
в Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.PageFilterManager.OnEditCompleted()
на Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FilterManager.OnEditCompleted(EventArgs args)
в Microsoft.Practices.Prism.Events.EventSubscription'1.InvokeAction(Действие'1 действие, аргумент TPayload)
на Microsoft.Practices.Prism.Events.EventSubscription'1.<>c__DisplayClass2.<GetExecutionStrategy>b__0(Object[] arguments)
в Microsoft.Practices.Prism.Events.EventBase.InternalPublish(Object[] arguments)
на Microsoft.Practices.Prism.Events.CompositePresentationEvent'1.Publish(TPayload полезен товар)
на Microsoft.Reporting.AdHoc.DataStructureManagement.internal.TransactionManager.EditEventAggregator.Exit()
в Microsoft.Reporting.AdHoc.DataStructureManagement.Internal.TransactionManager.EditEventAggregator.SelectionManager_SelectionResumed(Подател на обект, EventArgs e)
на Microsoft.Reporting.Util.RaiseEvent(EventHandler eventHandler, Подател на обект, събитиеArgs eventArgs)
на Microsoft.Reporting.AdHoc.Shell.Regions.Canvas.internal.SelectionManager.ResumeSelectionChanges()
в Microsoft.Reporting.AdHoc.Shell.Regions.Canvas.internal.SelectionManager.<.ctor>b__3(Обект s, EventArgs e)
на Microsoft.Reporting.Util.RaiseEvent(EventHandler eventHandler, Подател на обект, събитиеArgs eventArgs)
при Microsoft.Reporting.AdHoc.DataManagement.Internal.DataManager.set_HandleRdmChanges(булева стойност)
в Microsoft.Reporting.AdHoc.DataManagement.Internal.DataManager.UndoManager_SuspendRdmHandlingChanged(Подател на обекти, StateChangedEventArgs'1 args)
на Microsoft.Reporting.Util.RaiseEvent[TEventArgs](СъбитиеHandler'1 eventHandler, подател на обекти, събития на TEventArgs)
на Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.internal.UndoManager.<.ctor>b__0(Подател на обект, stateChangedEventArgs'1 args)
на Microsoft.Reporting.Util.RaiseEvent[TEventArgs](СъбитиеHandler'1 eventHandler, подател на обекти, събития на TEventArgs)
при Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoManagerApiProperties.set_SuspendDataManagerRdmHandling(булева стойност)
на Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.internal.UndoManagerHasOpenUndoGroupStateImpl.OnUndoGroupCommitting(UndoGroup undoGroup)
на Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.internal.UndoManagerHasOpenUndoGroupStateImpl.HandleUndoGroupStateChanged(Подател на обект, EventArgs args)
на Microsoft.Reporting.Util.RaiseEvent(EventHandler eventHandler, Подател на обект, събитиеArgs eventArgs)
на Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.internal.UndoGroup.HandleStateEnteredEvent(Подател на обект, EventArgs args)
на Microsoft.Reporting.Util.RaiseEvent(EventHandler eventHandler, Подател на обект, събитиеArgs eventArgs)
на Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.internal.UndoGroupCommittingStateImpl.EnterState()
на Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.internal.UndoGroup.SetState(UndoGroupStateImpl nextState)
на Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.internal.UndoGroupOpenStateImpl.Commit()
на Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.internal.UndoGroup.Commit()
на Microsoft.Reporting.AdHoc.DataStructureManagement.internal.TransactionManager.CompleteTransaction(транзакция, булева завършенаSuccessfully)
на Microsoft.Reporting.AdHoc.DataStructureManagement.internal.TransactionManager.Transaction.Dispose()
в Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.ListFilterMode.SelectOnly(ред ListFilterRow)
в Microsoft.Reporting.AdHoc.Shell.Regions.Canvas.Internal.FilterCheckBoxList.FieldValueSelectorButton_Click(Подател на обект, RoutedEventArgs e)
в Система. Windows. Контроли.Примитивни.ButtonBase.OnClick()
в Система. Windows. Контроли.Button.OnClick()
в Система. Windows. Контроли.Примитивни.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
в Система. Windows. Controls.Control.OnMouseLeftButtonUp(Control ctrl, EventArgs e)
в ДЧ. Internal.JoltHelper.FireEvent(IntPtr unmanagedObj, IntPtr unmanagedObjArgs, Int32 argsTypeIndex, Int32 actualArgsTypeIndex, String eventName, UInt32 flags)
Решение
Този проблем е коригиран за първи път в следната сборна актуализация на SQL Server.
Сборна актуализация 1 за SQL Server 2014 SP1 /en-us/help/3067839
Сборна актуализация 6 за SQL Server 2014 /en-us/help/3031047
Сборна актуализация 4 за SQL Server 2012 SP2 /en-us/help/3007556
Всяка нова сборна актуализация за SQL Server съдържа всички актуални корекции и всички корекции на защитата, които са били включени в предишната сборна актуализация. Прегледайте най-новите кумулативни актуализации за SQL Server:
Състояние
Microsoft потвърди, че това е проблем в продуктите на Microsoft, които са изброени в раздела "Отнася се за".