J
Jilia
Здравствуйте!Подскажите, пожалуйста....
В отчет по тарификации сотрудников в "ЗиК 8.1 бюджет" все время попадают уволенные сотрудники. Как убрать это попадание туда?
Пробовала отчет привязать к регистру сведений РаботникиОрганизации.СрезПоследних. Но тем не менее, хоть сотрудников,их должность и подразделение, берутся оттуда,ситуация не меняется. Туда также попадают уволенные. Когда смотрю этот регистр через пользовательский режим, то графы "Действует по" и "Подразделение по окончанию" и "Должность по окончанию" пустые у уволенных и у работающих. Хотя если щелкаю по уволенному,то вижу документ увольнения. Что не так с этим регистром,что отчет продолжает брать всех сотрудников?
Еще пробовала брать из "занятых штатных единиц организации". Тоже не берет.Ругается,что не может найти поле "Сотрудник". Пробовала по полю "ФизЛицо" - отчет пуст...Что я не так делаю в данном случае?Делаю с помощью СКД...
Вот код отчета до экспериментов с регистрами.Подскажите, кто может,как его изменить по минимуму, чтобы были сотрудники на текущую дату. Код создан автоматически СКД, кроме вычисляемых полей с суммами и датами.
В отчет по тарификации сотрудников в "ЗиК 8.1 бюджет" все время попадают уволенные сотрудники. Как убрать это попадание туда?
Пробовала отчет привязать к регистру сведений РаботникиОрганизации.СрезПоследних. Но тем не менее, хоть сотрудников,их должность и подразделение, берутся оттуда,ситуация не меняется. Туда также попадают уволенные. Когда смотрю этот регистр через пользовательский режим, то графы "Действует по" и "Подразделение по окончанию" и "Должность по окончанию" пустые у уволенных и у работающих. Хотя если щелкаю по уволенному,то вижу документ увольнения. Что не так с этим регистром,что отчет продолжает брать всех сотрудников?
Еще пробовала брать из "занятых штатных единиц организации". Тоже не берет.Ругается,что не может найти поле "Сотрудник". Пробовала по полю "ФизЛицо" - отчет пуст...Что я не так делаю в данном случае?Делаю с помощью СКД...
Вот код отчета до экспериментов с регистрами.Подскажите, кто может,как его изменить по минимуму, чтобы были сотрудники на текущую дату. Код создан автоматически СКД, кроме вычисляемых полей с суммами и датами.
Код:
ВЫБРАТЬ
СотрудникиОрганизаций.Ссылка,
СотрудникиОрганизаций.Физлицо,
СотрудникиОрганизаций.ЗанимаемыхСтавок,
СотрудникиОрганизаций.ТарифнаяСтавка,
СотрудникиОрганизаций.ТекущееПодразделениеОрганизации,
СотрудникиОрганизаций.ТекущаяДолжностьОрганизации,
Аттестации.Категория,
Аттестации.ДатаПоследнейАттестации,
Аттестации.ДатаСледующейАттестации,
СотрудникиОрганизаций.ТарифнаяСтавка * СотрудникиОрганизаций.ЗанимаемыхСтавок КАК ИтогоМесячныйОклад,
Аттестации.ПовышениеЗаВредность,
Аттестации.НадбавкаЗаНеприрывность,
СотрудникиОрганизаций.ТарифнаяСтавка * СотрудникиОрганизаций.ЗанимаемыхСтавок * Аттестации.НадбавкаЗаНеприрывность / 100 КАК Поле2,
СотрудникиОрганизаций.ТарифнаяСтавка * СотрудникиОрганизаций.ЗанимаемыхСтавок * Аттестации.ПовышениеЗаВредность / 100 КАК Поле1,
СотрудникиОрганизаций.ТарифнаяСтавка * СотрудникиОрганизаций.ЗанимаемыхСтавок + СотрудникиОрганизаций.ТарифнаяСтавка * СотрудникиОрганизаций.ЗанимаемыхСтавок * Аттестации.ПовышениеЗаВредность / 100 + СотрудникиОрганизаций.ТарифнаяСтавка * СотрудникиОрганизаций.ЗанимаемыхСтавок * Аттестации.НадбавкаЗаНеприрывность / 100 КАК Поле3,
СотрудникиОрганизаций.ТарифнаяСтавка * СотрудникиОрганизаций.ЗанимаемыхСтавок + СотрудникиОрганизаций.ТарифнаяСтавка * СотрудникиОрганизаций.ЗанимаемыхСтавок * Аттестации.ПовышениеЗаВредность / 100 КАК Поле4,
ФизическиеЛицаСтажи.ДатаОтсчета,
ФизическиеЛицаСтажи.ВидСтажа,
ВЫБОР
КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА ДЕНЬ(КОНЕЦПЕРИОДА(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), МЕСЯЦ)) - ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней)) + ДЕНЬ(&Период)
КОГДА ДЕНЬ(&Период) > ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА ДЕНЬ(&Период) - ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ИНАЧЕ 0
КОНЕЦ КАК СтажДней,
ВЫБОР
КОГДА ВЫБОР
КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ)
КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ) - 1
КОНЕЦ / 12 < (ВЫРАЗИТЬ(ВЫБОР
КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ)
КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ) - 1
КОНЕЦ / 12 КАК ЧИСЛО(7, 0)))
ТОГДА (ВЫРАЗИТЬ(ВЫБОР
КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ)
КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ) - 1
КОНЕЦ / 12 КАК ЧИСЛО(7, 0))) - 1
ИНАЧЕ ВЫРАЗИТЬ(ВЫБОР
КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ)
КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ) - 1
КОНЕЦ / 12 КАК ЧИСЛО(7, 0))
КОНЕЦ КАК СтажЛет,
ВЫБОР
КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ)
КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ) - 1
КОНЕЦ - ВЫБОР
КОГДА ВЫБОР
КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ)
КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ) - 1
КОНЕЦ / 12 < (ВЫРАЗИТЬ(ВЫБОР
КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ)
КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ) - 1
КОНЕЦ / 12 КАК ЧИСЛО(7, 0)))
ТОГДА (ВЫРАЗИТЬ(ВЫБОР
КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ)
КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ) - 1
КОНЕЦ / 12 КАК ЧИСЛО(7, 0))) - 1
ИНАЧЕ ВЫРАЗИТЬ(ВЫБОР
КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ)
КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней))
ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(ФизическиеЛицаСтажи.ДатаОтсчета, МЕСЯЦ, -ФизическиеЛицаСтажи.РазмерМесяцев), ДЕНЬ, -ФизическиеЛицаСтажи.РазмерДней), &Период, МЕСЯЦ) - 1
КОНЕЦ / 12 КАК ЧИСЛО(7, 0))
КОНЕЦ * 12 КАК СтажМесяцев
ИЗ
Документ.Аттестации КАК Аттестации
ПОЛНОЕ СОЕДИНЕНИЕ Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций
ПОЛНОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица КАК ФизическиеЛица
ПОЛНОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица.Стажи КАК ФизическиеЛицаСтажи
ПО ФизическиеЛица.Ссылка = ФизическиеЛицаСтажи.Ссылка
ПО СотрудникиОрганизаций.Физлицо = ФизическиеЛица.Ссылка
ПО Аттестации.Сотрудник = СотрудникиОрганизаций.Ссылка