Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
13 Дек 2017, 14:33
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Универсальный отчет, кривой запрос - дубликаты строк  (Прочитано 901 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн AIFrame

  • ****
  • Сообщений: 293
  • РЕПУТАЦИЯ: 40
  • КПД: 14%
  • Регистрация: 2015-07-22
  • Сайт: 
  • Профессия: Ученик 1С
В результате выполнения этого запроса я получаю в строках каждой номенклатуры по 4 экземпляра. Связано это с выводом штрихкодов, т.к. отчет выводит оба штрихкода во всех четырех комбинациях.
Где я ошибся?
Цитировать
блендер SA-6208CB 400Вт погружн +стакан черн   SA-6208CB   4620765244080 / 4620765244080
блендер SA-6208CB 400Вт погружн +стакан черн   SA-6208CB   4620765244080 / 4620765244097
блендер SA-6208CB 400Вт погружн +стакан черн   SA-6208CB   4620765244097 / 4620765244080
блендер SA-6208CB 400Вт погружн +стакан черн   SA-6208CB   4620765244097 / 4620765244097
	ТекстЗапроса = 
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| Номенклатура.Ссылка КАК Номенклатура,
| Номенклатура.Артикул,
| Номенклатура.Производитель,
| Номенклатура.ОтветственныйМенеджерЗаПокупки КАК ОтветственныйЗаПокупки,
| Номенклатура.ЕдиницаХраненияОстатков.Вес КАК Вес,
| Номенклатура.ЕдиницаХраненияОстатков.Объем КАК Объем,
| Номенклатура.Родитель,
| ТНСО.Остаток КАК Остаток,
| ТНСО.ТНСОН,
| ТНСО.Остаток * Номенклатура.ЕдиницаХраненияОстатков.Вес КАК СуммВес,
| ТНСО.Остаток * Номенклатура.ЕдиницаХраненияОстатков.Объем КАК СуммОбъем,
| НеоднПоле.Штрихкоды
|{ВЫБРАТЬ
| Номенклатура.*,
| Артикул,
| Производитель.*,
| ОтветственныйЗаПокупки.*,
| Вес,
| Объем,
| Родитель.*,
| Остаток,
| СуммВес,
| СуммОбъем,
| Штрихкоды}
|ИЗ
| (ВЫБРАТЬ
| ШК_КОР.КОР + "" / "" + ШК_ШТ.ШТ КАК Штрихкоды,
| ШК_ШТ.ШТ_Ед2 КАК ШТ_Ед2
| ИЗ
| (ВЫБРАТЬ
| Штрихкоды.Штрихкод КАК ШТ,
| Штрихкоды.Владелец.ЕдиницаХраненияОстатков КАК ШТ_Ед2
| ИЗ
| РегистрСведений.Штрихкоды КАК Штрихкоды) КАК ШК_ШТ
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
| Штрихкоды.Штрихкод КАК КОР,
| Штрихкоды.Владелец.ЕдиницаДляОтчетов КАК КОР_Ед1
| ИЗ
| РегистрСведений.Штрихкоды КАК Штрихкоды) КАК ШК_КОР
| ПО ШК_ШТ.ШТ_Ед2.Владелец = ШК_КОР.КОР_Ед1.Владелец) КАК НеоднПоле
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура
| ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
| ТоварыНаСкладахОстатки.КоличествоОстаток КАК Остаток,
| ТоварыНаСкладахОстатки.Номенклатура.Ссылка КАК ТНСОН
| ИЗ
| РегистрНакопления.ТоварыНаСкладах.Остатки КАК ТоварыНаСкладахОстатки) КАК ТНСО
| ПО Номенклатура.Ссылка = ТНСО.ТНСОН
| ПО (Номенклатура.ЕдиницаХраненияОстатков = НеоднПоле.ШТ_Ед2)
|{ГДЕ
| Номенклатура.Ссылка.* КАК Номенклатура,
| Номенклатура.Артикул,
| Номенклатура.Производитель.*,
| Номенклатура.ОтветственныйМенеджерЗаПокупки.* КАК ОтветственныйЗаПокупки,
| Номенклатура.ЕдиницаХраненияОстатков.Вес КАК Вес,
| Номенклатура.ЕдиницаХраненияОстатков.Объем КАК Объем,
| Номенклатура.Родитель.*,
| ТНСО.Остаток}
|
|СГРУППИРОВАТЬ ПО
| Номенклатура.Ссылка,
| Номенклатура.Артикул,
| Номенклатура.Производитель,
| Номенклатура.ОтветственныйМенеджерЗаПокупки,
| Номенклатура.ЕдиницаХраненияОстатков.Вес,
| Номенклатура.ЕдиницаХраненияОстатков.Объем,
| Номенклатура.Родитель,
| ТНСО.Остаток,
| ТНСО.ТНСОН,
| НеоднПоле.Штрихкоды
|{УПОРЯДОЧИТЬ ПО
| Производитель.*,
| ОтветственныйЗаПокупки.*,
| Родитель.*,
| Номенклатура.*}
|ИТОГИ
| СУММА(Остаток),
| СУММА(СуммВес),
| СУММА(СуммОбъем)
|ПО
| ОБЩИЕ
|{ИТОГИ ПО
| Остаток,
| СуммВес,
| СуммОбъем,
| Производитель.*,
| ОтветственныйЗаПокупки.*,
| Родитель.*,
| Номенклатура.*}";

	// Представления полей отчета.
// Необходимо вызывать для каждого поля запроса.
// УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить(<ИмяПоля>, <ПредставлениеПоля>);
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Номенклатура", "Номенклатура");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Производитель", "Производитель");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Родитель", "Родитель");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("ОтветственныйЗаПокупки", "Ответственный");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Объем", "Объем");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Вес", "Вес");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Артикул", "Артикул");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Остаток", "Остаток");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СуммОбъем", "СуммОбъем");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СуммВес", "СуммВес");
УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Штрихкоды", "Штрихкоды");
//УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("СрокДействия", "Срок Действия");
//УниверсальныйОтчет.мСтруктураПредставлениеПолей.Вставить("Сертификат", "Сертификат");

// Добавление показателей
// Необходимо вызывать для каждого добавляемого показателя.
// УниверсальныйОтчет.ДобавитьПоказатель(<ИмяПоказателя>, <ПредставлениеПоказателя>, <ВключенПоУмолчанию>, <Формат>, <ИмяГруппы>, <ПредставлениеГруппы>);
УниверсальныйОтчет.ДобавитьПоказатель("Остаток", "Остаток", Истина, "ЧЦ=15; ЧДЦ=0", "Остаток", "Остаток");
УниверсальныйОтчет.ДобавитьПоказатель("СуммОбъем", "Сумма - Объем", Истина, "ЧЦ=15; ЧДЦ=3", "Остаток", "Объем");
УниверсальныйОтчет.ДобавитьПоказатель("СуммВес", "Сумма - Вес", Истина, "ЧЦ=15; ЧДЦ=3", "Остаток", "Вес");


// Добавление предопределенных группировок строк отчета.
// Необходимо вызывать для каждой добавляемой группировки строки.
// УниверсальныйОтчет.ДобавитьИзмерениеСтроки(<ПутьКДанным>);
УниверсальныйОтчет.ДобавитьИзмерениеСтроки("Производитель");
УниверсальныйОтчет.ДобавитьИзмерениеСтроки("ОтветственныйЗаПокупки");
УниверсальныйОтчет.ДобавитьИзмерениеСтроки("Родитель");

// Добавление предопределенных группировок колонок отчета.
// Необходимо вызывать для каждой добавляемой группировки колонки.
// УниверсальныйОтчет.ДобавитьИзмерениеКолонки(<ПутьКДанным>);

// Добавление предопределенных отборов отчета.
// Необходимо вызывать для каждого добавляемого отбора.
// УниверсальныйОтчет.ДобавитьОтбор(<ПутьКДанным>);
УниверсальныйОтчет.ДобавитьОтбор("Номенклатура");
УниверсальныйОтчет.ДобавитьОтбор("Артикул");
УниверсальныйОтчет.ДобавитьОтбор("Производитель");
УниверсальныйОтчет.ДобавитьОтбор("ОтветственныйЗаПокупки");
УниверсальныйОтчет.ДобавитьОтбор("Объем");
УниверсальныйОтчет.ДобавитьОтбор("Вес");
УниверсальныйОтчет.ДобавитьОтбор("Остаток");
//УниверсальныйОтчет.ДобавитьОтбор("Сертификат");
//УниверсальныйОтчет.ДобавитьОтбор("СрокДействия");

// Добавление предопределенных полей порядка отчета.
// Необходимо вызывать для каждого добавляемого поля порядка.
// УниверсальныйОтчет.ДобавитьПорядок(<ПутьКДанным>);

// Установка связи подчиненных и родительских полей
// УниверсальныйОтчет.УстановитьСвязьПолей(<ПутьКДанным>, <ПутьКДаннымРодитель>);

// Установка связи полей и измерений
// УниверсальныйОтчет.УстановитьСвязьПоляИИзмерения(<ИмяПоля>, <ИмяИзмерения>);

// Установка представлений полей
УниверсальныйОтчет.УстановитьПредставленияПолей(УниверсальныйОтчет.мСтруктураПредставлениеПолей, УниверсальныйОтчет.ПостроительОтчета);

// Установка типов значений свойств в отборах отчета
УниверсальныйОтчет.УстановитьТипыЗначенийСвойствДляОтбора();

// Заполнение начальных настроек универсального отчета
УниверсальныйОтчет.УстановитьНачальныеНастройки(Ложь);

// Добавление дополнительных полей
// Необходимо вызывать для каждого добавляемого дополнительного поля.
УниверсальныйОтчет.ДобавитьДополнительноеПоле("Номенклатура");
УниверсальныйОтчет.ДобавитьДополнительноеПоле("Артикул");
УниверсальныйОтчет.ДобавитьДополнительноеПоле("Штрихкоды");
УниверсальныйОтчет.ДобавитьДополнительноеПоле("Объем");
УниверсальныйОтчет.ДобавитьДополнительноеПоле("Вес");
//УниверсальныйОтчет.ДобавитьДополнительноеПоле("Сертификат");
//УниверсальныйОтчет.ДобавитьДополнительноеПоле("СрокДействия");


Оффлайн AIFrame

  • ****
  • Сообщений: 293
  • РЕПУТАЦИЯ: 40
  • КПД: 14%
  • Регистрация: 2015-07-22
  • Сайт: 
  • Профессия: Ученик 1С
Вопрос снят.
Вложенные таблицы ШК нужно было связывать по "Все".


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
172 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
51 Сообщений
alex0402
49 Сообщений
andron81_81
38 Сообщений
AIFrame
37 Сообщений
MuI_I_Ika MuI_I_Ika
34 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
28 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 830
  • Точка Скрытых: 0
  • Точка Пользователей: 13
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal