Aracılığıyla paylaş


Döngü Kapsayıcısı için

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

For Döngüsü kapsayıcısı, bir pakette yinelenen bir denetim akışı tanımlar. Döngü uygulaması, programlama dillerindeki For döngüsü yapısına benzer. Döngünün her yinelemesinde For Döngüsü kapsayıcısı bir ifadeyi değerlendirir ve ifade False olarak değerlendirilene kadar iş akışını yineler.

For Döngüsü kapsayıcısı, döngünün tanımlanması için aşağıdaki öğeleri kullanır:

  • Döngü sayaçlarına değer atayan isteğe bağlı bir başlatma ifadesi.

  • Döngünün durması mı yoksa devam etmesi mi gerektiğini test etmek için kullanılan ifadeyi içeren bir değerlendirme ifadesi.

  • Döngü sayacını artıran veya azalan isteğe bağlı bir yineleme ifadesi.

Aşağıdaki diyagramda, Posta Gönder görevine sahip For Döngüsü kapsayıcısı gösterilmektedir. Başlatma ifadesi ise @Counter = 0, değerlendirme ifadesi olur @Counter < 4ve yineleme ifadesi ise @Counter = @Counter + 1döngü dört kez yinelenir ve dört e-posta iletisi gönderir.

For Loop kapsayıcısı bir görevi dört kez yineler

İfadeler geçerli SQL Server Integration Services ifadeleri olmalıdır.

Başlatma ve atama ifadelerini oluşturmak için atama işlecini (=) kullanabilirsiniz. Bu işleç Integration Services ifade dil bilgisi tarafından başka bir şekilde desteklenmez ve yalnızca For Döngüsü kapsayıcısında başlatma ve atama ifade türleri tarafından kullanılabilir. Atama işlecini kullanan tüm ifadeler söz dizimine @Var = <expression>sahip olmalıdır. Burada Var bir çalışma zamanı değişkenidir ve <ifade> SSIS ifade söz diziminin kurallarına uyar. İfade, değişkenleri, değişmez değerleri ve SSIS ifade dil bilgisinin desteklediği tüm işleçleri ve işlevleri içerebilir. İfade, değişkenin veri türüne dönüştürülebilecek bir veri türü olarak değerlendirilmelidir.

For Döngüsü kapsayıcısı yalnızca bir değerlendirme ifadesi içerebilir. Bu, For Döngüsü kapsayıcısının tüm denetim akışı öğelerini aynı sayıda çalıştırdığını gösterir. For Döngüsü kapsayıcısı diğer For Döngüsü kapsayıcılarını içerebileceğinden, iç içe döngüler oluşturabilir ve paketlerde karmaşık döngüler uygulayabilirsiniz.

Paket denetim akışının bir alt kümesi için bir işlem tanımlamak üzere For Döngüsü kapsayıcısı üzerinde bir işlem özelliği ayarlayabilirsiniz. Bu şekilde işlemleri daha ayrıntılı bir düzeyde yönetebilirsiniz. Örneğin, For Loop kapsayıcısı bir tablodaki verileri birden çok kez güncelleştiren bir denetim akışını yinelerse, For Döngüsü ve denetim akışını, tüm verilerin başarıyla güncelleştirilmemesi durumunda hiçbir verinin güncelleştirilmediğinden emin olmak için bir işlem kullanacak şekilde yapılandırabilirsiniz. Daha fazla bilgi için bkz. Integration Services Transactions.

For Döngüsü kapsayıcısı ile denetim akışına yineleme ekleme

Integration Services, bir paketteki denetim akışını koşullu olarak yineleyen döngü eklemeyi kolaylaştıran bir denetim akışı öğesi olan For Loop kapsayıcısını içerir. Daha fazla bilgi için bkz. For Loop Container.

For Döngüsü kapsayıcısı döngünün her yinelemesinde bir koşulu değerlendirir ve koşul false olarak değerlendirildiğinde durur. For Döngüsü kapsayıcısı, döngünün başlatılmasına, yinelenen denetim akışının yürütülmesini durduran değerlendirme koşulunun belirtilmesine ve değerlendirme koşulunun karşılaştırıldığı değeri güncelleştiren bir ifadeye bir değer atanması için ifadeler içerir. Bir değerlendirme koşulu sağlamanız gerekir, ancak başlatma ve atama ifadeleri isteğe bağlıdır.

For Döngüsü kapsayıcısı hiçbir işlev sağlamaz; yalnızca yinelenebilir denetim akışını oluşturduğunuz yapıyı sağlar. Kapsayıcı işlevselliği sağlamak için For Döngüsü kapsayıcısına en az bir görev eklemeniz gerekir. Daha fazla bilgi için bkz. Entegrasyon Hizmetleri Görevleri.

For Döngüsü kapsayıcısı, birden çok görev içeren bir denetim akışı içerebilir ve diğer kapsayıcıları içerebilir. Görevleri ve kapsayıcıları For Döngüsü kapsayıcısına eklemek, görevleri ve kapsayıcıları paket yerine For Döngüsü kapsayıcısına sürüklemeniz dışında, bunları bir pakete eklemeye benzer. For Döngüsü kapsayıcısı birden fazla görev veya kapsayıcı içeriyorsa, bunları bir pakette yaptığınız gibi öncelik kısıtlamalarını kullanarak bağlayabilirsiniz. Daha fazla bilgi için bkz. Öncelik Kısıtlamaları.

Denetim akışına bir For Döngüsü kapsayıcısı ekleyin

  1. For Döngüsü kapsayıcısını pakete ekleyin. Daha fazla bilgi için bkz. Denetim Akışında Görev veya Kapsayıcı Ekleme veya Silme.

  2. For Döngüsü kapsayıcısına görevler ve kapsayıcılar ekleyin. Daha fazla bilgi için bkz. Denetim Akışında Görev veya Kapsayıcı Ekleme veya Silme.

  3. Öncelik kısıtlamalarını kullanarak For Loop kapsayıcısında görevleri ve kapsayıcıları bağlayın. Daha fazla bilgi için bkz. Varsayılan Öncelik Kısıtlaması Kullanarak Görevleri ve Kapsayıcıları Bağlama.

  4. For Döngüsü kapsayıcısını yapılandırın.

For Loop kapsayıcısını yapılandırma

Bu işlem, For Döngüsü Düzenleyicisi iletişim kutusunu kullanarak For Döngüsü kapsayıcısını nasıl yapılandıracağınızı açıklar.

  1. SQL Server Veri Araçları'nda (SSDT), For Döngüsü kapsayıcısına çift tıklayarak For Döngüsü Düzenleyicisi'ni açın.

  2. İsteğe bağlı olarak For Döngüsü kapsayıcısının adını ve açıklamasını değiştirin.

  3. İsteğe bağlı olarak, InitExpression metin kutusuna bir başlatma ifadesi yazın.

  4. EvalExpression metin kutusuna bir değerlendirme ifadesi yazın.

    Uyarı

    İfade bir Boole değeri olarak değerlendirilmelidir. İfade false olarak değerlendirildiğinde döngü çalışmayı durdurur.

  5. İsteğe bağlı olarak, AssignExpression metin kutusuna bir atama ifadesi yazın.

  6. İsteğe bağlı olarak İfadeler'e tıklayın ve İfadeler sayfasında For Döngüsü kapsayıcısının özellikleri için özellik ifadeleri oluşturun. Daha fazla bilgi için bkz. Özellik İfadesi Ekleme veya Değiştirme.

  7. For Döngüsü Düzenleyicisi'ni kapatmak içinTamam'a tıklayın.

For Döngü Düzenleyicisi iletişim kutusu

Bir iş akışını belirtilen bir koşul false olarak değerlendirene kadar yineleyen bir döngü yapılandırmak için For Döngü Düzenleyicisi iletişim kutusunun For Döngüsü sayfasını kullanın.

For Döngüsü kapsayıcısı ve paketlerde nasıl kullanılacağı hakkında bilgi edinmek için bkz. For Döngüsü Kapsayıcısı.

Seçenekler

InitExpression
İsteğe bağlı olarak, döngü tarafından kullanılan değerleri başlatan bir ifade sağlayın.

EvalExpression
Döngünün durması mı yoksa devam etmesi mi gerektiğini değerlendirmek için bir ifade sağlayın.

AssignExpression
İsteğe bağlı olarak, döngünün her yinelenişinde koşulu değiştiren bir ifade sağlayın.

İsim
For Döngüsü kapsayıcısı için benzersiz bir ad sağlayın. Bu ad, görev simgesinde etiket olarak kullanılır.

Uyarı

Nesne adları bir paket içinde benzersiz olmalıdır.

Açıklama
For Döngüsü kapsayıcısının tanımını verin.

For Döngüsü kapsayıcısıyla ifadeleri kullanma

For Loop kapsayıcısını bir değerlendirme koşulu, başlatma değeri veya atama değeri belirterek yapılandırdığınızda, değişmez değerleri veya ifadeleri kullanabilirsiniz.

İfadeler değişkenleri içerebilir. Değişkenleri kullanmanın avantajı, çalışma zamanında güncelleştirilebilmeleri ve paketlerin daha esnek ve daha kolay yönetilmesini sağlamaktır. İfadenin uzunluk üst sınırı 4000 karakterdir.

İfadede bir değişken belirttiğinizde, değişkenin adını at işaretiyle (@) ön yazınız gerekir. Örneğin, Counter adlı bir değişken için For Döngüsü kapsayıcısının kullandığı ifadeyi girin @Counter . Değişkene namespace özelliğini eklerseniz değişkeni ve ad alanını köşeli ayraç içine almanız gerekir. Örneğin, MyNamespace ad alanında bir Counter değişkeni için [@MyNamespace::Counter] yazın.

For Döngüsü kapsayıcısının kullandığı değişkenler For Döngüsü kapsayıcısının kapsamında veya paket kapsayıcı hiyerarşisinde daha yüksek olan herhangi bir kapsayıcının kapsamında tanımlanmalıdır. Örneğin For Döngüsü kapsayıcısı, kapsamında tanımlanan değişkenleri ve paket kapsamında tanımlanan değişkenleri kullanabilir. Daha fazla bilgi için bkz Integration Services (SSIS) Değişkenleri ve Paketlerde Değişkenleri Kullanma.

SSIS ifade dil bilgisi, değerlendirme, başlatma veya atama için kullanılan karmaşık ifadeleri uygulamaya yönelik eksiksiz bir işleç ve işlev kümesi sağlar. Daha fazla bilgi için bkz Integration Services (SSIS) İfadeleri.

Ayrıca Bkz.

Denetim Akışı
Integration Services (SSIS) İfadeleri