|
v7: Ошибка: Meta name parser error: поле таблицы не найдено "$Спр.Заказчик" | ☑ | ||
---|---|---|---|---|
0
Irina3gger
30.06.17
✎
09:01
|
Доброго времени. Уважаемые специалисты помогите разобраться с 1С++, а точнее с запросом. Был написан запрос, но выдает ошибку: Meta name parser error: поле таблицы не найдено "$Спр.Заказчик".
Подскажите пожалуйста в чем я ошиблась, вот код запроса ТекстЗапроса = " |SELECT | Жур.IDDoc as [Док $Документ], | Жур.IDDocDef as Док_вид, | Спр.Code as Код, | Спр.Descr as Наименование, | $Док.Объект as [Объект $Справочник.Объект], | $Док.Сумма as Сумма, | $Док.ДолгПоОплате as ДолгПоОплате, | $Док.ПризнакПодпис as [ПризнакПодпис $Перечисление.Признак], | $Док.ВидАкта as [ВидАкта $Справочник.ВидАкт], | $Спр.Заказчик as [Заказчик $Справочник.Заказчик], | $Спр.Район as [Район $Справочник.Области], | $Спр.ИстФин as [ИстФин $Справочник.ИстФин] |FROM | _1SJourn as Жур |INNER JOIN | $Документ.АктОбъемаРабот as Док ON Док.IDDoc = Жур.IDDoc |INNER JOIN | $Справочник.Объект as Спр.Заказчик ON Спр.ID = $Док.Объект | $Справочник.Объект as Спр.Район ON Спр.ID = $Док.Объект | $Справочник.Объект as Спр.ИстФин ON Спр.ID = $Док.Объект |LEFT JOIN | $Справочник.ИстФин as Спр.ИстФин ON | $ВидСправочника36.ИстФин + СпрИстФин.ID = $Док.Объект | |WHERE | Жур.Date_Time_IDDoc BETWEEN :НачДата AND :КонДата~ | AND Жур.Closed & 1 = 1 | AND $Док.ВидАкта <> :ВидАктов | AND $Док.ДолгПоОплате <> 0 | AND $Спр.Заказчик = :ТекЗаказчик |" |
|||
1
vcv
30.06.17
✎
09:16
|
Какой-то странный JOIN
> $Справочник.Объект as Спр.Заказчик ON Спр.ID = $Док.Объект Синтаксис же такой: INNER JOIN <таблица> as <алиас> on <условие> Наверное, должно быть примерно так: INNER JOIN $Справочник.Объект as Заказчики ON Заказчики.ID = $Док.Заказчик |
|||
2
vcv
30.06.17
✎
09:18
|
Использование в качестве алиаса в запросе чего-то типа "Спр.ИстФин" кажется очень подозрительным. Если уж хотите точку и прочие спецсимволы в алиасе, алиас нужно брать в одинарные кавычки.
|
|||
3
Irina3gger
30.06.17
✎
09:31
|
(1) До это был написан такой запрос и он работал.
" |SELECT | Жур.IDDoc as [Док $Документ], | Жур.IDDocDef as Док_вид, | Спр.Code as Код, | Спр.Descr as Наименование, | $Док.Объект as [Объект $Справочник.Объект], | $Док.Сумма as Сумма, | $Док.ДолгПоОплате as ДолгПоОплате, | $Док.ПризнакПодпис as [ПризнакПодпис $Перечисление.Признак], | $Док.ВидАкта as [ВидАкта $Справочник.ВидАкт], | $Спр.Заказчик as [Заказчик $Справочник.Заказчик], | $Спр.Район as [Район $Справочник.Области], |FROM | _1SJourn as Жур |INNER JOIN | $Документ.АктОбъемаРабот as Док ON Док.IDDoc = Жур.IDDoc |INNER JOIN | $Справочник.Объект as Спр ON Спр.ID = $Док.Объект | |WHERE | Жур.Date_Time_IDDoc BETWEEN :НачДата AND :КонДата~ | AND Жур.Closed & 1 = 1 | AND $Док.ВидАкта <> :ВидАктов | AND $Док.ДолгПоОплате <> 0 | AND $Спр.Заказчик = :ТекЗаказчик |" Но сейчас я пытаюсь добавить новую колонку в таблицу и чтоб через запрос подтягивались данные, но все время ошибки какие то. Если просто добавляю Спр.ИстФин, то ошибка: Поле агрегатного объекта не обнаружено(ТекущийЭлемент) " |SELECT | Жур.IDDoc as [Док $Документ], | Жур.IDDocDef as Док_вид, | Спр.Code as Код, | Спр.Descr as Наименование, | $Док.Объект as [Объект $Справочник.Объект], | $Док.Сумма as Сумма, | $Док.ДолгПоОплате as ДолгПоОплате, | $Док.ПризнакПодпис as [ПризнакПодпис $Перечисление.Признак], | $Док.ВидАкта as [ВидАкта $Справочник.ВидАкт], | $Спр.Заказчик as [Заказчик $Справочник.Заказчик], | $Спр.Район as [Район $Справочник.Области], | $Спр.ИстФин as [ИстФин $Справочник.ИстФин] |FROM | _1SJourn as Жур |INNER JOIN | $Документ.АктОбъемаРабот as Док ON Док.IDDoc = Жур.IDDoc |INNER JOIN | $Справочник.Объект as Спр ON Спр.ID = $Док.Объект | |WHERE | Жур.Date_Time_IDDoc BETWEEN :НачДата AND :КонДата~ | AND Жур.Closed & 1 = 1 | AND $Док.ВидАкта <> :ВидАктов | AND $Док.ДолгПоОплате <> 0 | AND $Спр.Заказчик = :ТекЗаказчик |" Подумала что может не видит это поле, и решила на прямую к справочнику обратится, но тогда выдает ошибку: Meta name parser error: поле таблицы не найдено "$Спр.Заказчик". Подскажите пожалуйста что делать, что-то я совсем запуталсь |
|||
4
h-sp
30.06.17
✎
09:41
|
имя должно быть без точек. Вы вообще раньше программировали когда-нибудь?
|
|||
5
Irina3gger
30.06.17
✎
09:45
|
Спасибо большое. Я уже исправила все, и помогло.
Я на 1с все пару дней, и она мне еще туго дается, но я стараюсь) Спасибо за отзывчивость и помощь) |
|||
6
h-sp
30.06.17
✎
09:46
|
видите же как было
| $Справочник.Объект as Спр ON Спр.ID = $Док.Объект автор запроса присвоил таблице $Справочник.Объект имя "Спр" при помощи слова as |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |