OUTSYSTEMS’TA AGGREGATELERİN FETCH ÖZELLİĞİ

Forumlar OUTSYSTEMS’TA AGGREGATELERİN FETCH ÖZELLİĞİ

  • Post
    BAYPM
    Moderatör

    Normal bir OutSystems projesinde, normal şartlarda ekran ve aggregateler ekran başlatılırken tetiklenir. Bunlar eş zamansız ve paralel olarak çalışırlar ve birden fazla aggregate olması durumunda hangi aggregatenin önce yükleneceği hakkında bir garanti vermek mümkün değildir. Fakat bazen aggregatelerin ekran ile aynı zamanda tetiklenmesini gerektirmeyen durumlar olabilir. Bu gerek performans gerek sistemin çalışma şekli dikkate alınarak yapılan bir tercihtir. Bu gibi durumlarda OutSystems aggregateler içerisinde bulunan fetch özelliği ile istem dışı veri alabilmemize olanak sağlar. Bu özellik, geliştiricilere veriyi sadece gerektiğinde sunucudan almalarına olanak tanır, böylece tüm veriyi tek seferde yüklemek yerine sadece gerektiğinde veri yüklerler. Bu, uygulamanın performansını yüklenmesi ve işlenmesi gereken veri miktarını azaltarak artırır ve ayrıca ağ üzerinden iletilmesi gereken veri miktarını azaltır.

    Eğer bir sayfanın yaşam döngüsüne yakından bakarsak, öncelikle sayfaya erişilebilmesi için sayfanın başlatılması gerekmektedir. Normal şartlarda sayfaya bir aggregate tanımlanmışsa, yazının başında da bahsettiğimiz gibi sayfa ile eşzamanız ve paralel olarak bu verileri de çeker. Sayfa hazır olduğunda ekrandaki widgetları işlemeye başlar. Aggregateler yüklendikten sonra her bir aggregate için sayfa tekrar işlenir ve yeni widgerları görmeye başlarız.

    Aggregatelerin sahip olduğu fetch özelliğinden bahsetmiştik. Bu özellik başlangıçta At Start olarak gelir ve bize At Start ve Only On Demand olmak üzere iki seçenek sunar.

    ‘’At start’’ seçili olan aggregateler sayfanın açılması ile yüklenmeye başlar. ‘’Only on demand’’ seçili olan aggregateler sayfa açıldığında yüklenmez ve manuel olarak tetiklenmeleri gerekir. Bunu actionlar akışı içerisinde bulunan “Refresh Data” elementi ile yapıyoruz. Bu element ‘’Only on demand’’ aggregateleri çekmek ve ekrandaki aggregateleri yenilemek için kullanılmaktadır.

    Refresh Data elementini akışa sürükledikten sonra bizden hangi aggregatei çekeceğimizi seçmemizi bekleyecektir.

    Bu actionı çalıştırmanız durumunda, aggregate tetiklenecektir ve sayfa tekrardan işlenecektir. Peki Only On Demand seçeneğini ne gibi bir durumda kullanabiliriz? Aggregatede tanımlı olan On After Fetch gibi özelliklerde çalışacaktır normalde olduğu gibi tetiklenecektir.

1 yanıt görüntüleniyor (toplam 1)
  • Replies
    BAYPM
    Moderatör
    +
    Up
    0
    ::

1 yanıt görüntüleniyor (toplam 1)
  • Bu konuyu yanıtlamak için giriş yapmış olmalısınız.