powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / Отчет по продажам в дни скидок.
15 сообщений из 15, страница 1 из 1
Отчет по продажам в дни скидок.
    #38604581
LittleLoya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет!

Есть отчет, который на основании Док-та "УстановкаСкидокНоменклатуры" создаёт отчет по продажам в дни скидок (дни и номенклатуру дёргает из документа, после чего формирует стандартный отчет "Продажи"). Подскажите, пожалуйста, как сделать, чтоб в отчете отображались все товары из документа, а не только те, что были проданы в период акции? УТ 10.3. Если можно, поподробней, а то я в 1С-е полный нуб. :(

Заранее благодарна.
...
Рейтинг: 0 / 0
Отчет по продажам в дни скидок.
    #38607342
Фотография Владимир Лазурко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LittleLoyaа то я в 1С-е полный нубНу ведь что-то ж умеете в 1С?

LittleLoyaПодскажите, пожалуйста, как сделать, чтоб в отчете отображались все товары из документа, а не только те, что были проданы в период акции?Сделайте левое соединение товаров из документа с продажами (документ слева - на рисунке таблица f1 , продажи справа - на рисунке таблица f2 )


Источник
...
Рейтинг: 0 / 0
Отчет по продажам в дни скидок.
    #38607346
Фотография Владимир Лазурко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пардон, авторСделайте левое соединение товаров из документа с продажами (документ слева - на рисунке таблица f1, продажи справа - на рисунке таблица f2)правильно так:
Сделайте левое соединение товаров из документа переоценки с продажами (документ слева - на рисунке таблица f1, продажи справа - на рисунке таблица f2)
...
Рейтинг: 0 / 0
Отчет по продажам в дни скидок.
    #38607375
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир Лазурко, правый полуоткрытый защитник Я то думал они в футбол играют... а теперь понял что бд лепят.
...
Рейтинг: 0 / 0
Отчет по продажам в дни скидок.
    #38607539
Фотография Владимир Лазурко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программист 1справый полуоткрытый защитникЯ тоже так думал. Только здесь "соединение". Наверно, это копипаста с буржуйского
...
Рейтинг: 0 / 0
Отчет по продажам в дни скидок.
    #38609111
LittleLoya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владимир ЛазуркоНу ведь что-то ж умеете в 1С?
Неа...
Я тока тока начинаю что-то уметь... И то не особо успешно. :(

Вот я кое что наваяла в консоли отчетов, показывает все товары из документа "УстановкаСкидокНоменклатуры" и продажи по ним, если они были. Правда не сходится со стандартным отчетом "Продажи". Не знаю, почему.

Но запрос такой:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
ВЫБРАТЬ
	ВложенныйЗапрос.Номенклатура КАК Номенклатура,
	СУММА(ПродажиОбороты.КоличествоОборот) КАК КоличествоОборот,
	СУММА(ПродажиОбороты.СтоимостьОборот) КАК СтоимостьОборот,
	ВложенныйЗапрос.Номенклатура.Производитель,
	ВложенныйЗапрос.Номенклатура.Артикул
ИЗ
	(ВЫБРАТЬ
		УстановкаСкидокНоменклатурыТовары.Номенклатура КАК Номенклатура
	ИЗ
		Документ.УстановкаСкидокНоменклатуры.Товары КАК УстановкаСкидокНоменклатурыТовары
	ГДЕ
		УстановкаСкидокНоменклатурыТовары.Ссылка.ДатаНачала = &НачДата
		И УстановкаСкидокНоменклатурыТовары.Ссылка.ДатаОкончания = &КонДата
	
	СГРУППИРОВАТЬ ПО
		УстановкаСкидокНоменклатурыТовары.Номенклатура) КАК ВложенныйЗапрос
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи.Обороты(, , , ) КАК ПродажиОбороты
		ПО ВложенныйЗапрос.Номенклатура = ПродажиОбороты.Номенклатура

СГРУППИРОВАТЬ ПО
	ВложенныйЗапрос.Номенклатура,
	ВложенныйЗапрос.Номенклатура.Производитель,
	ВложенныйЗапрос.Номенклатура.Артикул
ИТОГИ
	СУММА(КоличествоОборот),
	СУММА(СтоимостьОборот)
ПО
	ОБЩИЕ,
	Номенклатура


Ухом чую, что где-то налажала, тока не знаю где. Запуталась окончательно...

Тыкните, пожалуйста, носом, где я что не так сделала, и почему? (В смысле, почему нужно делать так и так, а не так, как сделала я).

Заранее благодарна!
...
Рейтинг: 0 / 0
Отчет по продажам в дни скидок.
    #38610596
LittleLoya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Фсё, почти разобралась, всем спасибы!
...
Рейтинг: 0 / 0
Отчет по продажам в дни скидок.
    #38610906
Фотография Владимир Лазурко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LittleLoyaФсё, почти разобралась, всем спасибы!Ффух! А какое решение проблемы?
...
Рейтинг: 0 / 0
Отчет по продажам в дни скидок.
    #38614817
LittleLoya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владимир Лазурко,
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
ВЫБРАТЬ
	ВложенныйЗапрос.КоличествоОборот КАК КоличествоОборот,
	ВложенныйЗапрос.СтоимостьОборот КАК СтоимостьОборот,
	УстановкаСкидокНоменклатурыТовары.Номенклатура,
	УстановкаСкидокНоменклатурыТовары.Номенклатура.Производитель КАК Производитель,
	УстановкаСкидокНоменклатурыТовары.Номенклатура.Артикул КАК Артикул
ИЗ
	Документ.УстановкаСкидокНоменклатуры.Товары КАК УстановкаСкидокНоменклатурыТовары
		ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
			ПродажиОбороты.Номенклатура КАК Номенклатура,
			ПродажиОбороты.КоличествоОборот КАК КоличествоОборот,
			ПродажиОбороты.СтоимостьОборот КАК СтоимостьОборот,
			ПродажиОбороты.ДокументПродажи.Дата КАК ДокументПродажиДата
		ИЗ
			РегистрНакопления.Продажи.Обороты КАК ПродажиОбороты
		ГДЕ
			ПродажиОбороты.ДокументПродажи.Дата >= &НачДата
			И ПродажиОбороты.ДокументПродажи.Дата <= &КонДата) КАК ВложенныйЗапрос
		ПО УстановкаСкидокНоменклатурыТовары.Номенклатура = ВложенныйЗапрос.Номенклатура
ГДЕ
	УстановкаСкидокНоменклатурыТовары.Ссылка = &СсылкаНаОбъект

СГРУППИРОВАТЬ ПО
	УстановкаСкидокНоменклатурыТовары.Номенклатура,
	ВложенныйЗапрос.КоличествоОборот,
	ВложенныйЗапрос.СтоимостьОборот,
	УстановкаСкидокНоменклатурыТовары.Номенклатура.Производитель,
	УстановкаСкидокНоменклатурыТовары.Номенклатура.Артикул


Вот так. Вроде даже правильно работает...
...
Рейтинг: 0 / 0
Отчет по продажам в дни скидок.
    #38614915
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LittleLoya,
Вроде даже правильно работает
Нет, пока это еще жесть, очень долго будет выполняться.
...
Рейтинг: 0 / 0
Отчет по продажам в дни скидок.
    #38615051
LittleLoya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
javapeckerНет, пока это еще жесть, очень долго будет выполняться.
Подскажите, пожалуйста, как правильно сделать и почему?
...
Рейтинг: 0 / 0
Отчет по продажам в дни скидок.
    #38615114
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LittleLoya, РегистрНакопления.Продажи.Обороты - эта таблица виртуальная, чтобы ее построить нужно выполнить запрос. У вас эта таблица используется без параметров, значит она будет построена по всем данным регистра - и это долго. Ваша задача - максимально ограничить набор данных, по которым будет строиться таблица. Если в вашем случае запрос выполняется по одному документу, выберите товары из него во временную таблицу, и передайте параметром в таблицу оборотов, условия на документ продажи тоже добавьте туда.
...
Рейтинг: 0 / 0
Отчет по продажам в дни скидок.
    #38615119
Фотография Владимир Лазурко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LittleLoyajavapeckerНет, пока это еще жесть, очень долго будет выполняться.
Подскажите, пожалуйста, как правильно сделать и почему?Да вот из-за этих самых условий в виртуальной таблице Обороты:
Код: sql
1.
2.
3.
		ГДЕ
			ПродажиОбороты.ДокументПродажи.Дата >= &НачДата
			И ПродажиОбороты.ДокументПродажи.Дата <= &КонДата) КАК ВложенныйЗапрос

Не совсем медленно, но на больших объёмах будет заметно.
Оптимально условия передавать в параметры виртуальной таблицы:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
		ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
			ПродажиОбороты.Номенклатура КАК Номенклатура,
			ПродажиОбороты.КоличествоОборот КАК КоличествоОборот,
			ПродажиОбороты.СтоимостьОборот КАК СтоимостьОборот,
			ПродажиОбороты.ДокументПродажи.Дата КАК ДокументПродажиДата
		ИЗ
			РегистрНакопления.Продажи.Обороты(&НачДата, &КонДата) КАК ПродажиОбороты
) КАК ВложенныйЗапрос
		ПО УстановкаСкидокНоменклатурыТовары.Номенклатура = ВложенныйЗапрос.Номенклатура

При условии, что документ делает движения своей датой.

Иногда для большей определенности я в параметры добавляю НАЧАЛОПЕРИОДА и КОНЕЦПЕРИОДА. Чтобы однозначно получить, например, начало дня, если передается текущая дата:
Код: sql
1.
РегистрНакопления.Продажи.Обороты(НАЧАЛОПЕРИОДА(&НачДата, ДЕНЬ), КОНЕЦПЕРИОДА(&КонДата, ДЕНЬ))

Это на любителя и во-вторых в некоторых случаях.
...
Рейтинг: 0 / 0
Отчет по продажам в дни скидок.
    #38615122
Фотография Владимир Лазурко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир ЛазуркоДа вот из-за этих самых условий в виртуальной таблице Обороты:
Код: sql
1.
2.
3.
		ГДЕ
			ПродажиОбороты.ДокументПродажи.Дата >= &НачДата
			И ПродажиОбороты.ДокументПродажи.Дата <= &КонДата) КАК ВложенныйЗапрос


Не совсем медленно, но на больших объёмах будет заметно.Потому что сначала выберется вся таблица, потом к ней будет приложен фильтр из условия ГДЕ. А это время и объём памяти.
А если передать условия в параметр виртуальной таблицы, то на выходе сразу будет выборка по нужным условиям.
...
Рейтинг: 0 / 0
Отчет по продажам в дни скидок.
    #38616421
LittleLoya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Большое всем спасибо, так и вправду работает гораздо быстрее!!!
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Отчет по продажам в дни скидок.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]