SambaPOSBilgi Bankası Giriş
Herkese açık🇹🇷 TürkçeSambaPOS 5

Time Clock Uygulaması Nasıl Yapılır?

Doküman İndeksi 1. PunchIn (Giriş) ve PunchOut (Çıkış) Durumlarının Eklenmesi 2. Personellerin Varlık Olarak Eklenmesi 2.1. Personel Varlık Tipinin Eklenmesi 2.2. Personellerin Varlık Olarak Eklenmesi 3. Time Clock Varlık Ekranının Eklenme…

Güncellendi Yayınlandı 10 Tem 2018 06:1013 dk okuma

    Doküman İndeksi

    1. PunchIn (Giriş) ve PunchOut (Çıkış) Durumlarının Eklenmesi

    2. Personellerin Varlık Olarak Eklenmesi

    2.1. Personel Varlık Tipinin Eklenmesi

    2.2. Personellerin Varlık Olarak Eklenmesi

    3. Time Clock Varlık Ekranının Eklenmesi

    4. Otomasyon Komutlarının Eklenmesi

    4.1. Time Clock Butonu

    5. Eylemlerin Eklenmesi

    5.1. Mesaj Göster Eylemi

    5.2. Time Clock Ekranını Göster Eylemi

    5.3. Otomasyon Komutu Çalıştır Eylemi

    5.4 Program Ayarı Değiştir Eylemi

    5.5. Soru Sor Eylemi

    5.6. Varlık Durumunu Değiştir Eylemi

    5.7. Varlık Durumunu Günlüğe At Eylemi

    5.8. Varlığı Yükle Eylemi

    6. Kuralların Eklenmesi

    6.1. Time Clock Ekranını Göster Kuralı

    6.2. Varlık Yükle Kuralı

    6.3. Time Clock Punch (Sor) Kuralı

    6.4. Varlık Durumunu Değiştir Kuralı

    6.5. Varlık Durumunu Günlüğe At Kuralı

    7. Raporların ve Komutların Eklenmesi

    7.1. Raporların Eklenmesi

    7.1.1. Saatlik Rapor

    7.2. Komutların Eklenmesi

    7.2.1. Personel Saatleri Günlük

    7.2.2. Personel En Son Giriş

    7.2.3. Personel Saatleri Total

    Time Clock Uygulamasına Başlamadan Önce

    Bu dokümanda, Personel Çalışma Saatleri Takibi Uygulaması anlatılacaktır. Bu uygulama, personellerin sisteme Varlık olarak Giriş ve Çıkış yapmalarına imkan vermektedir.

    Time Clock uygulamasına başlamadan önce, Navigasyon Ekranı Buttonları ile ilgili yapılması gereken 2 ayar vardır;

    1- Özel Navigasyona İzin Verme

    Ana Menü > Yönetim > Ayarlar > Yerel Ayarlar > Görüntüle > burada Özel Navigasyon’a İzin Ver seçili olmalıdır.

    Time Clock Tr 01

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    2- Varsayılan Navigasyon Butonları Oluşturma

    Ana Menü > Yönetim > Ayarlar > Program Ayarları > Bakım > burada Create Default Navigation Buttons üzerine tılayın.

    Time Clock Tr

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    Time Clock Uygulamasının Görünümü

    Time Clock Tr

    Time Clock Uygulaması

    1. PunchIn (Giriş) ve PunchOut (Çıkış) Durumlarının Eklenmesi

    Bu durumlar, personelin Giriş yada Çıkış yapmasını takip etmek amaçlı kullanılır.

    Ana Menü > Yönetim > Ayarlar > Durumlar > burada Durum Ekle üzerine tıklanır. PunchOut durumu için de aynı işlem tekrarlanır.

    Time Clock Tr

    Giriş İçin Varlık Durumu Adı: PunchIn Durum Adı: TCStatus Durum Tipi: Varlık Durumu

    Çıkış İçin Varlık Durumu Adı: PunchOut Durum Adı: TCStatus Durum Tipi: Varlık Durumu

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    2. Personel Varlıklarının Eklenmesi

    2.1. Personel Varlık Tipinin Eklenmesi

    Ana Menü > Yönetim > Varlıklar > Varlık Tipleri > burada Varlık Tipi Ekle üzerine tıklayın.

    Genel Ayarlar Sekmesi;

    Time Clock Tr

    Adı:Personeller Varlık Adı:Personel Birincil Alan Adı:Adı Varsayılan Durumlar: TCStatus=PunchOut;TCReport=Unloaded

    Version 5, Varlık Tipleri için Varsayılan Durumları desteklemektedir. Bu özellik, yeni bir Varlık oluşturulduğunda, bir ”Başlangıç Durumu” belirler.

    Özel Alanlar Sekmesi;

    Time Clock Tr

    Hesap Sekmesi; (Opsiyonel)

    Time Clock Tr

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    Hesap Tipi olarak, Personel Hesaplarını seçebilmek için, Personel Hesapları Hesap Tipi ve her personel için bir Hesap oluşturmuş olmanız gereklidir.

    Personel Hesapları Hesap Tipinin Eklenmesi

    Ana Menü > Yönetim > Hesaplar > Hesap Tipleri > burada Hesap Şablonu Ekle üzerine tıklayın.

    Time Clock Tr

    Adı: Personel Hesapları

    Filtre Tipi: Ay (İhtiyacınıza göre seçin)

    Kurallar: Varsayılan

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    Her Bir Personel İçin Hesap Eklenmesi

    Ana Menü > Yönetim > Hesaplar > Hesaplar > burada Hesap Ekle üzerine tıklayın.

    Time Clock Tr

    Hesap Adı: Personelinizin adını yazın.

    Hesap Tipi: Personel Hesapları

    Para Birimi: Boş

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    2.2. Personellerin Varlık Olarak Eklenmesi

    Ana Menü > Yönetim > Varlıklar > Varlıklar > burada Varlık Ekle üzerine tıklayın.

    Time Clock Tr

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    3. Time Clock Varlık Ekranın Eklenmesi

    Ana Menü > Yönetim > VArlıklar > Varlık Ekranları > burada Varlık Ekranı Ekle üzerine tıklayın.

    Genel Ayarlar Sekmesi;

    Time Clock Tr

    Adı: Time Clock

    Adisyon Tipi: Ticket

    Görünüm Modu: Özel

    Görünüm Sekmesi;

    Time Clock Tr

    Varlık Listesi Sekmesi;

    Time Clock Tr

    Varlık tipi: Personeller

    Görünüm Durumu: TCStatus

    Durum Filtresi: Boş

    Varlık Seç butonuna tıklayarak, varlık ekranında görünmesini istediğiniz personellerinizi seçin.

    İlişkiler Sekmesi;

    Time Clock Tr

    İlişkiler sekmesinde, Ekle üzerine tıklayarak bir satır ekleyin.

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    Düzenleme Modu Ayarları

    Time Clock varlık ekranında, fare sağ tıklanarak Düzenleme Moduna geçilir, bir adet Entity Grid ve görüntülenmesi istenen personel sayısı kadar Özel Rapor Görüntüleyici oluşturulur.

    Entity Grid Widget

    Entity Grid Özellikler

    Time Clock Tr

    Entity Grid Ayarlar

    Time Clock Tr

    Varlık Tipi: Personeller Display State: TCStatus Otomasyon Komutu: TC-Varlık Yükle Command Value: {ENTITY NAME}

    Rapor Görüntüleyici Widgets

    Rapor Görüntüleyici Özellikler; Personel Nizam

    Time Clock Tr

    Name: Hours Nizam

    Rapor Görüntüleyici Ayarlar; Personel Nizam

    Time Clock Tr 17

    Rapor Adı: Personel Saatleri Parameters: Personel,Nizam

    Rapor Görüntüleyici Özellikler; Personel Veysel

    Time Clock Tr 18

    Name: Hours Veysel

    Rapor Görüntüleyici Ayarlar; Personel Veysel

    Time Clock Tr

    Rapor Adı: Personel Saatleri Parameters: Personel,Veysel

    4. Otomasyon Komutlarının Eklenmesi

    4.1. Time Clock Butonu

    Ana Menü > Yönetim > Otomasyon > Otomasyon Komutları > burada Otomasyon Komutu Ekle üzerine tıklanır.

    Genel Ayarlar Sekmesi;

    Time Clock Tr 20

    Adı: TC-Time Clock Göster

    Kategori: Navigasyon

    Düğme Başlığı: Time Clock

    Renk: Darkblue

    Font Size: 26

    Onay: Hiçbiri

    Seçimi Temizle: Bu kutucuk seçili olmalıdır.

    Navigasyon Seçenekleri Sekmesi;

    Time Clock Tr 21

    Navigasyon Modülü: Entity

    Navigasyon Modul Parametresi: Time Clock

    Şablon:

    [People:1]``\\<size 44\\>\\<bold\\>Time Clock\\</bold\\>\\</size\\>``@Nizam,Veysel``[='{SETTING:TCStatus $1}'=='Clocked In' ? '$1 ::: ' + '{ENTITY STATE MINUTES BY NAME:Personeller.$1:TCStatus}' : '']

    İlişkiler Sekmesi;

    Time Clock Tr 22

    İlişkiler sekmesinde, Ekle üzerine tıklayarak bir satır ekleyin.

    Visibility: Navigasyonda Göster

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    5. Eylemlerin Eklenmesi

    5.1. Mesaj Göster Eylemi

    Bu eylem, mesajları göstermek için kullanılır.

    Ana Menü > Yönetim > Otomasyon > Eylemler > burada Eylem Ekle üzerine tıklayın.

    Time Clock Tr

    Eylem Adı: TC-Mesaj Göster

    Eylem Tipi: Mesaj Göster

    Parametreler:

    Mesaj: []

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    5.2. Time Clock Ekranını Göster Eylemi

    Bu eylem, Time Clock ekranını yenilemek için kullanılır.

    Ana Menü > Yönetim > Otomasyon > Eylemler > burada Eylem Ekle üzerine tıklayın.

    Time Clock Tr

    Eylem Adı: TC-Time Clock Ekranını Göster

    Eylem Tipi: Modülü Göster

    Module Name: Entity

    Parametre: Time Clock

    Hide Header: True

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    5.3. Otomasyon Komutu Çalıştırıldı Eylemi

    Bu eylem, diğer eylemleri çalıştırmak için kullanılır.

    Ana Menü > Yönetim > Otomasyon > Eylemler > burada Eylem Ekle üzerine tıklayın.

    Time Clock Tr

    Eylem Adı: TC-Otomasyon Komutu Çalıştır

    Eylem Tipi: Otomasyon Komutu Çalıştır

    Automation Command Name: []

    Command Value:(Boş)

    Background: False

    Delay: 0

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    5.4. Program Ayarı Değiştir Eylemi

    Bu eylem, belirli parametreleri takip etmek için kullanılan, çeşitli Program Ayarlarını güncellemek için gereklidir.

    Ana Menü > Yönetim > Otomasyon > Eylemler > burada Eylem Ekle üzerine tıklayın.

    Time Clock Tr

    Eylem Adı: TC-Program Ayarı Değiştir

    Eylem Tipi: Program Ayarı Değiştir

    Parametreler:

    Ayar Adı: []

    Ayar Değeri: []

    Güncelleme Şekli: []

    Is Local: False

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    5.5. Soru Sor Eylemi

    Bu eylem, kullanıcıya Giriş yada Çıkış yapmak isteyip istemediğini sormak için kullanılır.

    Ana Menü > Yönetim > Otomasyon > Eylemler > burada Eylem Ekle üzerine tıklayın.

    Time Clock Tr

    Eylem Adı: TC-Punch (Sor)

    Eylem Tipi: Soru Sor

    Soru: []

    Buttons:  []

    Automation Command Name: []

    Arkaplan Rengi: []

    Transparent Color:(Boş)

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    5.6. Varlık Durumunu Değiştir

    Bu eylem, Personel Varlık Durumunu, Giriş yada Çıkış olarak ayarlamak için kullanılır.

    Ana Menü > Yönetim > Otomasyon > Eylemler > burada Eylem Ekle üzerine tıklayın.

    Time Clock Tr 27

    Eylem Adı: TC-Varlık Durumunu Değiştir

    Eylem Tipi: Varlık Durumunu Değiştir

    Entity Type Name: Personeller

    Varlık Adı:(Boş)

    Entity State Name: TCStatus

    Entity State: []

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    5.7. Varlık Durumunu Günlüğe At Eylemi

    Bu eylem, Personel Varlık Durumunun, Giriş yada Çıkış yaptı olarak günlüğe atılması için kullanılır.

    Ana Menü > Yönetim > Otomasyon > Eylemler > burada Eylem Ekle üzerine tıklayın.

    Time Clock Tr

    Eylem Adı: TC-Varlık Durumunu Günlüğe At

    Eylem Tipi: Varlık Durumunu Günlüğe At

    Parametreler:

    Adı: []

    Entity Id: []

    State Name: []

    Start State: []

    Start State Date: []

    End State: []

    End State Date: []

    Custom Data: []

    Async: []

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    5.8. Varlık Yükle Eylemi

    Bu eylem, Personel Varlığını yüklemek için kullanılır, bu sayede Varlık Datasını ve Durumunu okumak ve ayarlamak mümkün olmaktadır.

    Ana Menü > Yönetim > Otomasyon > Eylemler > burada Eylem Ekle üzerine tıklayın.

    Time Clock Tr

    Eylem Adı: TC-Varlık Yükle

    Eylem Tipi: Varlık Yükle

    Entity Type Name: []

    Entity Name: (Boş)

    Entity Search Value: []

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    6. Kuralların Eklenmesi

    6.1. Time Clock Ekranını Göster Kuralı

    Ana Menü > Yönetim > Otomasyon > Kurallar > burada Kural Ekle üzerine tıklayın.

    Time Clock Tr 32

    Kural Adı: TC-Time Clock Ekranını Göster

    Olay Adı: Otomasyon Komutu Çalıştırıldı

    Eğer Kural Çalışırsa: Eşleşmeler

    Özel Kısıtlama Ekle: Automation Command Name | Eşittir | TC-Time Clock Göster

    Eylem: TC-Time Clock Ekranını Göster

    Constraint: Boş

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    6.2. Personel Varlığını Yükle Kuralı

    Ana Menü > Yönetim > Otomasyon > Kurallar > burada Kural Ekle üzerine tıklayın.

    Time Clock Tr

    Kural Adı: TC-Personel Varlığını Yükle

    Olay Adı: Otomasyon Komutu Çalıştırıldı

    Eğer Kural Çalışırsa: Eşleşmeler

    Özel Kısıtlama Ekle: Automation Command Name | Eşittir | TC-Varlık Yükle

    Eylem: TC-Varlık Yükle

    Entity Type Name: Personeller

    Search Value: []

    Action: TC-Otomasyon Komutu Çalıştır

    Constraint: Boş

    AMCname: TC-Punch

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    6.3. Time Clock Punch (Sor) Kuralı

    Ana Menü > Yönetim > Otomasyon > Kurallar > burada Kural Ekle üzerine tıklayın.

    Time Clock Tr

    Kural Adı: TC-Time Clock Punch (Sor)

    Olay Adı: Otomasyon Komutu Çalıştırıldı

    Eğer Kural Çalışırsa: Eşleşmeler

    Özel Kısıtlama Ekle: Automation Command Name | Eşittir | TC-Punch

    Eylem: TC-Punch (Sor)

    Constraint: Boş

    Question: {ENTITY NAME}: İçin Bir time Clock Eylemi Seçin:

    Buttons:  Giriş=PunchIn;Gray,Çıkış=PunchOut;Gray,İptal=Cancel;Gray

    AMCname: TC-Varlık Durumunu Değiştir

    BGColor: DarkBlue

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    6.4. Varlık Durumunu Değiştir Kuralı

    Ana Menü > Yönetim > Otomasyon > Kurallar > burada Kural Ekle üzerine tıklayın.

    Time Clock Tr

    Time Clock Tr

    Kural Adı: TC-Varlık Durumunu Değiştir

    Olay Adı: Otomasyon Komutu Çalıştırıldı

    Eğer Kural Çalışırsa:  Tümü Eşleşiyor

    Özel Kısıtlama Ekle:

    Automation Command Name | Eşittir | TC-Varlık Durumunu Değiştir

    Command Value | Eşit Değil | Cancel

    Command Value | Eşit Değil | {ENTITY STATE}

    Action-1: TC-Varlık Durumunu Değiştir

    Constraint: Boş

    NewState: []

    Action-2: TC-Program Ayarı Değiştir

    Constraint: Boş

    SettingName: TCStatus {ENTITY NAME}

    SettingValue: [=('[:CommandValue]'=='PunchIn' ? 'Clocked In' : 'Clocked Out')]

    Action-3: TC-Otomasyon Komutu Çalıştır

    Constraint: Boş

    AMCname: TC-Time Clock Göster

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    6.5. Varlık Durumunu Günlüğe At Kuralı

    Ana Menü > Yönetim > Otomasyon > Kurallar > burada Kural Ekle üzerine tıklayın.

    Time Clock Tr

    Kural Adı: TC-Varlık Durumunu Günlüğe At

    Olay Adı: Varlık Durumu Güncellendi

    Eğer Kural Çalışırsa: Eşleşmeler

    Özel Kısıtlama Ekle:

    Entity Type Name | Eşittir | Personeller

    State Name | Eşittir | TCStatus

    Durum | Eşit Değil | Cancel

    Eylem: TC-Varlık Durumunu Günlüğe At

    Constraint: Boş

    logName: Time Clock

    entityId: []

    SGroupName: []

    StateBeg: []

    SDateBeg: []

    StateEnd: []

    SDateEnd: []

    SCustomDate: ManualPunch~{SETTING}

    Async: False

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    7. Raporların ve Komutların Eklenmesi

    7.1. Raporların Eklenmesi

    7.1.1. Saatlik Rapor

    Ana Menü > Yönetim > Raporlar > Raporlar > burada Rapor Ekle üzerine tıklayın.

    Time Clock V1 D%C3%BCzeltmeTR

    Aşağıdaki kod grubunu kopyalayıp şablon alanına yapıştırın;

    [Şimdiki Saatler $2,21,21,9] @@EmployeePunchInLatest:$1,$2[Önceki Saatler $2,21,21,9] >Personel|Başlangıç|Bitiş|Saatler @@EmployeeHoursDaily:$1,$2

    Buradaki $ değişkenleri Özel Rapor Görüntüleyici Widget Parametre listesinden geçmektedir. Parametreler aşağıdaki şekilde atanmıştır:

    $1 : Varlık Tipi (Personel)$2 : Personel Adı (Nizam yada Veysel yada …vs)$3 : Tarih Filtresi Başlangıcı (opsiyonel)$4 : Tarih Filtresi Bitişi (opsiyonel)$5 : Kullanılmayan

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    Rapordaki şablon alanında $1 değerini Personel kelimesiyle, $2 değerini Personel İsmiyle değiştirmeniz gerekmektedir. Bu işlemden sonra, komutların da eklenmesiyle, rapor aşağıdaki gibi görünecektir.

    Time Clock V1 D%C3%BCzeltmeTR

    7.2. Komutların Eklenmesi

    SQL Komutları, yukarıda görünen rapordan çağrılmaktadır.

    7.2.1. Personel Saatleri Günlük

    Ana Menü > Yönetim > Otomasyon > Komutlar > burada Komut Ekle üzerine tıklayın.

    Time Clock Tr

    Komut Adı: EmployeeHoursDaily

    Denetimci: @@EmployeeHoursDaily

    Komut: Aşağıdaki kod grubunu kopyalayıp, komut alanına yapıştırın;

    ```````````-- PARM for Employee Entity Type declare @EntityType varchar(20) = '@1' -- PARM for Employee Name declare @Employee varchar(20) = '@2' -- PARM for Date Filter Start declare @StartDateIn varchar(25) = '@3' -- PARM for Date Filter End declare @EndDateIn varchar(25) = '@4'````````````-- if Employee Entity Type is invalid, set default as 'Employee' IF (@EntityType = '') OR (@EntityType is null) OR (@EntityType = '$1') SET @EntityType = 'Employee'-- if Date Filter START is invalid, set default to beginning of Current Month IF (@StartDateIn = '') OR (@StartDateIn is null) OR (@StartDateIn = '$3') SET @StartDateIn = left(CONVERT(VARCHAR(25), GETDATE(), 126),7)+'-01T00:00:00'-- if Date Filter END is invalid, set a default IF (@EndDateIn = '') OR (@EndDateIn is null) OR (@EndDateIn = '$4') SET @EndDateIn = dateadd(Month,1,@StartDateIn)-- set START and END date for Report Period declare @StartDate datetime = convert(varchar(25),@StartDateIn,126) declare @EndDate datetime = convert(varchar(25),@EndDateIn,126) declare @EndDateInc datetime = convert(varchar(25),dateadd(day,-1,@EndDate),126)-- set name of HolidayFlag declare @HolidayFlag varchar(20) = 'Holiday' -- set name of Clock-In State declare @Clockin varchar(20) = 'PunchIn' -- set Overtime Hour Limit declare @HourLimit decimal(4,2) = 8.00-- NOTHING TO SET BEYOND HERE)SELECTe.Name,StartStateDate,EndStateDate,CONVERT(VARCHAR(8),(EndStateDate-StartStateDate),108) as TotalHoursFROM [EntityStateLogs] sl left join [Entities] e on e.[Id]=sl.[EntityId] left join [EntityTypes] et on et.[Id]=e.[EntityTypeId] WHERE 1=1 and sl.[StartStateDate] >= '{Start}' and sl.[EndStateDate] <= '{End}' and et.[EntityName] = @EntityType and sl.[StartState] = @Clockin and e.[Name]=@Employee`

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    7.2.2. Personel En Son Giriş

    Ana Menü > Yönetim > Otomasyon > Komutlar > burada Komut Ekle üzerine tıklayın.

    Time Clock Tr

    Komut Adı: EmployeePunchInLatest

    Denetimci: @@ EmployeePunchInLatest

    Komut: Aşağıdaki kod grubunu kopyalayıp, komut alanına yapıştırın;

    ```-- PARM for Employee Entity Type declare @EntityType varchar(20) = '@1' -- PARM for Employee Name declare @Employee varchar(20) = '@2' -- PARM for Date Filter Start declare @StartDateIn varchar(25) = '@3' -- PARM for Date Filter End declare @EndDateIn varchar(25) = '@4'-- if Employee Entity Type is invalid, set default as 'Employee' IF (@EntityType = '') OR (@EntityType is null) OR (@EntityType = '$1') SET @EntityType = 'Employee'``-- if Date Filter START is invalid, set default to beginning of Current Month IF (@StartDateIn = '') OR (@StartDateIn is null) OR (@StartDateIn = '$3') SET @StartDateIn = left(CONVERT(VARCHAR(25), GETDATE(), 126),7)+'-01T00:00:00'``-- if Date Filter END is invalid, set a default IF (@EndDateIn = '') OR (@EndDateIn is null) OR (@EndDateIn = '$4') SET @EndDateIn = dateadd(Month,1,@StartDateIn)``-- set START and END date for Report Period declare @StartDate datetime = convert(varchar(25),@StartDateIn,126) declare @EndDate datetime = convert(varchar(25),@EndDateIn,126) declare @EndDateInc datetime = convert(varchar(25),dateadd(day,-1,@EndDate),126)-- set name of HolidayFlag declare @HolidayFlag varchar(20) = 'Holiday' -- set name of Clock-In State declare @Clockin varchar(20) = 'PunchIn' -- set Overtime Hour Limit declare @HourLimit decimal(4,2) = 8.00``-- NOTHING TO SET BEYOND HERE declare @Now datetime = CONVERT(VARCHAR(25), GETDATE(), 126)``````SELECT e.Name,StartStateDate,EndStateDate,CONVERT(VARCHAR(5),(EndStateDate-StartStateDate),108) as TotalHours````FROM [EntityStateLogs] sl left join [Entities] e on e.[Id]=sl.[EntityId] left join [EntityTypes] et on et.[Id]=e.[EntityTypeId] WHERE 1=1 and sl.[Id]=(select max([Id]) from [EntityStateLogs] where [EntityId]=sl.[EntityId] and [EndState]=@Clockin) and [EndStateDate]>(select max([StartStateDate]) from [EntityStateLogs] where [EntityId]=sl.[EntityId] and [StartState]=@Clockin) and sl.[StartStateDate] >= @StartDate -- something wrong here and sl.[EndStateDate] < @EndDate and et.[EntityName] = @EntityType and sl.[EndState] = @Clockin and e.[Name]=@Employee ORDER BY e.[Name], sl.[StartStateDate]`

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.

    7.2.3. Personel Saatleri Total

    Ana Menü > Yönetim > Otomasyon > Komutlar > burada Komut Ekle üzerine tıklayın.

    Time Clock V1 D%C3%BCzeltmeTR

    Komut Adı: EmployeeHoursTTL

    Denetimci: @@EmployeeHoursTTL

    Komut: Aşağıdaki kod grubunu kopyalayıp, komut alanına yapıştırın;

    SELECT sum( DATEPART(SECOND, EntityStateLogs.EndStateDate-EntityStateLogs.StartStateDate) + 60 * DATEPART(MINUTE, EntityStateLogs.EndStateDate-EntityStateLogs.StartStateDate) + 3600 * DATEPART(HOUR, EntityStateLogs.EndStateDate-EntityStateLogs.StartStateDate) ) as 'TotalHours' FROM EntityStateLogs INNER JOIN Entities ON EntityStateLogs.EntityId = Entities.Id where Entities.Name=@Employee and StartStateDate\>='{Start}' and EndStateDate\<='{End}'

    Gerekli düzenlemeleri yaptıktan sonra, Kaydet butonuna tıklayın.