|
Ошибка чтения значения | ☑ | ||
---|---|---|---|---|
0
rull9ss
13.04.12
✎
20:38
|
Сильно не пинать, только учусь.
Пробую выполнить не сложный запрос Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | БригадыДоставкиСрезПоследних.Водитель, | БригадыДоставкиСрезПоследних.Грузчик1, | БригадыДоставкиСрезПоследних.Грузчик2 |ИЗ | РегистрСведений.БригадыДоставки.СрезПоследних КАК БригадыДоставкиСрезПоследних |ГДЕ | БригадыДоставкиСрезПоследних.Период = &Период | И БригадыДоставкиСрезПоследних.ТранспортноеСредство = &ТранспортноеСредство"; Запрос.УстановитьПараметр("Период", Объект.ДатаИВремяДоставки); Запрос.УстановитьПараметр("ТранспортноеСредство", Объект.Машина); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Если Выборка.Следующий() Тогда Объект.Водитель = Выборка.Водитель; Объект.Грузчик1 = Выборка.Грузчик1; Объект.Грузчик2 = Выборка.Грузчик2; КонецЕсли; Но в результате получаю такое: http://s019.radikal.ru/i626/1204/13/054d74c0a777.jpg "Ошибка чтения значения" Подскажите что может быть не так, и как бороться? |
|||
1
catena
13.04.12
✎
20:42
|
(0)Стесняюсь спросить: курсор при этом выше или ниже Если?
|
|||
2
ВотОнЯ
13.04.12
✎
20:43
|
"Если Выборка.Следующий() Тогда"
замени на Пока Выборка.Следующий() Цикл ... ... КонецЦикла; И внутри цикла точку останова поставь и проверь заходит в цикл вообще или нет, то есть возвращает запрос результат или пустой |
|||
3
catena
13.04.12
✎
20:43
|
(0)И период внутрь виртуальной таблицы засунь, а то совсем криво будет.
|
|||
4
ale-sarin
13.04.12
✎
20:44
|
(0) Точку останова после "Если Выборка.Следующий() Тогда" поставить надо.
|
|||
5
rull9ss
13.04.12
✎
20:48
|
Точка останова стоит после Выборка = Результат.Выбрать();
Условие не срабатывает. Изменил на цикл, аналогично - в цикл не входит |
|||
6
catena
13.04.12
✎
20:51
|
(5)Выборка.* будет что-то показывать только после Следующи(). А у тебя просто пустой запрос получается.
и Учти (3). |
|||
7
Живой Ископаемый
13.04.12
✎
20:53
|
2(5) чувак, у тебя запрос ничего не возвращает
|
|||
8
ВотОнЯ
13.04.12
✎
20:56
|
проверяй заполненность параметров запроса. если все верно - смотри есть ли у тебя в регистре вообще сведения, удовлетворяющие условиям запроса
|
|||
9
echo77
13.04.12
✎
20:56
|
(0) Читать (3), а так же книжку по 1С 8 для разработчиков, параметры виртуальных таблиц
|
|||
10
Живой Ископаемый
13.04.12
✎
20:57
|
боже, да просто сначала выполни запрос в консоли... или хотя бы посмотри список этого РС
|
|||
11
rull9ss
13.04.12
✎
21:08
|
Использовать виртуальную таблицу в запросе на 3 строки?
пфф... как обычно оказывается что ошибка в мелочах Необходимо было всего лишь заменить строку Запрос.УстановитьПараметр("Период", НачалоДня(Объект.ДатаИВремяДоставки)); |
|||
12
Живой Ископаемый
13.04.12
✎
21:10
|
2(11) То есть если например у тебя в регистре запись на начало дня 12.апреля.2012, а в объекте дата - 13.04.2012 12:00:00, то твой запрос вернет НИЧЕГО, и это правильно?
только из-за того что тебе претит виртуальная таблица |
|||
13
Живой Ископаемый
13.04.12
✎
21:11
|
а, гоню.. простите. :)
|
|||
14
catena
13.04.12
✎
21:17
|
ми пардон, а СрезПоследних уже не виртуальная таблица? О_о
|
|||
15
hhhh
13.04.12
✎
21:49
|
(14) он же потом зверски убивает эту виртальную таблицу условием
ГДЕ Период = &Период |
|||
16
Живой Ископаемый
13.04.12
✎
21:57
|
2(15) слушай, а точно убивает? я тоже так подумал, но потом засомневался...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |