новое событие
Информационный поток
Задания вакансии материалы разработки сообщения форума
Форум

проблема с запросом

    • #1
    • 07.03.2016 22:13
    0
    Сказали сделать обращение к результату запроса без цикла. Это как? Выборка=Запрос.Выполнить(); ТЗ=Выборка.Выбрать(); пост=""; орг=""; склад=""; //Для каждого строкатаблицы из тз Цикл Пока ТЗ.Следующий() Цикл //сообщить(строка(тз.Получить(сч))); Попытка //выборка2=тз.Получить(сч); Если (тз.заказать)<>0 тогда Док1=Документы.ЗаказПоставщику; Если НЕ((пост=тз.поставщик)и(орг=тз.организация)и(склад=тз.склад))или ((пост="")и(орг="")и(склад="")) тогда Док=Док1.СоздатьДокумент(); пост=тз.поставщик; орг=тз.организация; склад=тз.склад ; конецесли; док.Дата=ТекущаяДата(); док.Склад=тз.склад; док.Организация=тз.организация; док.ВалютаДокумента= Константы.ВалютаРегламентированногоУчета; док.Контрагент=тз.поставщик; док.ДоговорКонтрагента=тз.поставщик.ОсновнойДоговорконтрагента; Док.ДатаОплаты=Док.Дата+Док.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности*84600; Док.ДатаПоступления=Док.Дата+Док.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности*84600; стр=док.Товары.Добавить(); стр.ЕдиницаИзмерения=тз.номенклатура.базоваяединицаизмерения; стр.Количество=тз.заказать; стр.Номенклатура=тз.номенклатура; Док.Записать(); КонецЕсли; исключение Конецпопытки; КонецЦикла;
    • #2
    • 07.03.2016 22:20
    0
    Это когда все условия можно запихнуть в запрос.
    • #3
    • 07.03.2016 22:26
    0
    Задача такая получить из регистра номенклатуру которую нужно дозаказывать, поэтому смотрим регистр остатки товарыорганизаций. Номенклатуры несколько. Получаеться несколько строк. Как тут без цикла справиться?
    • #4
    • 07.03.2016 22:27
    +1
    вы за каждую итерацию цикла Создаетет документ. Это правильно?
    • #5
    • 07.03.2016 22:29
    • Отредактировано: 07.03.2016 22:31:04
    0
    Документ создаеться когда новый поставщик, организация. По поставщику сортировка, меняеться создаем док.
    • #6
    • 07.03.2016 22:31
    0
    1. используйте в запросе ИТОГИ ПО и обрабатывайте выборку по группировкам.
    2. условие по Если (тз.заказать)<>0 тогда можно и в запрос.
    • #7
    • 07.03.2016 22:41
    0
    Итоги по понятно вконце вместо сгруппировать и поля пишем. А второе как в код добавить?
    • #8
    • 07.03.2016 22:43
    0
    запроса не вижу, но скорей всего есть там поле "Заказать".
    вот и пишите
    "..... ГДЕ Заказать<>0".
Для участия в обсуждении Вам необходимо авторизоваться либо   зарегистрироваться