Power Automate'te Alt Akışlar: Süreçleri Modüler Olarak Kurma
Büyük Power Automate süreçlerini alt akışlarla yeniden kullanılabilir alt adımlara nasıl bölebileceğin ve daha kolay nasıl bakım yapabileceğin.
Power Automate'te onlarca ya da yüzlerce eylemi tek bir akışa sığdıran biri, er ya da geç bunun ne kadar karmaşık hâle geldiğini fark eder: her değişiklik uzun bir kaydırma gerektirir, hatalar tespit edilmesi zordur ve aslında birden fazla yerde ihtiyaç duyulan bir alt adım birdenbire birbirinden biraz farklı üç ayrı biçimde var olur. Alt akışlar tam olarak bu sorunu çözer. Bir üst akış, bir veya birden fazla alt akışı çağırır, onlara girişler aktarır ve ardından dönüş değerlerini işler; tıpkı klasik kodda bir fonksiyonun daha büyük bir programın içinden çağrılması gibi.
Power Automate'i üretimde kullanan şirketler için bu model, özellikle aynı mantığın birden fazla süreçte tekrarlandığı durumlarda, örneğin onaylayanların belirlenmesi, tutarların biçimlendirilmesi veya hata günlüğü tutulması gibi durumlarda önemlidir. Bu mantığı her akışta yeniden oluşturmak yerine, bir kez alt akış olarak oluşturulur ve uygun tüm üst akışlar tarafından çağrılır. Mantık değiştiğinde, tek bir yerde yapılacak tek bir güncelleme yeterlidir.
Alt akış nedir?
Alt akış, tamamen normal bir bulut akışıdır; tek farkı, bir zamanlama veya bir listedeki yeni bir öge gibi klasik bir tetikleyici üzerinden değil, doğrudan başka bir akış tarafından başlatılmasıdır. Microsoft resmi belgelerde Alt akış oluşturma için en az iki akış içeren bir çözüme ihtiyaç duyulduğunu açıklar:
- alt akış, üst akışın içine yerleştirilmiş olup gerçekten yürütülen daha küçük görevleri içerir
- üst akış, herhangi bir tetikleyiciye sahip olabilir ve alt akışı uygun noktada çağırır
Bir üst akış, hangi alt görevin gerekli olduğuna bağlı olarak birden fazla farklı alt akış içerebilir. Üst ve alt akışın doğrudan aynı çözüm içinde oluşturulması önemlidir, çünkü Power Automate ikisini yalnızca bu şekilde, daha sonraki dışa ve içe aktarma sırasında otomatik olarak birbirine bağlar; URL'lerin elle güncellenmesi gerekmez.
Modülerleştirme neden değerlidir
Microsoft, avantajları Alt akışlarla yeniden kullanılabilir kod yönergeleri başlığı altında özetler ve bu avantajlar pratikte hızla ortaya çıkar:
- Modülerlik: Yeniden kullanılabilir yapı taşları, mantığı kopyalamadan farklı süreçlere entegre edilebilir.
- Bakım kolaylığı: Küçük, odaklanmış akışlar okunması daha kolaydır ve bir hata, kaynaklandığı yapı taşında doğrudan aranabilir.
- Ölçeklenebilirlik: Yeni gereksinimler, tüm süreci yeniden yapılandırmak yerine tek bir alt akışta yapılan bir güncelleme olarak karşılanır.
- Hassas kontrol: Net tanımlanmış girişler ve çıkışlar sayesinde üst ve alt akış arasında hangi verilerin aktığını tam olarak kontrol edersin.
- Ekip iş birliği: Birden fazla kişi, aynı devasa akış içinde birbirinin ayağına dolanmadan farklı alt akışlar üzerinde aynı anda çalışabilir.
Böylece her alt akış, net bir sorumluluk alanına sahip, güvenilir biçimde tam olarak tek bir görevi yerine getiren ve gerektiğinde ayrı ayrı test edilebilen, değiştirilebilen veya genişletilebilen dijital bir çalışana dönüşür.
Adım adım: Bir alt akış oluşturma
Adım 1: Çözüm ve anlık akış oluşturma
Power Automate'te mevcut bir çözümü aç veya yeni bir çözüm oluştur. Bunun içinde Yeni > Otomasyon > Bulut akışı > Anlık üzerinden yeni bir akış oluştur ve tetikleyici olarak Bir akışı el ile tetikle seçeneğini seç. Yalnızca bu tetikleyiciye, Power Apps tetikleyicisine veya HTTP istek tetikleyicisine sahip akışlar daha sonra alt akış olarak çağrılabilir.
Adım 2: Girişleri tanımlama
Giriş ekle üzerinden, üst akışın alt akışa hangi değerleri aktarması gerektiğini belirlersin; örneğin bir kişi adı veya sipariş numarası. Bu girişler, alt akışı orada seçtiğin anda üst akışta dinamik alanlar olarak görünür.
Adım 3: Mantığı oluşturma ve sonucu döndürme
Alt akışın içinde asıl görevi oluştur; bu bir Dataverse kaydı, bir hesaplama veya bir SharePoint listesiyle karşılaştırma olabilir. Sonunda sonucu Bir Power App'e veya akışa yanıt ver eylemi üzerinden ya da premium bağlayıcıda Yanıt üzerinden üst akışa geri döndürürsün. Burada da istediğin kadar çok çıkış değeri tanımlanabilir.
Adım 4: Bağlantıları gömme
Alt akış, yerleşik eylemler veya Dataverse dışında başka bağlayıcılar kullanıyorsa, özellikler sayfasında Yalnızca çalıştıran kullanıcılar altında her bağlantı için Bu bağlantıyı kullan seçeneğini, Yalnızca çalıştıran kullanıcı tarafından sağlanan yerine seçmelisin. Bu adım atlanırsa çağrı bir hata iletisiyle başarısız olur, çünkü alt akışlar yalnızca gömülü bağlantıları destekler ve şu anda üst akıştan bağlantı devralamaz.
Üst akışı bağlama
Üst akışta, istediğin noktaya Bir alt akışı çalıştır eylemini Flows bağlayıcısından ekle ve daha önce oluşturduğun alt akışı seç. Burada yalnızca erişimin olan ve aynı çözümde bulunan akışlar gösterilir. Seçimden sonra alt akışta tanımlanan giriş alanları görünür ve çağrıdan sonra çıkışlar, sonraki adımlar için dinamik içerik olarak kullanılabilir hâle gelir. Üst akış bu sırada alt akışın tamamlanmasını, akışın tüm ömrü boyunca, yani yerleşik bağlantılar ve Dataverse için bir yıl, diğer tüm bağlayıcılar için 30 gün bekler.
Uygulama örneği: SharePoint gruplarından onaylayanları belirleme
Microsoft belgelerinden bir örnek bu modeli iyi gösterir: Bir şirket proje önerileri, izin talepleri ve masraf raporları için onaylara ihtiyaç duyar; sorumlu kişiler ise farklı SharePoint gruplarında tutulur. İlgili grubun sorgusunu üç ayrı akışta yeniden oluşturmak yerine, ilgili SharePoint grubunu sorgulayan ve onaylayanların listesini döndüren tek bir alt akış oluşturulur. Proje önerileri, izin talepleri ve masraf raporları için üst akışların tümü daha sonra aynı alt akışı çağırır ve yalnızca her seferinde hangi grubun kastedildiğini iletir. SharePoint gruplarının yapısı daha sonra değişirse, yalnızca alt akışı güncellemen yeterlidir; üç süreç de bundan otomatik olarak faydalanır.
Sınırlar ve tuzaklar
Alt akışlar kendiliğinden işlemez ve daha büyük süreçleri bunların üzerine inşa etmeden önce bilmen gereken birkaç sabit kural içerir:
- Üst ve alt akış doğrudan aynı çözümde oluşturulmalıdır. Mevcut bir akışı sonradan bir çözüme aktarırsan, Microsoft'a göre bağlantı beklenmedik sonuçlara yol açabilir.
- Bağlantılar şu anda üst akıştan alt akışa aktarılamaz; alt akıştaki her bağlantının orada gömülü olması gerekir.
- Bir alt akış mutlaka manuel, Power Apps veya HTTP istek tetikleyicisi gerektirir; diğer tetikleyiciler bu amaç için kullanılamaz.
- Birden fazla çözüme yayılmış çok sayıda alt akış varsa, lisanslamaya, örneğin birden fazla akış ve bunların alt akış çalıştırmaları arasında bir Process lisansının paylaşılmasını sağlayan akış gruplarına da bakmakta fayda vardır.
Süreci ne kadar ayrıntılı böleceğinin kontrolü sende kalır: Her üç adımlık işlem kendi alt akışına ihtiyaç duymaz, ama bir görev birden fazla yerde ortaya çıktığında veya bir akış karmaşıklaştığında bölme işlemi hızla karşılığını verir. Mevcut Power Automate süreçlerini net bir yapı ve düzenli çözüm yönetimiyle modülerleştirmek isteyenler, NordFlux'un Power Automate danışmanlığından destek alabilir.
Sık sorulan sorular
Üst akış ile alt akış arasındaki fark nedir?
Üst akış herhangi bir tetikleyiciye sahip olabilir ve genel süreci yönetir. Alt akış, tek ve net biçimde sınırlandırılmış bir alt görevi üstlenir, bunun için üst akıştan girişler alır ve sonunda bir programdaki bir fonksiyona benzer şekilde bir sonuç döndürür.
Bir alt akış hangi tetikleyicileri kullanabilir?
Alt akışlar için yalnızca üç tetikleyici uygundur: Bir akışı el ile tetikleme, Power Apps tetikleyicisi ve premium bağlayıcıdaki gelen HTTP isteği tetikleyicisi. Bir yineleme (Recurrence) tetikleyicisi veya bir SharePoint tetikleyicisi bu amaç için çalışmaz.
Üst akıştaki mevcut bir bağlantıyı alt akışta yeniden kullanabilir miyim?
Hayır, bağlantılar şu anda üst akıştan alt akışa aktarılamaz. Alt akışta kullanılan her bağlayıcının, yalnızca çalıştıran kullanıcı ayarı üzerinden orada gömülü bir bağlantı olarak tanımlanmış olması gerekir.
Üst akış, alt akışın yanıtını ne kadar süre bekler?
Üst akış, alt akış tamamlanana kadar, en fazla akışın ömrü boyunca duraklar. Bu, yerleşik bağlantılara ve Dataverse'e sahip akışlar için bir yıl, diğer tüm bağlayıcılar için 30 gündür.
Üst akış ve alt akış aynı çözümde mi bulunmalıdır?
Evet, Microsoft ikisinin de doğrudan aynı çözümde oluşturulmasını açıkça önerir. Yalnızca bu şekilde, başka bir ortama aktarıldıklarında URL'lerin elle düzeltilmesine gerek kalmadan otomatik olarak doğru biçimde birbirine bağlanırlar.
Kaynaklar: Microsoft Learn – Alt akış oluşturma, Microsoft Learn – Alt akışlar için yeniden kullanılabilir kod oluşturma
NordFlux UG (haftungsbeschränkt)
NordFlux, kuruluşlar için dijital çalışanlar kurar: tekrar eden işleri üstlenen otomasyonlar ve KI ajanları. Kontrol sizde kalır.
Otomasyon veya KI hakkında somut sorularınız mı var?
Ücretsiz bir ön analizde durumunuzu doğrudan görüşürüz. Bağlayıcı değildir.