|
Отфильтровать продублированные записи в запросе | ☑ | ||
---|---|---|---|---|
0
R0m1n
04.06.13
✎
10:02
|
Имеется следующий запрос который выбирает документы для товарного отчета формы торг-29:
"ВЫБРАТЬ | ТоварыНаСкладахОбороты.Регистратор КАК Регистратор, | ТоварыНаСкладахОбороты.Регистратор.Дата КАК Дата, | ТоварыНаСкладахОбороты.Регистратор.Номер КАК НомерДок, | ТоварыНаСкладахОбороты.Номенклатура КАК Номенклатура, | СУММА(ТоварыНаСкладахОбороты.КоличествоПриход) КАК КоличествоПриход, | СУММА(ТоварыНаСкладахОбороты.КоличествоРасход) КАК КоличествоРасход |ПОМЕСТИТЬ втБезЦены |ИЗ | РегистрНакопления.ТоварыНаСкладах.Обороты(&Дата1, &Дата2, Регистратор, ) КАК ТоварыНаСкладахОбороты |ГДЕ | ТоварыНаСкладахОбороты.Склад = &Склад | |СГРУППИРОВАТЬ ПО | ТоварыНаСкладахОбороты.Регистратор, | ТоварыНаСкладахОбороты.Номенклатура, | ТоварыНаСкладахОбороты.Регистратор.Дата, | ТоварыНаСкладахОбороты.Регистратор.Номер | |ИНДЕКСИРОВАТЬ ПО | Регистратор, | Номенклатура, | КоличествоПриход, | КоличествоРасход |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | втБезЦены.Регистратор КАК Регистратор, | втБезЦены.Дата КАК Дата, | втБезЦены.НомерДок КАК НомерДок, | втБезЦены.Номенклатура КАК Номенклатура, | втБезЦены.КоличествоПриход, | втБезЦены.КоличествоРасход, | МАКСИМУМ(ЦеныНоменклатуры.Период) КАК Период |ПОМЕСТИТЬ втМаксПериод |ИЗ | втБезЦены КАК втБезЦены | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры | ПО втБезЦены.Номенклатура = ЦеныНоменклатуры.Номенклатура | И втБезЦены.Дата >= ЦеныНоменклатуры.Период | |СГРУППИРОВАТЬ ПО | втБезЦены.Дата, | втБезЦены.НомерДок, | втБезЦены.Регистратор, | втБезЦены.Номенклатура, | втБезЦены.КоличествоПриход, | втБезЦены.КоличествоРасход | |ИНДЕКСИРОВАТЬ ПО | Номенклатура, | Дата, | Регистратор, | Период |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | МАКСИМУМ(втМаксПериод.Дата) КАК ДатаДок, | втМаксПериод.Регистратор КАК Док, | МАКСИМУМ(втМаксПериод.НомерДок) КАК НомерДок, | СУММА(втМаксПериод.КоличествоПриход * ЦеныНоменклатуры.Цена) КАК Приход, | СУММА(втМаксПериод.КоличествоРасход * ЦеныНоменклатуры.Цена) КАК Расход, | NULL КАК НачОст, | NULL КАК КонОст |ИЗ | втМаксПериод КАК втМаксПериод | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры | ПО втМаксПериод.Номенклатура = ЦеныНоменклатуры.Номенклатура | И втМаксПериод.Период = ЦеныНоменклатуры.Период |ГДЕ | ЦеныНоменклатуры.ТипЦен = &ТипЦен | |СГРУППИРОВАТЬ ПО | втМаксПериод.Регистратор | |УПОРЯДОЧИТЬ ПО | ДатаДок"; проблема следующая: имеется много продублированных документов "Установка цен номенклатуры", соответственно имеем множество продублированных записей в регистре цены номенклатуры(все одинаковое - номенклатура, дата, цена - кроме регистратора). в результате в отчете по некоторым документам сумма увеличивается в два раза и сам отчет не идет. как можно переписать запрос, чтобы корректно отображалось? |
|||
1
vicof
04.06.13
✎
10:08
|
ВЫБРАТЬ РАЗЛИЧНЫЕ?
|
|||
2
Laerys
04.06.13
✎
10:08
|
срез последних по регистру цен возми
|
|||
3
rbcvg
04.06.13
✎
10:08
|
ЦеныНоменклатуры.СрезПоследних?
|
|||
4
Галахад
гуру
04.06.13
✎
10:09
|
ГДЕ убери.
|
|||
5
1Сергей
04.06.13
✎
10:11
|
(2) +1
|
|||
6
Ненавижу 1С
гуру
04.06.13
✎
10:12
|
(0) либо тип цен разный, либо у тебя периодичность регистра не день
|
|||
7
lxndr
04.06.13
✎
10:17
|
а зачем индексировать по количествам?
|
|||
8
R0m1n
05.06.13
✎
12:55
|
а как сделать СрезПоследних, если цена мне нужна на каждую дату документа?
(6)периодичность - по позиции регистратора |
|||
9
R0m1n
05.06.13
✎
13:49
|
ап
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |