Betik Bileşeni Düzenleyicisi'nde Betik Bileşenini Yapılandırma

Şunlar için geçerlidir:SQL Server Azure Data Factory'de SSIS Tümleştirme Çalışma Zamanı

Script bileşeninde özel kod yazmadan önce, oluşturmak istediğiniz veri akışı bileşeni türünü seçmelisiniz—kaynak, dönüşüm veya hedef—ve ardından bileşenin meta verilerini ve özelliklerini Script Transformation Editörü'nde yapılandırmalısın.

Oluşturulacak Bileşen Türünü Seçmek

SSIS Designer'ın Veri Akışı paneline bir Script bileşeni eklediğinizde, Select Script Component Type diyalog kutusu görünür. Bileşeni kaynak, dönüşüm veya hedef olarak önceden yapılandırmanızı sağlarsınız. Bu ilk seçimi yaptıktan sonra, bileşeni Script Transformation Editor'da yapılandırmaya devam edebilirsiniz.

Script bileşeni için varsayılan betik dilini ayarlamak için, Seçenekler iletişim kutusunun Genel sayfasındaki Scripting dili seçeneğini kullanın. Daha fazla bilgi için bkz. Genel Sayfa.

İki Design-Time modu anlamak

SSIS Designer'da Script bileşeninin iki modu vardır: meta veri tasarım modu ve kod tasarım modu.

Script Transformation Edit'i açtığınızda, bileşen meta veri tasarım moduna girer. Bu modda giriş sütunlarını seçebilir, çıktı ve çıkış sütunlarını ekleyebilir veya yapılandırabilirsiniz, ancak kod yazamazsınız. Bileşenin meta verilerini yapılandırdıktan sonra, script yazmak için kod tasarım moduna geçebilirsiniz.

Kod tasarım moduna geçtiğinizde Edit Script'e tıklayarak, Script bileşeni meta verileri kilitleyerek ek değişiklikleri önler ve ardından girdiler ve çıktıların meta verilerinden otomatik olarak temel kod oluşturur. Otomatik oluşturulan kod tamamlandıktan sonra, özel kodunuzu girebileceksiniz. Kodunuz, giriş satırlarını işlemek, tamponlardaki tampon ve sütunlara erişmek ve paketten bağlantı yöneticileri ile değişkenleri almak için otomatik oluşturulan temel sınıfları kullanır; hepsi güçlü tipli nesneler olarak.

Özel kodunuzu kod tasarım moduna girdikten sonra, meta veri tasarım moduna geri dönebilirsiniz. Bu, girdiğiniz hiçbir kodu silmez; ancak meta veride sonraki değişiklikler temel sınıfın yeniden oluşturulmasına neden olur. Sonrasında, bileşeniniz doğrulamada başarısız olabilir çünkü özel kodunuzda referans verilen nesneler artık var olmayabilir veya değiştirilmiş olabilir. Bu durumda, kodunuzu manuel olarak düzeltmeniz gerekir ki yenilenen temel sınıfa karşı başarılı bir şekilde derlenebilsin.

Metaveri Tasarım Modunda Bileşenin Yapılandırılması

Meta veri tasarım modunda, giriş sütunlarını seçebilir, çıktı ve çıkış sütunlarını ekleyip yapılandırabilirsiniz, ancak kod yazamazsınız. Bileşenin meta verilerini yapılandırdıktan sonra, script yazmak için kod tasarım moduna geçin.

Özel düzenleyicide yapılandırmanız gereken özellikler, Script bileşeninin kullanımına bağlıdır. Script bileşeni kaynak, dönüşüm veya hedef olarak yapılandırılabilir. Bileşenin nasıl kullanıldığına bağlı olarak, bir girişi veya çıkışı ya da her ikisini destekler. Yazacağınız özel kod, giriş ve çıkış satır ve sütunlarını işliyor.

Script Transformation Editörü'nün Inputs Columns sayfası

Script Transformation Editörü'nünGiriş Sütunları sayfası dönüşümler ve hedefler için gösterilir, kaynaklar için ise gösterilmez. Bu sayfada, özel betikinize sunulmak istediğiniz giriş sütunlarını seçer ve onlara yalnızca okunabilir veya okuma/yazma erişimi belirtirsiniz.

Bu meta verilere dayalı oluşturulacak kod projesinde, BufferWrapper proje öğesi her girdi için bir sınıf içerir ve bu sınıf, seçilen her giriş sütunu için tiplenmiş accessor özellikleri içerir. Örneğin, CustomerInput adlı bir girdiden bir tamsayı CustomerID sütunu ve CustomerName süzüğü seçerseniz, BufferWrapper proje öğesi , 'den ScriptBuffertüreden bir CustomerInput sınıfı içerir ve CustomerInput sınıfı CustomerID adlı tam sayı özelliği ve CustomerName adlı bir dizim özelliğini ortaya çıkarır. Bu yöntem, aşağıdaki gibi tip kontrolü ile kod yazmayı mümkün kılar:

Dim currentCustomerID as Integer = CustomerInput.CustomerID  
Dim currentCustomerName as String = CustomerInput.CustomerName  

Belirli bir veri akışı bileşeni için giriş sütunlarının nasıl yapılandırılacağı hakkında daha fazla bilgi için, Belirli Script Bileşenleri Türleri Geliştirme başındaki uygun örneğe bakınız.

Script Dönüşüm Editörü'nün Girişler ve Çıktılar sayfası

Script Transformation Editörü'nünInput and Outputs sayfası kaynaklar, dönüşümler ve hedefler için görüntülenir. Bu sayfada, özel betikte kullanmak istediğiniz girişleri, çıktıları ve çıktı sütunlarını aşağıdaki sınırlamalar içinde ekler, çıkarır ve yapılandırırsınız:

  • Kaynak olarak kullanıldığında, Script bileşeni girdi içermez ve birden fazla çıktıyı destekler.

  • Dönüşüm olarak kullanıldığında, Script bileşeni bir giriş ve birden fazla çıktıyı destekler.

  • Hedef olarak kullanıldığında, Script bileşeni tek bir girişi destekler ve çıkışı yoktur.

Bu meta verilere dayanarak oluşturulacak kod projesinde, BufferWrapper proje öğesi her giriş ve çıktı için bir sınıf içerir. Örneğin, CustomerOutput adında bir çıktı oluşturursanız, BufferWrapper proje öğesi , 'den ScriptBuffertüreden bir CustomerOutput sınıfı içerir ve CustomerOutput sınıfı oluşturulan her çıktı sütunu için tiplenmiş accessor özelliklerini içerir.

Çıkış sütunlarını yalnızca Giriş ve Çıkışlar sayfasında yapılandırabilirsiniz. Dönüşümler ve hedefler için giriş sütunlarını Giriş Sütunları sayfasında seçebilirsiniz. BufferWrapper proje öğesinde sizin için oluşturulan yazılan accessor özellikleri, çıktı sütunları için yalnızca yazılabilir olacaktır. Giriş sütunları için erişim özellikleri, Giriş Sütunları sayfasındaki her sütun için seçtiğiniz kullanım türüne bağlı olarak yalnızca okunabilir veya okuma/yazma şeklinde olacaktır.

Belirli bir veri akışı bileşeni için giriş ve çıktıların yapılandırılması hakkında daha fazla bilgi için , Belirli Script Bileşenleri Türleri Geliştirme başındaki uygun örneğe bakınız.

Note

Hata satırlarının otomatik işlenmesi için Script bileşeninde bir çıktıyı doğrudan hata çıktısı olarak yapılandırmak mümkün olmasa da, hata çıktısının işlevselliğini ek bir çıktı oluşturup uygun olduğunda satır bu çıktıya yönlendirmek için script kullanarak yeniden üretebilirsiniz. Daha fazla bilgi için bkz. Betik Bileşeni için Hata Çıktısı Benzetimi Yapma.

Çıktıların ExclusionGroup ve SynchronousInputID Özellikleri

ExclusionGroup özelliği, yalnızca senkron çıktılı dönüşümlerde sıfır olmayan bir değere sahiptir; burada kodunuz, filtreleme veya dallanma yapar ve her satırı aynı sıfır olmayan ExclusionGroup değerini paylaşan çıktılardan birine yönlendirir. Örneğin, dönüşüm satırları ya varsayılan çıktıya ya da hata çıktısına yönlendirebilir. Bu senaryo için ek çıktılar oluştururken, SynchronousInputID özelliğinin değerini, bileşenin girdisinin ID'sine eşlik eden tam sayı olarak ayarladığınızdan emin olun.

SynchronousInputID özelliği, yalnızca senkron çıktılara sahip dönüşümlerde sıfır olmayan bir değere sahiptir. Bu özelliğin değeri sıfırsa, çıktının asenkron olduğu anlamına gelir. Eşzamanlı çıktı için, satırlar yeni satır eklemeden seçilen çıktıya veya çıktılara iletilirken, bu özellik bileşenin girdisinin ID'sini içermelidir.

Note

Script Transformation Editor ilk çıktıyı oluşturduğunda, editör çıktının SynchronousInputID özelliğini bileşenin girdisinin ID'sine ayarlar. Ancak editör sonraki çıktıları oluşturduğunda, bu çıktıların SynchronousInputID özelliklerini sıfıra ayarlar.

Eğer senkron çıktılarla bir bileşen oluşturuyorsanız, her çıktının SynchronousInputID özelliği bileşenin girdisinin ID'sine ayarlanmalıdır. Bu nedenle, editörün ilk çıktıdan sonra oluşturduğu her çıktının SynchronousInputID değeri sıfırdan bileşenin girdisinin ID'sine değiştirilmelidir.

Eğer asenkron çıktılarla bir bileşen oluşturuyorsanız, her çıktının SynchronousInputID özelliği sıfıra ayarlanmalıdır. Bu nedenle, ilk çıktının SynchronousInputID değeri bileşenin girdisinin ID'sinden sıfıra değiştirilmelidir.

Script bileşenindeki iki senkron çıktıdan birine satır yönlendirme örneği için Script Bileşeni ile Senkron Dönüşüm Oluşturma bölümüne bakınız.

Oluşturulan Script'te Nesne Adları

Script bileşeni, girdiler ve çıktıların isimlerini ayrıştırır, giriş ve çıktılardaki sütun isimlerini ayrıştırır ve bu isimlere dayanarak BufferWrapper proje öğesinde sınıflar ve özellikler oluşturur. Bulunan isimler Unicode kategorilerine ait olmayan karakterler içeriyorsa: UpperLetter, LowerLetter, TitlecaseLetter, ModifierLetter, OtherLetter veya DecimalDigitLetter, oluşturulan isimlerde geçersiz karakterler düşürülür. Örneğin, boşluklar bırakılır, bu nedenle İlk Adı ve [İlk İsim] isimlerine sahip iki giriş sütunu da FirstName sütun adı olarak yorumlanır ve sonuçlar öngörülemezdir. Bu durumu önlemek için, Script bileşeni tarafından kullanılan giriş ve çıktı sütunlarının isimleri yalnızca bu bölümde listelenen Unicode kategorilerindeki karakterleri içermelidir.

Script Dönüşüm Editörü'nün Script Sayfası

Script Görev Düzenleyici'ninScript sayfasında, Script görevi için benzersiz bir isim ve bir açıklama atarsınız. Ayrıca aşağıdaki özellikler için değerler atayabilirsiniz.

Note

SQL Server 2008 Integration Services (SSIS) ve sonraki sürümlerinde, tüm betikler önceden derlenir. Önceki sürümlerde, betiklerin önceden derlenip derlemediğini görev için bir Önderleme özelliği ayarlayarak belirtmiştin.

ValidateExternalMetadata Property

ValidateExternalMetadata özelliğinin Boolean değeri, bileşenin tasarım zamanında harici veri kaynaklarına karşı doğrulama yapıp yapmayacağını veya doğrulamayı çalışma zamanına kadar erteleyip ertelememesi gerektiğini belirtir. Varsayılan olarak, bu özelliğin değeri Doğrudur; yani, harici meta veriler hem tasarım zamanında hem de çalışma zamanı doğrulanır. Bu özelliğin değerini tasarım zamanında harici bir veri kaynağı mevcut olmadığında False olarak ayarlamak isteyebilirsiniz: örneğin, paket kaynağı indirdiğinde veya sadece çalışma zamanında hedef oluşturduğunda.

ReadOnlyVariables ve ReadWriteVariables Özellikleri

Mevcut değişkenlerin virgülle ayrılmış listelerini bu özelliklerin değerleri olarak girerek değişkenleri yalnızca okunabilir veya Script bileşen kodu içinde okuma/yazma erişimine açık hale getirebilirsiniz. Değişkenler, otomatik oluşturulan temel sınıfın ve ReadWriteVariables özellikleri üzerinden kodda ReadOnlyVariables erişilir. Daha fazla bilgi için Script Bileşeninde Değişkenlerin Kullanılması bölümüne bakınız.

Note

Değişken adları büyük/küçük harfe duyarlıdır.

ScriptLanguage

Script bileşeni için programlama dili olarak Microsoft Visual Basic veya Microsoft Visual C#'ı seçebilirsiniz.

Script Düğmesini Düzenle

Edit Script butonu ile özel betiklerinizi yazacağınız Microsoft Visual Studio Apps for Tools (VSTA) IDE'sini açar. Daha fazla bilgi için Script Bileşenini Kodlama ve Hata Hata Bulma bölümüne bakınız.

Script Transformation Editörü'nün Bağlantı Yöneticileri sayfası

Script Transformation Editor'unBağlantı Yöneticileri sayfasında, özel scriptinizde kullanmak istediğiniz bağlantı yöneticilerini ekler ve kaldırırsınız. Genellikle bir kaynak veya hedef bileşen oluştururken bağlantı yöneticilerine başvurmanız gerekir.

Bu metadata temelinde oluşturulacak kod projesinde, ComponentWrapper proje öğesi, her seçilen bağlantı yöneticisi için bir tür girişçi özelliğine sahip bir Connections koleksiyon sınıfı içerir. Her tiplenen accessor özelliği, bağlantı yöneticisinin kendisiyle aynı ada sahiptir ve bağlantı yöneticisine bir örnek IDTSConnectionManager100olarak bir referans döndürür. Örneğin, editörün Bağlantı Yöneticileri sayfasında isimli MyADONETConnection bir bağlantı yöneticisi eklediyseniz, aşağıdaki kodu kullanarak betikinizde bağlantı yöneticisine referans elde edebilirsiniz:

Dim myADONETConnectionManager As IDTSConnectionManager100 = _  
    Me.Connections.MyADONETConnection  

Daha fazla bilgi için, Script Bileşeni'ndeki Veri Kaynaklarına Bağlanma bölümüne bakınız.