Запрос.

1. jeniks 19.12.16 11:06 Сейчас в теме
Ребят, подскажите как в запросе выбрать цену за один период текущую, а с другого деленную на 10000? 1С 7.7 Бух.

|Износ_ = Документ._АктСписаниеСпецодежды.Износ;

чтобы отображалось до деноминации поделенная, а после не делалось.

Вот это для суммы работает:

|Функция СуммаИ=Сумма(Сумма_) Когда (ДатаП >= Д); 
|Функция СуммаИ_=Сумма(Сумма_/10000) Когда (ДатаП < Д); 
|Функция ИзносИ=Сумма(Износ_) Когда (ДатаП >= Д);
|Функция ИзносИ_=Сумма(Износ_/10000) Когда (ДатаП < Д);
+
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. jeniks 20.12.16 09:57 Сейчас в теме
Запрос:
Перем Расшифровка;
Процедура Сформировать()
	Запрос  = СоздатьОбъект("Запрос");
	
	ТекстЗапроса = 
	"//{{ЗАПРОС(Счета10.11)
	|Период с ВыбНачПериода по ВыбКонПериода;
	|ОбрабатыватьДокументы проведенные;
	|Док =  Документ._АктСписаниеСпецодежды.ТекущийДокумент; 
	|ДатаДок =   Документ._АктСписаниеСпецодежды.ДатаДок;
	|НомерДок =  Документ._АктСписаниеСпецодежды.НомерДок;
	|Склад=      Документ._АктСписаниеСпецодежды.ВыбСотрудник;  
	|Контрагент= Документ._АктСписаниеСпецодежды.Субконто4;
	|Сумма_= Документ._АктСписаниеСпецодежды.НепогашеннаяСтоимость;  
	|СрокИсп= Документ._АктСписаниеСпецодежды.Срок;  
 	|Кол_во =  Документ._АктСписаниеСпецодежды.Количество;
	|Износ_ =  Документ._АктСписаниеСпецодежды.Износ;
	|Остат =  Документ._АктСписаниеСпецодежды.Остаточная;
	|Материал= Документ._АктСписаниеСпецодежды.Материал;  
	|Ном = Документ._АктСписаниеСпецодежды.НомерСтроки;


	|Функция СуммаИ=Сумма(Сумма_); 
	|Функция ИзносИ=Сумма(Износ_); 
	|Функция ОстатИ=Сумма(Остат); 
	

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

	
	Пока Запрос.Группировка(1)=1 Цикл 
		
		Таб.ВывестиСекцию("Поставщик");  
		Пока Запрос.Группировка(2)=1 Цикл  
			Пока Запрос.Группировка(3)=1 Цикл  
			Пока Запрос.Группировка(4)=1 Цикл  
				
				Таб.ВывестиСекцию("Наименование");
				
			КонецЦикла;	
			КонецЦикла;	
		КонецЦикла;	
	КонецЦикла;	
    Таб.ВывестиСекцию("Подвал");
	Таб.ТолькоПросмотр(1);
	Таб.Показать("Справка по ответственому");

	СохранитьЗначение("ЯСоставил",ОтчетСоставил);  

КонецПроцедуры
Процедура ПриОткрытии()
	ВыбНачПериода=НачМесяца(РабочаяДата());
	ВыбКонПериода=КонМесяца(рабочаяДата());

	ОтчетСоставил = ВосстановитьЗначение("ЯСоставил");    
	
КонецПроцедуры
Показать


А для 7 это конструкция ВЫБОР КОГДА работает?
+
6. S.V.Y 17 20.12.16 10:53 Сейчас в теме
2. AnnaKalacheva 6 20.12.16 09:11 Сейчас в теме
Используем конструкцию ВЫБОР КОГДА. Здесь ДатаДеноминации.Значение- константа, можно передать как параметр.

ВЫБРАТЬ
	Закупки.Количество КАК Количество,
	ВЫБОР
			КОГДА Закупки.ЗаказПоставщику.Дата <= ДатаДеноминации.Значение
					И &ДатаКон >= ДатаДеноминации.Значение
					И Закупки.ДоговорКонтрагента.ВалютаВзаиморасчетов = &Валюта
				ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(Закупки.СтоимостьВВалютеВзаиморасчетов, 0) / 10000 КАК ЧИСЛО(15, 2))
			ИНАЧЕ ЕСТЬNULL(Закупки.СтоимостьВВалютеВзаиморасчетов, 0)
		КОНЕЦ КАК Стоимость,
Показать
+
5. vovan_victory 63 20.12.16 10:00 Сейчас в теме
(2)Запрос нужен для семерки..
+
3. AnnaKalacheva 6 20.12.16 09:14 Сейчас в теме
&ДатаКон - дата конца периода формирования отчета
+
7. jeniks 21.12.16 10:11 Сейчас в теме
А если не использовать запрос, как перебирая документы это реализовать? :)
+
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот