|
Почему Запрос не работает?(( | ☑ | ||
---|---|---|---|---|
0
tolok_d
19.02.13
✎
12:39
|
Господа. Подскажите ошибку в простеньком запросе:
Запрос = Новый Запрос; Запрос.УстановитьПараметр("Ссылка",ЭтотОбъект.Ссылка); Запрос.Текст = "ВЫБРАТЬ | РеализацияТоваровУслуг.Ссылка |ИЗ | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг //|ГДЕ //| РеализацияТоваровУслуг.Сделка.Ссылка = &Ссылка |"; Результат = Запрос.Выполнить(); //ЭтотОбъект - это ДокументОбъект ЗаказПокупателя Этот запрос выдает значение неопределено. Но если я пишу ДокРеал = Документы.РеализацияТоваровУслуг.НайтиПоРеквизиту("Сделка", ЭтотОбъект.Ссылка); то все хорошо ищет. Мне просто интересно почему запрос не работает. Ведь должен же(( |
|||
1
КуплюКровать
19.02.13
✎
12:40
|
а где выборка?
|
|||
2
pessok
19.02.13
✎
12:41
|
потому в параметр надо передавать ДокументСсылка, а не ДокументОбъект
|
|||
3
salvator
19.02.13
✎
12:41
|
Сообщить(Запрос.Выполнить().Выгрузить().Количество());
Что дает? А вообще, не плоди темы v8: Мой первый запрос |
|||
4
pessok
19.02.13
✎
12:41
|
да и вообще не видать установки параметра запроса
|
|||
5
GANR
19.02.13
✎
12:41
|
(0) как Запрос.Выполнить() может возвращать неопределено??? он может возвращать РезультатЗапроса, который может быть пустым.
|
|||
6
Рэйв
19.02.13
✎
12:43
|
(0)
Сделай Результат = Запрос.Выполнить().выгрузить(); Результат.ВыбратьСроку() ; И посмотри то там он тебе сделал |
|||
7
tolok_d
19.02.13
✎
12:45
|
(1) ВыборкаДетальныеЗаписи = Результат.Выбрать();
просто не писал. она есть |
|||
8
tolok_d
19.02.13
✎
12:47
|
(2) ЭтотОбъект.Ссылка это же и есть документ ссылка. Или нет?
|
|||
9
vvp91
19.02.13
✎
12:47
|
|ВЫБРАТЬ
| РеализацияТоваровУслуг.Ссылка |ИЗ | Документ.РеализацияТоваровУслуг КАК РТУ |ГДЕ | РТУ.Сделка = &Ссылка |"; |
|||
10
vvp91
19.02.13
✎
12:48
|
|ВЫБРАТЬ
| РТУ.Ссылка |ИЗ | Документ.РеализацияТоваровУслуг КАК РТУ |ГДЕ | РТУ.Сделка = &Ссылка |"; |
|||
11
tolok_d
19.02.13
✎
12:48
|
(3) там тема умерла. Количество 1, но этот один Неопределен и написано что ошибка чтения.
|
|||
12
salvator
19.02.13
✎
12:49
|
(11) Тебе в той теме ответили уже, почему.
|
|||
13
tolok_d
19.02.13
✎
12:50
|
(4) Параметр запроса это Ссылка на документ Заказ покупателя. Зуб даю, это именно Ссылка на документ Заказ покупателя(проверял при отладке)
|
|||
14
tolok_d
19.02.13
✎
12:50
|
(12) нет. Я все сделал как Вы говорили, но ничего не работает. Сам запрос не отрабатывает
|
|||
15
Рэйв
19.02.13
✎
12:51
|
(13)Ты зубы то пожалей...А то не напасешься:-)
|
|||
16
salvator
19.02.13
✎
12:52
|
(14) Код полностью покажи.
|
|||
17
tolok_d
19.02.13
✎
12:55
|
(16) Ну я полностью показал. Я же не буду Вам весь модуль скидывать.
|
|||
18
vvp91
19.02.13
✎
12:56
|
>>> (13)Параметр запроса это Ссылка на документ Заказ покупателя.
Если параметр это ссылка на заказ покупателя, то в отборе сделка там никак не должна присутствовать. Запрос должен быть таким: |ВЫБРАТЬ | РТУ.Ссылка |ИЗ | Документ.РеализацияТоваровУслуг КАК РТУ |ГДЕ | РТУ.ЗаказКлиента = &Ссылка |"; А вот если НайтиПоРеквизиту("Сделка"...) нашел что-то, если туда передали ссылку на заказ покупателя, то это мега-баг в платформе. |
|||
19
salvator
19.02.13
✎
12:59
|
(14)+(17) Читал? v8: Мой первый запрос
|
|||
20
pessok
19.02.13
✎
13:00
|
(18) так как раз таки сделка. по крайней мере в УТ 10.3 и БП 2.0
|
|||
21
GANR
19.02.13
✎
13:00
|
(0) Иди-ка ты на http://www.sql-ex.ru/.
|
|||
22
tolok_d
19.02.13
✎
13:02
|
(19) читал. И? Вообще не пойму Вас. Обьясните. Где ссылка в Заказе покупателя на Реализацию Товаров и услуг?
|
|||
23
salvator
19.02.13
✎
13:05
|
(22) 1. ГДЕ РеализацияТоваровУслуг.Сделка.Ссылка = &Ссылка - ".Ссылка" убрать
2. Добавить "Если ВыборкаДетальныеЗаписи.Следующий() Тогда" для позиционирования на элементе выборки. Что тут непонятного? |
|||
24
tolok_d
19.02.13
✎
13:08
|
(23) теперь понятно. Спасибо.
Но исправил по другому. И все хорошо работает)): Запрос = Новый Запрос; Запрос.УстановитьПараметр("Ссылка",ЭтотОбъект.Ссылка); Запрос.Текст = "ВЫБРАТЬ | РеализацияТоваровУслуг.Ссылка |ИЗ | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг |ГДЕ | РеализацияТоваровУслуг.Сделка.Ссылка = &Ссылка |"; Результат = Запрос.Выполнить().выгрузить(); //Результат.ВыбратьСтроку(); Если РольДоступна(Метаданные.Роли.МенеджерПоПродажам) Тогда Для каждого Элем Из Результат Цикл Если Элем.Ссылка.Проведен = Истина Тогда ЭтаФорма.ТолькоПросмотр = Истина; КонецЕсли; КонецЦикла; КонецЕсли; Значит проблема не в Ссылке была. Я то ссылку сейчас уберу, я понял замечание. Просто не понятно почему тогда не работало. Всем огромное спасибо за помощь. |
|||
25
salvator
19.02.13
✎
13:09
|
(24) И не поймешь.
|
|||
26
Рэйв
19.02.13
✎
13:41
|
(24)Так ты все это затеял только чтобы проверить проведен ли текущий документ???
О май гад!!! *рукалицо |
|||
27
Рэйв
19.02.13
✎
13:42
|
(24)
Если ЭтотОбъект.Ссылка.Проведен = Истина Тогда ЭтаФорма.ТолькоПросмотр = Истина; КонецЕсли; ...Извращенец |
|||
28
tolok_d
19.02.13
✎
14:48
|
(26) Затеял чтобы проверить был ли на основании заказа покупателя создана реализация товаров и услуг.
|
|||
29
SherifSP
19.02.13
✎
15:14
|
(28) Ну так выбирай заказы и проверяй на пустую ссылку документ Реализации
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |