Разница в результатах запроса

1. pentanom 25 09.11.16 18:39 Сейчас в теме
Конфигурация УТ 10.3.38.1
Платформа 8.2.19.130

Написан запрос:

ИсключаемыеСклады=Новый СписокЗначений;
	ИсключаемыеСклады.Добавить(Справочники.Склады.НайтиПоНаименованию("Брак"));
	ИсключаемыеСклады.Добавить(Справочники.Склады.НайтиПоНаименованию("Образцы"));
	
	Запрос=Новый Запрос;
	Запрос.Текст="ВЫБРАТЬ
	             |	ТоварыНаСкладахОстатки.Номенклатура,
	             |	СУММА(ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0)) КАК Остаток,
	             |	СУММА(ЕСТЬNULL(ТоварыНаСкладахОстаткиВсего.КоличествоОстаток, 0)) КАК ОстатокВсего,
	             |	СУММА(ЕСТЬNULL(ЗаказыПокупателейОстатки.КоличествоОстаток, 0)) КАК Заказано,
	             |	СУММА(ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) - ЕСТЬNULL(ЗаказыПокупателейОстатки.КоличествоОстаток, 0)) КАК Свободно,
	             |	СУММА(ЕСТЬNULL(ЗаказыПоставщикамОстатки.КоличествоОстаток, 0)) КАК ЗаказаноПоставщикам,
	             |	СУММА(ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) + ЕСТЬNULL(ЗаказыПоставщикамОстатки.КоличествоОстаток, 0) - ЕСТЬNULL(ЗаказыПокупателейОстатки.КоличествоОстаток, 0)) КАК СвободноСУчетомЗаявокПоставщику
	             |ИЗ
	             |	РегистрНакопления.ТоварыНаСкладах.Остатки(
	             |			&КонДата,
	             |			Номенклатура = &Номенклатура
	             |				И НЕ Склад В (&СкладБрак)) КАК ТоварыНаСкладахОстатки
	             |		ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(&КонДата, Номенклатура = &Номенклатура) КАК ТоварыНаСкладахОстаткиВсего
	             |		ПО ТоварыНаСкладахОстатки.Номенклатура = ТоварыНаСкладахОстаткиВсего.Номенклатура
	             |		ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыПокупателей.Остатки(&КонДата, Номенклатура = &Номенклатура) КАК ЗаказыПокупателейОстатки
	             |		ПО ТоварыНаСкладахОстатки.Номенклатура = ЗаказыПокупателейОстатки.Номенклатура
	             |		ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыПоставщикам.Остатки(&КонДата, Номенклатура = &Номенклатура) КАК ЗаказыПоставщикамОстатки
	             |		ПО ТоварыНаСкладахОстатки.Номенклатура = ЗаказыПоставщикамОстатки.Номенклатура
	             |
	             |СГРУППИРОВАТЬ ПО
	             |	ТоварыНаСкладахОстатки.Номенклатура";
				 
	Запрос.УстановитьПараметр("Номенклатура",СтрокаТабличнойЧасти.Номенклатура);			 
	Запрос.УстановитьПараметр("КонДата",КонДата);			 
	Запрос.УстановитьПараметр("СкладБрак",ИсключаемыеСклады);
	ТЗ = Запрос.Выполнить().Выгрузить();
	ТЗ.ВыбратьСтроку();
Показать


В файловом режиме в результате запроса выдается (как и предполагалось) одна строка, а в серверном несколько строк.
Может быть кто-нибудь знает в чем дело ?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. alex-l19041 8 09.11.16 18:49 Сейчас в теме
(1) и что в этих
несколько строк.
?
3. pentanom 25 09.11.16 21:24 Сейчас в теме
(2) Вот такие таблицы ...
В "серверной" почему-то добавляются пустые строки.
9. spacecraft 12.11.16 16:07 Сейчас в теме
(1) 99%, что северная база на postgre.
Избавляйтесь от полного соединения в запросах.
12. pentanom 25 13.11.16 20:43 Сейчас в теме
(9) могу повторить:
Мне не понятна разница в результатах
4. ipoloskov 164 09.11.16 22:04 Сейчас в теме
Мне кажется, логика запроса требует для ЗаказыПокупателей.Остатки и ЗаказыПоставщикам.Остатки не Полное, а Левое соединение. Попробуйте поменять, возможно, лишние записи лезут оттуда
5. pentanom 25 09.11.16 22:12 Сейчас в теме
(4) Мне не понятна разница в результатах :(
6. spartak_ss_88 32 11.11.16 12:21 Сейчас в теме
Может глюк платформы?
7. pentanom 25 11.11.16 22:05 Сейчас в теме
(6) Если глюк платформы, то какая же платформа не глючная ?
8. alxarz 32 12.11.16 15:56 Сейчас в теме
А в серверном ТиИ может сделать? Вдруг там какие-то косяки...
11. pentanom 25 13.11.16 20:41 Сейчас в теме
(8) ТиИ делал - Результат тотже.
Файловая база сделана из серверной сохранением и восстановлением.
10. echo77 1906 12.11.16 16:19 Сейчас в теме
Немного офф:
1. Непонятно зачем соединяться по номенклатуре - она все равно максимум одна
2. Группировку и суммирование так же делать не надо - ибо виртуальный таблицы вернут по одной записи
13. pentanom 25 13.11.16 20:45 Сейчас в теме
(10) Согласен, что запрос "некрасивый", но почему в серверном варианте возвращает несколько записей ?
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот