Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 17:44

Не выполняется запрос к регистру нкопления

Автор Серёжа Сухинин, 11 мая 2018, 20:45

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

Серёжа Сухинин

Доброго времени суток, столкнулся с такой проблемой, не получается выбрать данные из регистра накопдения

&НаКлиенте
Процедура ТабличнаяЧасть1Выбор1ПриИзменении(Элемент)
СтрокаТабличнойЧасти =Элементы.ТабличнаяЧасть1.ТекущиеДанные;
Если  СтрокаТабличнойЧасти.Выбор1 = Истина Тогда
   ТабличнаяЧасть1Выбор1ПриИзмененииНаСервере(СтрокаТабличнойЧасти.НаименованиеДетали,СтрокаТабличнойЧасти.шт,Объект.Дата);
ИначеЕсли СтрокаТабличнойЧасти.Выбор1 = Ложь Тогда
Удалить(СтрокаТабличнойЧасти.НаименованиеДетали);
конецЕсли
КонецПроцедуры

&НаСервере
Процедура ТабличнаяЧасть1Выбор1ПриИзмененииНаСервере(Комплект,шт,дата)
ЭлементСправочника = Справочники.Спецификация.НайтиПоНаименованию(Комплект);
Для Каждого ТекущаяСтрока Из ЭлементСправочника.ТабличнаяЧасть1 Цикл
сп = Объект.Спец1.Добавить();
сп.НаименованиеПродукции = Комплект;
сп.НаименованиеДетали = ТекущаяСтрока.Комплектующие;
ЭлементСправочника1 = Справочники.Номенклатура.НайтиПоНаименованию(сп.НаименованиеДетали);
сп.Склад = ЭлементСправочника1.Склад;
сп.Количество = ТекущаяСтрока.Шт*шт;
Запрос = Новый Запрос;
Запрос.Текст =
        "ВЫБРАТЬ
        | ОстаткиМатериаловОстатки.материал,
    |   ОстаткиМатериаловОстатки.Склад,
    |   ОстаткиМатериаловОстатки.КоличествоОстаток
        |ИЗ
        |   РегистрНакопления.ОстаткиМатериалов.Остатки(
        |       &ВыбДата,
        |       Материал = &ВыбНоменклатура И
|       Склад = &ВыбСклад
|   ) КАК ОстаткиМатериаловОстатки";

Запрос.УстановитьПараметр("ВыбДата",
    Новый Граница(дата, ВидГраницы.Включая)
);
Запрос.УстановитьПараметр("ВыбНоменклатура",
        Справочники.Номенклатура.НайтиПоНаименованию(ТекущаяСтрока.Комплектующие)
    );
Запрос.УстановитьПараметр("ВыбСклад",
    Справочники.Склады.НайтиПоНаименованию(ЭлементСправочника1.Склад)
);

    РезультатЗапроса = Запрос.Выполнить();
    Записи = РезультатЗапроса.Выбрать();
Пока Записи.Следующий() Цикл
сп.ОстатокНаСкладе = Записи.КоличествоОстаток;
КонецЦикла;
КонецЦикла;
КонецПроцедуры

не выполняется только пункт


Пока Записи.Следующий() Цикл
сп.ОстатокНаСкладе = Записи.КоличествоОстаток;
КонецЦикла;

так как Записи.Следующий() = ЛОЖЬ
хотя в самом регистре сведений присутствуют записи


Подскажите в чем проблема?
ошибок не выдает

has


alex0402

Цитата: Серёжа Сухинин от 11 мая 2018, 20:45Запрос.УстановитьПараметр("ВыбНоменклатура",
        Справочники.Номенклатура.НайтиПоНаименованию(ТекущаяСтрока.Комплектующие)
    );
    Запрос.УстановитьПараметр("ВыбСклад",
        Справочники.Склады.НайтиПоНаименованию(ЭлементСправочника1.Склад)
    );

ТекущаяСтрока.Комплектующие и ЭлементСправочника1.Склад - это что?
лучше, если это будет ссылка и


Запрос.УстановитьПараметр("ВыбНоменклатура",ТекущаяСтрока.Комплектующие);
Запрос.УстановитьПараметр("ВыбСклад",ЭлементСправочника1.Склад);
Спасибо за Сказать спасибо

Серёжа Сухинин

Цитата: has от 14 мая 2018, 08:23
Параметры запроса корректные?

Добавлено: 15 мая 2018, 08:06


Цитата: alex0402 от 14 мая 2018, 09:26лучше, если это будет ссылка и
все равно не робит,



oleg-x

Запрос работает, только ничего не находит. Так как по тем параметрам, которые были переданы ничего не нашлось. Смотрите через отладку, какие параметры передаются в запрос и все станет ясно.
Помог, нажми спасибо. Не помог, нажми спасибо :-)
Если у Вас есть проблема, то её уже кто то решил @Yandex, @Google

ilyay

Виртуальная таблица использует таблицу итогов. Что у вас с итогами?

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск