powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / Не получается сгруппировать данные в запросе (Бухгалтерия для Украины 8.2) Маршрутно-погру
5 сообщений из 5, страница 1 из 1
Не получается сгруппировать данные в запросе (Бухгалтерия для Украины 8.2) Маршрутно-погру
    #37856434
sergeyermak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!

Помогите...

Конфигурация Бухгалтерия для Украины 1.2.6.5 8.2

У меня вот какая проблема есть документ (Погрузочный лист) который содержит в себе расходные накладные за период, нужно выводить в печатную форму (Маршрутно погрузочный лист) вот такой вид информации:

Маршрут1
Контрагент1 (то есть контрагент который относиться до этого маршрута)
Номенклатура1
Номенклатура2 (номенклатура с табличной части расходной накладной которая удовлетворяет условию)
Контрагент2
Номенклатура1
Номенклатура2
Маршрут2
Контрагент1 (то есть контрагент который относиться до этого маршрута)
Номенклатура1
Номенклатура2 (номенклатура с табличной части расходной накладной которая удовлетворяет условию)
Контрагент2
Номенклатура1
Номенклатура2

Но на данный момент запрос не хочет формировать сгруппированные строки и отображает вот такое:

Маршрут1
Контрагент1 (то есть контрагент который относиться до этого маршрута)
Номенклатура1 (номенклатура с табличной части расходной накладной которая удовлетворяет условию)
Маршрут2
Контрагент1 (то есть контрагент который относиться до этого маршрута)
Номенклатура1 (номенклатура с табличной части расходной накладной которая удовлетворяет условию)
Маршрут1
Контрагент1 (то есть контрагент который относиться до этого маршрута)
Номенклатура2 (номенклатура с табличной части расходной накладной которая удовлетворяет условию)
Маршрут2
Контрагент1 (то есть контрагент который относиться до этого маршрута)
Номенклатура2 (номенклатура с табличной части расходной накладной которая удовлетворяет условию)
Маршрут1
Контрагент2 (то есть контрагент который относиться до этого маршрута)
Номенклатура2 (номенклатура с табличной части расходной накладной которая удовлетворяет условию)


Вот сам запрос:

Код: 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.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
Запрос = Новый Запрос;
	Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка);
	Запрос.Текст =
	"ВЫБРАТЬ
	|	ПогрузочныйЛист.Контрагент КАК Контрагент,
	|	ПогрузочныйЛист.Експедитор КАК Експедитор,
	|	РеализацияТоваровУслуг.Номенклатура КАК Номенклатура,
	|	РеализацияТоваровУслуг.Количество КАК Количество,
	|	ВЫРАЗИТЬ(РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное КАК СТРОКА(1000)) КАК Товар
	|ИЗ
	|	Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслуг
	|		ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПогрузочныйЛист.Расходные КАК ПогрузочныйЛист
	|		ПО (ПогрузочныйЛист.ДокРасх = РеализацияТоваровУслуг.Ссылка)
	|ГДЕ
	|	ПогрузочныйЛист.Ссылка = &ТекущийДокумент
	|
	|СГРУППИРОВАТЬ ПО
	|	РеализацияТоваровУслуг.Номенклатура,
	|	ПогрузочныйЛист.Контрагент,
	|	ПогрузочныйЛист.Експедитор,
	|	РеализацияТоваровУслуг.Количество
	|АВТОУПОРЯДОЧИВАНИЕ";
	Маршруты = Запрос.Выполнить().Выбрать();
		
	ТабДокумент = Новый ТабличныйДокумент;
	ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_МаршрутноПогрузочныйЛист";

	Макет = ПолучитьМакет("МаршрутноПогрузочныйЛист");
	
	НомерСтроки = 0;

	Пока Маршруты.Следующий() Цикл
		
		ОбластьМакета = Макет.ПолучитьОбласть("Маршрут");
		ОбластьМакета.Параметры.Водитель = "Маршрут: " + Строка(Маршруты.Експедитор);
		ТабДокумент.Вывести(ОбластьМакета);	  

		ОбластьМакета = Макет.ПолучитьОбласть("Контрагент");
		ОбластьМакета.Параметры.Контрагент = Маршруты.Контрагент;
		ТабДокумент.Вывести(ОбластьМакета);

		ОбластьМакета = Макет.ПолучитьОбласть("Строка");
					НомерСтроки = НомерСтроки + 1;
				        ОбластьМакета.Параметры.НомерСтроки = НомерСтроки;
					ОбластьМакета.Параметры.Товар = Маршруты.Товар;
					ОбластьМакета.Параметры.Количество = Маршруты.Количество;
		ТабДокумент.Вывести(ОбластьМакета);

	КонецЦикла;
	Возврат ТабДокумент;



Знаю что в 1с 7.7 была такая структура как Пока Сгруппировать (1) = 1 Цикл Сгруппировать(2) = 1 Цикл.

Не ссудите строго, помогите плиз.

Очень признательный за помощь.
...
Рейтинг: 0 / 0
Не получается сгруппировать данные в запросе (Бухгалтерия для Украины 8.2) Маршрутно-погру
    #37856631
DmitriyZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sergeyermak, читать про ИТОГИ и про обход результата запроса по группировкам с иерархией
...
Рейтинг: 0 / 0
Не получается сгруппировать данные в запросе (Бухгалтерия для Украины 8.2) Маршрутно-погру
    #37856640
LexaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sergeyermak,
скорее всего вам надо использовать Итоги вместо Сгруппировать

...
ИТОГИ
СУММА(Количество )
ПО
Контрагент,
Номенклатура
...

и результат выбирать с обходом по группировкам
...
Рейтинг: 0 / 0
Не получается сгруппировать данные в запросе (Бухгалтерия для Украины 8.2) Маршрутно-погру
    #37857809
sergeyermak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо всем за помощь, сейчас попробую если получиться сообщу
...
Рейтинг: 0 / 0
Не получается сгруппировать данные в запросе (Бухгалтерия для Украины 8.2) Маршрутно-погру
    #37857838
sergeyermak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо всем за помощь.

Все вышло.

Вот запрос:

Код: 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.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
Запрос = Новый Запрос;
	Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка);
	Запрос.Текст =
	"ВЫБРАТЬ
	|	ПогрузочныйЛист.Контрагент КАК Контрагент,
	|	ПогрузочныйЛист.Експедитор КАК Експедитор,
	|	РеализацияТоваровУслуг.Номенклатура КАК Номенклатура,
	|	РеализацияТоваровУслуг.Количество КАК Количество,
	|	ВЫРАЗИТЬ(РеализацияТоваровУслуг.Номенклатура.НаименованиеПолное КАК СТРОКА(1000)) КАК Товар
	|ИЗ
	|	Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслуг
	|		ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПогрузочныйЛист.Расходные КАК ПогрузочныйЛист
	|		ПО (ПогрузочныйЛист.ДокРасх = РеализацияТоваровУслуг.Ссылка)
	|ГДЕ
	|	ПогрузочныйЛист.Ссылка = &ТекущийДокумент
	|
	|ИТОГИ ПО
	|	Експедитор,
	|	Контрагент
	|АВТОУПОРЯДОЧИВАНИЕ";
			
	ТабДокумент = Новый ТабличныйДокумент;
	ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_МаршрутноПогрузочныйЛист";

	Макет = ПолучитьМакет("МаршрутноПогрузочныйЛист");
	
	КодЯзыкаПечать = "uk";
	Макет.КодЯзыкаМакета = КодЯзыкаПечать;
	
	ОбластьМакета = Макет.ПолучитьОбласть("Шапка");
	ОбластьМакета.Параметры.Документ = "Вантажний лист № " + Строка(Номер) + " от " +  Строка(Формат(Дата,"ДФ=dd.MM.yyyy"));
	ТабДокумент.Вывести(ОбластьМакета);
	
		Выборка1 = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Експедитор");
			Пока Выборка1.следующий() цикл

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


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