Группа: Пользователи
Сообщений: 177
Спасибо сказали: 1 раз
Рейтинг: 1
Сформировал через конструктор простой запрос для выборки по сотрудникам по дате начала работы. Ничего не менял. Результат запроса: Сидоров 01.02.2021 Петров 02.02.2021 и т.д. по дням... Код работает, но если несколько сотрудников начали работу в один день то в результате запроса на один день мы видим только одного сотрудника.
//******************************************* // Процедура генерации запроса Сформировать. // Процедура Сформировать() Перем Запрос, ТекстЗапроса, Таб; //Создание объекта типа Запрос Запрос = СоздатьОбъект("Запрос"); ТекстЗапроса = "//{{ЗАПРОС(Сформировать) |Период с ВыбНачПериода по ВыбКонПериода; |ДатаПрийн = Справочник.Сотрудники.ДатаПрийн; |Условие(ДатаПрийн>ВыбНачПериода); |Условие(ДатаПрийн<ВыбКонПериода); |"//}}ЗАПРОС ; // Если ошибка в запросе, то выход из процедуры Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда Возврат; КонецЕсли;
// Подготовка к заполнению выходных форм данными запроса Таб = СоздатьОбъект("Таблица"); Таб.ИсходнаяТаблица("Сформировать"); // Заполнение полей "Заголовок" Таб.ВывестиСекцию("Заголовок"); Состояние("Заполнение выходной таблицы..."); Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0); Пока Запрос.Группировка() = 1 Цикл // Заполнение полей Сформировать Таб.ВывестиСекцию("Сформировать"); КонецЦикла; // Вывод заполненной формы Таб.ТолькоПросмотр(1); Таб.Показать("Сформировать", ""); КонецПроцедуры
Группа: Местный
Сообщений: 432
Из: Украина
Спасибо сказали: 138 раз
Рейтинг: 139.5
4andriy @ Вчера, 23:58
, Добрый день! Группировку по сотруднику в запрос добавьте. У вас получается группируется по дате приема,а сотрудник нет. Запрос нашел одного и все и идёт на следующую дату
Группа: Пользователи
Сообщений: 177
Спасибо сказали: 1 раз
Рейтинг: 1
denis84 @ Сегодня, 6:35
,
//******************************************* // Процедура генерации запроса Сформировать. // Процедура Сформировать() Перем Запрос, ТекстЗапроса, Таб; //Создание объекта типа Запрос Запрос = СоздатьОбъект("Запрос"); ТекстЗапроса = "//{{ЗАПРОС(Сформировать) |Период с ВыбНачПериода по ВыбКонПериода; |ДатаПрийн = Справочник.Сотрудники.ДатаПрийн; |ИНН = Справочник.Сотрудники.ИНН; |Фам = Справочник.Сотрудники.Фам; |Условие(ДатаПрийн>ВыбНачПериода); |Условие(ДатаПрийн<ВыбКонПериода); //|Группировка ДатаПрийн; |Группировка ИНН; //|Группировка Фам; |"//}}ЗАПРОС ; // Если ошибка в запросе, то выход из процедуры Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда Возврат; КонецЕсли;
// Подготовка к заполнению выходных форм данными запроса Таб = СоздатьОбъект("Таблица"); Таб.ИсходнаяТаблица("Сформировать"); // Заполнение полей "Заголовок" Таб.ВывестиСекцию("Заголовок"); Состояние("Заполнение выходной таблицы..."); Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0); Пока Запрос.Группировка() = 1 Цикл // Заполнение полей Сформировать Таб.ВывестиСекцию("Сформировать"); КонецЦикла; // Вывод заполненной формы Таб.ТолькоПросмотр(1); Таб.Показать("Сформировать", ""); КонецПроцедуры
изменил так, но теперь результат выглядит так: xxxxxx 04.02.19 петров ііііііііііііі 06.02.19 сидоров кккккк 04.02.19 иванов (пустота) 04.02.19 Петров - почему-то подвоилось значение
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!