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

Запрос по документу

Автор xDee, 05 ноя 2011, 21:09

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

xDee

Доброго времени суток всем! Уважаемые, не могу реализовать запрос, конфа ТиС 9.2 , самописный документ реализации назван ЧекККМ (не моё). Написал запрос в котором вывожу артикул, номенклатуру, цену. скидку, сумму, все вроде хорошо, НО, просят вывести еще и поставщика номенклатуры, в документе ЧекККМ нет реквизита контрагент, точнее он есть но это покупатель а не поставщик. Как связать номенклатуру с поставщиком ? Подозреваю что еще одним запросом, но не пойму как. Уже второй день ломаю голову.

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

   Таб = СоздатьОбъект("Таблица");
   Таб.ИсходнаяТаблица("Сформировать");
   Таб.ВывестиСекцию("Заголовок");
   Состояние("Заполнение выходной таблицы...");
   Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0);
   НомСтр=0;
   ПечИтог = 0;
   Пока Запрос.Группировка(1) = 1 Цикл
      НомСтр = НомСтр + 1;
   Таб.ВывестиСекцию("Документ");
   Пока Запрос.Группировка(2) = 1 Цикл
      // Заполнение полей ЧекККМ
   Пока Запрос.Группировка(3) = 1 Цикл
      // Заполнение полей Номенклатура
   Пока Запрос.Группировка(4) = 1 Цикл
      // Заполнение полей Количество
   Пока Запрос.Группировка(5) = 1 Цикл
      // Заполнение полей Цена
   Пока Запрос.Группировка(6) = 1 Цикл
      // Заполнение полей Процент
   Пока Запрос.Группировка(7) = 1 Цикл
      // Заполнение полей Сумма
   Пока Запрос.Группировка(8) = 1 Цикл
      // Заполнение полей Артикул
   Таб.ВывестиСекцию("Строка");
КонецЦикла;
КонецЦикла;
КонецЦикла;
КонецЦикла;
КонецЦикла;
КонецЦикла;
КонецЦикла;
   КонецЦикла;
   Таб.ТолькоПросмотр(1);
   Таб.Показать("Сформировать", "");
КонецПроцедуры

1Cnastroika

Цитата: xDee от 05 ноя 2011, 21:09
Как связать номенклатуру с поставщиком ? Подозреваю что еще одним запросом, но не пойму как.


В зависимости от конфигурации поставщик может быть реквизитом справочника номенклатура, может быть измерением регистра остатков (если остатки хранятся в регистре, а не на бухгалтерском счете), либо учет по поставщикам вообще не ведется. Если учет по поставщикам не ведется, то нужно искать подходящий приходный документ и из него брать поставщика, но возможно, что не получится правильно определить от какого поставщика пришел данный товар.

TORN

надо найти партию, из которой списан товар и оттуда выдернуть.необязательно в теле запроса..

Теги:

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

Рейтинг@Mail.ru

Поиск