Skip to main content

Yeni Özellik: Özel Tetikleyicilerde Script Desteği

· 2 min read
MMX ERP Ekibi
Mikromax Mühendislik

MMX ERP'nin Özel Tetikleyici (Custom Trigger) sistemi yeniden tasarlandı. Artık harici bir HTTP adresi çağırmanın yanı sıra doğrudan sistem içinde JavaScript kodu çalıştırabilirsiniz. Bu yenilik; doğrulama kuralları, otomatik kayıt oluşturma ve iş akışı kontrolleri gibi senaryoları API bağımlılığı olmadan gerçekleştirmeyi mümkün kılıyor.

Ne Değişti?​

Önceki sistemde bir tetikleyici yalnızca bir API adresine (endpoint) çağrı yapabiliyordu. Zamanlama seçenekleri de yalnızca "bitiş öncesi" ve "bitiş sonrası" olarak ayrılmıştı.

Yeni sistemde tetikleyiciler iki türe ayrılıyor:

  • API Tetikleyici: Belirtilen HTTP adresine çağrı yapar. Önceki davranışa yakın; harici sistemlere bildirim göndermek için idealdir.
  • Script Tetikleyici: Sistem içinde JavaScript kodu çalıştırır. Veritabanı sorguları yapabilir, veri doğrulayabilir, kayıt ekleyebilir.

Bunun yanı sıra üç ayrı zamanlama seçeneği sunuluyor: Öncesi, Sonrası ve Yerine (yalnızca API tetikleyicilerinde).

Script Tetikleyicileriyle Neler Yapabilirsiniz?​

İş Kuralı Doğrulama​

Bir sipariş oluşturulmadan önce müşterinin kredi limitini kontrol edebilir, yetersiz bakiye durumunda işlemi durdurabilirsiniz. Bunu yapmak için artık ayrı bir servis yazmanıza gerek yok; tetikleyici ekranından birkaç satır JavaScript yeterli.

Otomatik Kayıt Oluşturma​

Bir komut başarıyla tamamlandıktan sonra ilgili tablolara otomatik veri ekleyebilirsiniz. Örneğin bir sipariş oluşturulduğunda stok rezervasyon kaydı otomatik olarak yazılabilir.

Zincirleme Tetikleyiciler​

Aynı komuta birden fazla tetikleyici tanımlanabilir ve bunların çalışma sırası Sıra (Order) alanıyla belirlenir. Öncesi (Before) tetikleyicilerde ilk hata zinciri durdurur; böylece işlem güvenli bir şekilde kontrol altına alınır.

Diğer Yenilikler​

  • Aktif/Pasif Yönetimi: Bir tetikleyiciyi silmeden devre dışı bırakabilirsiniz. Test ortamlarında veya geçici olarak kapatılması gereken kurallarda kullanışlıdır.
  • Açıklama Alanı: Her tetikleyiciye bir açıklama eklenebilir; böylece ekip içi anlaşılabilirlik artar.
  • Tüm komutlar tetiklenebilir: Artık tetikleyici eklemek için özel bir yapılandırma gerekmez; sistemdeki tüm komutlar tetikleyici almaya uygundur.

Mevcut Tetikleyiciler Hakkında​

Bu güncellemeyle birlikte tetikleyici veri yapısı değiştirildi. Eski BeforeEndPoint, AfterEndPoint ve InsteadEndPoint alanlarının yerini Timing, Kind ve EndPoint alanları aldı. Mevcut tetikleyicilerinizi yeni yapıya göre güncellemeniz gerekmektedir.


Ayrıntılı kullanım kılavuzu ve örnek script'ler için Özel Tetikleyici dokümantasyonunu inceleyebilirsiniz.