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