Добрый день, не силен, в зуп, но тут срочная задачка прилетела по зуп кто знает как получить запросом, или стандартной функцией, людей которые должны выйти на работу сегодня?

1. Romyl01 38 18.04.22 18:35 Сейчас в теме
Добрый день, не силен, в зуп, но тут срочная задачка прилетела по зуп кто знает как получить запросом, или стандартной функцией, людей которые должны выйти на работу сегодня?
Вознаграждение за ответ
Показать полностью
Найденные решения
9. laperuz 46 19.04.22 08:20 Сейчас в теме +1 $m
(8)Да, замороченно через отчёт. Возьмите лучше из модуля менеджера документа табель функцию ВыборкаДанныхОВремени либо ТаблицаДанныхДляЗаполнения. И не нужно париться с СКД
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. VID1234 139 18.04.22 18:41 Сейчас в теме
Здравствуйте. Странная формулировка, но все же:
КадровыйУчет.ФизическиеЛицаРаботавшиеВОрганизации(Истина,,ДатаНачала,ДатаКонца)
3. Romyl01 38 18.04.22 19:02 Сейчас в теме
(2) немного не то мне нужны именно те люди которые по графику должны выйти в данный день. А тут все которые числятся сотрудниками.
4. Romyl01 38 18.04.22 21:33 Сейчас в теме
счас поковырял надо походу запросец писать с соединением 4 регистров, неужели нет ничего простого типового?
5. ishelper 18.04.22 22:10 Сейчас в теме
(4)
неужели нет ничего простого типового?
А что в таком случае вообще может быть "типового"? Надо анализировать: графики работы, отпуска, больничные, БиР, командировки, замены... и, может, еще что?
7. Romyl01 38 19.04.22 06:18 Сейчас в теме
(5) так вот же кажется что задача не простая, по идее должна быть стандартнами средствами, так как вещь нужная и популярная, а вот нет.
6. akitayev 4 18.04.22 23:37 Сейчас в теме
(4)Напрашивается решение через табель - отчет УнифицированнаяФормаТ13.
Копируем этот отчет во внешний.
В модуле объекта этого отчета - процедура ВывестиМакет - в этой процедуре переписываем выборку из дерева значений ДанныеОВремени.
Или выводим эти данные в свой макет, или помещаем в таблицу значений, а уже таблицу значений можно добавить в параметры своего запроса.
Решал таким образом расчет средней численности не стандартным образом, а по данным табеля. Как-то так:
	Для Каждого ДанныеПоОрганизации Из ДанныеОВремени.Строки Цикл
		Для Каждого ДанныеПоСотруднику Из ДанныеПоОрганизации.Строки Цикл
			Для Каждого ДанныеОВремениНаДату Из ДанныеПоСотруднику.Строки Цикл 
				ДниОтработаноНаДатуУчтено=ДанныеОВремениНаДату.РабочиеДни;
				
				Для Каждого ДетальныеЗаписиЗаДень Из ДанныеОВремениНаДату.Строки Цикл
					
					Если ДетальныеЗаписиЗаДень.ВидУчетаВремениБуквенныйКод="--" Тогда
					ИначеЕсли ДетальныеЗаписиЗаДень.ВидУчетаВремениБуквенныйКод="НЧ" Тогда //Ночные 
					Иначе
					....
Показать
8. Romyl01 38 19.04.22 06:20 Сейчас в теме
(6) как то слишком заморочено мне кажется, но попробую покопать.
9. laperuz 46 19.04.22 08:20 Сейчас в теме +1 $m
(8)Да, замороченно через отчёт. Возьмите лучше из модуля менеджера документа табель функцию ВыборкаДанныхОВремени либо ТаблицаДанныхДляЗаполнения. И не нужно париться с СКД
10. Romyl01 38 20.04.22 06:21 Сейчас в теме
(9)
ВыборкаДанныхОВремени
вроде то что вы дали то, что нужно как все проверю отпишусь, помечу как решение.
15. Romyl01 38 29.04.22 06:03 Сейчас в теме
(9) спасибо помогло, но допиливать пришлось.
11. ~Ponk@~ 13 20.04.22 14:35 Сейчас в теме
https://infostart.ru/1c/articles/942569/ - вот тут на любую задачу найдутся типовые процедуры и функции, можно получить данные графиков и по дате отбор сделать
12. Romyl01 38 20.04.22 15:04 Сейчас в теме
(11) ну как бы не подошло уже смотрел эту тему, там событие явки не показывает.
13. Vladimir-R 168 20.04.22 16:01 Сейчас в теме
&НаСервере
Процедура Команда1НаСервере()
	ПараметрыПолученияДанных = УчетРабочегоВремениРасширенный.ПараметрыПолученияДанныхУчетаВремени();
	ДатаНачала = '20181001';
	ДатаОкончания = КонецМесяца(ДатаНачала);
	ПараметрыПолученияДанных.ДатаНачала = ДатаНачала;
	ПараметрыПолученияДанных.ДатаОкончания = ДатаОкончания;
	
	МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
	МассивСотрудников = Новый Массив;
	МассивСотрудников.Добавить(Справочники.Сотрудники.НайтиПоНаименованию("Иванов Иван Иванович"));
	СоздатьВТСотрудники(МенеджерВременныхТаблиц, МассивСотрудников, ДатаНачала);
	УчетРабочегоВремениРасширенный.СоздатьВТДанныеУчетаРабочегоВремениСотрудников(МенеджерВременныхТаблиц, Истина, ПараметрыПолученияДанных);
	ТЗ = МенеджерВременныхТаблиц.Таблицы.Найти("ВТДанныеУчетаРабочегоВремениСотрудников").ПолучитьДанные().Выгрузить()
КонецПроцедуры

&НаКлиенте
Процедура Команда1(Команда)
	Команда1НаСервере();
КонецПроцедуры

&НаСервереБезКонтекста
Процедура СоздатьВТСотрудники(МенеджерВременныхТаблиц, МассивСотрудников, Месяц, ДатаАктуальности = Неопределено, ДатаНачала = Неопределено, ДатаОкончания = Неопределено)
	ТаблицаСотрудники = Новый ТаблицаЗначений;
	ТаблицаСотрудники.Колонки.Добавить("Сотрудник", Новый ОписаниеТипов("СправочникСсылка.Сотрудники"));
	ТаблицаСотрудники.Колонки.Добавить("Месяц", Новый ОписаниеТипов("Дата"));
	ТаблицаСотрудники.Колонки.Добавить("ДатаАктуальности", Новый ОписаниеТипов("Дата"));
	ТаблицаСотрудники.Колонки.Добавить("ДатаНачала", Новый ОписаниеТипов("Дата"));
	ТаблицаСотрудники.Колонки.Добавить("ДатаОкончания", Новый ОписаниеТипов("Дата"));	
	
	Для Каждого Сотрудник Из МассивСотрудников Цикл
		СтрокаСотрудники = ТаблицаСотрудники.Добавить();
		СтрокаСотрудники.Сотрудник = Сотрудник;
	КонецЦикла;
	
	ТаблицаСотрудники.ЗаполнитьЗначения(Месяц, "Месяц");
	ТаблицаСотрудники.ЗаполнитьЗначения(?(ДатаАктуальности = Неопределено, ТекущаяДата(), ДатаАктуальности), "ДатаАктуальности");
	ТаблицаСотрудники.ЗаполнитьЗначения(?(ДатаНачала = Неопределено, Месяц, ДатаНачала), "ДатаНачала");
	ТаблицаСотрудники.ЗаполнитьЗначения(?(ДатаОкончания = Неопределено, КонецМесяца(Месяц), ДатаОкончания), "ДатаОкончания");
	
	Запрос = Новый Запрос(
	"ВЫБРАТЬ
	|	ТаблицаСотрудники.Сотрудник,
	|	ТаблицаСотрудники.Месяц,
	|	ТаблицаСотрудники.ДатаАктуальности,		
	|	ТаблицаСотрудники.ДатаНачала,
	|	ТаблицаСотрудники.ДатаОкончания
	|ПОМЕСТИТЬ ВТСотрудники
	|ИЗ
	|	&ТаблицаСотрудники КАК ТаблицаСотрудники");
	
	Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
	Запрос.УстановитьПараметр("ТаблицаСотрудники", ТаблицаСотрудники);
	Запрос.Выполнить();
КонецПроцедуры
Показать

наверное смотреть по аналогии
14. Romyl01 38 20.04.22 17:41 Сейчас в теме
(13) я уже сделал через ВыборкаДанныхОВремени , с небольшими нюансами по совету выше который был. Жду как примут работу если замечаний не будет, отдам стартмани первому давшему совет.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот