Дата увольнения в приказе на увольнение.

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
Irina_
Местный житель
Сообщения: 555
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Дата увольнения в приказе на увольнение.

Сообщение Irina_ »

Здравствуйте.
Пишу отчет, в котором работаю в частности с приказами на увольнение, как по основному назначению, так и по внутреннему совместительству. Причем увольнение может быть после случаев повторного трудоустройства на тот же тн по любому виду назначения в течение небольшого периода времени.Нужна дата увольнения сотрудника из приказа (не дата приказа, т.к дата приказа на увольнение и дата увольнения могут не совпадать.). Эта дата вводится в интерфейсе ввода приказа на увольнение. Не получается найти ее. Getifccurrentfieldname возвращает
'Z_STAFFORDERS::ORDERSLIST.WHATISINORDER.MDF.Z_STAFFORDERS::CONTAINEROFORDERS.MDF.Z_STAFFORDERS::RPD_8.SCRDOC.VDISDATE'
Откуда можно вытащить нужную дату?
m0p3e
Местный житель
Сообщения: 1386
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва

Re: Дата увольнения в приказе на увольнение.

Сообщение m0p3e »

if (ContDoc.wAttrDoc2 = 0, Persons.DisDatePr, ContDoc.dat1), // VDisDate
Irina_
Местный житель
Сообщения: 555
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Re: Дата увольнения в приказе на увольнение.

Сообщение Irina_ »

Спасибо, m0p3e.
Т.е., если я правильно поняла, то:
- если основное назначение, берем из карточки
- если внутреннее совмещение, то из содержания приказа.
Тогда логично возникает вопрос по поводу повторных трудоустройств по основному назначению. Если сотрудник несколько раз увольнялся и принимался на ту же карточку, то в Persons.DisdatePr будет, скорее всего, дата последнего факта увольнения. А даты предыдущих увольнений? Вопрос актуален, если повторные трудоустройства и увольнения (особенно увольнения) попадают на один год. Думаю, тогда по некоторым приказам получим не ту дату, что была реально.
m0p3e
Местный житель
Сообщения: 1386
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва

Re: Дата увольнения в приказе на увольнение.

Сообщение m0p3e »

Если повторное трудоустройство, то по приказам надо идти.
приказ на увольнение -> приказ на прием
ContDoc.Persons == ContDoc1.persons and 1 == ContDoc1.TypeOper
приказ на прием -> предыдущая карточка
ContDoc1.cNew1 == Persons1.nrec

ContDoc1.wDopAttr = 3 // признак повторного приема
Irina_
Местный житель
Сообщения: 555
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Re: Дата увольнения в приказе на увольнение.

Сообщение Irina_ »

А если повторное трудоустройство на ту же карточку? В одной карточке ведь не могут храниться в одном поле несколько дат увольнений.
m0p3e
Местный житель
Сообщения: 1386
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва

Re: Дата увольнения в приказе на увольнение.

Сообщение m0p3e »

Лицевой счет можно использовать повторно, но карточка всегда новая. В моей версии по крайней мере. :)
Irina_
Местный житель
Сообщения: 555
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Re: Дата увольнения в приказе на увольнение.

Сообщение Irina_ »

Разработчики дали пользователям на выбор несколько вариантов трудоустройств. Возможно, Вы сами определили, что при повторном трудоустройстве по основному назначению каждый раз создавать новую карточку, но использовать тот же л/сч. Но то, что мы хотим из соображений удобства для нас, не значит, что пользователь будет делать именно так. По разным причинам, начиная с того как ему надо в конкретной ситуации и кончая незнанием.
Я на практике сталкивалась, когда повторное трудоустройство было на ту же карточку и л/сч. Поэтому и возникли вопросы. Скорее всего, в этом случае надо просматривать еще историю увольнений (Movelsc).
m0p3e
Местный житель
Сообщения: 1386
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва

Re: Дата увольнения в приказе на увольнение.

Сообщение m0p3e »

movelsc это зарплатная таблица. И в ней фиксируется история по лицевому счету.
Какой вид приема в приказе выбираете для повторного использования старой карточки.
Irina_
Местный житель
Сообщения: 555
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Re: Дата увольнения в приказе на увольнение.

Сообщение Irina_ »

Здравствуйте. Возвращаюсь к поднятой теме.
m0p3e, Вы писали:
if (ContDoc.wAttrDoc2 = 0, Persons.DisDatePr, ContDoc.dat1), // VDisDate
После проведенных экспериментов скажу, что это правильно, если не используется вариант повторного трудоустройства на ту же карточку и л/сч.
Я нашла подопытного, у которого было 3 трудоустройства по основному назначению, 2 из которых повторные с вариантом «те же карточка и л/сч». Сотрудник сейчас уволен. В Persons.DisDatePr стоит дата последнего увольнения.
А дату для любого увольнения по основному назначению нашла в Infpsn1.DBeg по условию Contdoc.Cstr == Infpsn1.Cpers and comp(9) == InfPsn1.Cref2.
Для увольнения по внутреннему совместительству дата увольнения действительно в Contdoc.Dat1.
А вообще думаю, что можно было найти проще по Сontdoc.Cstr == Appointments.Nrec -> Appointments.Dismissdate.
Irina_
Местный житель
Сообщения: 555
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Re: Дата увольнения в приказе на увольнение.

Сообщение Irina_ »

Здравствуйте. Читала текстовики к последним патчам. Нашла следующую инфо по теме. Может кому-то понадобится.
В Z_Lschet_res_911150 :
* ПРОБЛЕМА В ПИР: 102.146986
* ПЕРВОЕ РЕШЕНИЕ: NEW
* КРАТКОЕ ОПИСАНИЕ: Избавиться от использования InfPsn1 в приказе на увольнение
* ПРОЕКТ: Управление персоналом
* ДЕТАЛИЗАЦИЯ: 8. Увольнение
# ЧТО ИЗМЕНЕНО: Нужно избавиться от использования таблицы InfPsn1 в приказе на
увольнение. Для этого нужно добавить поля для хранения номера, даты
постановления и даты увольнения в таблицу Appointments.
# КАК ИЗМЕНЕНО: В таблице Appointments добавлены новые поля:
sResolutionNmb : tNoDoc "номер постановления"
dResolutionDate : Date "дата постановления"
dOrderDisDate : Date "дата увольнения из приказа"
Данные об увольнении перенесены из InfPsn1 в Appointments.

После установки патчей надо будет поправить в своем отчете ))
Ответить