Important : Dans Excel pour Microsoft 365 et Excel 2021, Power View est supprimé le 12 octobre 2021. Vous pouvez également utiliser l’expérience visuelle interactive fournie par Power BI Desktop,que vous pouvez télécharger gratuitement. Vous pouvez également importer facilement des classeurs Excel dans Power BI Desktop.
Symptômes
Supposons que vous utilisez Power View dans Microsoft SharePoint 2013 et que la version SQL Server soit SQL Server 2012 Service Pack 2 (SP2) ou SQL Server 2014. Lorsque vous essayez d’ajouter plusieurs filtres à Power View rapport, vous recevez le message d’erreur suivant :
System.ArgumentException : Le nom « <Nom du filtre> » a été spécifié deux fois, à l’index 0 et à l’index 1. Les noms en double ne sont pas autorisés.
Nom du paramètre : touches[1]
sur Microsoft.Data.Common.Command Trees.ExpressionBuilder.Internal.EnumerableValidator'3.Validate(IEnumerable'1 argument, String argumentName, Int32 expectedElementCount, Boolean allowEmpty, Func'3 map, Func'2 collect, Func'3 deriveName)
sur Microsoft.Data.Common.Command Trees.ExpressionBuilder.Internal.EnumerableValidator'3.Validate()
sur Microsoft.Data.Common.Command Trees.ExpressionBuilder.Internal.ArgumentValidation.ValidateGroupBy(DbGroupExpressionBinding input, IEnumerable'1 keys, IEnumerable'1 aggregates, DbExpressionList& validKeys, ReadOnlyCollection'1& validAggregates)
sur Microsoft.Reporting.QueryDesign.Expression Trees.ExpressionBuilder.Internal.QueryExpressionBuilder.GroupBy(QueryGroupExpressionBinding input, IEnumerable'1 groupItems, IEnumerable'1 aggregates)
sur Microsoft.Reporting.QueryDesign.QueryDefinitionModel.Internal.QdmExpressionBuilder.QdmGroupBy(IEnumerable'1 expressions)
sur Microsoft.Reporting.QueryDesign.QueryDefinitionModel.Internal.QdmExpressionBuilder.QdmFilter(IGrouping'2 predicates)
at System.Linq.Enumerable.WhereSelectEnumerableIterator'2.MoveNext()
sur System.Stockq.Buffer'1..ctor(IEnumerable'1 source)
at System.Linq.Enumerable.ToArray[TSource](IEnumerable'1 source)
sur Microsoft.Reporting.QueryDesign.QueryDefinitionModel.Internal.QdmExpressionBuilder.QdmFilters(IEnumerable'1 filterConditions)
at Microsoft.Reporting.QueryDesign.QueryDefinitionModel.Internal.FilterQueryFactory.AddRowCount(QueryBuilder queryBuilder, Group group, EntitySet entity, IEnumerable'1 rowCountFilterContext)
at Microsoft.Reporting.QueryDesign.QueryDefinitionModel.Internal.FilterQueryFactory.CreateValueWithCountQuery(QueryBuilder queryBuilder, List'1 columns, IEdmFieldInstance fieldInstance, FilterCondition availableValueFilter, FilterCondition activeValueRetentionFilter, GroupReference& groupRef)
sur Microsoft.Reporting.QueryDesign.QueryDefinitionModel.Internal.FilterQueryFactory.CreateValueListQuery(EntityDataModel model, IEdmFieldInstance fieldInstance, Int32 topCount, FilterCondition availableValueFilter, FilterCondition activeValueRetentionFilter, IEnumerable'1 exclusionPathSegments, ValueListQuerySchema& schema)
sur Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FilterValueQueryFactory.CreateFilterValuesQuery[TFilterMode](TFilterMode filterMode, Int32 maxRowCount, FormulaFilterCondition availableValueFilter, FormulaFilterCondition activeValueRetentionFilter, ValueListQuerySchema& schema)
sur Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.ListFilterMode.ListDataLoader.<LoadDataImpl>d__15.MoveNext()
sur Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.MoveNextChecked()
sur Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.ResumeIterator(Boolean synchronous)
sur Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorBase.BeginExecuteCore(IEnumerator'1 asyncMethod)
sur Microsoft.Reporting.AsyncEnumerator.AsyncEnumeratorImpl.BeginExecute(Func'2 asyncMethod)
sur Microsoft.Reporting.AsyncEnumerator.BeginExecute(Func'2 asyncMethod, AsyncCallback userCallback, Object userState, AsyncEnumeratorSettings settings)
sur Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FilterMode.DataLoader'1.BeginLoadData(AsyncCallback userCallback, Object userState)
sur Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FilterMode.DataLoader'1.LoadDataAsync()
sur Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FieldFilter.LoadDataAsyncCore()
sur Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FilterManager.OnEditCompleted()
sur Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.PageFilterManager.OnEditCompleted()
sur Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.FilterManager.OnEditCompleted(EventArgs args)
sur Microsoft.Practices.Prism.Events.EventSubscription'1.InvokeAction(action 1, argument TPayload)
sur Microsoft.Practices.Prism.Events.EventSubscription'1.<>c__DisplayClass2.<GetExecutionStrategy>b__0(Object[] arguments)
sur Microsoft.Practices.Prism.Events.EventBase.InternalPublish(Object[] arguments)
sur Microsoft.Practices.Prism.Events.CompositePresentationEvent'1.Publish(TPayload payload)
sur Microsoft.Reporting.AdHoc.DataStructureManagement.Internal.TransactionManager.EditEventAggregator.Exit()
at Microsoft.Reporting.AdHoc.DataStructureManagement.Internal.TransactionManager.EditEventAggregator.SelectionManager_SelectionResumed(Object sender, EventArgs e)
sur Microsoft.Reporting.Util.RaiseEvent(EventHandler eventHandler, Object sender, EventArgs eventArgs)
sur Microsoft.Reporting.AdHoc.Shell.Regions.Canvas.Internal.SelectionManager.ResumeSelectionChanges()
sur Microsoft.Reporting.AdHoc.Shell.Regions.Canvas.Internal.SelectionManager.<.ctor>b__3(Object s, EventArgs e)
sur Microsoft.Reporting.Util.RaiseEvent(EventHandler eventHandler, Object sender, EventArgs eventArgs)
à Microsoft.Reporting.AdHoc.DataManagement.Internal.DataManager.set_HandleRdmChanges(valeur booléiale)
à Microsoft.Reporting.AdHoc.DataManagement.Internal.DataManager.UndoManager_SuspendRdmHandlingChanged(Expéditeur d’objets, StateChangedEventArgs'1 args)
at Microsoft.Reporting.Util.RaiseEvent[TEventArgs](EventHandler'1 eventHandler'1 eventHandler, Object sender, TEventArgs eventArgs)
sur Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoManager.<.ctor>b__0(Object sender, StateChangedEventArgs'1 args)
at Microsoft.Reporting.Util.RaiseEvent[TEventArgs](EventHandler'1 eventHandler'1 eventHandler, Object sender, TEventArgs eventArgs)
à Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoManagerApiProperties.set_SuspendDataManagerRdmHandling(valeur booléiale)
sur Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoManagerHasOpenUndoGroupStateImpl.OnUndoGroupCommitting(UndoGroup undoGroup)
sur Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoManagerHasOpenUndoGroupImpl.HandleUndoGroupStateChanged(Object sender, EventArgs args)
sur Microsoft.Reporting.Util.RaiseEvent(EventHandler eventHandler, Object sender, EventArgs eventArgs)
sur Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoGroup.HandleStateEnteredEvent(Object sender, EventArgs args)
sur Microsoft.Reporting.Util.RaiseEvent(EventHandler eventHandler, Object sender, EventArgs eventArgs)
sur Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoGroupCommittingStateImpl.EnterState()
sur Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoGroup.SetState(UndoGroupStateImpl nextState)
sur Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoGroupOpenStateImpl.Commit()
sur Microsoft.Reporting.AdHoc.Shell.Services.UndoManagement.Internal.UndoGroup.Commit()
sur Microsoft.Reporting.AdHoc.DataStructureManagement.Internal.TransactionManager.CompleteTransaction(transaction, Boolean completedSuccessfully)
sur Microsoft.Reporting.AdHoc.DataStructureManagement.Internal.TransactionManager.Transaction.Dispose()
sur Microsoft.Reporting.AdHoc.DataStructureManagement.Filtering.Internal.ListFilterMode.SelectOnly(ListFilterRow row)
à Microsoft.Reporting.AdHoc.Shell.Regions.Canvas.Internal.FilterCheckBoxList.FieldValueSelectorButton_Click(Expéditeur d’objets, RoutedEventArgs e)
sur System. Windows. Controls.Sauvages.ButtonBase.OnClick()
sur System. Windows. Controls.Button.OnClick()
sur System. Windows. Controls.Sauvages.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
sur System. Windows. Controls.Control.OnMouseLeftButtonUp(Control ctrl, EventArgs e)
sur MS. Internal.JoltHelper.FireEvent(IntPtr unmanagedObj, IntPtr unmanagedObjArgs, Int32 argsTypeIndex, Int32 actualArgsTypeIndex, String eventName, UInt32 flags)
Résolution
Ce problème a été résolu dans la mise à jour cumulative d’SQL Server.
Mise à jour cumulative 1 SQL Server 2014 SP1 /help/3067839
Mise à jour cumulative 6 SQL Server 2014 /fr-fr/help/3031047
Mise à jour cumulative 4 SQL Server 2012 SP2 /help/3007556
Chaque nouvelle mise à jour cumulative SQL Server contient tous les correctifs et tous les correctifs de sécurité inclus dans la mise à jour cumulative précédente. Consultez les dernières mises à jour cumulatives pour SQL Server :
État
Microsoft a confirmé l’existence de ce problème dans les produits Microsoft répertoriés dans la section « S’applique à ».