{}

Impact-Company-Logo-English Black-01-177x54

Welcome to the Schneider Electric corporate Website

Search FAQs
PME Web Applications give error "Source Measurement list did not load" when trying to add sources or measurements
Issue
PME Web Applications gives error "Source Measurement list did not load" when trying to add sources or measurements onto Dashboards, Trends.  However, Reports will work.  The error message states:

There was an error attempting to load the Source Measurement list from the server.  The application is usable, but no selections can be added or edited.  If this problem persists contact your system administrator.
cant load source measurement

The System Log will show errors with the Software Data Processing Service targeting the Active Configuration Host:

Problem creating processor configurations for Rule 'Configuration Rule': System.ArgumentNullException: Value cannot be null. Parameter name: id at System.TimeZoneInfo.FindSystemTimeZoneById(String id) at SE.IONServices.DataProcessor.DataProcessorHostScheduleManager.ConfigurationShouldBeActiveNow(IProcessingConfiguration configuration) at SE.IONServices.DataProcessor.DataProcessorHost.ActivateConfiguration(IProcessingConfiguration configuration) at SE.IONServices.DataProcessor.ActiveConfigurationHost.ActivateRule(ProcessingRule rule)

or


Exception has been thrown by the target of an invocation. at System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

When looking into the Web Application Diagnostics Log Event, you will find the following errors:

"Could not initialize data source driver. Initialization has failed 1365 time(s). The last exception was: Error initializing cross reference cache."
"A problem occurred on page 'https://emsprod01/SystemDataService/Hierarchy/2015-07/View/AllWithTopics': An error occurred while accessing a system resource or another service. Please try again later."

or


Provider Engine request did not complete successfully for RealTime Data (1 pairs) LogClientExtendedInformation: Framework.Common.ClientServices.ProviderRequestException: A problem occurred calling provider 0abdb5d9-adb1-4e59-a45c-28baabc6a08a with parameters [{"SessionId":"4de8e2b7-4b55-4efe-99cc-59069bf5dd14","RefreshIntervalSeconds":10,"Pairs":[{"Source":"24","Measurement":"1601","IsHierarchyPair":false,"UniqueId":"e6c77675-6fa2-4d6d-8bf0-038d730f1add"}]}]: Exception has been thrown by the target of an invocation.
at Framework.Common.ClientServices.ProviderEngineHelper`1.GetData(Object[] parameters, Type[] typeHints, Boolean useCache, ILogger logger)
at Applications.Web.RealTime.Data.RealtimeDataFetch.GetProviderData(RealTimeDataRequest dataRequest)

Product Line
Power Monitoring Expert 9.0
Power Monitoring Expert 9.1
Power Monitoring Expert 2021
Power Monitoring Expert 2022
Power Monitoring Expert 2023

Environment
Web Applications

Cause 1
This occurs if there are sources defined multiple times in the table ApplicaDataSourceBus.DataSourceDevice in the ApplicationModules database and results in the error above when the source/measurement list is loaded in Dashboards and Trends.  This error becomes clarified in the [Application Modules].[dbo].[LogEvent]:

LogClientException: Framework.Common.Exceptions.ModuleException: Error initializing cross-reference cache. ---> Framework.Common.Exceptions.ModuleException: Data Source Device [1-354.E-SSZ2-354-01-002-BMSB-01-MAIN] is defined multiple times.
at DataSourceDrivers.CrossReferenceCache`2.HandleDataSourceDeviceUpdate(String deviceRepresentation, DsdDevice existingDevice)
at System.Collections.Concurrent.ConcurrentDictionary`2.AddOrUpdate(TKey key, TValue addValue, Func`3 updateValueFactory)
at DataSourceDrivers.CrossReferenceCache`2.AddDsdDeviceToMap(DsdDevice device)
at DataSourceDrivers.CrossReferenceCache`2.InitializeDeviceMappings(IEnumerable`1 devices)
at DataSourceDrivers.CrossReferenceCache`2.Initialize(DsdInitializationData initializationData)
at DataSourceDrivers.CrossReferenceCache`2..ctor(DataSourceIdentity identity, DsdInitializationData initializationData)
at DataSourceDrivers.DataSourceInitializer`2.GetCacheFromDataSourceBus()
--- End of inner exception stack trace ---
at DataSourceDrivers.DataSourceInitializer`2.GetCacheFromDataSourceBus()
at DataSourceDrivers.DataSourceInitializer`2.UpdateCache()
at DataSourceDrivers.DataSourceInitializer`2.PerformInitialization()
at DataSourceDrivers.DataSourceInitializer`2.Initialize(Int32 dataSourceId, IDataSourceConfiguration configuration, IDataSourceBus dataSourceBus)
at DataSourceDrivers.DataSourceDriverStateManager.Initialize(IDataSourceBus dataSourceBus, CancellationToken cancellationToken)
at DataSourceDrivers.DataSourceDriverStateManager.AttemptInitialize(CancellationToken cancellationToken)
at DataSourceDrivers.DataSourceDriverStateManager.AttemptInitializeTemplate(CancellationToken cancellationToken)
LogClient: DataSourceDrivers::DataSourceDrivers.DataSourceInitializationLogger::LogWarningMessage


Cause 2
The SQL server account has lost access to the database either due to a loss in user mapping or a loss in credentials. Check the SQL log using (SSMS) SQL Server Management Studios.

Resolution 1
*Warning: Irreparable database damage can occur. This procedure should only be performed by users familiar with SQL Server Management Studio. Databases should be backed up prior to performing this procedure.*

To fix this issue apply the following steps:
  1. Take a backup of the ApplicationModules database.
  2. Stop the ApplicationModules Windows services.
  3. In SQL Server Management Studio run the attached SQL script named 'ApplicationModules-DeleteAllDeviceMetadata.sql' in SQL Server Management Studio (SSMS).
  4. In SSMS, locate the table [ApplicationModules].[DataSourceBus].[DataSourceDevice].  Identify the fields that have duplicated DataSourceRepresentation and note down the associated DataSourceDeviceId.
  5. Execute the query below to delete duplicate devices in the database.  In this example, DataSourceDeviceId 10351 is related to the previously mentioned source 1-354.E-SSZ2-354-01-002-BMSB-01-MAIN.
    USE [ApplicationModules]
    Delete from DataSourceBus.DataSourceDevice where DatasourcedeviceId = 10351
    Delete from DataSourceBus.LogicalDevice where logicaldeviceId = 10351
  6. Start the ApplicationModules services
Launch Web Applications and create a new dashboard, source/measurement lists should appear.

Resolution 2
For loss of credential, there will be a log with the message, "ionedsd cannot access the database due to password". In this case, please see this link for running a "reset accounts": PME Installer (se.com)
For loss of database access through other means use the following table to check the user mapping for ionedsd is correct:
table for sql accounts mapping
To correct any issues please use the following flow
  1. Stop the ApplicationModules windows services
Open & Login to SSMS>Expand Security>Expand Logins>Double-Click inedsd>Select UserMapping Tab>Map ION_Data>Select ION_DSD_Reader role membership>Map ION_Network>Select NOM_DSD_Reader role membership
  1. Run an iisreset
    1. How to perform an IIS Reset using Command Prompt. | Schneider Electric USA
  2. Start the ApplicationModules windows services

Schneider Electric Global

Attachment(s)
ApplicationModules-DeleteAllDeviceMetadata.sql [2.24 KB]
Explore more
Range:
Articles that might be helpful Users group

Discuss this topic with experts

Visit our Community for first-hand insights from experts and peers on this topic and more.
Explore more
Range: