2013-03-08 21 views
7

Fondamentalmente:
Ho un progetto con 4 pacchetti. Tutti su loro hanno gestori di connessione diversi con l'eccezione di uno che è condiviso tra 2 dei pacchetti, quindi ho fatto un project manager di connessione.SSIS 2012 Errore gestore connessione progetto

  • Se provo a creare il progetto, viene visualizzato l'errore di seguito.
  • Se cambio la CM progetto per un pacchetto di CM, costruisce bene

Così, ovviamente, il fatto che ho un progetto di CM è il problema.

Cosa posso mancare?

Error 21 System.ArgumentException: An item with the same key has already been added. 
    at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource) 
    at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add) 
    at Microsoft.SqlServer.Dts.Runtime.ReferenceId.ReferenceMap.Add(String key, String value, Boolean isExternal) 
    at Microsoft.SqlServer.Dts.Runtime.ReferenceId.RefIdProducer.AddRefIdAttribute(XmlElement element, String objectName, String objectId, ReferenceParserState state) 
    at Microsoft.SqlServer.Dts.Runtime.ReferenceId.RefIdProducer.GenerateRefId(XmlElement element, ReferenceParserState state)  
    at Microsoft.SqlServer.Dts.Runtime.ReferenceId.RefIdProducer.ProcessElement(XmlElement element, ReferenceParserState state)  
    at Microsoft.SqlServer.Dts.Runtime.ReferenceId.RefIdConverter.MapRefIds(IDTSPackage100 package, IDTSInfoEvents100 events, XmlDocument document)  
    at Microsoft.SqlServer.Dts.Runtime.DTSManagedXmlSerializationHelper.AfterSavePackageToXML(IDTSPackage100 package, IDTSInfoEvents100 events, String& packageXml)  
    at Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSPackagePersist100.ClonePackageToXML(Object& pvDestination, Boolean vbReturnDOM, IDTSEvents100 pEvents)  
    at Microsoft.SqlServer.Dts.Runtime.Project.SavePackage(IProjectStorage storage, Package package, String streamName, Boolean preserveVersionGuid)  
    at Microsoft.SqlServer.Dts.Runtime.Project.SavePackage(Package package, String streamName, Boolean preserveVersionGuid) 
    at Microsoft.DataTransformationServices.Project.DataTransformationsProjectBuilder.IncrementalBuildThroughObj(IOutputWindow outputWindow) 
    at Microsoft.DataTransformationServices.Project.DataTransformationsProjectBuilder.BuildIncremental(IOutputWindow outputWindow) 
+0

Apparentemente è stata definita una connessione in un pacchetto con lo stesso nome del progetto CM. Può essere in qualsiasi pacchetto, non solo quelli che si intende utilizzare con il progetto CM. –

+0

Mi sono imbattuto in questo oggi. Spostare il CM su un pacchetto e quindi tornare al progetto lo ha risolto dove potevo costruire. –

+0

@JohnMo Aggiungi il tuo commento utile come risposta in modo che questa domanda non venga visualizzata come non risposta agli utenti SO. –

risposta

0

Spostando il CM di nuovo ad un pacchetto e poi di nuovo al progetto deliberato al punto in cui ho potuto costruire.

7

Ciò si verifica quando si ha lo stesso gestore di connessione due volte (ad es .: copiato tra 2 pacchetti) e si promuove uno di essi per essere una connessione di progetto.

Il primo pacchetto mostrerà la gestione connessione di "(progetto) remoteSystem". Il secondo pacchetto mostrerà ancora "remoteSystem" e la nuova connessione a livello di progetto non verrà mostrata.

Se si elimina la connessione a livello di pacchetto nel secondo pacchetto, a) si risolve l'errore e b) il gestore di connessione a livello di progetto diventa visibile.

Sarà quindi necessario passare attraverso tutti i componenti che fanno riferimento al gestore connessioni eliminato e reindirizzarli alla nuova connessione a livello di progetto.

Problemi correlati