Вход | Регистрация


ОШИБКА: Ожидается псевдоним запроса

ОШИБКА: Ожидается псевдоним запроса
Я
   Dasha2398
 
17.12.17 - 09:10
Текст ошибки:
Ошибка при выполнении обработчика - 'ОбработкаПроведения'
по причине:
{ОбщийМодуль.ПроведениеРасчетов.Модуль(37)}: Ошибка при вызове метода контекста (Выполнить)
ВыборкаРезультата = Запрос.Выполнить().Выбрать();
по причине:
{(5, 17)}: Ожидается псевдоним запроса
ИЗ &Регистратор <<?>>И РегистрРасчета.Начисления.ДанныеГрафика(Регистратор =
 
 
   Dasha2398
 
1 - 17.12.17 - 09:11
Процедура РассчитатьНачисления(НаборЗаписейРегистра, ТребуемыйВидРасчета, СписокСотрудников) Экспорт

Регистратор=НаборЗаписейРегистра.Отбор.Регистратор.Значение;

// Рассчитать первичные записи




Если ТребуемыйВидРасчета = ПланыВидовРасчета.ОсновныеНачисления.Оклад
Тогда

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

| НачисленияДанныеГрафика.ЗначениеПериодДействия КАК Норма,

|НачисленияДанныеГрафика.ЗначениеФактическийПериодДействия КАК Факт,

| НачисленияДанныеГрафика.НомерСтроки КАК НомерСтроки

|ИЗ &Регистратор И РегистрРасчета.Начисления.ДанныеГрафика(Регистратор =

| ВидРасчета = &ВидРасчета И 
| Сотрудник В (&СписокСотрудников))

| КАК НачисленияДанныеГрафика";

Запрос.УстановитьПараметр("Регистратор", Регистратор);

Запрос.УстановитьПараметр("ВидРасчета", ТребуемыйВидРасчета);

Запрос.УстановитьПараметр("СписокСотрудников", СписокСотрудников);

ВыборкаРезультата = Запрос.Выполнить().Выбрать();

Для Каждого ЗаписьРегистра Из НаборЗаписейРегистра Цикл

СтруктураНомер = Новый Структура("НомерСтроки");

СтруктураНомер.НомерСтроки = ЗаписьРегистра.НомерСтроки;

ВыборкаРезультата.Сбросить();

Если ВыборкаРезультата.НайтиСледующий(СтруктураНомер) Тогда

Если ВыборкаРезультата.Норма = 0 Тогда

Сообщение = Новый СообщениеПользователю;

Сообщение.Текст = "Вид расчета: Оклад – Нет рабочих дней в заданном периоде";

Сообщение.Сообщить();

ЗаписьРегистра.Результат = 0;

Иначе

// Рассчитать оклад по фактическому периоду и исходным данным


ЗаписьРегистра.Результат = (ЗаписьРегистра.ИсходныеДанные /ВыборкаРезультата.Норма) * ВыборкаРезультата.Факт;

Сообщение = Новый СообщениеПользователю;

Сообщение.Текст = "Выполнен расчет" + ЗаписьРегистра.Регистратор + " – " + ЗаписьРегистра.ВидРасчета + " – "

+ ЗаписьРегистра.Сотрудник;

Сообщение.Сообщить();

КонецЕсли;

КонецЕсли;

КонецЦикла;

// Рассчитать вторичные записи


ИначеЕсли ТребуемыйВидРасчета = ПланыВидовРасчета.ОсновныеНачисления.Премия Тогда

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

| НачисленияБазаНачисления.РезультатБаза КАК База,

| НачисленияБазаНачисления.НомерСтроки КАК НомерСтроки

|ИЗ

| РегистрРасчета.Начисления.БазаНачисления(&ИзмеренияОсновного,

| &ИзмеренияБазового, , Регистратор = &Регистратор И ВидРасчета = &ВидРасчета И

| Сотрудник В (&СписокСотрудников)) КАК НачисленияБазаНачисления";

Измер = Новый Массив(1);

Измер[0] = "Сотрудник";

Запрос.УстановитьПараметр("ИзмеренияОсновного", Измер);

Запрос.УстановитьПараметр("ИзмеренияБазового", Измер);

Запрос.УстановитьПараметр("Регистратор", Регистратор);

Запрос.УстановитьПараметр("ВидРасчета", ТребуемыйВидРасчета);

Запрос.УстановитьПараметр("СписокСотрудников", СписокСотрудников);

ВыборкаРезультата = Запрос.Выполнить().Выбрать();

Для Каждого ЗаписьРегистра Из НаборЗаписейРегистра Цикл

СтруктураНомер = Новый Структура("НомерСтроки");

СтруктураНомер.НомерСтроки = ЗаписьРегистра.НомерСтроки;

ВыборкаРезультата.Сбросить();

Если ВыборкаРезультата.НайтиСледующий(СтруктураНомер) Тогда

ЗаписьРегистра.Результат = ВыборкаРезультата.База * (10 / 100);

Сообщение = Новый СообщениеПользователю;

Сообщение.Текст = "Выполнен расчет" + ЗаписьРегистра.Регистратор + " – " + ЗаписьРегистра.ВидРасчета + " – " + ЗаписьРегистра.Сотрудник;

Сообщение.Сообщить();

КонецЕсли;

КонецЦикла;

КонецЕсли;

КонецПроцедуры
   Любопытная
 
2 - 17.12.17 - 09:14
"ИЗ &Регистратор <<?>>И РегистрРасчета.Начисления.ДанныеГрафика(Регистратор ="
А как вы вообще такую строку придумали? 
Что собрать хотите?
   ASV
 
3 - 17.12.17 - 09:17
|ИЗ &Регистратор И РегистрРасчета.Начисления.ДанныеГрафика(Регистратор =

заменить 
|ИЗ РегистрРасчета.Начисления.ДанныеГрафика(Регистратор = &Регистратор И
   Dasha2398
 
4 - 17.12.17 - 09:21
В этом запросе мы выбираем из виртуальной таблицы данных графика регистра расчета значение графика для периода действия и для фактического периода действия. При задании параметров виртуальной таблицы мы ограничиваем выборку регистратором, нужным нам видом расчета и списком сотрудников, по которым нужно получить значения графика.
   Любопытная
 
5 - 17.12.17 - 09:25
(4) Это всё прекрасно. Строка "Из &Регистратор" как родилась?

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует