Technical FAQs

Ask a Question

EEM 5.0 - ETL Fails to Extract Data

Issue:
ETL versions 3.0.13325.02 and 3.0.14050.01 produce the following error when attempting to extract data out of EEM.

2014-08-14 08:34:06,007 ERROR ETLEngine (Job_HTML) - Thread ID (4) - EEM Extract Task: Task EEM Extract Task failed
System.ArgumentException: An item with the same key has already been added.
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
at SchneiderElectric.ETL.EEM50.EEMExtractTask.DataTableToDictionary(DataTable dt)
at SchneiderElectric.ETL.EEM50.EEMExtractTask.PrepareForExtract()
at SchneiderElectric.ETL.Core.SQThreadExtractTask.Extract(TaskData data)
at SchneiderElectric.ETL.Core.ExtractTask.DoWork()
at SchneiderElectric.ETL.Core.Task.Execute()
2014-08-14 08:34:06,090 ERROR ETLEngine (Job_HTML) - Thread ID (1) - A fatal exception occurred while executing the job.
System.ApplicationException: Task Execution Failed ---> System.ApplicationException: Task EEM Extract Task failed ---> System.ArgumentException: An item with the same key has already been added.
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
at SchneiderElectric.ETL.EEM50.EEMExtractTask.DataTableToDictionary(DataTable dt)
at SchneiderElectric.ETL.EEM50.EEMExtractTask.PrepareForExtract()
at SchneiderElectric.ETL.Core.SQThreadExtractTask.Extract(TaskData data)
at SchneiderElectric.ETL.Core.ExtractTask.DoWork()
at SchneiderElectric.ETL.Core.Task.Execute()
--- End of inner exception stack trace ---
--- End of inner exception stack trace ---
at SchneiderElectric.ETL.Core.Job.Execute()
[Job Logger Finished]

Product Line:
ION EEM 5.0

Environment:
ETL versions 3.0.13325.02 and 3.0.14050.01 with ION EEM 5.0

Cause:
There are duplicate source name(s) contained within the database. 
The ETL uses the source name as a key in a dictionary to perform the extraction.

Resolution: 
*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.* 

Execute the following SQL select statement to identify the duplicate source(s) :
 
SELECT count(Name)as countname, Name FROM SRC_Source group BY Name having count (*) > 1 order by countname
 
Using Edit Mode in SQL Management Studio, modify the source name(s) identified issuing the following SQL select statement:
Select *  from SRC_Source where Name = "(name to be edited)"
 
In the results pane returned from the above query, click on the Name column, and edit so that each row contains a unique value.
Was this helpful?
What can we do to improve the information ?