Функция WT_GetHours
Модератор: Sparrow
-
- заказчик
- Сообщения: 87
- Зарегистрирован: Пт, 14/03/2008 11:15
- Имя Фамилия: Марина Гаврилюк
- Откуда: КЧХК
- Контактная информация:
Функция WT_GetHours
Помогите пожалуйста! В алгоритма рассчета ЗП участвует функция WT_GetHours.. Что это за функции, ее параметры и как работает?
-
- топ-софт
- Сообщения: 12
- Зарегистрирован: Вт, 12/02/2008 14:54
- Имя Фамилия: Алексей Дударев
- Откуда: ТопСофт
- Контактная информация:
Определение функции
Назначение:
Возвращает итоговое количество часов вида HourKind по графику типа ScheduleType по данным текущего загруженного табеля.
Параметры
Код: Выделить всё
function WT_GetHours (
HourKind : byte;
ScheduleType : integer
): double;
Возвращает итоговое количество часов вида HourKind по графику типа ScheduleType по данным текущего загруженного табеля.
Параметры
- HourKind – вид часов
- hkWorking - Рабочие часы
hkEvening - Часы работы вечером
hkNight - Часы работы ночью
hkHoliday - Часы работы в праздничный день
hkWeekend - Часы работы в выходной (по графику, а не по календарю)
hkOverwork - Сверхурочные часы
hkOverworkRest - Остаток сверхурочных часов (с учетом значения настройки "Настройка\Управление персоналом\Заработная плата\Табель учета рабочего времени\Коды видов оплат для обозначения работ\Ежедневно не более")
hkWorkingForAvgEarnings - Рабочие часы с точки зрения расчета по среднему (рабочие часы и часы оплачиваемых отклонений, у которых в видах оплат стоит входимость в расчет времени по среднему)
hkAdvanceable - Часы, за которые можно выплатить аванс (часы работы в дни, считающиеся по плану рабочими и часы оплачиваемых отклонений)
hkPaid - Оплачиваемые часы (рабочие часы и часы оплачиваемых отклонений)
hkOverworkForPeriod - Часы переработки за период
hkCarry - Рабочие часы, переходящие на следующие сутки
hkWorkDayAvgTime - Средняя продолжительность рабочего дня, часов
hkWholeWorking - Все отработанные часы (без учета настроек "рабочие часы за вычетом...")
hkWorkingHoliday - Часы работы в рабочий по плану праздник
hkWeekendHoliday - Часы работы в нерабочий по плану праздник
hkAbsenceForValidReason - Часы отсутствия по уважительной причине
hkAppearance - Часы явки
hkDecreasingStandardTime - Часы уменьшающих норму неявок
hkHarmfulConditions - Часы работы во вредных условиях
ScheduleType – тип графика- stMask - Данные из маски ручной корректировки
stStandard - Нормальный график (для расчета нормы времени при нормализации рабочих часов/дней и при суммированном учете сверхурочных часов)
stBalanced - Балансный график
stPlanned - Плановый график
stActual - Фактический табель
Замечание
Значение параметра HourKind может содержать т.н. управляющие флаги. - hkWorking - Рабочие часы
Код: Выделить всё
if InitWorkingTable
{
…
if LoadWorkingTable(LSCHET.NREC, Month(Cur_Date), Year(Cur_Date)) = 0
{
var Hours: Double;
// рабочих часов по факту за месяц
Hours := WT_GetHours(hkWorking, stActual);
…
// всего праздничных часов по плану за месяц
Hours := WT_GetHours(hkHoliday, stPlanned);
…
// всего рабочих часов по плану за месяц без учета дат приема на работу/увольнения
Hours := WT_GetHours(hkWorking or cfDisregardPeriod, stPlanned);
…
}
else
Message('Табель не загрузился', mfError or OkButton);
DoneWorkingTable;
}
-
- заказчик
- Сообщения: 87
- Зарегистрирован: Пт, 14/03/2008 11:15
- Имя Фамилия: Марина Гаврилюк
- Откуда: КЧХК
- Контактная информация:
-
- топ-софт
- Сообщения: 12
- Зарегистрирован: Вт, 12/02/2008 14:54
- Имя Фамилия: Алексей Дударев
- Откуда: ТопСофт
- Контактная информация:
так как в алгоритме необходимо указать цифровое значение, то привожу числовые значения констант:
hkWorking
1
Рабочие часы
hkEvening
2
Часы работы вечером
hkNight
3
Часы работы ночью
hkHoliday
4
Часы работы в праздничный день
hkWeekend
5
Часы работы в выходной (по графику, а не по календарю)
hkOverwork
6
Сверхурочные часы
hkOverworkRest
7
Остаток сверхурочных часов (с учетом значения настройки "Настройка\Управление персоналом\Заработная плата\Табель учета рабочего времени\Коды видов оплат для обозначения работ\Ежедневно не более")
hkWorkingForAvgEarnings
10
Рабочие часы с точки зрения расчета по среднему (рабочие часы и часы оплачиваемых отклонений, у которых в видах оплат стоит входимость в расчет времени по среднему)
hkAdvanceable
11
Часы, за которые можно выплатить аванс (часы работы в дни, считающиеся по плану рабочими и часы оплачиваемых отклонений)
hkPaid
12
Оплачиваемые часы (рабочие часы и часы оплачиваемых отклонений)
hkOverworkForPeriod
14
Часы переработки за период
hkCarry
17
Рабочие часы, переходящие на следующие сутки
hkWorkDayAvgTime
20
Средняя продолжительность рабочего дня, часов
hkWholeWorking
21
Все отработанные часы (без учета настроек "рабочие часы за вычетом...")
hkWorkingHoliday
22
Часы работы в рабочий по плану праздник
hkWeekendHoliday
23
Часы работы в нерабочий по плану праздник
hkAbsenceForValidReason
24
Часы отсутствия по уважительной причине
hkAppearance
25
Часы явки
hkDecreasingStandardTime
26
Часы уменьшающих норму неявок
hkHarmfulConditions
27
Часы работы во вредных условиях
и
stMask
-3
Данные из маски ручной корректировки
stStandard
-2
Нормальный график (для расчета нормы времени при нормализации рабочих часов/дней и при суммированном учете сверхурочных часов)
stBalanced
-1
Балансный график
stPlanned
0
Плановый график
stActual
1
Фактический табель
hkWorking
1
Рабочие часы
hkEvening
2
Часы работы вечером
hkNight
3
Часы работы ночью
hkHoliday
4
Часы работы в праздничный день
hkWeekend
5
Часы работы в выходной (по графику, а не по календарю)
hkOverwork
6
Сверхурочные часы
hkOverworkRest
7
Остаток сверхурочных часов (с учетом значения настройки "Настройка\Управление персоналом\Заработная плата\Табель учета рабочего времени\Коды видов оплат для обозначения работ\Ежедневно не более")
hkWorkingForAvgEarnings
10
Рабочие часы с точки зрения расчета по среднему (рабочие часы и часы оплачиваемых отклонений, у которых в видах оплат стоит входимость в расчет времени по среднему)
hkAdvanceable
11
Часы, за которые можно выплатить аванс (часы работы в дни, считающиеся по плану рабочими и часы оплачиваемых отклонений)
hkPaid
12
Оплачиваемые часы (рабочие часы и часы оплачиваемых отклонений)
hkOverworkForPeriod
14
Часы переработки за период
hkCarry
17
Рабочие часы, переходящие на следующие сутки
hkWorkDayAvgTime
20
Средняя продолжительность рабочего дня, часов
hkWholeWorking
21
Все отработанные часы (без учета настроек "рабочие часы за вычетом...")
hkWorkingHoliday
22
Часы работы в рабочий по плану праздник
hkWeekendHoliday
23
Часы работы в нерабочий по плану праздник
hkAbsenceForValidReason
24
Часы отсутствия по уважительной причине
hkAppearance
25
Часы явки
hkDecreasingStandardTime
26
Часы уменьшающих норму неявок
hkHarmfulConditions
27
Часы работы во вредных условиях
и
stMask
-3
Данные из маски ручной корректировки
stStandard
-2
Нормальный график (для расчета нормы времени при нормализации рабочих часов/дней и при суммированном учете сверхурочных часов)
stBalanced
-1
Балансный график
stPlanned
0
Плановый график
stActual
1
Фактический табель
-
- заказчик
- Сообщения: 87
- Зарегистрирован: Пт, 14/03/2008 11:15
- Имя Фамилия: Марина Гаврилюк
- Откуда: КЧХК
- Контактная информация: