Функции для работы с заработной платой

Alim(<идентификатор>,<дата>,<сумма>)

Рассчитать алименты.
<идентификатор> - идентификатор табельного номера
<дата1> - дата для расчета
<сумма> - сумма для расчета
Пример:
Alim(44062,dat1,1000)
Рассчитать размер алиментов от суммы 1000 грн. для табельного номера с идентификатором 44062 на dat1: 250.

getCurDol(<таб.№>,<дата>)

Получить текущую должность по табельному номеру.
Пример:
getCurDol(3,dat1)
Получить текущую должность сотрудника с табельным номером 3: "главный бухгалтер"

getCurPodr(<таб.№>,<дата>)

Получить текущее подразделение по табельному номеру.
Пример:
getCurPodr(3,dat1)
Получить текущую подразделение, за которым закреплен сотрудник с табельным номером 3: "администрация"

getDaysOtp(<календарь>,<дата1>,<дата2>)

Количество дней отпуска из календаря за указанный период.
<календарь> - номер календаря
<дата1> - начальная дата
<дата2> - конечная дата
Пример:
getDaysOtp(1,dat1,dat2)
Получить количество отпускных дней за период (dat1,dat2) по календарю с номером 1: 24.

getLsNum(<поле ЛС>)

Возвращает номер поля лицевого счета по коду.
Пример:
getLsNum(366)
Получить номер поля лицевого счета с кодом 366: 4

getLsTxt(<поле ЛС>)

Возвращает название поля лицевого счета по коду.
Пример:
getLsTxt(366)
Получить название поля лицевого счета с кодом 366: "оклад (совместители)"

getOtpDays(<приказ>,<таб.№>,<режим>)

Количество дней отпуска.
<приказ> - идентификатор приказа
<таб.№> - идентификатор табельного номера
<режим> - "D" - количество дней отпуска; "P" - количество праздничных дней; "DP","PD",null - суммарное количество дней с учетом праздничных
Пример:
getOtpDays(44231,53283,"Р")
Получить количество отпускных праздничных дней ("Р") для табельного номера с идентификатором 53283: 2

getShtatExt(<расширение>,<идентификатор>)

Возвращает код записи справочника из расширений штатного расписания. Можно передавать два, три или четыре параметра:
<расширение>,<идентификатор> - идентификатор расширения и идентификатор записи штатного расписания
<расширение>,<идентификатор>,<дата> - идентификатор расширения, идентификатор записи сотрудника и дата, по которой определяем запись в штатном расписании
<расширение>,<идентификатор>,<дата1>,<дата2> - идентификатор расширения, идентификатор записи сотрудника и две даты, по которым определяем последнюю запись в штатном расписании
Пример:
getShtatExt("RANG",45936)
Получить значение расширения с меткой "RANG" для записи штатного расписания с идентификаторм 45936: 13
getShtatExt("RANG",45936,dat1)
Получить значение расширения с меткой "RANG" по идентификатору записи сотрудника 45936 на dat1: 14
getShtatExt("RANG",93562,dat1,dat2)
Получить значение расширения с меткой "RANG" по последней записи (dat1,dat2) сотрудника с идентификатором 93562: 15

getShtatInfo(<идентификатор>,<режим>)

Получить данные из штатного расписания.
<идентификатор> - идентификатор может задаваться как числом, так и выражением
<режим> - имя поля
"VOPL" - вид оплаты
"OKLAD" - оклад
"AVANS" - аванс
"REASON" - основание
"TABLE" - табл. подоходного налога
"TERM" - испытательный срок
"FEDAT" - дата ликвидации
"PENS" - пенсионер (является - true, нет - false)
"BDAT" - дата назначения
"SHPZ" - ШПЗ
"SEX" - пол (м - true, ж - false)
"INDNUM" - идентификационный код
Пример:
getShtatInfo(44607, "VOPL")
Получить вид оплаты ("VOPL") с идентификатором 44607 (значением FWID): 1000
getShtatInfo("FINDNUM=2651455289", "OKLAD")
Получить оклад ("OKLAD") для индивидуального налогового номера 2651455289 ("FINDNUM"): 45000

getShtatZvanTxt(<идентификатор>)

Возвращает текстовку квалификации/звания записи из штатного расписания. Можно передавать один, два и три параметра:
<идентификатор> - идентификатор записи штатного расписания
<идентификатор>,<дата> - идентификатор записи сотрудника и дата, по которой определяем запись в штатном расписании
<идентификатор>,<дата1>,<дата2> - идентификатор записи сотрудника и две даты, по которым определяем последнюю запись в штатном расписании
Пример:
getShtatZvanTxt(45936)
Получить звание для записи штатного расписания с идентификаторм 45936: "лейтенант"
getShtatZvanTxt(67382,dat1)
Получить звание по идентификатору записи сотрудника 67382 на dat1: "капитан"
getShtatZvanTxt(93562,dat1,dat2)
Получить звание по идентификатору записи сотрудника 93562, которая попадает в период dat1-dat2: "старший лейтенант"

getSumFond(<фонд>,<тип ЛС>, <дата>,<вид оплаты>, <табельный номер>)

Общая сумма базы начислений/удержаний по конкретному фонду, либо % начислений/удержаний
<фонд> - метка фонда
"PF" - пенсионный фонд
"PFI" - пенсионный фонд (инвалиды)
"SS" - фонд социального страхования
"SS1%" - соцстрах 1% (только для базы и % удержаний)
"SS0.5%" - соцстрах 0.5% (только для базы и % удержаний)
"FZ" - фонд занятости
"FZT" - фонд занятости по трудовому соглашению (только для базы и % начислений)
"FNS" - фонд страхования от несчастного случая
<тип> - тип поля лицевого счета
"+" - база начисления
"%+" - процент начисления
"-" - база удержания
"%-" - процент удержания
<дата> - месяц, за который идет расчет
<вид оплаты> - код вида оплаты
1000 - повременщики на окладе
4000 - сдельная З/П
8000 - совместители на окладе
8500 - по трудовым соглашениям
<табельный номер> - ID конкретного табельного номера
Пример:
getSumFond('PF','-%',dat1,0,44596)
Получить сумму удержаний (-%) в пенсионный фонд (PF) за заданный месяц (dat1) по табельному номеру с идентификатором 44596.
getSumFond('FZ','+',dat1,1000)
Получить базу для начисления (+) в фонд занятости (FZ) за заданный месяц (dat1) по всем повременщикам на окладе (код 4000).
getSumFond('SS1%','-%',dat1)
Получить за заданный месяц (dat1) общую сумму удержаний (-%) для всех, у кого размер взноса в фонд социального страхования равен 1% (SS1%).

getSumFondPeriod(<фонд>,<тип ЛС>, <дата1>,<дата2>,<вид оплаты>, <табельный номер>)

Общая сумма базы начислений/удержаний по конкретному фонду, либо % начислений/удержаний за период
<фонд> - метка фонда
"PF" - пенсионный фонд
"PFI" - пенсионный фонд (инвалиды)
"SS" - фонд социального страхования
"SS1%" - соцстрах 1% (только для базы и % удержаний)
"SS0.5%" - соцстрах 0.5% (только для базы и % удержаний)
"FZ" - фонд занятости
"FZT" - фонд занятости по трудовому соглашению (только для базы и % начислений)
"FNS" - фонд страхования от несчастного случая
<тип> - тип поля лицевого счета
"+" - база начисления
"%+" - процент начисления
"-" - база удержания
"%-" - процент удержания
<дата1>,<дата2> - период, за который идет расчет
<вид оплаты> - код вида оплаты
1000 - повременщики на окладе
4000 - сдельная З/П
8000 - совместители на окладе
8500 - по трудовым соглашениям
<табельный номер> - ID конкретного табельного номера
Пример:
getSumFondPeriod('PFI','+',dat1,dat2)
Получить сумму базы начислений (+) только для инвалидов в пенсионный фонд (PFI) за период (dat1,dat2).
getSumFondPeriod('FZ','-%',dat1,dat2,4000)
Получить общую сумму удержаний (-%) в фонд занятости (FZ) за период (dat1,dat2) только для вида оплаты 4000 (сдельная оплата труда).

getSumFot(<тип>,<дата>,<параметр>)

Отбор из лицевых счетов суммы по признаку ЛС "Вхождение в ФОТ"
<тип> может принимать следующие значения:
"-" - не входит
"+" - основн.ЗП
"к" - командировки
"*" - прочая доп.ЗП
"д" - надбавки и доплаты
"п" - систем.премии
"и" - инд.по срокам выпл.
"і" - инд.по ценам
"о" - отпускные
"в" - комп.за отпуск
"н" - поле для гос.обяз.
"#" - проч.поощр.выпл.
"m" - мат.помощь
"c" - инд.соц.льготы
"n" - неотр.время в поощр.выпл.
"б" - явл.полем больн.с/с
"bquot; - явл.полем больн.предпр.
"&" - по берем.,уход за реб.
"т" - поле для труд.согл.
<дата> - дата для расчета
<параметр> - если отсутствует, тогда считается сумма
"d" - считается сумма дней
"c"- считается сумма часов
Пример:
getSumFot('b',dat1)
Получить сумму мат. помощи по временной нетрудоспособности ("b").
getSumFot('SS',dat1,'d')
Получить количество дней ("d") больничного за счет фонда социального страхования.

getSumFotPeriod(<тип>,<дата1>,<дата2>,<параметр>)

Отбор из лицевых счетов суммы по признаку ЛС "Вхождение в ФОТ" за период
<тип> может принимать следующие значения:
"-" - не входит
"+" - основн.ЗП
"к" - командировки
"*" - прочая доп.ЗП
"д" - надбавки и доплаты
"п" - систем.премии
"и" - инд.по срокам выпл.
"і" - инд.по ценам
"о" - отпускные
"в" - комп.за отпуск
"н" - поле для гос.обяз.
"#" - проч.поощр.выпл.
"m" - мат.помощь
"c" - инд.соц.льготы
"n" - неотр.время в поощр.выпл.
"б" - явл.полем больн.с/с
"bquot; - явл.полем больн.предпр.
"&" - по берем.,уход за реб.
"т" - поле для труд.согл.
<дата1>,<дата2> - период для расчета
<параметр> - если отсутствует, тогда считается сумма
"d" - считается сумма дней
"c"- считается сумма часов
Пример:
getSumFotPeriod('b',dat1,dat2)
Получить сумму мат. помощи по временной нетрудоспособности ("b").
getSumFotPeriod('SS',dat1,dat2,'d')
Получить количество дней ("d") больничного за счет фонда социального страхования.

getSumPodNalByID(<идентификатор>,<дата1>,<дата2>)

Сумма подоходного налога по человеку.
<идентификатор> - идентификатор табельного номера
<дата1> - месяц, за который идет расчет
<дата2> - если нужна сумма за период, тогда третим параметром передаем дату окончания периода
Пример:
getSumPodNalByID(54192,dat1)
Получить сумму подоходного налога за месяц (dat1) для табельного номера с идентификатором 54192: 150.45
getSumPodNalByID(54192,dat1,dat2)
Получить сумму подоходного налога за период (dat1,dat2) для табельного номера с идентификатором 54192: 467.31

getVislProc(<дата>,<дата выслуги>,<справочник>)

Расчитать процент выслуги на дату по дате для выслуги из справочника аналитики.
<дата> - дата для расчета
<дата выслуги> - дата для выслуги
<дата2> - справочник аналитики
Пример:
getVislProc(dat1,dat2,22)
Получить процент выслуги на dat1 по дате для выслуги dat2 из 22 справочника: 20

getWorkDays(<календарь>,<дата1>,<дата2>)

Количество рабочих дней из календаря за указанный период.
<календарь> - номер календаря
<дата1> - начальная дата
<дата2> - конечная дата
Пример:
getWorkDays(1,dat1,dat2)
Получить количество рабочих дней за период (dat1,dat2) по календарю с номером 1: 19.

getWorkHours(<календарь>,<дата1>,<дата2>)

Количество рабочих дней в часах из календаря за указанный период.
<календарь> - номер календаря
<дата1> - начальная дата
<дата2> - конечная дата
Пример:
getWorkHours(1,dat1,dat2)
Получить количество рабочих часов за период (dat1,dat2) по календарю с номером 1: 24.

Podox_nal(<сумма>)

Расчёт подоходного налога
Пример:
Podox_nal(400)
Получить подоходний налог (15%) от 400: 65.55.

post_nal(<сумма>,<дата>)

Получить сумму почтового сбора на указанную дату согласно справочника "Почтовый сбор для алиментов".
Пример:
post_nal(1100,dat1)
Получить сумму почтового сбора для базовой суммы 1100 грн. на dat1: 13.2 грн.

svlcount(<дата>,<поле ЛС>)

Количество табельных номеров по заданному полю лицевого счета.
<дата> - есть два варианта вызова функции:
<дата1> - количество за месяц из <дата1>
<дата1>,<дата2> - количество за месяцы в периоде с <дата1> по <дата2>
<поле ЛС> - код поля лицевого счета
Пример:
svlcount(dat1,dat2,2)
Получить количество по полю ЛС "Оклад" (код поля 2) за месяцы в периоде с dat1 по dat2.

svls(<дата>,<поле ЛС>)

Общая сумма по заданному полю лицевого счета
<дата> - есть два варианта вызова функции:
<дата1> - считается сумма за месяц из <дата1>
<дата1>,<дата2> - считается сумма за месяцы в периоде с <дата1> по <дата2>
<поле ЛС> - код поля лицевого счета
Пример:
svls(dat1,dat2,2)
Получить сумму по полю ЛС "Оклад" (код поля 2) за месяцы в периоде с dat1 по dat2.


Смотри также:

Формы печати

Выражения и оператор присваивания

Константы

Функции для работы с датами