Страница 1 из 2

Рабочие периоды отпусков

Добавлено: 26 янв 2015, 17:03
smmmmm
Добрый день.
Учёт времени -> отпуска -> справочник рабочих периодов: тут лежит информация о периодах, насчитанных за эти периоды отпусках и остатки по отпускам. Откуда можно вытащить эту инфу - даты периодов и соотв. им остатки отпусков.

Re: Рабочие периоды отпусков

Добавлено: 26 янв 2015, 18:30
Irina_
Здравствуйте. Судя по всему, вы работаете на 9. Рабочие периоды – табл.Workperiod. Полагающиеся отпуска – табл. Persvacation (если Вы все полагающиеся отпуска вводите в карточке сотрудника, а не по ШР).

Re: Рабочие периоды отпусков

Добавлено: 26 янв 2015, 18:39
smmmmm
Irina_ писал(а):Здравствуйте. Судя по всему, вы работаете на 9. Рабочие периоды – табл.Workperiod. Полагающиеся отпуска – табл. Persvacation (если Вы все полагающиеся отпуска вводите в карточке сотрудника, а не по ШР).
Извиняюсь, но что-то я не вижу среди стандартных таблиц таблицу Workperiod. Persvacation вижу.

Re: Рабочие периоды отпусков

Добавлено: 26 янв 2015, 18:44
smmmmm
Irina_ писал(а):Здравствуйте. Судя по всему, вы работаете на 9. Рабочие периоды – табл.Workperiod. Полагающиеся отпуска – табл. Persvacation (если Вы все полагающиеся отпуска вводите в карточке сотрудника, а не по ШР).
Дайте связь Workperiod с Persons, если не сложно.

Re: Рабочие периоды отпусков

Добавлено: 26 янв 2015, 18:56
Irina_
Workperiod – код таблицы 31002.
Workperiod.Cperson=Persons.Nrec.
Но, учитывая, что отпуска есть по основному назначению и по внутреннему совместительству, то, скорее всего надо брать условие Workperiod.Cappointment = Appointments.Nrec, а в Appointments Person – ссылка на картотеку, а Caddnrec2 – ссылка на лицевой счет.

Re: Рабочие периоды отпусков

Добавлено: 27 янв 2015, 16:57
smmmmm
Irina_ писал(а):Workperiod – код таблицы 31002.
Workperiod.Cperson=Persons.Nrec.
Но, учитывая, что отпуска есть по основному назначению и по внутреннему совместительству, то, скорее всего надо брать условие Workperiod.Cappointment = Appointments.Nrec, а в Appointments Person – ссылка на картотеку, а Caddnrec2 – ссылка на лицевой счет.
С периодами понятно, а вот где лежат остатки отпусков за период не очень.

Re: Рабочие периоды отпусков

Добавлено: 27 янв 2015, 18:14
Irina_
Здравствуйте. Судя по всему, остатки отпусков в чистом виде не хранятся. В Factotpusk лежат данные по рабочему периоду, по которому сформирован отпуск (ссылка Cworkperiod), период, продолжительность и тип фактически предоставляемого отпуска. А далее полет фантазии: или самому пытаться рассчитывать остатки в разрезе рабочего периода и типа отпуска или возможно есть какие-то функции от разработчика для определения остатка в нужном разрезе (если мы видим эти остатки в интерфейсе, значит, разработчики их рассчитывают :-)) ). Самой мне не приходилось искать остатки , хотя необходимость у кадровиков такая была и есть. В 8.10 планирование не велось, поэтому проблематично было искать остатки, а в 9.1 переделали работу с отпусками. Возможно, в будущем придется заняться этим вопросом.

Re: Рабочие периоды отпусков

Добавлено: 28 янв 2015, 10:12
edward_K
getifccurrentfieldname на поле с остатками - мож найду.

Re: Рабочие периоды отпусков

Добавлено: 28 янв 2015, 10:48
RAJAH
Не совсем понятно, о каких остатках идёт речь? Если остаток оценочных обязательств для резерва, то ARXSHTRF.

Re: Рабочие периоды отпусков

Добавлено: 28 янв 2015, 11:12
smmmmm
edward_K писал(а):getifccurrentfieldname на поле с остатками - мож найду.
Добрый день, к сожалению, это поле неактивно, т. е. его ни редактировать, ни getifccurrentfieldname нельзя.

Re: Рабочие периоды отпусков

Добавлено: 28 янв 2015, 11:13
smmmmm
RAJAH писал(а):Не совсем понятно, о каких остатках идёт речь? Если остаток оценочных обязательств для резерва, то ARXSHTRF.
Здравствуйте, остатки - в смысле, сколько дней за данный рабочий период ещё у сотрудника не отгуляно.

Re: Рабочие периоды отпусков

Добавлено: 28 янв 2015, 11:44
Irina_
To edward_K.
Поле «Осталось дней» не доступно для редактирования при обходе. А на соседнем поле «Полагается дней» возвращает
Z_STAFF::IEMPLOYWORKPERIOD.SCRWORKPERIODS.Z_STAFF::WORKPERIODS.BRPUTVACATIONS.PUTVACATION.WDAYCOUNT

To RAJAH.
За каждый рабочий год сотруднику полагаются отпуска – определенный перечень видов отпусков с определенной продолжительностью каждого. Сотрудник может брать не сразу весь отпуск, а разделить на части, может вовремя не сходить в отпуск и могут накапливаться отпуска за предыдущие рабочие периоды, могут быть отзывы из отпуска, за часть или весь полагающийся отпуск может быть предоставлена компенсация за неиспользованный отпуск. Кадровику нужно знать: какие отпуска, какой продолжительности, и за какой рабочий период сотрудник может взять на определенный момент. Это и есть остатки отпусков.
А по поводу понятия «остаток оценочных обязательств для резерва» - мне неизвестно, что это такое. Посмотрела таблицу ARXSHTRF, у нас там вообще нет записей, а по перечню полей это ближе к з/п, к расчету алиментов.

Re: Рабочие периоды отпусков

Добавлено: 28 янв 2015, 12:01
RAJAH
Irina_ писал(а):по поводу понятия «остаток оценочных обязательств для резерва» - мне неизвестно, что это такое.
Посмотрите Заработная плата = Отчёты = Отчёты пользователя = Сервисные функции = Остаток оценочных обязательств на начало года (если, конечно, есть компонент Z_RESERV). Налогоплательщик обязан составить специальный расчет (смету), в котором отражается расчет размера ежемесячных отчислений в указанный резерв, исходя из сведений о предполагаемой годовой сумме расходов на оплату отпусков - ст. 324.1 НК РФ.

Re: Рабочие периоды отпусков

Добавлено: 28 янв 2015, 15:04
edward_K
Здесь считается так

Код: Выделить всё

#include FactVacation.vih    // для расчета остатков отпусков
....
var
  iFV          : iFactVacation New;
.....
    dCur_Date := WorkPeriod.dPerEnd;

  case wParam_Get of

    word(0):
      {
        if ( iFV.funGetDaysHarmVac(PutVacation.nRec, Cur_Date, dTmp) )
          result := word(dTmp);
        else
          result := word(if ((PutVacation.wProvidWay <> '1'),
                           iFV.funGetBalanceVac(PutVacation.NRec,0,date(0,0,0)),
                           iFV.funGetDayProportionCur(WorkPeriod.dPerBeg, if (funPeriodPosition = word(1),
                                                                             dCur_Date,
                                                                             if (funPeriodPosition = word(0),
                                                                               WorkPeriod.dPerEnd,
                                                                               Date(0,0,0))),
                                                                               PutVacation.NRec, 0 )));
Найдите FactVacation.vih в архивах в папке Frm(брать нужное наиболее свежую версию)
По поводу того, что поле не открыто - всегда же есть конфигуратор? из которого
1. Можно в дополнение к getifccurrentfieldname вытащить название поля
2. Или снять атрибут skip

Re: Рабочие периоды отпусков

Добавлено: 28 янв 2015, 17:12
Irina_
Edward_K, большое спасибо за информацию.

To RAJAH.
Вы привели выдержку из НК РФ. Я не владею информацией, есть ли что-то подобное в РБ. Еще посмотрела по документации (StaffOtpusk.pdf): по оценочным обязательствам написано всего 6 строчек, причем эти обязательства формируются на основе рассчитанного плана-графика отпусков. Но ведь не все организации используют планирование отпусков. Указанный Вами отчет пользователя доступен, пробовала запускать и расчет оценочных обязательств и просмотр остатков, но ничего нормального не получила. Думаю, что для правильного формирования этих отчетов должны быть выполнены определенные требования.