Ошибка чтения значения в выборке из результата запроса

1. sidekick6923 08.11.22 17:52 Сейчас в теме
Здравствуйте!

При отладке при вычислении выражения в переменной "Выборка" во всех полях в значении написано "Ошибка чтения значения". В консоли запросов этот же запрос отрабатывает и выдает правильный результат.
Модуль Формы документа
&НаСервере
Процедура ПорядковыйНомерПриИзмененииНаСервере()
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	Расш_КартриджиНакладныеПриходОстатки.Картридж КАК Картридж,
		|	Расш_КартриджиНакладныеПриходОстатки.ПорядковыйНомерС КАК ПорядковыйНомерС,
		|	Расш_КартриджиНакладныеПриходОстатки.ПорядковыйНомерПо КАК ПорядковыйНомерПо
		|ИЗ
		|	РегистрНакопления.Расш_КартриджиНакладныеПриход.Остатки КАК Расш_КартриджиНакладныеПриходОстатки
		|ГДЕ
		|	Расш_КартриджиНакладныеПриходОстатки.ПорядковыйНомерС < &ПорядковыйНомер
		|	И Расш_КартриджиНакладныеПриходОстатки.ПорядковыйНомерПо > &ПорядковыйНомер";
	
	Запрос.УстановитьПараметр("ПорядковыйНомер", Число("1130"));   
	Выборка = Запрос.Выполнить().Выбрать();
...
Показать


Программирую на 1С недавно, возможно ошибка глупая).

Задача состоит в следующем:
При списании картриджа, по его порядковому номеру определяется модель. В приходном регистре для каждой модели прописан порядковый номер с / по в разных полях. Задача запроса получить запись с нужным картриджем, отобранным по порядковому номеру. В параметр будет передаваться номер списываемого картриджа из поля формы. Пока там просто число, чтоб ошибку найти. На строке ...Выбрать(); "ошибка чтения значения" в каждом поле выборки из результата запроса.
По теме из базы знаний
Найденные решения
6. Prikum 3 09.11.22 09:54 Сейчас в теме
(5)Что мешает проверить в отладчике? Что мешает сначала получить результат запроса и проверить его на заполнение?
РезультатЗапроса = Запрос.Выполнить();
Если РезультатЗапроса.Пустой() Тогда
Сообщить("Нет ничего, от слова совсем!");
КонецЕсли;
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Prikum 3 08.11.22 18:00 Сейчас в теме
(1)И теперь чтобы получить значение надо написать
Выборка.Следующий()
3. sidekick6923 09.11.22 09:48 Сейчас в теме
(2) В переменной Выборка после Выбрать() хранится значение ошибки и в цикл (Пока Выборка.Следующий() Цикл) программа просто не заходит
4. Prikum 3 09.11.22 09:49 Сейчас в теме
(3)
программа просто не заходит
Так может быть в выборке ничего нет?
5. sidekick6923 09.11.22 09:52 Сейчас в теме
(4) если проверять через консоль запросов, выборка не пустая, результат правильный
6. Prikum 3 09.11.22 09:54 Сейчас в теме
(5)Что мешает проверить в отладчике? Что мешает сначала получить результат запроса и проверить его на заполнение?
РезультатЗапроса = Запрос.Выполнить();
Если РезультатЗапроса.Пустой() Тогда
Сообщить("Нет ничего, от слова совсем!");
КонецЕсли;
7. sidekick6923 09.11.22 10:10 Сейчас в теме
(6) Вы правы, запрос пустой. Получается параметр не отрабатывает. В консоли ж запрос дает нужный результат с этим же числом.
8. Prikum 3 09.11.22 10:12 Сейчас в теме
(7)а зачем преобразовать в число строку? Нельзя сразу передавать в параметр число? И как мне кажется, там присутствует неразрывный пробел в той строке, что пробрасывается в число.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот