|
Ошибка в запросе | ☑ | ||
---|---|---|---|---|
0
SherifSP
13.03.13
✎
11:49
|
ТекстЗапроса = "ВЫБРАТЬ
| ЗаказПокупателя.Контрагент КАК Контрагент, | ЗаказПокупателя.ТорговаяТочка КАК ТорговаяТочка, | ВЫРАЗИТЬ(КонтактнаяИнформация.Представление КАК СТРОКА(150)) КАК Адрес, | ЗаказПокупателя.Ссылка КАК Заказ |ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация | ПО ЗаказПокупателя.ТорговаяТочка = КонтактнаяИнформация.Объект |ГДЕ | ЗаказПокупателя.Проведен | И ЗаказПокупателя.ДатаОтгрузки = &ДатаОтгрузки | И ЗаказПокупателя.ТорговаяТочка.Регион В ИЕРАРХИИ(&Регион) | И КонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес) |ИТОГИ | МАКСИМУМ(Контрагент), | МАКСИМУМ(Адрес) |ПО | ТорговаяТочка"; Если ХО Тогда ТекстЗапроса = ТекстЗапроса + " | И ЗаказПокупателя.ХолодильноеОборудование = Истина"; КонецЕсли; А вот и сама ошибка {(20, 2)}: Синтаксическая ошибка "И" <<?>>И ЗаказПокупателя.ХолодильноеОборудование = Истина |
|||
1
Chin
13.03.13
✎
11:50
|
Потому что условие добовляется в текст после упорядочивания "ПО"
|
|||
2
Defender aka LINN
13.03.13
✎
11:50
|
Да. И?
|
|||
3
Chin
13.03.13
✎
11:51
|
Точнее после итогов
|
|||
4
SherifSP
13.03.13
✎
11:52
|
(2) В чем ошибка?)
|
|||
5
SherifSP
13.03.13
✎
11:53
|
То есть нужно добавить непосредственно в самом запросе?
|
|||
6
Fragster
гуру
13.03.13
✎
11:54
|
надо курить построитель запроса
|
|||
7
SherifSP
13.03.13
✎
11:54
|
Вот так типа ?
"ВЫБРАТЬ | ЗаказПокупателя.Контрагент КАК Контрагент, | ЗаказПокупателя.ТорговаяТочка КАК ТорговаяТочка, | ВЫРАЗИТЬ(КонтактнаяИнформация.Представление КАК СТРОКА(150)) КАК Адрес, | ЗаказПокупателя.Ссылка КАК Заказ |ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация | ПО ЗаказПокупателя.ТорговаяТочка = КонтактнаяИнформация.Объект |ГДЕ | ЗаказПокупателя.Проведен | И ЗаказПокупателя.ДатаОтгрузки = &ДатаОтгрузки Если ХО Тогда ТекстЗапроса = ТекстЗапроса + " | И ЗаказПокупателя.ХолодильноеОборудование = Истина"; КонецЕсли; | И ЗаказПокупателя.ТорговаяТочка.Регион В ИЕРАРХИИ(&Регион) | И КонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес) |ИТОГИ | МАКСИМУМ(Контрагент), | МАКСИМУМ(Адрес) |ПО | ТорговаяТочка"; |
|||
8
SherifSP
13.03.13
✎
11:54
|
Ток без кавычек )
|
|||
9
Maxus43
13.03.13
✎
11:54
|
(7) нет конечно
|
|||
10
Chin
13.03.13
✎
11:55
|
(7) Типа так, но красивей так:
ТекстЗапроса = "ВЫБРАТЬ | ЗаказПокупателя.Контрагент КАК Контрагент, | ЗаказПокупателя.ТорговаяТочка КАК ТорговаяТочка, | ВЫРАЗИТЬ(КонтактнаяИнформация.Представление КАК СТРОКА(150)) КАК Адрес, | ЗаказПокупателя.Ссылка КАК Заказ |ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация | ПО ЗаказПокупателя.ТорговаяТочка = КонтактнаяИнформация.Объект |ГДЕ | ЗаказПокупателя.Проведен | И ЗаказПокупателя.ДатаОтгрузки = &ДатаОтгрузки | И ЗаказПокупателя.ТорговаяТочка.Регион В ИЕРАРХИИ(&Регион) | И КонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес) | &Вставка |ИТОГИ | МАКСИМУМ(Контрагент), | МАКСИМУМ(Адрес) |ПО | ТорговаяТочка"; ТекстЗапроса = СтрЗаменить(ТекстЗапроса, &Вставка, ?(XO, " | И ЗаказПокупателя.ХолодильноеОборудование = Истина", "")); |
|||
11
regniws
13.03.13
✎
11:55
|
да, рубай прям так!
|
|||
12
Sammo
13.03.13
✎
11:55
|
1. И должно добавляться в ГДЕ
2. Там нефига не левое соединение, а внутренне (Где может превращать левое во внутреннее) |
|||
13
Chin
13.03.13
✎
11:56
|
(10) Там где замена текста вставка в ковычках должная быть "&Вставка"
|
|||
14
Рэйв
13.03.13
✎
11:56
|
ТекстЗапроса = "ВЫБРАТЬ
| ЗаказПокупателя.Контрагент КАК Контрагент, | ЗаказПокупателя.ТорговаяТочка КАК ТорговаяТочка, | ВЫРАЗИТЬ(КонтактнаяИнформация.Представление КАК СТРОКА(150)) КАК Адрес, | ЗаказПокупателя.Ссылка КАК Заказ |ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация | ПО ЗаказПокупателя.ТорговаяТочка = КонтактнаяИнформация.Объект |ГДЕ | ЗаказПокупателя.Проведен | И ЗаказПокупателя.ДатаОтгрузки = &ДатаОтгрузки | И ЗаказПокупателя.ТорговаяТочка.Регион В ИЕРАРХИИ(&Регион) | И КонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес)"; Если ХО Тогда ТекстЗапроса = ТекстЗапроса + " | И ЗаказПокупателя.ХолодильноеОборудование = Истина"; КонецЕсли; ТекстЗапроса = ТекстЗапроса + " |ИТОГИ | МАКСИМУМ(Контрагент), | МАКСИМУМ(Адрес) |ПО | ТорговаяТочка"; |
|||
15
Maxus43
13.03.13
✎
11:57
|
|ГДЕ
| ЗаказПокупателя.Проведен | И ЗаказПокупателя.ДатаОтгрузки = &ДатаОтгрузки | И ЗаказПокупателя.ТорговаяТочка.Регион В ИЕРАРХИИ(&Регион) | И КонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес) | //ХО Если ХО Тогда ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "//XO", "И ЗаказПокупателя.ХолодильноеОборудование = Истина"); а мне так больше нравится |
|||
16
zladenuw
13.03.13
✎
11:58
|
я за условие в самом запросе
|
|||
17
SherifSP
13.03.13
✎
12:02
|
Сколько программистов, столько и стилей))
|
|||
18
Рэйв
13.03.13
✎
12:03
|
// или так
ТекстЗапроса = "ВЫБРАТЬ | ЗаказПокупателя.Контрагент КАК Контрагент, | ЗаказПокупателя.ТорговаяТочка КАК ТорговаяТочка, | ВЫРАЗИТЬ(КонтактнаяИнформация.Представление КАК СТРОКА(150)) КАК Адрес, | ЗаказПокупателя.Ссылка КАК Заказ |ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация | ПО ЗаказПокупателя.ТорговаяТочка = КонтактнаяИнформация.Объект |ГДЕ | ЗаказПокупателя.Проведен | И ЗаказПокупателя.ДатаОтгрузки = &ДатаОтгрузки | И ЗаказПокупателя.ТорговаяТочка.Регион В ИЕРАРХИИ(&Регион) | И КонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес)"; | И ( &ХО И ЗаказПокупателя.ХолодильноеОборудование ) |ИТОГИ | МАКСИМУМ(Контрагент), | МАКСИМУМ(Адрес) |ПО | ТорговаяТочка"; Запрос.УстановитьПараметр("ХО",ХО); |
|||
19
SherifSP
13.03.13
✎
12:03
|
(14) Как по мне самый читаемый)
|
|||
20
Maxus43
13.03.13
✎
12:04
|
(19) только забудь о конструкторе запросов тогда
|
|||
21
SherifSP
13.03.13
✎
12:06
|
(20) Знаю)
|
|||
22
sapphire
13.03.13
✎
12:09
|
(18) Не совсем правильно
|
|||
23
sapphire
13.03.13
✎
12:11
|
(18)
ТекстЗапроса = "ВЫБРАТЬ | ЗаказПокупателя.Контрагент КАК Контрагент, | ЗаказПокупателя.ТорговаяТочка КАК ТорговаяТочка, | ВЫРАЗИТЬ(КонтактнаяИнформация.Представление КАК СТРОКА(150)) КАК Адрес, | ЗаказПокупателя.Ссылка КАК Заказ |ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация | ПО ЗаказПокупателя.ТорговаяТочка = КонтактнаяИнформация.Объект |ГДЕ | ЗаказПокупателя.Проведен | И ЗаказПокупателя.ДатаОтгрузки = &ДатаОтгрузки | И ЗаказПокупателя.ТорговаяТочка.Регион В ИЕРАРХИИ(&Регион) | И КонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес)"; | И ( (&ХО И ЗаказПокупателя.ХолодильноеОборудование) ИЛИ (Не &ХО)) |ИТОГИ | МАКСИМУМ(Контрагент), | МАКСИМУМ(Адрес) |ПО | ТорговаяТочка"; Запрос.УстановитьПараметр("ХО",ХО); // Если ХО не установлен, то отбора нет |
|||
24
Fragster
гуру
13.03.13
✎
12:12
|
(23) это самый медленный вариант
|
|||
25
Рэйв
13.03.13
✎
12:12
|
(23)Возможно:-) проверить запустить негде
|
|||
26
Лефмихалыч
13.03.13
✎
12:19
|
юзайте компоновку или на худо конец построитель
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |