|
v7: Помогите подправить код | ☑ | ||
---|---|---|---|---|
0
Aldnepr
27.05.13
✎
19:10
|
В цикле не хотят вычислятся вот эти переменные
//********************************************************** Если (Запрос.ТекущийДокумент.ДатаДок >= (Дата1 - МалоДней)) Тогда тбТовар.МалоКолво = Запрос.РасходКвоСумма; тбТовар.МалоСумма = Запрос.РасходОснСумма; КонецЕсли; //********************************************************** Процедура Сформировать() Перем Запрос, ТекстЗапроса; НачДата = Дата1 - МногоДней; КонДата = Дата1; //Создание объекта типа Запрос Запрос = СоздатьОбъект("Запрос"); ТекстЗапроса = "//{{ЗАПРОС(Обороты) |Период с НачДата по КонДата; |Фирма = Регистр.Обороты.Фирма; |Клиент = Регистр.Обороты.Покупатель; |ТМЦ = Регистр.Обороты.Товар; // |Менеджер = Регистр.Обороты.Менеджер; |РасходГрн = Регистр.Обороты.РасходСум; |РасходОсн = Регистр.Обороты.РасходСум; |РасходКво = Регистр.Обороты.РасходКво; |ТекущийДокумент = Регистр.Обороты.ТекущийДокумент; |НомерСтроки = Регистр.Обороты.НомерСтроки; |ПриходГрн = Регистр.Обороты.ПриходСум; |ПриходОсн = Регистр.Обороты.ПриходСум; |ПриходКво = Регистр.Обороты.ПриходКво; |ДоходГрн = Регистр.Обороты.Доход; // |ДоходОсн = Регистр.Обороты.ДоходОсн; |Функция РасходКвоСумма = Сумма(РасходКво); |Функция РасходОснСумма = Сумма(РасходГрн); |Функция РасходГрнСумма = Сумма(РасходГрн); |Группировка Клиент без групп; |Группировка ТМЦ упорядочить по ТМЦ.Наименование без групп; |Группировка День; |Условие(Фирма = ВыбФирма); |Условие(Клиент в ВыбКлиент); |"//}}ЗАПРОС ; // Если ошибка в запросе, то выход из процедуры Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда Возврат; КонецЕсли; тбТовар = СоздатьОбъект("ТаблицаЗначений"); тбТовар.НоваяКолонка("Клиент","Справочник.Контрагенты"); тбТовар.НоваяКолонка("ТМЦ","Справочник.ТМЦ"); тбТовар.НоваяКолонка("МногоКолво", "Число",12,4); тбТовар.НоваяКолонка("МногоСумма","Число",12,2); тбТовар.НоваяКолонка("МалоКолво", "Число",12,4); тбТовар.НоваяКолонка("МалоСумма","Число",12,2); // Подготовка к заполнению выходных форм данными запроса Пока Запрос.Группировка(1) = 1 Цикл Пока Запрос.Группировка(2) = 1 Цикл тбТовар.НоваяСтрока(); тбТовар.Клиент = Запрос.Клиент; тбТовар.ТМЦ = Запрос.ТМЦ; тбТовар.МногоКолво = Запрос.РасходКвоСумма; тбТовар.МногоСумма = Запрос.РасходОснСумма; Если (Запрос.ТекущийДокумент.ДатаДок >= (Дата1 - МалоДней)) Тогда тбТовар.МалоКолво = Запрос.РасходКвоСумма; тбТовар.МалоСумма = Запрос.РасходОснСумма; КонецЕсли; КонецЦикла; КонецЦикла; //********************************************************************** |
|||
1
ivanov-i-i
27.05.13
✎
19:17
|
А где у тебя задается значение МалоДней?
|
|||
2
Тьма
27.05.13
✎
19:19
|
тбТовар.МалоКолво = 0;
тбТовар.МалоСумма = 0; Пока Запрос.Группировка(3) = 1 Цикл Если (Запрос.День >= (Дата1 - МалоДней)) Тогда тбТовар.МалоКолво = тбТовар.МалоКолво + Запрос.РасходКвоСумма; тбТовар.МалоСумма = тбТовар.МалоСумма + Запрос.РасходОснСумма; КонецЕсли; КонецЦикла; |
|||
3
ivanov-i-i
27.05.13
✎
19:21
|
+(1) У тебя как я понимаю на форме два реквизита: МногоДней и МалоДней, или нет?
|
|||
4
Aldnepr
27.05.13
✎
19:26
|
Да. На форме два реквизита МногоДней и МалоДней. В итоговую таблицу должен выводится оборот Клиента за "МногоДней" и "МалоДней". (для сравнения что покупал скажем за 30 дней и за последнюю неделю). Так вот оборот за "МногоДней" выводится, а за "МалоДней" нет((.
|
|||
5
ivanov-i-i
27.05.13
✎
19:31
|
Ну я бы в первую очередь посмотрел бы в отладчике, что получается в левой и правой частях этого неравенства:
Если (Запрос.ТекущийДокумент.ДатаДок >= (Дата1 - МалоДней)) Тогда |
|||
6
Aldnepr
27.05.13
✎
19:39
|
СПАСИБО "Тьма". Все заработало! И Вам Иван Иваныч тоже ).
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |