рубрики: Конструктор запросов | Дата: 9 февраля, 2017
Иногда при составлении запросов с помощью конструктора запросов 1С выдается сообщение про неоднозначное поле. В этой статье воспроизведем ситуацию в которой возникает эта ошибка и разберемся как действовать в таких случаях.
Создадим в конфигураторе любой справочник (в моем случае это будет справочник Товары). Добавим в справочник реквизит с таким же именем – Товары.
А теперь откроем конструктор запросов, выберем таблицу со справочником Товары и из этой таблицы поле Товары
Нажимаем на кнопку OK и видим следующее сообщение об ошибке
В принципе из этого сообщения можно понять в чем причина ошибки
А теперь вместо поля товары выберем любое другое. Например Ссылка. Но даже в этом случае программа не даст нам сохранить запрос
А вот из этого сообщения уже мало что можно понять. О каком таком неоднозначном поле идет речь. Когда впервые сталкиваешься с этим, приходится потратить немало времени, чтобы разобраться в чем причина. Особенно если учесть, что реквизитов у объекта по которому строим запрос может быть пара десятков. И навскидку не всегда можно увидеть, что есть реквизит с тем же наименованием, что и таблица.
Как всегда после обнаружения причины ошибки встает вопрос: «Что делать?».
Во-первых конечно же надо строить правильную архитектуру конфигурации, чтобы потом не приходилось ничего исправлять. Но если уж сложилась ситуация, которую мы рассмотрели, то и ее можно исправить. Вспоминаем, что у таблицы есть псевдоним, т.е. наименование таблицы можно задать самому. Щелкаем по таблице правой кнопкой и выбираем пункт меню Переименовать таблицу
В открывшемся окне зададим имя для нашей таблицы – ТаблицаТоваров.
После чего спокойно сохраняем запрос и получаем вот такой текст запроса
ВЫБРАТЬ
ТаблицаТоваров.Товары КАК Товары
ИЗ
Справочник.Товары КАК ТаблицаТоваров
Добавить комментарий