⏱️ Worker — Zamanlanmış Görevler
Worker, Octo'da arka planda çalışan ve zamanlanmış işleri yürüten bileşendir. Mail gönderimleri, raporların PDF olarak yazdırılması, periyodik stored procedure çalıştırma gibi işler Worker üzerinden yapılır.
Bu sayfa Worker'ın kullanımını anlatır (admin / power user). Worker servisinin sunucuya kurulumu için: Worker Kurulumu
Worker Nasıl Çalışır?
SP / kullanıcı görev ekler → Worker kuyruğu → Worker servisi yoklar → Çalıştırır → Durumu günceller
- Görev kuyruğa üç farklı yoldan eklenir:
- İş süreçleri içinde SP'ler tarafından otomatik — örn. alacak takibi onayı, prim hesaplama, sistem ayar uyarıları (
Sp_Rn_Sys_CreateWorkerTasküzerinden) - Ekranlardaki kullanıcı aksiyonu — örn. ekrandaki "Mail Gönder" / "Yazdır" butonları
- Yönetim ekranlarından manuel — bu sayfada anlatılan Worker ve Worker - Detay ekranları üzerinden
- İş süreçleri içinde SP'ler tarafından otomatik — örn. alacak takibi onayı, prim hesaplama, sistem ayar uyarıları (
- Sunucuda çalışan Worker servisi (
Octo.Worker.exe) kuyruğu periyodik olarak yoklar. - Hazır durumdaki görevleri alır, çalıştırır ve sonucunu kayda işler.
- Hata olursa yetkili kişilere otomatik bildirim maili atar.
İki Ayrı Ekran, İki Farklı Senaryo
Octo'da Worker görevlerini yönetmek için iki ekran vardır. İkisi de aynı veriyi gösterir, fark kullanım kolaylığı ve ayrıntı seviyesidir.
1. Worker (Basit Görünüm)
Yol: Yönetim → Worker
Günlük takip için sadeleştirilmiş ekran. Görev durumlarını renkli kartlarla filtreler, tek tıkla yeni görev ekler, çalıştırır veya duraklatırsınız.

Bu ekranda neler var:
| Bölüm | İşlev |
|---|---|
| Durum kartları (Kuyrukta / İşleniyor / Başarılı / Hata / Tümü) | Görevleri durum bazında filtreleme |
| Arama kutusu | Görev adına göre arama |
| + Yeni Görev | Wizard tarzı görev oluşturma |
| Görev listesi sütunları | GÖREV ADI · TİP · DURUM · ZAMANLAMA · SON ÇALIŞMA |
| Görev satırı aksiyonları | ⚡ Çalıştır · 🕐 Geçmiş · 👁️ Görüntüle · ✏️ Düzenle · ⏸️ Duraklat · 🗑️ Sil |
Günlük operasyonlarda (görev ekleme, çalıştırma, durum izleme) bu ekran yeterlidir.
2. Worker - Detay (Gelişmiş Görünüm)
Yol: Yönetim → Worker - Detay
Tüm sütunların ve alt sekmelerin göründüğü, master-detay yapısında profesyonel ekran. Görevin parametre map'ini, ek dosyalarını, mail ayarlarını buradan yönetirsiniz.

Araç çubuğu: Yenile · Ara · Tekrarlı Görevler (filtre) · Yeni · Düzenle · Sil · Mail Ayarları
Bu ekranda tüm sütunlar:
| Sütun | Açıklama |
|---|---|
| Görev Tipi | SP / Mail / Print |
| Durum | Kuyrukta / İşleniyor / Başarılı / Hata |
| Görev Adı | Görevin adı |
| Çalışma Zamanı | İlk çalıştırma veya son planlanan çalışma tarihi/saati |
| Tekrarlı | Görevin tekrarlı olup olmadığı |
| Duraklatıldı | Görevin duraklatılıp duraklatılmadığı |
| Tamamlandı | Görevin tamamlanıp tamamlanmadığı |
| Aralık (sn) | Tekrar aralığı saniye cinsinden |
| Çalıştırma Zamanı | Bir sonraki planlanan çalışma zamanı |
| Sonuç | Son çalışmanın sonuç/hata mesajı |
| Gönderici | Mail görevlerinde gönderici alias |
| Konu | Mail görevlerinde e-posta konusu |
| İçerik | Mail görevlerinde e-posta içeriği |
| Alıcılar | Mail görevlerinde alıcı listesi |
Alt sekmeler (seçili görev için):
| Sekme | İşlev |
|---|---|
| Attachments | Göreve bağlı ekler (SP referansı, rapor template'i) — sütunlar: Name, PrinterName, Oluş. Tar., AddUser |
| Parameters | Ek başına filtre / parametre tanımları — sütunlar: FieldName, FilterOperatorType, Value |
Parametreli rapor, mail eki, çoklu ek, özel filtreler gibi gelişmiş senaryolarda bu ekranı kullanın.
Görev Tipleri
| Tip | Ne işe yarar |
|---|---|
| E-posta gönderimi — sistem bildirimleri, kullanıcı tetikli mailler, raporlu mail | |
| Rapor yazdırma — bir raporu seçili yazıcıya PDF/fiziksel çıktı olarak gönderme | |
| SP | Stored Procedure çalıştırma — periyodik kontroller, prim hesaplama, cache yenileme |
Ekrandaki örnekler:
| Görev Adı | Tip |
|---|---|
| Günlük Kullanım İstatistikleri Raporu | SP |
| Günlük SQL Performans Raporu | SP |
| Sistem Ayarları Kontrol | SP |
| Nesne Yenile | SP |
Yeni Görev Oluşturma
Yönetim → Worker ekranını açın. Sağ üstte + Yeni Görev butonuna tıklayın. Açılan wizard 3 adımdan oluşur.
Adım 1 — Tip Seçimi
Görev tipini seçin: Mail (E-posta gönderimi), Print (Rapor yazdırma) veya SP (Stored Procedure).

Adım 2 — Detaylar
Tipe göre doldurulacak alanlar:
- Mail: Görev Adı · Gönderen (varsayılan: Sistem) · Konu · Alıcılar (TO — virgülle ayrılır) · CC · BCC · İçerik
- Print: Görev Adı · Rapor adı · Yazıcı · Kopya sayısı
- SP: Görev Adı · Çalıştırılacak SP'ler (+ SP Ekle ile eklenir; her SP için SP Adı ve Parametreler girilir)

Adım 3 — Zamanlama
- Başlangıç Zamanı: İlk çalıştırma tarih/saatini girin.
- Tekrar edilsin: İşaretlenirse görev otomatik olarak tekrarlanır. Bu durumda ek alanlar görünür:
- Her: Tekrar aralığının sayısal değeri (örn. 1, 5, 24)
- Birim: Saniye / Dakika / Saat / Gün

Kaydet butonuna basın. Görev Kuyrukta durumuyla listeye düşer; Worker servisi sıraya geldiğinde çalıştırır.
Mail görevlerinde alıcılar virgül (,) ile ayrılır, noktalı virgül (;) DEĞİL. Bu Worker'ın SMTP standardına bağlı bir kısıtlamadır.
Görev Durumları
| Durum | Ne demek |
|---|---|
| 🟠 Kuyrukta | Görev kayıtlı, Worker'ın alıp çalıştırmasını bekliyor |
| 🔵 İşleniyor | Worker servisi şu an çalıştırıyor |
| 🟢 Başarılı | Tamamlandı, sonuç loglandı |
| 🔴 Hata | Çalışırken hata aldı; bildirim maili gönderildi |
Hata kartına tıklayıp ilgili görevin geçmişini (🕐 ikonu) açın — hata mesajı sonuç alanında loglanır.
Tekrarlı Görevler
Tekrarlı görev (örn. her gece prim hesaplama):
- Yeni Görev wizard'ında Tekrar edilsin kutusunu işaretleyin.
- Her alanına aralık değerini, Birim alanına zaman birimini girin:
- 5 dakika → Her:
5, Birim: Dakika - 1 saat → Her:
1, Birim: Saat - 1 gün → Her:
1, Birim: Gün
- 5 dakika → Her:
Worker, görevi tamamladıktan sonra bir sonraki çalıştırmayı otomatik planlar.
Tekrarlı görev durdurulmak istendiğinde Duraklat (⏸️) ile devre dışı bırakılabilir; Sil ile tamamen kaldırılabilir.
Mail Ayarları
Worker'ın mail görevlerini gönderebilmesi için SMTP ayarlarının yapılmış olması gerekir. Worker - Detay ekranındaki Mail Ayarları butonundan (Tb_Rn_Sys_MailSettings tablosuna açılan pencere) kontrol edilir.
Gerekli alanlar:
- Host (örn.
smtp.gmail.com) - Port (587 — TLS)
- EnableSsl ✅
- UserName (gönderici e-posta)
- Password (Gmail için App Password zorunlu)
Mail ayarları doğru olmadan hiçbir mail görevi çalışmaz ve hata bildirimleri de iletilemez. Yeni kurulumlarda ilk yapılması gereken adımdır.
Sorun Giderme
| Belirti | Olası Sebep | Yapılacak |
|---|---|---|
| Görev sürekli Kuyrukta kalıyor | Worker servisi sunucuda çalışmıyor | Kurulum sayfası → Adım 7 |
| Görev Hata veriyor (mail) | SMTP ayarları yanlış / App Password eksik | Mail Ayarları butonu |
| Görev Hata veriyor (SP) | SP'de runtime hatası | Geçmişten hata mesajını okuyun, SP'yi DB'de manuel test edin |
| Hata bildirim maili gelmiyor | ErrorNotification yapılandırması veya SMTP bozuk | appsettings.json ve Tb_Rn_Sys_MailSettings kontrolü |
| Rapor eki PDF gelmiyor / boş | Rapor template'inde gömül ü connection string stale | Raporu Octo Web designer'dan açıp tekrar kaydedin |
Bir görevin teknik detayı (parametreler, ek dosyalar, durum geçmişi) için Worker - Detay ekranındaki ilgili görev satırına tıklayıp alt sekmelere (Attachments / Parameters) bakın.
İlgili Sayfalar
- Worker Kurulumu — Worker servisinin sunucuya kurulumu (sysadmin)
- Yetkilendirme — Worker ekranlarına erişim yetkilerinin yönetimi