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

Автор Тема: Помогите с запросом на выборку товаров  (Прочитано 3227 раз)

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

Оффлайн ITShef

  • *
  • Сообщений: 9
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-08-15
  • Сайт: 
Исходные:
1С 7.7 Торговля и склад

У меня есть следующая задача:
Необходимо составить список ВСЕХ товаров (номенклатур) и определить их цену и количество остатка на складе.

Я составил запрос:

 Если ТипыЦен.НайтиПонаименованию("Розничные",0,1) = 1 тогда
    РознЦена = ТипыЦен.ТекущийЭлемент()
  КонецЕсли;

Запрос = СоздатьОбъект("Запрос"); 
ТекстЗапроса =
    "//{{ЗАПРОС(Сформировать)
    |Период с ДатаКонца по ДатаКонца;
    |Номенклатура    = Регистр.ОстаткиТМЦ.Номенклатура;     
    |Склад            = Регистр.ОстаткиТМЦ.Склад;             
    |Количество = Регистр.ОстаткиТМЦ.Количество;
    |Функция КоличествоКонОст = КонОст(Количество);   
    |Condition (Склад в ВыбСклад);  // если необходимо   
    |Группировка Номенклатура;";
    Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
        Возврат;                               
    КонецЕсли;                                 
    Пока (Запрос.Группировка("Номенклатура") = 1)  Цикл 
        ТМЦ = Запрос.Номенклатура;
        Если Запрос.ЭтоГруппа("Номенклатура") = 0 Тогда 
             Кол = Запрос.КоличествоКонОст;
         глВернутьЦену(ТМЦ,РознЦена,РабочаяДата(),ОбЦена, ЕдИзм, ВалЦены);
        КонецЕсли;     
      Если ПустоеЗначение(ОбЦена) = 0 Тогда
        Цена1 = ОбЦена;
      Иначе
        Цена1 = 0;
      КонецЕсли;
      Сообщить(ТМЦ.Наименование);
      Сообщить(ЕдИзм);
      Сообщить(Цена1);
       Сообщить(Кол);
  КонецЦикла;

Он выбирает товары, определяет количество, НО! Но не все товары почему-то попадаются ему. Те товары, остаток которых 0 - просто игнорируются запросом, а мне нужны абсолютно все товары, которые есть в справочнике номенклатур. Помогите исправить запрос


Оффлайн Tatitutu

Цитировать
а мне нужны абсолютно все товары, которые есть в справочнике номенклатуры
твой ответ у тебя в вопросе !
зачем делать запрос по регистру остатков
нужен запрос по справочнику.Номенкулатура

или простый перебор
СпрН=СоздатьОбъект("Справочник.Номенклатура");   
СпрН.ВыбратьЭлементы();
Пока СпрН.ПолучитьЭлемент() = 1 Цикл
   Если СпрН.ЭтоГруппа()=1 Тогда
      Продолжить;
   КонецЕсли;
   //твои вычисления
КонецЦикла;

*  MAGAZKA - лучшая программа для розничного магазина (с) *

Оффлайн DenPlus

  • ***
  • Сообщений: 106
  • РЕПУТАЦИЯ: 64
  • КПД: 60%
  • Регистрация: 2010-10-27
  • Компания: www.cosmocat.ru
|Группировка Номенклатура;";

Заменит на

|Группировка Номенклатура Все;";

Оффлайн DenPlus

  • ***
  • Сообщений: 106
  • РЕПУТАЦИЯ: 64
  • КПД: 60%
  • Регистрация: 2010-10-27
  • Компания: www.cosmocat.ru
А чтобы при обработке запроса не проверять, "что это Группа", то лучше тогда стазу:

|Группировка Номенклатура Все Без Групп;";

Оффлайн ITShef

  • *
  • Сообщений: 9
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-08-15
  • Сайт: 
Большое спасибо! дописать все - помогло.
Группы мне тоже нужны


Теги:
 


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

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

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


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

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
160 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
56 Сообщений
alex0402
46 Сообщений
andron81_81
44 Сообщений
AIFrame
35 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
Golickoff Golickoff
28 Сообщений
BuhRust
27 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal