SQL Server Integration Services'da Posta Gönder görevi için dinamik bir konu veya ileti oluşturma

Bu makalede, bir özellik ifadesi oluşturarak çalışma zamanında SQL Server Integration Services (SSIS) nesnesinin özelliğinin nasıl güncelleştirildiği gösterilir.

Özgün ürün sürümü: SQL Server
Özgün KB numarası: 906547

Giriş

SQL Server Business Intelligence Development Studio kullanarak bir SSIS paketi oluşturabilirsiniz. Bu paketi oluşturduğunuzda, SSIS paketinin bir özelliği için, çalışma zamanında özelliği güncelleştirmek veya doldurmak için bir ifade oluşturabilirsiniz. Örneğin, SSIS paketi bir Posta Gönder görevi içeriyorsa, Subject özelliği ve özelliği için MessageSource bir ifade oluşturabilirsiniz. Bir e-posta iletisinin konusunu dinamik olarak güncelleştirmek için Konu özellik ifadesini kullanabilirsiniz. E-posta iletisindeki değişkenleri dinamik olarak güncelleştirmek için özellik ifadesini kullanabilirsiniz MessageSource . Örneğin, Satır Sayısı dönüşümüyle doldurulan değişkenler.

Bu makalede, Posta Gönder görevi için dinamik bir konu veya iletinin nasıl oluşturulacağı açıklanır.

Daha fazla bilgi

Aşağıda, Posta Gönder görevinde Subject özelliği için örnek bir özellik ifadesi verilmiştir.

"Package>>> " + @[System::PackageName] +" was executed at>>> " + (DT_WSTR, 40) @[System::StartTime] + " by user>>> "
+ @[System::UserName] + " on Machine>>> " + @[System::MachineName]

Bu örnek özellik ifadesini kullanırsanız, e-posta iletisinin konusu dinamik olarak güncelleştirilir. Konu aşağıdaki bilgileri içerir:

  • Metin bilgileri Bu örnekte, e-posta iletisi konusu metin bilgilerini içerir Package>>> .
  • Sistem değişkenleri
    E-posta iletisi aşağıdaki sistem değişkenlerini içerir:
    • PackageName
      Paket adı.
    • StartTime
      Paketin yürütülürken olduğu zaman.
    • UserName
      Paketi yürüten kullanıcı.
    • MachineName
      Paketin yürütüldiği bilgisayarın adı.

İfadeye kullanıcı tanımlı değişken gibi daha fazla bilgi de ekleyebilirsiniz. Örneğin, Veri Akışı bir görev Posta Gönder görevinden önce Satır Sayısı dönüştürmesi içerebilir. (Satır Sayısı dönüşümü satırları saymak için kullanılır.) Satır Sayısı dönüşümü , @myrowcount adlı kullanıcı tanımlı bir değişkeni doldurur. Bu değişken, sayı bilgilerini veri akışında depolar.

Bir e-posta iletisinin yalnızca satır sayısı belirli bir değerden küçükse gönderileceğini belirtmek için, öncelik kısıtlamalarını kullanarak denetim akışını değiştirin. Bunu yapmak için şu adımları uygulayın:

  1. SQL Server Business Intelligence Development Studio'da Veri Akışı Görevi'ne sağ tıklayın ve ardından Öncelik Kısıtlaması Ekle'ye tıklayın.

  2. Oluşturduğunuz öncelik kısıtlamasını çift tıklatın.

  3. Öncelik Kısıtlaması Düzenleyici iletişim kutusunda Değerlendirme işlemindeİfade ve Kısıtlama'ya tıklayın.

  4. İfade kutusuna ifadeyi yazın:@myrowcount < 2

  5. Öncelik Kısıtlaması Düzenleyici iletişim kutusunda Tamam'a tıklayın.

Veri akışında ikiden az satır işlenirse, bir e-posta iletisi gönderilir.

Ayrıca, Posta Gönder görevini hata işleyicisinin bir parçası olarak kullanabilirsiniz. Örneğin, bir SSIS paketi yürütülmediğinde yöneticilere e-posta iletisi göndermek isteyebilirsiniz. Bunu yapmak için paket için bir OnError olay işleyicisi oluşturun ve ardından olay işleyicisine Posta Gönder görevi ekleyin. Paketin yürütülürken zamanını, kapsayıcının başlangıç saatini veya ilgili sistem değişkenlerinden olay işleyicisinin başlangıç saatini yakalayan bir konu özelliği ifadesi oluşturun. Örneğin, aşağıdakine benzer bir ifade oluşturun:

"Error in the task: " + @[System::SourceName] + "with the ID: " + @[System::SourceID]
+ " has failed at: " + (DT_WSTR, 20) @[System::ContainerStartTime] + "."

Bu örnek ifade aşağıdaki sistem değişkenlerini kullanır:

  • StartTime: Paketin yürütülürken olduğu zaman.
  • ContainerStartTime: Kapsayıcının başladığı saat.
  • EventHandlerStartTime: Olay işleyicisinin başladığı saat.

Başvurular

Daha fazla bilgi için SQL Server Books Online'da aşağıdaki konulara bakın:

  • Paketlerde Özellik İfadelerini Kullanma
  • Nasıl yapılır: Özellik İfadesi Oluşturma
  • Gelişmiş Integration Services İfadeleri
  • Öncelik Kısıtlamaları
  • Görevler ve Kapsayıcılarda Öncelik Kısıtlamalarını Ayarlama
  • Integration Services Olay İşleyicileri