Map Entity Attribute

Map Entity Attribute

Kuika’nın MapEntityAttribute aksiyonu, bir entity (varlık) ile tek bir attribute (öznitelik) arasında ilişki kurmak için kullanılır. Bu ilişkilendirme sayesinde, sistemde tanımlı attribute’lar istenilen entity’ye bağlanabilir ve form ya da veri yapısı bu doğrultuda şekillendirilir. Bu aksiyon, EAV veri modelinde özelleştirilebilir veri alanlarının esnek biçimde tanımlanmasını sağlar. Dinamik form oluşturma süreçlerinin temel yapı taşlarından biridir.

Bu aksiyon şu an Beta sürümde sunulmaktadır ve geliştirme süreci devam etmektedir. Üretim ortamında kullanılmadan önce dikkatli test edilmesi önerilir.

Teknik Özellikler

  • Attribute Eşleştirme (EAV Paneli): MapEntityAttribute aksiyonu aşağıdaki parametrelerle çalışır:
    • EntityId (Guid – Zorunlu): Attribute’un ilişkilendirileceği entity’nin benzersiz kimliğidir.
    • AttributeId (Guid – Zorunlu): Entity ile eşlenecek attribute’un kimliğidir. Bu aksiyon her seferinde yalnızca bir attribute eşleştirilmesini destekler.
    • SortOrder (Integer – Opsiyonel): Attribute’un form içinde hangi sırada gösterileceğini belirten isteğe bağlı sıra numarasıdır.
  • Veri Kaynağı Uyumluluğu: Tüm parametreler Symbol Picker üzerinden aşağıdaki kaynaklardan alınabilir:
    • EntityId / AttributeId: Dynamic Form, Select Box, Action Result, Fixed
    • SortOrder: Fixed ya da kullanıcı girdisi olarak Component
  • Web & Mobil Uygulama Desteği: MapEntityAttribute aksiyonu, hem web hem de mobil uygulamalarda çalışır.
Map Entity Attribute Aksiyonu Uygulama Adımları

1. UI Üzerinde Alan Seçimi

  • Kullanıcıya bir entity seçimi yapılabilecek alan sunulur.
  • Ardından, sistemde tanımlı attribute’lar listelenir.
  • Çoklu attribute seçimi yapılsa da, MapEntityAttribute aksiyonu yalnızca tek bir attribute için çalışır. Bu nedenle seçilen her attribute için ayrı ayrı aksiyon tetiklenmelidir.

2. Aksiyon Tanımlama

“Attribute Ekle” ya da “Alanları Eşleştir” butonuna şu aksiyon eklenir:

  • + ADD ACTION > OnClick > EAV > Entity Attributes > MapEntityAttribute

Parametreler şu şekilde yapılandırılır:

  • EntityId: Symbol Picker > Select Box / Dynamic Form
  • AttributeId: Symbol Picker > Select Box
  • SortOrder: Symbol Picker > Optional > Fixed / Numeric Input

3. Aksiyon Sonucunun Kullanımı

  • Eşleşme tamamlandıktan sonra kullanıcıya bildirim gösterilebilir (Show Toast).
  • İlgili entity için GetEntityAttributes aksiyonu çalıştırılarak yeni attribute’lar gösterilebilir.
Kullanım Senaryosu: CRM Uygulamasında Dinamik Alan Ekleme

Bir CRM uygulamasında kullanıcı, müşteri kartlarına “Doğum Tarihi”, “Müşteri Notları” gibi alanlar eklemek ister.

  • Kullanıcı ilgili müşteri entity’sini seçer.
  • Sistemde tanımlı attribute’lardan birini seçer.
  • “Alanı Ekle” butonuna tıklayınca MapEntityAttribute aksiyonu çalışır.
  • Seçilen attribute ilgili entity’ye bağlanır.
  • Dynamic Form, bu yeni attribute’a göre yeniden oluşturulur.
  • Her bir attribute için bu işlem tekrarlanır.

Map Entity Attribute Aksiyonu İleri Seviye Özelleştirmeler
  • Tek Tek Attribute Ekleme: Aksiyon her seferinde yalnızca bir attribute için çalışır. Çoklu ekleme yapılmak isteniyorsa, seçim sonrası döngü ile tek tek MapEntityAttribute aksiyonu tetiklenmelidir.
  • Koşullu SortOrder Atama: Attribute türüne göre SortOrder değeri dinamik olarak belirlenebilir.
  • Ön İzleme: Attribute eklenmeden önce, kullanıcıya form ön izlemesi sunulabilir.

Teknik Riskler

  • Geçersiz ID’ler: EntityId veya AttributeId eksik veya hatalıysa eşleştirme başarısız olur.
  • Yinelenen Eşlemeler: Daha önce aynı attribute aynı entity’ye eşlendiyse, sistem çakışma verebilir veya eşlemeyi yoksayabilir.
  • Sıra Çakışması: Aynı SortOrder farklı attribute’lara verilirse, UI'da beklenmeyen sıralama hataları oluşabilir.

MapEntityAttribute aksiyonu, Kuika platformunun EAV tabanlı mimarisinde, entity’lere esnek alan tanımlamaları yapılmasını sağlayan temel yapı taşlarından biridir. Özelleştirilebilir veri modelleri oluşturmak ve kullanıcıya özel formlar geliştirmek için idealdir.

İlişkili diğer içerikler

No items found.

Sözlük

No items found.

Alt Başlıklar