Reçete Yönetimi
Reçete yönetimi, bir grup tag'e önceden tanımlanmış değerlerin (reçete) toplu olarak yazılmasını sağlar. Örneğin farklı ürün tiplerinde farklı set değerlerinin (sıcaklık, basınç, hız vb.) tek tıkla uygulanması için kullanılır.
Kim tanımlar, kim uygular
Reçete grupları ve reçete tanımları RecipeManagement (veya Editor) rolü gerektirir; reçete uygulamak RecipeApplier rolü gerektirir. Hangi grubun hangi role sahip olacağı Kullanıcı Yönetimi ekranından belirlenir.
Sol menüde Reçete Yönetimi başlığı altında üç sayfa bulunur: Reçete Grupları, Reçete Tanımı ve Reçete Uygulama. Reçete Uygulama sayfası Reçete Uygulama bölümünde anlatılır.
Reçete Grupları
Reçeteler gruplar hâlinde düzenlenir. Bir grup, reçetelerin hangi tag'lere değer yazacağını ve bu tag'lerin sınırlarını belirler. Reçete Grupları sayfası iki bölümden oluşur: üstte grup seçim alanı ve düğmeler, altta seçili grubun Grup Tag Eşleştirme tablosu.
Grup seçimi: Sayfanın üstündeki Reçete Grupları listesinden bir grup seçilir. Seçilen grubun kimliği sağdaki Id alanında gösterilir.

Düğmeler:
- Yeni: Yeni reçete grubu oluşturur. Reçete Grubu Ekle penceresinde şu alanlar doldurulur:
- Adı: Grubun adı.
- Açıklama: İsteğe bağlı açıklama.
- Aktif: Grubun etkin olup olmadığı.
- Otomatik Tag Değer Senkronizasyonu: İşaretlenirse reçete tablosu tag'lerle canlı eşitlenir (aşağıdaki Otomatik tag değer senkronizasyonu bölümüne bakın).
- Uygulama Sonrası Tag: Reçete uygulandıktan sonra değer yazılacak tag. Seç düğmesiyle tag seçilir, Seçimi Temizle ile seçim kaldırılır. PLC'ye "reçete uygulandı" sinyali vermek için kullanılır.
- Uygulama Sonrası Tag Modu: True Yaz (varsayılan) seçilirse uygulama tamamlanınca tag'e
true(1) yazılır. Özel Değer Yaz seçilirse yazılacak değer Uygulama Sonrası Tag JSON Değeri alanına JSON olarak girilir (ör.true,1,"RUN").

- Değiştir: Seçili grubun bilgilerini aynı pencerede düzenler (Reçete Grubunu Düzenle).
- Sil: Onaydan sonra seçili grubu siler. İçinde reçete bulunan grup silinemez; önce grubun reçeteleri silinmelidir.
- Yetki Ekle: Seçili gruba yetki (rol) atar. Gruba yetki atanmışsa grubun reçetelerini yalnız bu yetkilerden birine sahip kullanıcılar ve Editor rolündeki kullanıcılar kullanabilir. Yetki atanmamış grup, reçete yetkisi olan bütün kullanıcılara açıktır.
- Grup Tag Eşleştirme: Gruba tag ekleme ve çıkarma penceresini açar. Pencerede solda Değişken Seçimi ağacı, ortada Ekle ve Çıkar düğmeleri, sağda grubun Değişkenler listesi bulunur. Sağdaki listede görünen ad ve sınır değerleri de düzenlenebilir. Kaydet ile kaydedilir, İptal ile kapatılır.
Grup Tag Eşleştirme tablosu
Bu tablo, seçili reçete grubundaki tag'leri ve her tag'in değer sınırlarını gösterir. Hücreye tıklanarak düzenlenir. Sütunlar:
- Adı: Tag'in adı.
- Görünen Ad: Reçete ekranlarında gösterilecek ad.
- Adres: Tag'in cihazdaki adresi.
- Min Kaynak Tipi / Min Sabit Değer / Min Kaynak Tag: Bu tag için izin verilen en küçük değerin kaynağı. Yok seçilirse alt sınır uygulanmaz; Sabit Değer seçilirse Min Sabit Değer kullanılır; Kaynak Tag seçilirse Min Kaynak Tag alanında seçilen tag'in anlık değeri alt sınır olur.
- Max Kaynak Tipi / Max Sabit Değer / Max Kaynak Tag: Aynı yapı en büyük değer için geçerlidir.
Sınır değeri seçilen kaynak tipinde boş bırakılamaz ve en büyük değer en küçük değerden büyük olmalıdır. Tablonun altındaki Kaydet düğmesiyle değişiklikler kaydedilir.
Reçete Tanımı
Reçete Tanımı sayfasında, seçili reçete grubunun reçeteleri ve her reçetedeki tag–değer çiftleri (reçete kalemleri) yönetilir.
Grup ve reçete seçimi: Sayfanın üstünde iki liste bulunur. Önce Reçete Grupları listesinden grup, ardından Reçete Adı listesinden o grubun reçetelerinden biri seçilir. Seçimlerin kimlikleri sağdaki Id alanlarında gösterilir.
Reçete düğmeleri (sol):
- Yeni: Seçili gruba yeni reçete ekler. Açılan pencerede reçetenin adı ve isteğe bağlı açıklaması girilir.

- Değiştir: Seçili reçetenin adını ve açıklamasını düzenler.
- Sil: Onaydan sonra seçili reçeteyi ve bütün kalemlerini siler. İşlem geri alınamaz.
CSV düğmeleri (sağ):
- Şablon: Grubun tag yapısına uygun boş bir CSV şablonu indirir. Şablon doldurularak reçete verisi hazırlanabilir.
- İçe aktar: Doldurulmuş CSV dosyası seçilir ve Reçete İçe Aktarma Önizleme penceresi açılır. Pencerede seçilen dosya, hedef ve kaynak grup, Oluşacak Reçete Adı, toplam, eşleşen ve geçerli satır sayıları ile engelleyen sorunlar gösterilir. Satır sonuçları Tümü, Geçerli ve Sorunlu olarak filtrelenebilir; Sorunları Kopyala sorun listesini panoya alır. İçe aktar düğmesiyle dosyadaki değerlerle yeni bir reçete oluşturulur. Gruptaki bir reçeteyle aynı ad kullanılıyorsa yeni reçeteye benzersiz bir ad verilir; mevcut reçetelerin üzerine yazılmaz.
- Dışa aktar: Seçili reçetenin kalemlerini CSV dosyası olarak indirir. Yedekleme veya başka bir reçeteye temel olarak kullanılabilir.
CSV dosyası noktalı virgülle ayrılır ve şu sütunları içerir: RecipeGroupName, RecipeName, RecipeDescription, TagName, DisplayName, Value. Bir dosyadaki bütün satırların reçete adı aynı olmalıdır. Satırlar gruptaki tag'lerle tag adına göre eşleştirilir.
Reçete Kalemleri tablosu:
Seçili reçetenin tag–değer çiftleri listelenir. Her satırda iki sütun vardır:
- Görünen Ad: Grup Tag Eşleştirmesinde tanımlanan ad.
- Değer: Reçete uygulandığında tag'e yazılacak değer. Değer hücresine tıklanarak düzenlenir. Değer gruptaki sınırların dışındaysa "değeri sınır dışında" uyarısı, sınır değerleriyle birlikte gösterilir.
Alt düğmeler:
- Uygula: Seçili reçetedeki bütün değerleri ilgili tag'lere yazar. Yazılamayan tag'ler atlanır ve "Reçete uygulandı, bazı taglarda hata oluştu." uyarısı gösterilir. Gruba yetki atanmışsa yalnız yetkili kullanıcılar uygulayabilir. Uygulamadan sonra son uygulanan grup ve reçetenin kimliği ve adı reçete durum tag'lerine yazılır; bu tag'ler sayfa editöründeki tag seçicinin Sistem sekmesinde listelenir.
- Cihazdan Oku: Gruptaki bütün tag'lerin anlık değerlerini cihazlardan okuyarak tabloyu günceller. Okunan değerler Kaydet ile reçeteye kaydedilir.
- Farklı kaydet: Tablodaki değerleri aynı grupta yeni bir reçete olarak kaydeder. Açılan pencerede yeni reçetenin adı ve açıklaması girilir.
- Kaydet: Tabloda yapılan değişiklikleri seçili reçeteye kaydeder.
Otomatik tag değer senkronizasyonu
Grupta Otomatik Tag Değer Senkronizasyonu işaretliyse Reçete Tanımı sayfası şöyle davranır:
- Listeden bir reçete seçildiğinde reçete otomatik olarak uygulanır.
- Reçete Kalemleri tablosundaki değerler, tag'lerin canlı değerleriyle eşitlenir. Değeri olmayan veya kalitesi iyi olmayan tag'ler tabloyu değiştirmez.
- Tablodaki bir değer değiştirildiğinde değer hemen tag'e yazılır.
Reçete Uygulama sayfasında da reçete seçildiğinde reçete otomatik olarak uygulanır.