Bir uygulamada, kullanıcıların farklı attribute’lardan oluşan dinamik bir formu doldurup bu bilgileri sistemde kaydetmesi gerekir. Bu form alanları, önceden tanımlanmış sabit alanlar olmayıp, kullanıcı veya sistem tarafından dinamik olarak belirlenmiştir.
Senaryo Adımları:
- Dinamik Form Oluşturma:
- Uygulama, Get Entity Attributes aksiyonu ile ilgili entity’ye ait attribute yapısını alır.
- Bu attribute bilgilerine göre dinamik form bileşenleri (input, dropdown, checkbox, tarih seçici vb.) oluşturulur.
- Form, her attribute için uygun bileşenleri içerir ve kullanıcıya gösterilir.
- Kullanıcı Veri Girişi:
- Kullanıcı formu doldurur. Örneğin:
- Ad (String)
- Doğum Tarihi (Date)
- Abonelik Durumu (Boolean)
- Referans Sayısı (Integer)
- Girilen her değer, form bileşenleri üzerinde tutulur.
- Model Nesnesinin Oluşturulması:
- Formdaki tüm değerler, sistemde tek bir model (JSON objesi) halinde toplanır.
- Model, her attribute için şu bilgileri içerir:
- EntityId: İlgili varlık kimliği (örneğin müşteri ID’si)
- AttributeId: Her form alanına karşılık gelen attribute’un ID’si
- Value: Kullanıcının girdiği değer
- (Varsa) EntityValueId: Daha önce kaydedilmiş değerin kimliği (güncelleme için)
- Save Entity Value Aksiyonunun Tetiklenmesi:
- Kullanıcı formu tamamladıktan sonra “Kaydet” butonuna tıklar.
- Butonun OnClick olayına, form modelini parametre olarak alan Save Entity Value aksiyonu eklenir.
- Bu aksiyon, modeldeki tüm attribute değerlerini sistemde oluşturur veya günceller.
- İşlem Sonrası Geri Bildirim:
- Kayıt başarılıysa kullanıcıya “Bilgiler başarıyla kaydedildi” mesajı gösterilir.
- Form sıfırlanabilir veya kullanıcı başka işlemlere yönlendirilebilir.
- Eğer hata varsa, uygun hata mesajı sunulur.