Имя: Пароль:
1C
 
1C77 ТИС запрос количество проданного товара
0 geniusbsd
 
11.10.17
10:40
День добрый делаю отчет по продажам по группам

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

Кол проданого товара не совпадает с количеством который фомирует встроенный отчет по  продажам(В моем отчете в 2 раза больше). Что я делаю не правильно
1 Ёпрст
 
11.10.17
10:44
(0)вот это что ?
ПечРасходОстатокТовара=Строка(Запрос.РасхОстатокТовара-Запрос.ПрихОстатокТовара)+ " шт";
2 Builder
 
11.10.17
10:47
(1) Явное преобразование в строку :)
(0) Смотри условия в типовом запросе, там наверняка их побольше.
3 geniusbsd
 
11.10.17
10:49
ПечРасходОстатокТовара Это строка в печатной форме
4 Ёпрст
 
11.10.17
10:51
(3) Пилять, отнимая расход от Прихода, ты какой смысл  в это вкладываешь ?
5 Ёпрст
 
11.10.17
10:51
И что потом с чем сравниваешь ?
6 Базис
 
naïve
11.10.17
10:52
Разделил Упр и Фин?
7 Zypse
 
11.10.17
10:53
1. Типовой отчет по продажам использует регистр "Продажи" ,а не "Партии".  Партии более громоздкий и тормозной регистр
2. Если уж преспичело использовать партии - нужно отсекать по виду операции приходы, перемещения и проч.
8 Ёпрст
 
11.10.17
10:53
И если че, типовой отчет считает приход и расход по кодам операций, чтоб не учитывались, например, перемещения со склада на склад и т.д.
9 Convert
 
11.10.17
10:53
(0) Регистр партиитоваров содержит не только продажи, но и перемещения, списания и прочие движения.
Возьми регистр Продажи
10 Builder
 
11.10.17
10:55
Тут же регистр "партии", на них складов нет. Но всякая фигня типа списания есть.
Да и приход из расхода вычитать - это сильно.
11 VladZ
 
11.10.17
10:56
(0) И не будет совпадать. См. регистр "Продажи"
12 VladZ
 
11.10.17
10:56
И еще вопрос: зачем понадобилось что-то писать, когда есть стандартный отчет по продажам?
13 Масянька
 
11.10.17
10:57
Извините, что я приперлась, но - чем не устраивает стандартный "Отчет по продажам ТМЦ"?
14 Масянька
 
11.10.17
10:57
(12) Не надо красть мои мысли....
15 geniusbsd
 
11.10.17
11:03
(4) Эту строку я подсмотрел в типвом отчете
16 geniusbsd
 
11.10.17
11:04
(11) Типовый отчет берет из регистра партий
17 Ёпрст
 
11.10.17
11:05
(15) в типовом отчете таких строк нет
18 Ёпрст
 
11.10.17
11:06
Ибо в типовых, нигде не используется функция Строка
19 geniusbsd
 
11.10.17
11:06
(13) (12) В стандартном отчете нет разделения по группам товара, если в множественом фильтре выбрать несколько групп, то все валится в одну кучу
20 Ёпрст
 
11.10.17
11:06
ну и такой бред, там не могли написать
21 Ёпрст
 
11.10.17
11:07
(19) брехня.
В анализеПродаж всё и так есть
22 Масянька
 
11.10.17
11:10
(19) Группа товара - это что?
23 geniusbsd
 
11.10.17
11:12
Торговля и склад для украины 7.70.008
24 geniusbsd
 
11.10.17
11:14
(22) Это группа в справочнике номенклатуры
25 Масянька
 
11.10.17
11:16
(24) Ты хочешь мне сказать, что в стандартном отчете нет выбора группы? Ложь.
26 VladZ
 
11.10.17
11:20
ТИС для Украины не видел. В стандартной ТИС продажи проходят по регистру "Продажи". В партиях нужно фильтровать движения по видам. Там могут быть перемещения / списания / продажи и прочее.
27 Ёпрст
 
11.10.17
11:20
(25) см (23) - там может быть что угодно
:)
28 Масянька
 
11.10.17
11:21
(27) "Москаль мени ни брат" (С) - "За что боролись - на то и напоролись" (С)
29 geniusbsd
 
11.10.17
11:24
(25) Там Есть выбор групп, но в печатной форме нет разделения на группы
30 Ёпрст
 
11.10.17
11:25
(29) возьми готовый отчет АнализПродаж с российчкой ТиС, переделай текст запроса, наслаждайся
31 geniusbsd
 
11.10.17
11:28
Вот сей час ставлю буду смотреть
32 Масянька
 
11.10.17
11:29
(29) А "Анализа продаж" нет?
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший