SQL Server 2012'de DQS Temizleme dönüştürmesini çalıştırdığınızda hata (DQS Temizleme ön yürütme aşamasında başarısız oldu)

Bu makale, SQL Server 2012'de SSIS günlüğünde hatanın günlüğe kaydedilmesi sorununu çözmenize yardımcı olur.

Şunlar için geçerlidir: SQL Server 2012 Developer, SQL Server 2012 Enterprise, SQL Server 2012 Standard
Özgün KB numarası: 2715968

Belirtiler

Aşağıdaki senaryoyu inceleyin:

  • Microsoft SQL Server 2012'de verilerinizi temizlemek için SQL Server-Integrated Service (SSIS) Veri Akışı Veri Kalitesi Hizmetleri (DQS) Temizleme dönüştürmesini kullanırsınız.
  • DQS Temizleme dönüştürmesinin "Hata çıkışını yapılandır" ayarını "Yeniden yönlendirme satırı" olarak ayarlarsınız. Ancak, hata çıkışını kaydetmek için bir konum belirtmezsiniz.
  • SSIS paketini yürütürsunuz.

Bu senaryoda SSIS günlüğüne aşağıdaki hata iletisi kaydedilir:

DQS Temizleme ön yürütme aşamasında başarısız oldu ve 0x80070057 hata kodu döndürdü.
System.ArgumentException: Değer beklenen aralıkta yer almaz.
at Microsoft.SqlServer.Dts.pipeline.Wrapper.IDTSBufferManager100.FindColumnByLineageID(Int32 hBufferType, Int32 nLineageID)
Microsoft.SqlServer.Dts.Pipeline.ManagedComponentHost.HostPreExecute(IDTSManagedComponentWrapper100 sarmalayıcıda Microsoft.Ssdqs.Component.DataCorrection.Logic.DataCorrectionComponent.PreExecute() konumunda)

Neden

Bu sorun, DQS etki alanı ölçütlerini ve kurallarını karşılamayan satırlar için oluşturulan hata çıkışı için bir hedef ayarlanmadığından oluşur.

Geçici Çözüm

Bu sorunu gidermek için aşağıdaki yöntemlerden birini kullanın:

  • Yöntem 1

    Hata satırlarını yeniden yönlendirmek istemiyorsanız sorunu çözmek için şu adımları izleyin:

    1. DQS Temizleme Dönüştürme Düzenleyici DQS Bileşeni'ni açın.
    2. DQS Temizleme Dönüşümü Düzenleyici altındaki Hata çıktısını yapılandır açılan listesinden Başarısız Bileşen'i seçin.
  • Yöntem 2

    Hata satırlarınızı yeniden yönlendirmeniz gerekiyorsa, hataların yeniden yönlendirileceği bir hedef konumunuz olduğundan emin olmanız gerekir.