powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / (УТ 10.3) как пройти по таблице значений результата запроса в обратном порядке?
7 сообщений из 7, страница 1 из 1
(УТ 10.3) как пройти по таблице значений результата запроса в обратном порядке?
    #38862877
однобитный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здраствуйте!

Нужно обработать результат запроса в обратном порядке, как это правильно прописать?

Код: 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.
	Запрос.Текст = "ВЫБРАТЬ
	|	ЗаказыПокупателейОстатки.Номенклатура,
	|	ЗаказыПокупателейОстатки.Номенклатура.СтавкаНДС       КАК СтавкаНДС,
	
	
	|	ЗаказыПокупателейОстатки.ХарактеристикаНоменклатуры,
	|	ЗаказыПокупателейОстатки.ЗаказПокупателя,
	|	ЗаказыПокупателейОстатки.ЕдиницаИзмерения             КАК ЕдиницаИзмерения,
	|	ЗаказыПокупателейОстатки.ЕдиницаИзмерения.Коэффициент КАК Коэффициент,
	|	ЗаказыПокупателейОстатки.СуммаУпрОстаток              КАК Сумма,
	|	ЗаказыПокупателейОстатки.КоличествоОстаток            КАК Заказано,
	|	ЗаказыПоставщикамОстатки.КоличествоОстаток            КАК ЗаказаноПоставщику,
	|	ТоварыВРезервеНаСкладах.КоличествоОстаток             КАК Зарезервировано
	|ИЗ
	|	РегистрНакопления.ЗаказыПокупателей.Остатки(&ДатаОстатков, ЗаказПокупателя = &ЗаказПокупателя
	|		                И СтатусПартии = &СтатусПартии) КАК ЗаказыПокупателейОстатки
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.РазмещениеЗаказовПокупателей.Остатки(&ДатаОстатков, ЗаказПокупателя = &ЗаказПокупателя
	|		                И ЗаказПоставщику <> &Ссылка
	|		                И ТоварТара = &ТоварТара) КАК ЗаказыПоставщикамОстатки
	|		ПО ЗаказыПокупателейОстатки.Номенклатура = ЗаказыПоставщикамОстатки.Номенклатура 
	|		 И ЗаказыПокупателейОстатки.ХарактеристикаНоменклатуры = ЗаказыПоставщикамОстатки.ХарактеристикаНоменклатуры 
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(&ДатаОстатков, ДокументРезерва = &ЗаказПокупателя) КАК ТоварыВРезервеНаСкладах
	|		ПО ЗаказыПокупателейОстатки.Номенклатура = ТоварыВРезервеНаСкладах.Номенклатура 
	|		 И ЗаказыПокупателейОстатки.ХарактеристикаНоменклатуры = ТоварыВРезервеНаСкладах.ХарактеристикаНоменклатуры
	|
	|ГДЕ 
	|	НЕ ЗаказыПокупателейОстатки.Номенклатура.Услуга
	|";
	
	
        Выборка = Запрос.Выполнить().Выбрать();

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

		Количество = ?(Выборка.Заказано = NULL, 0, Выборка.Заказано);
...
...
Рейтинг: 0 / 0
(УТ 10.3) как пройти по таблице значений результата запроса в обратном порядке?
    #38862881
однобитный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Делаю так, он пишет, что
"Значение индекса выходит за границы диапазона"

Код: 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.
	Выборка = Запрос.Выполнить().Выгрузить();

	Сч = Выборка.Количество();
	
	Пока Сч > 0 Цикл
		
		Строка = Выборка.Получить(Сч);
	 
		Количество = ?(Строка.Заказано = NULL, 0, Строка.Заказано)
				   - ?(Строка.Зарезервировано = NULL, 0, Строка.Зарезервировано)
				   - ?(Строка.ЗаказаноПоставщику = NULL, 0, Строка.ЗаказаноПоставщику);
		Если Количество > 0 Тогда
			СтрокаТабличнойЧасти = ТабличнаяЧасть.Добавить();
			СтрокаТабличнойЧасти.Номенклатура    = Строка.Номенклатура;
			СтрокаТабличнойЧасти.Заказ			 = Строка.ЗаказПокупателя;

			Если ЭтоТовары Тогда
				СтрокаТабличнойЧасти.ХарактеристикаНоменклатуры = Строка.ХарактеристикаНоменклатуры;
				СтрокаТабличнойЧасти.ЕдиницаИзмерения           = Строка.ЕдиницаИзмерения;
				СтрокаТабличнойЧасти.СтавкаНДС                  = Строка.СтавкаНДС;
				СтрокаТабличнойЧасти.Коэффициент                = Строка.Коэффициент;
				
				СтрокаТабличнойЧасти.Количество = Количество * Строка.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент
														/ Строка.Коэффициент;
			Иначе
				СтрокаТабличнойЧасти.Количество = Количество;														
			КонецЕсли;
		КонецЕсли;
	 	 
		Сч = Сч - 1;
		
	КонецЦикла;
...
Рейтинг: 0 / 0
(УТ 10.3) как пройти по таблице значений результата запроса в обратном порядке?
    #38863031
Титов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
однобитный,

наверное ругается на этой строке
...
Рейтинг: 0 / 0
(УТ 10.3) как пройти по таблице значений результата запроса в обратном порядке?
    #38863035
Титов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Титов,

Строка = Выборка.Получить(Сч);

ну т.к. и правильно ругается ты, передаешь номер строки а он хочет от тебя индекс строки, тебе вот сдес надо сделать примерно так

Сч = Выборка.Количество() - 1;

но тогда и цикл поменять вот так

Пока Сч <> 0 Цикл
...
Рейтинг: 0 / 0
(УТ 10.3) как пройти по таблице значений результата запроса в обратном порядке?
    #38863439
Taekwonder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Титов,

Наверное всё таки ПОКА Сч > -1 Цикл
...
Рейтинг: 0 / 0
(УТ 10.3) как пройти по таблице значений результата запроса в обратном порядке?
    #38865991
javapecker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
однобитный, Нужно обработать результат запроса в обратном порядке, как это правильно прописать? Интересно с чего вы взяли что у вас в запросе есть хоть какой-то порядок, чтобы сделать из него обратный.
...
Рейтинг: 0 / 0
(УТ 10.3) как пройти по таблице значений результата запроса в обратном порядке?
    #38866170
Zerro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
javapeckerоднобитный, Нужно обработать результат запроса в обратном порядке, как это правильно прописать? Интересно с чего вы взяли что у вас в запросе есть хоть какой-то порядок, чтобы сделать из него обратный.
+500.. сортировка в запросе вам на что?
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / (УТ 10.3) как пройти по таблице значений результата запроса в обратном порядке?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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