Ważne: W programach Excel dla Microsoft 365 i Excel 2021 program Power View zostanie usunięty 12 października 2021 r. Zamiennie możesz użyć interaktywnego środowiska wizualnego udostępnionego przez program Power BI Desktop, który możesz pobrać bezpłatnie. Możesz również łatwo zaimportować skoroszyty programu Excel do programu Power BI Desktop.
Symptomy
Załóżmy, że używasz programu Power View w programie Microsoft SharePoint 2013, a wersja SQL Server to SQL Server 2012 z dodatkiem Service Pack 2 (SP2) lub SQL Server 2014. Podczas próby dodania wielu filtrów do raportu Power View jest wyświetlany następujący komunikat o błędzie:
System.ArgumentException: Nazwa "nazwa <filtru >" została określona dwa razy: dla indeksu 0 i indeksu 1. Zduplikowane nazwy są niedozwolone.
Nazwa parametru: klucze[1]
w witrynie 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)
w witrynie Microsoft.Data.Common.CommandTrees.ExpressionBuilder.Internal.EnumerableValidator'3.Validate()
w witrynie Microsoft.Data.Common.CommandTrees.ExpressionBuilder.Internal.ArgumentValidation.ValidateGroupBy(DbGroupExpressionBinding input, klucze IEnumerable'1, Agregory IEnumerable'1, DbExpressionList& validKeys, ReadOnlyCollection'1& validAggregates)
w witrynie Microsoft.Reporting.QueryDesign.ExpressionTrees.ExpressionBuilder.Internal.QueryExpressionBuilder.GroupBy(QueryGroupExpressionBinding input, IEnumerable'1 groupItems, IEnumerable'1 aggregates)
w witrynie Microsoft.Reporting.QueryDesign.QueryDefinitionModel.Internal.QdmExpressionBuilder.QdmGroupBy(Wyrażenia IEnumerable'1)
w witrynie Microsoft.Reporting.QueryDesign.QueryDefinitionModel.Internal.QdmExpressionBuilder.QdmFilter(Predykaty IGrouping'2)
at System.Linq.Enumerable.WhereSelectEnumerableIterator'2.MoveNext()
w źródle System.Linq.Buffer'1..ctor(źródło IEnumerable'1)
at System.Linq.Enumerable.ToArray[TSource](Źródło IEnumerable'1)
w witrynie Microsoft.Reporting.QueryDesign.QueryDefinitionModel.Internal.QdmExpressionBuilder.QdmFilters(IEnumerable'1 filterConditions)
w witrynie Microsoft.Reporting.QueryDesign.QueryDefinitionModel.Internal.FilterQueryFactory.AddRowCount(QueryBuilder queryBuilder, grupa, jednostka EntitySet, IEnumerable'1 wierszCountFilterContext)
w witrynie Microsoft.Reporting.QueryDesign.QueryDefinitionModel.Internal.FilterQueryFactory.CreateValueWithCountQuery(QueryBuilder queryBuilder, Kolumny List'1, pole IEdmFieldInstanceInstance, FilterCondition availableValueFilter, FilterCondition activeValueRetentionFilter, GroupReference& groupRef)
w witrynie Microsoft.Reporting.QueryDesign.QueryDefinitionModel.Internal.FilterQueryFactory.CreateValueListQuery(Model EntityDataModel, pole IEdmFieldInstanceInstance, Int32 topCount, FilterCondition availableValueFilter, FilterCondition activeValueRetentionFilter, IEnumerable'1 exclusionPathSegments, ValueListQuerySchema& schema)
w witrynie Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FilterValueQueryFactory.CreateFilterValuesQuery[TFilterMode](TFilterMode filterMode, Int32 maxRowCount, FormulaFilterCondition availableValueFilter, FormulaFilterCondition activeValueRetentionFilter, ValueListQuerySchema& schema)
w witrynie Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.ListFilterMode.ListDataLoader.<LoadDataImpl>d__15.MoveNext()
w witrynie Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.MoveNextChecked()
w witrynie Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.ResumeIterator(Boolean synchronous)
w witrynie Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.BeginExecuteCore(AEnumerator'1 asyncMethod)
w witrynie Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorImpl.BeginExecute(Func'2 asyncMethod)
at Microsoft.Reporting.AsyncEnumerator.BeginExecute(Func'2 asyncMethod, AsyncCallback userCallback, Object userState, AsyncEnumeratorSettings settings)
w witrynie Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FilterMode.DataLoader'1.BeginLoadData(AsyncCallback userCallback, Object userState)
w witrynie Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FilterMode.DataLoader'1.LoadDataAsync()
w witrynie Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FieldFilter.LoadDataAsyncCore()
w witrynie Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FilterManager.OnEditCompleted()
w witrynie Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.PageFilterManager.OnEditCompleted()
w witrynie Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FilterManager.OnEditCompleted(EventArgs args)
w witrynie Microsoft.Practices.Prism.Events.EventSubscription'1.InvokeAction(Akcja'1, argument TPayload)
w witrynie Microsoft.Practices.Prism.Events.EventSubscription'1.<>c__DisplayClass2.<GetExecutionStrategy>b__0(Object[] arguments)
w witrynie Microsoft.Practices.Prism.Events.EventBase.InternalPublish(Object[] arguments)
w witrynie Microsoft.Practices.Prism.Events.CompositePresentationEvent'1.Publish(Obciążenie TPayload)
w witrynie Microsoft.Reporting.AdHoc.DataStructureManagement.Internal.TransactionManager.EditEventAggregator.Exit()
at Microsoft.Reporting.AdHoc.DataStructureManagement.Internal.TransactionManager.EditEventAggregator.SelectionManager_SelectionResumed(Object sender, EventArgs e)
w witrynie Microsoft.Reporting.Util.RaiseEvent(EventHandler eventHandler, Object sender, EventArgs eventArgs)
w witrynie Microsoft.Reporting.AdHoc.Shell.Regions.Canvas.Internal.SelectionManager.ResumeSelectionChanges()
w witrynie Microsoft.Reporting.AdHoc.Shell.Regions.Canvas.Internal.SelectionManager.<.ctor>b__3(Object s, EventArgs e)
w witrynie Microsoft.Reporting.Util.RaiseEvent(EventHandler eventHandler, Object sender, EventArgs eventArgs)
at Microsoft.Reporting.AdHoc.DataManagement.Internal.DataManager.set_HandleRdmChanges(wartość logiczna)
at Microsoft.Reporting.AdHoc.DataManagement.Internal.DataManager.UndoManager_SuspendRdmHandlingChanged(Object sender, StateChangedEventArgs'1 args)
w witrynie Microsoft.Reporting.Util.RaiseEvent[TEventArgs](EventHandler'1 eventHandler, Object sender, TEventArgs eventArgs)
w witrynie Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoManager.<.ctor>b__0(Object sender, StateChangedEventArgs'1 args)
w witrynie Microsoft.Reporting.Util.RaiseEvent[TEventArgs](EventHandler'1 eventHandler, Object sender, TEventArgs eventArgs)
at Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoManagerApiProperties.set_SuspendDataManagerRdmHandling(wartość logiczna)
w witrynie Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoManagerHasOpenUndoGroupStateImpl.OnUndoGroupCommitting(UndoGroup undoGroup)
w witrynie Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoManagerHasOpenUndoGroupStateImpl.HandleUndoGroupStateChanged(Object sender, EventArgs args)
w witrynie Microsoft.Reporting.Util.RaiseEvent(EventHandler eventHandler, Object sender, EventArgs eventArgs)
w witrynie Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoGroup.HandleStateEnteredEvent(Object sender, EventArgs args)
w witrynie Microsoft.Reporting.Util.RaiseEvent(EventHandler eventHandler, Object sender, EventArgs eventArgs)
w witrynie Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoGroupCommittingStateImpl.EnterState()
w witrynie Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoGroup.SetState(UndoGroupStateImpl nextState)
w witrynie Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoGroupOpenStateImpl.Commit()
w witrynie Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoGroup.Commit()
w witrynie Microsoft.Reporting.AdHoc.DataStructureManagement.Internal.TransactionManager.CompleteTransaction(Transaction, Boolean completedSuccessfully)
w witrynie Microsoft.Reporting.AdHoc.DataStructureManagement.Internal.TransactionManager.Transaction.Dispose()
w witrynie Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.ListFilterMode.SelectOnly(wiersz ListFilterRow)
at Microsoft.Reporting.AdHoc.Shell.Regions.Canvas.Internal.FilterCheckBoxList.FieldValueSelectorButton_Click(Object sender, RoutedEventArgs e)
w systemie. Windows. Controls. Wieczysty.ButtonBase.OnClick()
w systemie. Windows. Controls.Button.OnClick()
w systemie. Windows. Controls.999.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
w systemie. Windows. Controls.Control.OnMouseLeftButtonUp(Control ctrl, EventArgs e)
w ), gdy jest to ms. Internal.PrzygotHelper.FireEvent(IntPtr unmanagedObj, IntPtr unmanagedObjArgs, Int32 argsTypeIndex, Int32 actualArgsTypeIndex, String eventName, flagi UInt32)
Rozwiązanie
Ten problem został rozwiązany po raz pierwszy w następnej zbiorczej aktualizacji SQL Server.
Aktualizacja skumulowana 1 dla SQL Server 2014 z dodatkiem SP1 /help/3067839
Aktualizacja skumulowana 6 dla SQL Server 2014 /help/3031047
Aktualizacja skumulowana 4 dla SQL Server 2012 z dodatkiem SP2 /help/3007556
Każda nowa aktualizacja skumulowana SQL Server zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały uwzględnione w poprzedniej aktualizacji skumulowanej. Zapoznaj się z najnowszymi aktualizacjami skumulowanymi dla SQL Server:
Stan
Firma Microsoft potwierdziła, że jest to problem w produktach firmy Microsoft wymienionych w sekcji "Dotyczy".