Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 04:11

Ошибка при выполнении запроса - "неоднозначное поле"

Автор Marta_Li, 21 апр 2011, 11:56

0 Пользователей и 1 гость просматривают эту тему.

Marta_Li

Программно формируется текст запроса по всем метаданным документам базы:
ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1
Документ.АвансовыйОтчет.Ссылка
....

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ ПЕРВЫЕ 1
Документ.АктОбОказанииПроизводственныхУслуг.Ссылка
...


Добавила новый документ. В результате выполнение запроса вылетает на ошибку:

Цитировать">Документ.ТИ_ДвиженияПоЗабалансовымСчетам.Ссылка
   мРезЗапроса = ОбъектЗапрос.Выполнить();
по причине:
{(1097, 2)}: Неоднозначное поле "Документ.ТИ_ДвиженияПоЗабалансовымСчетам.Ссылка"
<<?>>Документ.ТИ_ДвиженияПоЗабалансовымСчетам.Ссылка"

Другие новые документы не выпадают. Что искать, может, подскажите?

Klyacksa

переименуйте таблицу, на которую ругается, обычно помогает.
Не поможет - постите нормально получившийся запрос, по кускам ничего не видно.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Marta_Li

Странно перенесся код, не нашла, как исправить сообщение,написала в ответе:

ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1
Документ.АвансовыйОтчет.Ссылка
...
ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ ПЕРВЫЕ 1
Документ.АктОбОказанииПроизводственныхУслуг.Ссылка
...

Marta_Li

   Запрос = Новый Запрос();
   Запрос.Текст = "";

   Для каждого Док из Метаданные.Документы Цикл

      Запрос.Текст = Запрос.Текст +
      "ОБЪЕДИНИТЬ ВСЕ
      |
      |ВЫБРАТЬ ПЕРВЫЕ 1
      |   Документ." + Док.Имя + ".Ссылка
      |
      |";

   КонецЦикла;

   // Уберем первое "ОБЪЕДИНИТЬ ВСЕ"
   Запрос.Текст  = Сред(Запрос.Текст, Найти(Запрос.Текст, "ВЫБРАТЬ") + СтрДлина("ВЫБРАТЬ ПЕРВЫЕ") + 1);
   Запрос.Текст  = "ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ " + Запрос.Текст;
   
   ЕстьДокументы = (Не Запрос.Выполнить().Пустой());

Marta_Li

В результате текст запроса получается таким:

«ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1
   Документ.АвансовыйОтчет.Ссылка

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ ПЕРВЫЕ 1
   Документ.АктОбОказанииПроизводственныхУслуг.Ссылка

ОБЪЕДИНИТЬ ВСЕ
...

ВЫБРАТЬ ПЕРВЫЕ 1
   Документ.ТИ_ДвиженияПоЗабалансовымСчетам.Ссылка»

Klyacksa

xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Marta_Li

Нету "ИЗ", так запрос строится и работает, но только без этого последнего нового документа.
Процедура из типовой конфы. До сих пор не вылетала...

Marta_Li


Klyacksa

xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

has

Текст запроса складывается по частям, вот и не видно ИЗ наверно. Вобще откуда текст запроса? Из какого места и какой конфы?

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск