Имя: Пароль:
1C
1C 7.7
v7: запрос к документам получить сумму по услугам и товарам раздельно
,
0 zladenuw
 
19.07.12
15:22
как в запросе получить сумму по услугам и товарам раздельно ?
1 Guk
 
19.07.12
15:23
в ЗиКе?...
2 zladenuw
 
19.07.12
15:24
Комплексная для украины
3 1C_Enigma
 
19.07.12
15:24
если запрос.товар.видтовара = услуги
если запрос.товар.видтовара = товар
где-то так, по-моему
4 Рэйв
 
19.07.12
15:24
...
Выбор Когда Ссылка.ЭтоУслуга Тогда Сумма Иначе 0 Конец КАК СуммаУслуга
Выбор Когда НЕ Ссылка.ЭтоУслуга Тогда Сумма Иначе 0 Конец КАК СуммаТовар
5 Рэйв
 
19.07.12
15:25
ааа...v7
6 Рэйв
 
19.07.12
15:25
Сторно(4)
7 Guk
 
19.07.12
15:26
скорее всего услуга/товар - это признак номенклатуры. тогда в запросе
Функция СуммаУслуг = Сумма(Сумма) Когда Товар.ВидНоменклатуры = Услуга

как-то так...
8 zladenuw
 
19.07.12
15:27
точняк. функцию вызывать. спасибо (7)
9 zladenuw
 
19.07.12
15:35
хм. а как выводить сумму по товару если есть условие по выборке только услуг. а вообщем вот код.
   //Создание объекта типа Запрос
   Запрос = СоздатьОбъект("Запрос");
   ТекстЗапроса =
   "//{{ЗАПРОС(Сформировать)
   |Период с ВыбНачПериода по ВыбКонПериода;
   |Т_РасходнаяНакладная = Документ.Т_РасходнаяНакладная.ТекущийДокумент;
   |Фрм = Документ.Т_РасходнаяНакладная.Фирма;
   |Скл = Документ.Т_РасходнаяНакладная.Склад;  
   |Товар = Документ.Т_РасходнаяНакладная.Товар;
   |СуммаСНДС = Документ.Т_РасходнаяНакладная.СуммаСНДС;
   |Кол = Документ.Т_РасходнаяНакладная.Кво;
   |Функция ИтСумма = Сумма(СуммаСНДС) Когда (Товар.ВидТМЦ = Перечисление.ВидыТМЦ.Услуга);
   |Функция ИтСуммаТ = Сумма(СуммаСНДС) Когда (Товар.ВидТМЦ <> Перечисление.ВидыТМЦ.Услуга);
   |";
    Если ПустоеЗначение(Фирма)=0 Тогда
   ТекстЗапроса=ТекстЗапроса+"Условие (Фрм = Фирма);";    
    КонецЕсли;
   Если ПустоеЗначение(Склад)=0 Тогда
       Если Склад.ЭтоГруппа()=1 Тогда
           ТекстЗапроса=ТекстЗапроса+"Условие (Скл в Склад);";
       Иначе
            ТекстЗапроса=ТекстЗапроса+"Условие (Скл = Склад);";
       КонецЕсли;
       
   КонецЕсли;
//    Сообщить(ТекстЗапроса);
   Если  (ПоТоварам = 1) и (ПоУслуги = 1) Тогда
   ИначеЕсли  (ПоТоварам = 1) Тогда
       ТекстЗапроса = ТекстЗапроса+"
       |Условие (Товар.ВидТМЦ <> Перечисление.ВидыТМЦ.Услуга);";
   ИначеЕсли (ПоУслуги = 1) Тогда
           ТекстЗапроса = ТекстЗапроса+"
       |Условие (Товар.ВидТМЦ = Перечисление.ВидыТМЦ.Услуга);";
   КонецЕсли;
   ТекстЗапроса = ТекстЗапроса+"
   //|Условие (Товар.ВидТМЦ = Перечисление.ВидыТМЦ.Услуга);
   |Группировка Т_РасходнаяНакладная;
   |Группировка Товар без групп;
   |"//}}ЗАПРОС
   ;
   // Если ошибка в запросе, то выход из процедуры
   Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
       Возврат;
   КонецЕсли;
10 Ёпрст
 
19.07.12
15:38
за такие условия
|Условие (Товар.ВидТМЦ <> Перечисление.ВидыТМЦ.Услуга)

надо тапком
11 zladenuw
 
19.07.12
15:41
на скорую руку делаю, не надо тапком. исправлюсь :)
12 Ёпрст
 
19.07.12
15:43
(9) а какую сумму ты хочешь видеть, если в выборке будет что либо одно - товар/услуга..?
13 zladenuw
 
19.07.12
15:46
добавил две галки товар и услуга. хочу видеть в таком виде в макете
когда флагУслуга=1, то выборка по услугам, если фТовары то товары. но сумма показывает сколько ВсегоУслуг, ВсегоТовар, Всего

Накладная(Ссылка) (Итого Услуг) (Итог Товары)  (итого)
        Услуга (кол,Сумма)
                    Товар (кол,Сумма)

Как то так
14 Ёпрст
 
19.07.12
15:49
(13) дык , если ограничишь выборку только услугами, (Итог Товары) всегда будет =0
15 Ёпрст
 
19.07.12
15:50
и товаров там не будет вообще, токма услуги
16 zladenuw
 
19.07.12
15:51
да это понятно мне в шапку где ссылка на док надо сумму. это решил. есть общая сумма по документу - услуги вот и будут товары.
17 Ёпрст
 
19.07.12
15:53
(16) расшифруй.
18 zladenuw
 
19.07.12
15:55
вот так получаю сумма по товарам
?(Запрос.ИтСуммаТ=0,
Запрос.Т_РасходнаяНакладная.Итог("СуммаСНДС")-Запрос.ИтСумма,Запрос.ИтСуммаТ)#N019.4
19 Ёпрст
 
19.07.12
15:57
если че, выкини свои условия, дальше, при выводе.. если например, фильтруешь документы, где нужны только услуги, то смотришь, ежели Запрос. ИтСуммаТ =0 тогда пропускаешь документ по группировке документ (услуг в документе нема), далее аналогично отсеиваешь товары по группировке номенклатура.

От тут у тебя будет общая сумма по документу - и по товарам и по услугам
20 zladenuw
 
19.07.12
16:16
как скрыть колонку в макете ?