powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / Упорядочивание в запросе
4 сообщений из 4, страница 1 из 1
Упорядочивание в запросе
    #36517836
rubi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1с ут 10.3
Код: plaintext
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.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
Запрос.Текст =
	"ВЫБРАТЬ
	|	ТоварыНаСкладахОстаткиИОбороты.Номенклатура КАК Номенклатура,
	|	ТоварыНаСкладахОстаткиИОбороты.Склад КАК Склад,	
	|	ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток КАК КонОст
	|ИЗ
	|	РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(
	|			&ДатаНач,
	|			&ДатаКон,
	|			День,
	|			,
	|			Номенклатура В ИЕРАРХИИ (&МассивНоменклатуры) 
	|				И Склад В ИЕРАРХИИ (&МассивСкладов)) КАК ТоварыНаСкладахОстаткиИОбороты
	|ОБЪЕДИНИТЬ ВСЕ
	|ВЫБРАТЬ
	|	ТоварыВРозницеОстаткиИОбороты.Номенклатура КАК Номенклатура,
	|	ТоварыВРозницеОстаткиИОбороты.Склад КАК Склад,	
	|	ТоварыВРозницеОстаткиИОбороты.КоличествоКонечныйОстаток КАК КонОст
	|ИЗ
	|	РегистрНакопления.ТоварыВРознице.ОстаткиИОбороты(
	|			&ДатаНач,
	|			&ДатаКон,
	|			День,
	|			,
	|			Номенклатура В ИЕРАРХИИ (&МассивНоменклатуры)  
	|				И Склад В ИЕРАРХИИ (&МассивСкладов)) КАК ТоварыВРозницеОстаткиИОбороты	
	|";
	
	Если ПоУбыв = Истина Тогда
		Запрос.Текст = Запрос.Текст + "УПОРЯДОЧИТЬ ПО КонОст УБЫВ";
	ИначеЕсли ПоВозр = Истина Тогда
		Запрос.Текст = Запрос.Текст + "УПОРЯДОЧИТЬ ПО КонОст ВОЗР";
	Иначе
	КонецЕсли;
	
	Запрос.Текст = Запрос.Текст +"
	|ИТОГИ
	|	СУММА(КонОст)
	|ПО
	|	Номенклатура ИЕРАРХИЯ,
	|	Склад	
	|АВТОУПОРЯДОЧИВАНИЕ";
	
	Результат = Запрос.Выполнить();  	

ВыборкаПоНоменклатуре = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

Пока ВыборкаПоНоменклатуре.Следующий() Цикл

…

ВыборкаПоСкладам = ВыборкаПоНоменклатуре.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Номенклатура", "Все");
		                                                                                                               		
		Пока ВыборкаПоСкладам.Следующий() Цикл

Проблема в том, что когда выводишь итоговые записи по папке номенклатуры, то склады выстраиваются в одном порядке (соответственно остатку), а когда выводишь отдельно позиции номенклатуры склады выставляются в другом порядке (тоже соответственно остатку). Получается, например, группа «Джинсы», сначала Склад1 – остаток 100, потом Склад2 – остаток 200. На основании этого и формируется шапка отчета со списком складов в колонках. А, например, позиция «джинсы арт. 1» имеется в количестве 5 на Складе1 и 4 на Складе2. Выведется же «джинсы арт. 1» - 4, 5; т.е. согласно шапке на Складе1 -4, а на Складе2 – 5.
Как можно с этим бороться? Ведь в стандартных отчетах (Например в Ведомостях по товарам в рознице/на складах) при таких же настройках все нормально работает.
...
Рейтинг: 0 / 0
Упорядочивание в запросе
    #36518815
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Убрать
Если ПоУбыв = Истина Тогда
Запрос.Текст = Запрос.Текст + "УПОРЯДОЧИТЬ ПО КонОст УБЫВ";
ИначеЕсли ПоВозр = Истина Тогда
Запрос.Текст = Запрос.Текст + "УПОРЯДОЧИТЬ ПО КонОст ВОЗР";
Иначе
КонецЕсли;

Или

2. Пользоваться построителем отчетов (а не вручную).
...
Рейтинг: 0 / 0
Упорядочивание в запросе
    #36519886
rubi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Программист 1с1. Убрать
Если ПоУбыв = Истина Тогда
Запрос.Текст = Запрос.Текст + "УПОРЯДОЧИТЬ ПО КонОст УБЫВ";
ИначеЕсли ПоВозр = Истина Тогда
Запрос.Текст = Запрос.Текст + "УПОРЯДОЧИТЬ ПО КонОст ВОЗР";
Иначе
КонецЕсли;

Или

2. Пользоваться построителем отчетов (а не вручную).

Сам писал, теперь убирать!? Вообще вопрос решился,просто дописал

Код: plaintext
1.
2.
3.
4.
5.
Если ПоУбыв = Истина Тогда
		Запрос.Текст = Запрос.Текст + "УПОРЯДОЧИТЬ ПО Склад, КонОст УБЫВ";
	ИначеЕсли ПоВозр = Истина Тогда
		Запрос.Текст = Запрос.Текст + "УПОРЯДОЧИТЬ ПО Склад, КонОст ВОЗР";
	Иначе
	КонецЕсли;
...
Рейтинг: 0 / 0
Упорядочивание в запросе
    #36519902
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rubiСам писал, теперь убирать!? Вообще вопрос решился,просто дописал

Код: plaintext
1.
2.
3.
4.
5.
Если ПоУбыв = Истина Тогда
		Запрос.Текст = Запрос.Текст + "УПОРЯДОЧИТЬ ПО Склад, КонОст УБЫВ";
	ИначеЕсли ПоВозр = Истина Тогда
		Запрос.Текст = Запрос.Текст + "УПОРЯДОЧИТЬ ПО Склад, КонОст ВОЗР";
	Иначе
	КонецЕсли;
У вас есть 2 склада с одинаковыми наименованиями и соответственно с разными остатками? Если да то согласен - все правильно.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Упорядочивание в запросе
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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