|
ОШИБКА: Ожидается псевдоним запроса | ☑ | ||
---|---|---|---|---|
0
Dasha2398
17.12.17
✎
09:10
|
Текст ошибки:
Ошибка при выполнении обработчика - 'ОбработкаПроведения' по причине: {ОбщийМодуль.ПроведениеРасчетов.Модуль(37)}: Ошибка при вызове метода контекста (Выполнить) ВыборкаРезультата = Запрос.Выполнить().Выбрать(); по причине: {(5, 17)}: Ожидается псевдоним запроса ИЗ &Регистратор <<?>>И РегистрРасчета.Начисления.ДанныеГрафика(Регистратор = |
|||
1
Dasha2398
17.12.17
✎
09:11
|
Процедура РассчитатьНачисления(НаборЗаписейРегистра, ТребуемыйВидРасчета, СписокСотрудников) Экспорт
Регистратор=НаборЗаписейРегистра.Отбор.Регистратор.Значение; // Рассчитать первичные записи Если ТребуемыйВидРасчета = ПланыВидовРасчета.ОсновныеНачисления.Оклад Тогда Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | НачисленияДанныеГрафика.ЗначениеПериодДействия КАК Норма, |НачисленияДанныеГрафика.ЗначениеФактическийПериодДействия КАК Факт, | НачисленияДанныеГрафика.НомерСтроки КАК НомерСтроки |ИЗ &Регистратор И РегистрРасчета.Начисления.ДанныеГрафика(Регистратор = | ВидРасчета = &ВидРасчета И | Сотрудник В (&СписокСотрудников)) | КАК НачисленияДанныеГрафика"; Запрос.УстановитьПараметр("Регистратор", Регистратор); Запрос.УстановитьПараметр("ВидРасчета", ТребуемыйВидРасчета); Запрос.УстановитьПараметр("СписокСотрудников", СписокСотрудников); ВыборкаРезультата = Запрос.Выполнить().Выбрать(); Для Каждого ЗаписьРегистра Из НаборЗаписейРегистра Цикл СтруктураНомер = Новый Структура("НомерСтроки"); СтруктураНомер.НомерСтроки = ЗаписьРегистра.НомерСтроки; ВыборкаРезультата.Сбросить(); Если ВыборкаРезультата.НайтиСледующий(СтруктураНомер) Тогда Если ВыборкаРезультата.Норма = 0 Тогда Сообщение = Новый СообщениеПользователю; Сообщение.Текст = "Вид расчета: Оклад – Нет рабочих дней в заданном периоде"; Сообщение.Сообщить(); ЗаписьРегистра.Результат = 0; Иначе // Рассчитать оклад по фактическому периоду и исходным данным ЗаписьРегистра.Результат = (ЗаписьРегистра.ИсходныеДанные /ВыборкаРезультата.Норма) * ВыборкаРезультата.Факт; Сообщение = Новый СообщениеПользователю; Сообщение.Текст = "Выполнен расчет" + ЗаписьРегистра.Регистратор + " – " + ЗаписьРегистра.ВидРасчета + " – " + ЗаписьРегистра.Сотрудник; Сообщение.Сообщить(); КонецЕсли; КонецЕсли; КонецЦикла; // Рассчитать вторичные записи ИначеЕсли ТребуемыйВидРасчета = ПланыВидовРасчета.ОсновныеНачисления.Премия Тогда Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | НачисленияБазаНачисления.РезультатБаза КАК База, | НачисленияБазаНачисления.НомерСтроки КАК НомерСтроки |ИЗ | РегистрРасчета.Начисления.БазаНачисления(&ИзмеренияОсновного, | &ИзмеренияБазового, , Регистратор = &Регистратор И ВидРасчета = &ВидРасчета И | Сотрудник В (&СписокСотрудников)) КАК НачисленияБазаНачисления"; Измер = Новый Массив(1); Измер[0] = "Сотрудник"; Запрос.УстановитьПараметр("ИзмеренияОсновного", Измер); Запрос.УстановитьПараметр("ИзмеренияБазового", Измер); Запрос.УстановитьПараметр("Регистратор", Регистратор); Запрос.УстановитьПараметр("ВидРасчета", ТребуемыйВидРасчета); Запрос.УстановитьПараметр("СписокСотрудников", СписокСотрудников); ВыборкаРезультата = Запрос.Выполнить().Выбрать(); Для Каждого ЗаписьРегистра Из НаборЗаписейРегистра Цикл СтруктураНомер = Новый Структура("НомерСтроки"); СтруктураНомер.НомерСтроки = ЗаписьРегистра.НомерСтроки; ВыборкаРезультата.Сбросить(); Если ВыборкаРезультата.НайтиСледующий(СтруктураНомер) Тогда ЗаписьРегистра.Результат = ВыборкаРезультата.База * (10 / 100); Сообщение = Новый СообщениеПользователю; Сообщение.Текст = "Выполнен расчет" + ЗаписьРегистра.Регистратор + " – " + ЗаписьРегистра.ВидРасчета + " – " + ЗаписьРегистра.Сотрудник; Сообщение.Сообщить(); КонецЕсли; КонецЦикла; КонецЕсли; КонецПроцедуры |
|||
2
Любопытная
17.12.17
✎
09:14
|
"ИЗ &Регистратор <<?>>И РегистрРасчета.Начисления.ДанныеГрафика(Регистратор ="
А как вы вообще такую строку придумали? Что собрать хотите? |
|||
3
ASV
17.12.17
✎
09:17
|
|ИЗ &Регистратор И РегистрРасчета.Начисления.ДанныеГрафика(Регистратор =
заменить |ИЗ РегистрРасчета.Начисления.ДанныеГрафика(Регистратор = &Регистратор И |
|||
4
Dasha2398
17.12.17
✎
09:21
|
В этом запросе мы выбираем из виртуальной таблицы данных графика регистра расчета значение графика для периода действия и для фактического периода действия. При задании параметров виртуальной таблицы мы ограничиваем выборку регистратором, нужным нам видом расчета и списком сотрудников, по которым нужно получить значения графика.
|
|||
5
Любопытная
17.12.17
✎
09:25
|
(4) Это всё прекрасно. Строка "Из &Регистратор" как родилась?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |