- В этой теме 1 ответ, 2 участника, последнее обновление 4 часа, 29 минут назад сделано .
Просмотр 1 ветки ответов
Просмотр 1 ветки ответов
- Для ответа в этой теме необходимо авторизоваться.
Программирование и администрирование в 1С
База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Почему возникает ошибка «Поле не найдено» при работе с регистром?
Имя верное
Если имя поля Сумма в регистре РасчетыСКлиентами действительно верное, а ошибка «Поле не найдено» всё равно возникает, значит проблема в том, как вы используете регистр в запросе.
Чаще всего ошибка возникает из-за того, что:
— Вы используете не сам регистр, а его таблицу остатков или оборотов, и в этих таблицах поле называется иначе.
— Либо вы используете синтаксис с РегистрНакопления.РасчетыСКлиентами.Обороты(...), а поле Сумма в оборотах отсутствует или называется по-другому.
— Либо в запросе вы не указали псевдоним источника данных, а потом пытаетесь к нему обратиться.
—
Что проверить и как исправить:
1. Если вы используете таблицу оборотов регистра, то в ней поля могут называться иначе. Например, в оборотах есть поля:
— Приход (сумма прихода)
— Расход (сумма расхода)
А поле Сумма отсутствует.
2. Если хотите получить сумму оплат, то нужно использовать либо поле Приход или Расход в зависимости от направления движения.
3. Пример правильного использования оборотов регистра:
|ВЫБРАТЬ
| …
| Расчеты.Приход КАК СуммаОплаты,
| …
4. Если хотите использовать сам регистр накопления (не обороты), то запрос будет другой, например:
|ВЫБРАТЬ
| …
| Расчеты.Сумма КАК СуммаОплаты,
|ИЗ
| РегистрНакопления.РасчетыСКлиентами КАК Расчеты
|…
5. Если используете обороты, то проверьте, что в запросе указаны параметры периода, например:
|РегистрНакопления.РасчетыСКлиентами.Обороты(&ДатаНачала, &ДатаКонца) КАК Расчеты
—
Итог: ошибка «Поле не найдено» при обращении к Расчеты.Сумма возникает, если в таблице оборотов нет поля Сумма. Используйте Приход или Расход вместо Сумма.
—
Если хотите, могу помочь переписать запрос с учетом этого. Пример:
|ВЫБРАТЬ
| Заказ.Ссылка КАК Заказ,
| Реализация.Ссылка КАК Реализация,
| Расчеты.Приход КАК СуммаОплаты
|ИЗ
| Документ.ЗаказКлиента КАК Заказ
| ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК Реализация
| ПО Реализация.ЗаказКлиента = Заказ.Ссылка
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.РасчетыСКлиентами.Обороты(&ДатаНачала, &ДатаКонца) КАК Расчеты
| ПО Расчеты.ОбъектРасчетов = Заказ.Договор
—
Если нужно, могу помочь с конкретным запросом, пришлите его текст.