|
Бух. Помогите оптимизировать отчет по продажам | ☑ | ||
---|---|---|---|---|
0
vfrcbv
21.03.16
✎
12:19
|
Добрый день.
Необходимо сделать отчет по продажам, чтобы увидеть за определенный период: когда покупателю была отгружена продукция, какая, в каком количестве и цене. С помощью запроса по 62.01 получил покупателей и документы реализации за необходимый период: ВЫБРАТЬ ХозрасчетныйОбороты.Субконто1, ХозрасчетныйОбороты.Субконто3 ИЗ РегистрБухгалтерии.Хозрасчетный.Обороты(&НачалаПериода, &КонецПериода, , Счет = &Счет, , , , ) КАК ХозрасчетныйОбороты УПОРЯДОЧИТЬ ПО ХозрасчетныйОбороты.Субконто1.Наименование далее в выборке результата запроса планирую вытянуть по документам с помощью другого запроса: информацию о продукции, количестве и цене. Однако чувствую, что это не самый оптимальный способ решение задачи. Подскажите пожалуйста, как можно оптимизировать отчет... |
|||
1
asady
21.03.16
✎
12:44
|
(0) зачем в другом это делать?
делай в одном |
|||
2
dubraver
21.03.16
✎
12:57
|
Сначала необходимо написать отчет выдающий корректные данные.
Далее с помощью средств анализа (замеры времени, план запроса, количество чтений, cpu duration и т.д.), необходимо понять нужно ли делать оптимизацию. Если на текущий момент отчет работает "допустимо" быстро для заказчика. Оставить все как есть. |
|||
3
AceVi
21.03.16
✎
13:06
|
(1) Вот правильно человек пишет - делай в 1. потом просто пропиши Итоги по и в первую выборку ОбходРезультатаЗапроса.ПоГруппировкам. Будет тоже самое только все в 1 запросе и не будет у тебя запроса в цикле, он считается плохим кодом.
|
|||
4
mehfk
21.03.16
✎
13:08
|
(0) Заведи регистр Продажи в конфигурации.
|
|||
5
vfrcbv
21.03.16
✎
13:30
|
(3) >потом просто пропиши Итоги по и в первую выборку ОбходРезультатаЗапроса.ПоГруппировкам.
можно чуть поподробнее? |
|||
6
VIrina
21.03.16
✎
13:49
|
(0) Универсальный отчет не пробовали?
|
|||
7
vfrcbv
21.03.16
✎
14:19
|
Написал, одним запросом как посоветовал (1). Результат получился, тот что требовался.
ВЫБРАТЬ ХозрасчетныйОбороты.Субконто1, ХозрасчетныйОбороты.Субконто3 ПОМЕСТИТЬ Продажи ИЗ РегистрБухгалтерии.Хозрасчетный.Обороты(&НачалаПериода, &КонецПериода, , Счет = &Счет, , , , ) КАК ХозрасчетныйОбороты ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РеализацияТоваровУслугТовары.Ссылка.Контрагент, РеализацияТоваровУслугТовары.Ссылка.Дата, РеализацияТоваровУслугТовары.Номенклатура, РеализацияТоваровУслугТовары.Количество, РеализацияТоваровУслугТовары.Цена ИЗ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары ГДЕ РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &НачалаПериода И &КонецПериода УПОРЯДОЧИТЬ ПО РеализацияТоваровУслугТовары.Ссылка.Контрагент.Наименование Скажите пожалуйста, нормальный запрос получился или можно, что-то улучшить? |
|||
8
FIXXXL
21.03.16
✎
14:22
|
(7) и как связаны первый и второй запросы?
|
|||
9
vfrcbv
21.03.16
✎
14:27
|
(8) У субконто3 счета 62.01 - документ РеализацияТоваровУслуг, взята табличная часть документа.
|
|||
10
AceVi
21.03.16
✎
14:39
|
(9) Пиши так
ГДЕ РеализацияТоваровУслугТовары.Ссылка В (ВЫБРАТЬ Продажи.Субконто3 ИЗ Продажи) Вместо условия по датам. По жатам в твоем случае будет ошибкой отбирать. ведь тогда ты выберешь и непроведенные документы и помеченные на удаление. |
|||
11
AceVi
21.03.16
✎
14:41
|
(7) и возьми за правило, в начале названия временных таблиц пиши "вт"(втПродажи) в больших запросах легче будет разбираться.
|
|||
12
vfrcbv
21.03.16
✎
14:47
|
(11) Спасибо!
|
|||
13
FIXXXL
21.03.16
✎
14:51
|
(9) в тексте запроса где связь то?
делай как (10) советует :) |
|||
14
mehfk
21.03.16
✎
15:12
|
(0) В БП 3.0 есть отчет продажи :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |