Nexus Salarii

Calcul număr de tichete de masă raportat la numarul de zile lucrătoare din pontaj


    Pentru exemplificare, considerăm că dorim să acordăm tichete de masă raportat la numarul de zile lucrătoare din pontaj, fără să țină cont de numărul de ore lucrate din fiecare zi.
     
    Dacă numarul de zile lucrătoare din pontaj depăsește numărul de zile lucrătoare legale din luna, atunci formula va returna numarul de zile lucrătoare legale din luna.
     
    Formula completă pentru  Număr de tichete:
     
    SELECT @retval=CASE WHEN b.calc_tic=1 THEN CASE WHEN ISNULL(o.zile,0) > (@ore_lun/8) THEN @ore_lun/8 ELSE ISNULL(o.zile,0) END  ELSE 0 END
    FROM blc_view b
    LEFT JOIN (
        SELECT p.anluna, p.pl_blc, p.id_blc, COUNT(DISTINCT p.data) AS zile
        FROM Sal_Pontaj p
        INNER JOIN Sal_Pontaj_NomOre n ON p.tip = n.id
        WHERE n.tiplcr = 'LCR' AND p.anluna=@anluna AND p.pl_blc=@pl_blc AND p.id_blc=@id_blc
        GROUP BY p.anluna, p.pl_blc, p.id_blc
    ) o ON b.anluna = o.anluna AND b.pct_lcr = o.pl_blc AND b.id = o.id_blc
    WHERE b.anluna=@anluna AND b.pct_lcr=@pl_blc AND b.id=@id_blc