|
v7: Прямой запрос к справочнику, в чем ошибка | ☑ | ||
---|---|---|---|---|
0
zenon46
06.06.19
✎
16:26
|
Доброго дня!
В справочнике всего три поля, Наименование,ВерхПредел,Стоимость. В чем ошибка? Я не пойму поле такое есть, QA говорит обратное Invalid column name 'ВерхПредел'. Запрос SELECT Спр.ВерхПредел as [ВерхПредел $Число], Спр.Стоимость as [Стоимость $Число] FROM $Справочник.СтоимостьПогрузкиРазгрузки As Спр WHERE (Спр.ВерхПредел < :МассаТовара) |
|||
1
toypaul
гуру
06.06.19
✎
16:28
|
в синтаксисе 1С++ не силен, но тут очевидно, что поле не транслировалось в нужный реквизит справочника. может доку с примерами почитать для начала?
|
|||
2
zenon46
06.06.19
✎
16:29
|
(1) да вроде все нормально, может очевидного не вижу, потому и српосил
|
|||
3
zenon46
06.06.19
✎
16:40
|
||||
4
ДенисЧ
06.06.19
✎
16:44
|
SELECT
$Спр.ВерхПредел as [ВерхПредел $Число], Если я правильно помню эти заморочки... |
|||
5
ДенисЧ
06.06.19
✎
16:45
|
Во, нашёл
Re: FAQ по прямым запросам. Ответ #2 - 19. Мая 2006 :: 11:43 Печать 2)Типизация к типам 1С Текст = " |SELECT | Спр.ID as [Элемент $Справочник.Номенклатура] |FROM | $Справочник.Номенклатура as Спр |"; Правило: Типизируем к тому виду который хранится с базе, например $Справочник.Номенклатура $Справочник $Документ.РасходнаяНакладная $Документ $Неопределенный дату, число, строку типизировать не надо Еще пример Текст = " |SELECT | $Док.Контрагент [Контрагент $Справочник.Контрагенты] |FROM | $Документ.ПКО as Док |"; Соответственно as можно не писать. http://www.1cpp.ru/forum/YaBB.pl?num=1148038411 |
|||
6
zenon46
06.06.19
✎
16:53
|
(5) хрень какая-то
SELECT $Спр.ВерхПредел ВерхПредел, $Спр.Стоимость Стоимость FROM $Справочник.СтоимостьПогрузкиРазгрузки As Спр WHERE (ВерхПредел < :МассаТовара) тоже самое( |
|||
7
ДенисЧ
06.06.19
✎
16:55
|
(6) А так
WHERE ($Спр.ВерхПредел< :МассаТовара) |
|||
8
zenon46
06.06.19
✎
16:57
|
(7) ды жопа, как только не пробовал тоже самое(
|
|||
9
zenon46
06.06.19
✎
16:58
|
(7)
написал такой SELECT Спр.Descr as Наименование FROM $Справочник.СтоимостьПогрузкиРазгрузки as Спр WHERE Спр.IsMark = 0 рабоатет |
|||
10
zenon46
06.06.19
✎
17:00
|
SELECT
Спр.ВерхПредел as ВерхПредел FROM $Справочник.СтоимостьПогрузкиРазгрузки as Спр WHERE Спр.IsMark = 0 а так не работает) |
|||
11
zenon46
06.06.19
✎
17:04
|
||||
12
zenon46
06.06.19
✎
17:09
|
SELECT
$Спр.ВерхПредел as ВерхПредел FROM $Справочник.СтоимостьПогрузкиРазгрузки as Спр WHERE так рабоатет |
|||
13
zenon46
06.06.19
✎
17:20
|
В условии не получается выбрать нормально. Получается надо было перебором справочника заниматься.
|
|||
14
Herby
06.06.19
✎
17:33
|
(13) и в условии нужно добавлять знак $ перед Спр.ВерхПредел
|
|||
15
MAG
06.06.19
✎
17:37
|
$Спр.ВерхПредел as ВерхПредел
FROM $Справочник.СтоимостьПогрузкиРазгрузки as Спр WHERE Спр.IsMark = 0 |
|||
16
Herby
06.06.19
✎
18:11
|
(13) ВерхПредел - это название реквизита в метаданных, но в таблице БД поле имеет другое наименование, какое-нибудь sp2394.
И вот $ как раз и говорит парсеру, чтобы ВерхПредел в уже переданном запросе на сервер переименовался в sp2394. А вот зарезервированные поля в таблицах такие как IsMark, Descr, ID и тд. ни куда переводить не нужно, они такими и остаются, поэтому перед такими полями знак $ не ставится. |
|||
17
zenon46
06.06.19
✎
18:36
|
Всем пасибо, разобрался.
|
|||
18
zenon46
06.06.19
✎
19:35
|
||||
19
Herby
06.06.19
✎
20:42
|
(18) потому что такое условие задал.
ни одна строка из таблицы слева не соответствует условию. |
|||
20
zenon46
06.06.19
✎
20:45
|
(19) не понял, а 4-я строка, нижний предел = 31 верхний 100, 31 туда попадет.
|
|||
21
Mikeware
06.06.19
✎
20:46
|
(20) ты знаки перепутал.
|
|||
22
zenon46
06.06.19
✎
20:47
|
(21) БЛЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯ
|
|||
23
Mikeware
06.06.19
✎
20:57
|
(22) "следи за собой, будь осторожен..."©
|
|||
24
zenon46
06.06.19
✎
21:05
|
(23) пора заканчивать, на сегодня.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |