Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
25 Июл 2017, 03:38
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Ошибка чтения значения  (Прочитано 2805 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Рафаэль

  • *
  • Сообщений: 11
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-01-10
  • Сайт: 
  • Профессия: Ученик 1С
1С 8.3, самописная, учебная.
Всем доброго времени суток! Столкнулся с проблемой и никак ее не могу решить. Вот текст запроса:
"ВЫБРАТЬ
|   ПродажаТоваровТовары.Номенклатура,
|   СУММА(ПродажаТоваровТовары.Количество) КАК Количество,
|   ПродажаТоваровТовары.Ссылка.Склад
|ПОМЕСТИТЬ ТабДок
|ИЗ
|   Документ.ПродажаТоваров.Товары КАК ПродажаТоваровТовары
|ГДЕ
|   ПродажаТоваровТовары.Ссылка = &Ссылка
|   И ПродажаТоваровТовары.Номенклатура.ВидНоменклатуры <> ЗНАЧЕНИЕ(Перечисление.ВидыТоваров.Услуга)
|
|СГРУППИРОВАТЬ ПО
|   ПродажаТоваровТовары.Номенклатура,
|   ПродажаТоваровТовары.Ссылка.Склад
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
|   ТабДок.Номенклатура,
|   ТабДок.Количество,
|   ТабДок.Склад,
|   ЕСТЬNULL(ОстаткиНоменклатурыОстатки.КоличествоОстаток, 0) КАК КоличествоОстатки,
|   ЕСТЬNULL(ОстаткиНоменклатурыОстатки.СуммаОстаток, 0) КАК СуммаОстатки
|ИЗ
|   ТабДок КАК ТабДок
|      ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиНоменклатуры.Остатки(
|            &Момент,
|            (Номенклатура, Склад) В
|               (ВЫБРАТЬ
|                  ТабДок.Номенклатура,
|                  ТабДок.Склад
|               ИЗ
|                  ТабДок КАК ТабДок)) КАК ОстаткиНоменклатурыОстатки
|      ПО ТабДок.Номенклатура = ОстаткиНоменклатурыОстатки.Номенклатура"

При попытке произвести выборку в дебаггере показывает ошибку чтения значений.
В этой строке: ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();      
В чем ошибка?
Вот остальная часть процедуры:
Если Режим = РежимПроведенияДокумента.Оперативный Тогда
   Запрос.УстановитьПараметр("Момент", Неопределено);
Иначе
   Запрос.УстановитьПараметр("Момент", ТекущаяДата());
КонецЕсли;
Запрос.УстановитьПараметр("Ссылка", Ссылка);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Инфо = Новый Структура;
Массив = Новый Массив;
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
Инфо.Вставить("Номенклатура", ВыборкаДетальныеЗаписи.Номенклатура);
Инфо.Вставить("Склад", ВыборкаДетальныеЗаписи.Склад);
Инфо.Вставить("КоличесвтоУчет", ВыборкаДетальныеЗаписи.КоличесвтоУчет);
Массив.Добавить(Инфо);


Оффлайн Vladimir_Sh

  • 1С:Специалист
  • ****
  • Сообщений: 356
  • РЕПУТАЦИЯ: 68
  • КПД: 19%
  • Регистрация: 2015-10-16
  • Компания: Центр бизнес решений "ALT"
  • Профессия: Разработчик 1С
Более подробнее, какую ошибку показывает?
Если я Вам помог, нажми - Спасибо!

Оффлайн Рафаэль

  • *
  • Сообщений: 11
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-01-10
  • Сайт: 
  • Профессия: Ученик 1С
Более подробнее, какую ошибку показывает?

Оффлайн Vladimir_Sh

  • 1С:Специалист
  • ****
  • Сообщений: 356
  • РЕПУТАЦИЯ: 68
  • КПД: 19%
  • Регистрация: 2015-10-16
  • Компания: Центр бизнес решений "ALT"
  • Профессия: Разработчик 1С
Выполните
РезультатЗапроса.Выбрать().Количество()
Если больше 0 тогда выборка со значениями и в цикле в переменную РезультатЗапроса будут передаваться строки выборки запроса на каждой итерации.
Хотите просмотреть всю выборку в таблице на отладке тогда Вам следующий код
Запрос.Выполнить().Выгрузить()
Получите ТЗ которую удобно анализировать визуально в отладке.
Если я Вам помог, нажми - Спасибо!

Оффлайн Рафаэль

  • *
  • Сообщений: 11
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-01-10
  • Сайт: 
  • Профессия: Ученик 1С
Можете поподробнее объяснить, если не сложно? А то что то не могу понять..

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1097
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Массив = Новый Массив;

"Массив" - служебное слово. Слева, имя переменной, придумайте другое.

Затем после цикла точку останова поставьте и посмотрите, чему "Массив" равен, скорее всего ничему.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн Vladimir_Sh

  • 1С:Специалист
  • ****
  • Сообщений: 356
  • РЕПУТАЦИЯ: 68
  • КПД: 19%
  • Регистрация: 2015-10-16
  • Компания: Центр бизнес решений "ALT"
  • Профессия: Разработчик 1С
Ну попробую)
Когда используется Выбрать(), то на выходе получается ВыборкаРезультатаЗапроса (это можно назвать его "контейнер" со строками), обход выборки происходит с помощью Следующий() в цикле. На каждом итерации (т.е. повторном выполнении тела) цикла происходит инициализация (присваивание строки) в переменную со значением ВыборкаРезультатЗапроса. Например имеем результат выборки:
НоменклатураКоличество
Яблоко1
Груша2
Банан3
Далее при конструкции
РезультатЗапроса = Запрос.Выполнить().Выбрать();
В переменной РезультатЗапроса будет значение типа "ВыборкаРезультатаЗапроса". Для того чтобы обойти значения необходимо использовать конструкцию.
Пока РезультатЗапроса.Следующий() Цикл
<<тело цикла>>
КонецЦикла;
При первом проходе с переменной РезультатЗапроса будет значения
НоменклатураКоличество
Яблоко1

При втором
НоменклатураКоличество
Груша2
и т.д.
Их можно просмотреть в отладке.
Добавлено: 10 Янв 2016, 15:16

Массив = Новый Массив;

"Массив" - служебное слово. Слева, имя переменной, придумайте другое.

Затем после цикла точку останова поставьте и посмотрите, чему "Массив" равен, скорее всего ничему.

Нет не является, используется только в конструкции "Новый Массив". Теоретически его можно использовать без каких либо проблем, на практике - просто не желательно.
Если я Вам помог, нажми - Спасибо!

Оффлайн Рафаэль

  • *
  • Сообщений: 11
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-01-10
  • Сайт: 
  • Профессия: Ученик 1С
Ну попробую)
Когда используется..
Так и не понял, что у меня не так и что мне надо поменять?

Оффлайн Vladimir_Sh

  • 1С:Специалист
  • ****
  • Сообщений: 356
  • РЕПУТАЦИЯ: 68
  • КПД: 19%
  • Регистрация: 2015-10-16
  • Компания: Центр бизнес решений "ALT"
  • Профессия: Разработчик 1С
<_< да все у вас верно, в отладке так и будет показывать "Ошибка чтения значения". Поставьте точку останова во внутрь цикла и увидите в ней данные.
Если я Вам помог, нажми - Спасибо!

Оффлайн Рафаэль

  • *
  • Сообщений: 11
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-01-10
  • Сайт: 
  • Профессия: Ученик 1С
<_< да все у вас верно, в отладке так и будет показывать "Ошибка чтения значения". Поставьте точку останова во внутрь цикла и увидите в ней данные.
В цикл не заходит


Теги: 1сЮ 
 

При открытии обр-ки в "Предприятии" есть ошибка, а в "Отладке" нет

Автор proofetРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 4135
Последний ответ 21 Сен 2011, 17:35
от proofet
ошибка "Невозможно обработать параметр "ПрофильПолномочийПользователя""

Автор lindeluРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 5
Просмотров: 5487
Последний ответ 06 Июн 2012, 09:15
от lindelu
Синтаксическая ошибка "В" Номенклатура.Ссылка = <<?>> В ИЕРАРХИИ(&Ссылка)

Автор maskitoРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 3771
Последний ответ 28 Апр 2014, 15:53
от maskito
При создании нового документа "Заявка на кассовый расход" Ошибка "Значение 9 поля "номер" не уникально

Автор ppkmliteРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 14
Просмотров: 7237
Последний ответ 22 Ноя 2014, 04:50
от cska-fanat-kz
Ошибка при загрузке данных через (Обработка "Выгрузка и загрузка данных XML")

Автор Сергей_87Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 7911
Последний ответ 26 Апр 2012, 23:08
от Dethmontt

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

alex0402
91 Сообщений
oleg-x
83 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
67 Сообщений
Golickoff Golickoff
51 Сообщений
ilyay ilyay
44 Сообщений
AIFrame
42 Сообщений
Амал
30 Сообщений
Dethmontt Dethmontt
22 Сообщений
lansy
22 Сообщений
wise wise
21 Сообщений

* Кто онлайн

  • Точка Гостей: 159
  • Точка Скрытых: 0
  • Точка Пользователей: 7
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal