Добрый день! Как правильно задать условие в запросе отчета, чтобы выводилось то что нужно (функция ВЫБОР)?
ВЫБРАТЬ
ОсновныеНачисленияДанныеГрафика.Сотрудник КАК Сотрудник,
ОсновныеНачисленияДанныеГрафика.Результат КАК Сумма,
ОсновныеНачисленияДанныеГрафика.ВидРасчета КАК ВидРасчета,
ВЫБОР
КОГДА ОсновныеНачисленияДанныеГрафика.ВидРасчета = "Отпуск"
ТОГДА ОсновныеНачисленияДанныеГрафика.КалендарныеДниФактическийПериодДействия
ИНАЧЕ ОсновныеНачисленияДанныеГрафика.ЗначениеДниФактическийПериодДействия
КОНЕЦ КАК Дни
ИЗ
РегистрРасчета.ОсновныеНачисления.ДанныеГрафика(ПериодДействия = &ПериодДействия) КАК ОсновныеНачисленияДанныеГрафика
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
ДополнительныеНачисления.Сотрудник,
ДополнительныеНачисления.Результат,
ДополнительныеНачисления.ВидРасчета,
NULL
ИЗ
РегистрРасчета.ДополнительныеНачисления КАК ДополнительныеНачисления
ГДЕ
ДополнительныеНачисления.ПериодРегистрации = &ПериодДействия
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
Удержания.Сотрудник,
Удержания.Результат,
Удержания.ВидРасчета,
NULL
ИЗ
РегистрРасчета.Удержания КАК Удержания
ГДЕ
Удержания.БазовыйПериодНачало = &ПериодДействия
ПоказатьПо теме из базы знаний
- Загрузка документов из Excel в 1С: УПД, ТОРГ-12, отчеты маркетплейсов, заказы, счета, прайсы
- Управляемая консоль запросов, отчетов 3.9.0 (расширение, внешняя обработка)
- Консоль запросов для управляемых форм 8.3
- Совместимая консоль запросов для платформы 8.2 и 8.3 (с версии 3.0 SE для всех платформ семейства 8.x, включая версию 8.5)
- Статический анализатор кода проектов 1C (EPF, ERF, CF, CFE)
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(8) Предложенный мною первый вариант считаю плохим по двум причинам:
- добавляется лишнее соединение, так как идет дальнейшее обращение к реквизиту через точку;
- Сравнивать Строку вместо ссылки работает куда медленнее;
- ВидРасчета могут переименовать например в "Основной отпуск" и тогда очет опять начнет работать не правильно.
- добавляется лишнее соединение, так как идет дальнейшее обращение к реквизиту через точку;
- Сравнивать Строку вместо ссылки работает куда медленнее;
- ВидРасчета могут переименовать например в "Основной отпуск" и тогда очет опять начнет работать не правильно.
(13)
1.в лишнем соединение нет ничего плохого, если оно оправдано. По крайней мере оно лучше отдельного запроса в виде ПланыВидовРасчета.Начисления.НайтиПоНаименованию("Отпуск")
2. нет, если значения индексированы
3. в таком случае, вид расчета необходимо выводить на форму для выполнения выбора пользователем.
1.в лишнем соединение нет ничего плохого, если оно оправдано. По крайней мере оно лучше отдельного запроса в виде ПланыВидовРасчета.Начисления.НайтиПоНаименованию("Отпуск")
2. нет, если значения индексированы
3. в таком случае, вид расчета необходимо выводить на форму для выполнения выбора пользователем.
(5) Нужно предавать в параметр тот же тип данных, т.е. ВидРасчета.
Скорее всего Запрос.Установитьпараметр("Отпуск", ПланыВидовРасчета.Начисления.НайтиПоНаименованию("Отпуск")) - (могу ошибиться в синтаксисе, так как нет нужной конфигурации под рукой).
А получить Ссылку на ВидРасчета имеет множество вариантов:
ПланыВидовРасчета.Начисления.НайтиПоНаименованию
ПланыВидовРасчета.Начисления.НайтиПоКоду
ПланыВидовРасчета.Начисления.ПолучитьСсылку
и.т.д.
Скорее всего Запрос.Установитьпараметр("Отпуск", ПланыВидовРасчета.Начисления.НайтиПоНаименованию("Отпуск")) - (могу ошибиться в синтаксисе, так как нет нужной конфигурации под рукой).
А получить Ссылку на ВидРасчета имеет множество вариантов:
ПланыВидовРасчета.Начисления.НайтиПоНаименованию
ПланыВидовРасчета.Начисления.НайтиПоКоду
ПланыВидовРасчета.Начисления.ПолучитьСсылку
и.т.д.
(12)не важно где работает запрос, важно понимать, как вы будете определять нужный(-е) вам вид(-ы) расчета.
Хороший вариант с предопределенным значением, но если оно не предопределено, то назвать его могут как угодно и отчет перестанет работать(будет пустым) в другой базе(читай в других условиях выполнения).
Хороший вариант с предопределенным значением, но если оно не предопределено, то назвать его могут как угодно и отчет перестанет работать(будет пустым) в другой базе(читай в других условиях выполнения).
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот