Имя: Пароль:
1C
1С v8
Выбрать различные ШК
0 Irina1c
 
27.10.12
21:02
Необходимо получить ШК без повторяющихся. делаю запрос
ВЫБРАТЬ
   ВложенныйЗапрос.Штрихкод,
   Штрихкоды.Владелец,
   Штрихкоды.ЕдиницаИзмерения
ИЗ
   (ВЫБРАТЬ РАЗЛИЧНЫЕ
       Штрихкоды.Штрихкод КАК Штрихкод
   ИЗ
       РегистрСведений.Штрихкоды КАК Штрихкоды) КАК ВложенныйЗапрос
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Штрихкоды КАК Штрихкоды
       ПО ВложенныйЗапрос.Штрихкод = Штрихкоды.Штрихкод

Но повторения все равно есть. Где  ошибка?
1 aleks-id
 
27.10.12
21:04
ВЫБРАТЬ РАЗЛИЧНЫЕ
  Штрихкоды.Штрихкод КАК Штрихкод
ИЗ
  РегистрСведений.Штрихкоды КАК Штрихкоды

этого достаточно
2 aleks-id
 
27.10.12
21:05
а если есть повторяющиеся то это означает либо другую единицу измерения либо другого владельца
3 aleks-id
 
27.10.12
21:06
и вообще. что за свинство задавать такие вопросы в субботу вечером и без фотки?
4 Irina1c
 
27.10.12
21:10
(1)Если вытаскиваю одно поле Штрихкод, то повторяющихся нет, если вытаскию еще поля, то уже нет.
5 Irina1c
 
27.10.12
21:12
ВЫБРАТЬ РАЗЛИЧНЫЕ
  Штрихкоды.Штрихкод,
   Штрихкоды.Владелец,
   Штрихкоды.ЕдиницаИзмерения

ИЗ
  РегистрСведений.Штрихкоды КАК Штрихкоды

тут уже есть повторения. Владельцы разные
6 ДенисЧ
 
27.10.12
21:13
"Владельцы разные"

Ещё вопросы?
7 Irina1c
 
27.10.12
21:14
(6) поэтому и делаю вложенный
8 ДенисЧ
 
27.10.12
21:15
тогда я не понял задачи...
9 Irina1c
 
27.10.12
21:19
(7) нужно получить ШК без повторений. Сначало делаю вложенный, где различные ШК, потом хочу левым соединением вытащить остальные поля. Но повторения все равно есть.
10 Анцеранана
 
27.10.12
21:19
(5) сначала решите для себя какого из владельцев вы хотите видеть в результирующей таблице , если штрих- код одинаковый)
11 Irina1c
 
27.10.12
21:20
(10) пока  любого
12 ДенисЧ
 
27.10.12
21:21
(9)
ВЫБРАТЬ
  Штрихкоды.Штрихкод,
   Штрихкоды.Владелец,
   Штрихкоды.ЕдиницаИзмерения

ИЗ
  РегистрСведений.Штрихкоды КАК Штрихкоды
Итоги по Штрихкоды.Штрихкод

И выбирать с учетом иерархии (см. параметры Выбрать());
13 aleks-id
 
27.10.12
21:24
(12) а щас выяснится что это динамический список на уф...
14 aleks-id
 
27.10.12
21:25
Irina1c где фотка?
15 Анцеранана
 
27.10.12
21:28
имхо тут нужен коррелироваанный запрос по типу
v8: Коррелированные запросы

в скобках будет что -то типа
ГДЕ Штрихкоды.Владелец В (ВЫБРАТЬ ПЕРВЫЕ 1  
думать в субботу лень что-то , ищите пример сами
16 NcSteel
 
27.10.12
21:34
ВЫБРАТЬ Различные
  Штрихкоды.Штрихкод,
   Максимум(Штрихкоды.Владелец),
  ИЗ
  РегистрСведений.Штрихкоды КАК Штрихкоды
Сгруппировать По
Штрихкоды.Штрихкод

Писалось руками без конструктора, поэтому могут быть косяки, о смысл должен быть понятен.
17 aleks-id
 
27.10.12
21:37
(16) там кроме владельца еще и с единицей измерения косяки могут быть
18 NcSteel
 
27.10.12
21:40
(17) Дело техники.
19 NcSteel
 
27.10.12
21:42
(18) + Решается левым соединением.
20 Анцеранана
 
27.10.12
21:50
(16) да так проще) согласен.
21 Irina1c
 
27.10.12
22:10
всем спасибо. Получилось.
ВЫБРАТЬ
   ВложенныйЗапрос.Штрихкод,
   Штрихкоды.Владелец,
   Штрихкоды.ЕдиницаИзмерения,
   Штрихкоды.ХарактеристикаНоменклатуры
ИЗ
   (ВЫБРАТЬ РАЗЛИЧНЫЕ
       Штрихкоды.Штрихкод КАК Штрихкод,
       МАКСИМУМ(Штрихкоды.Владелец) КАК Владелец
   ИЗ
       РегистрСведений.Штрихкоды КАК Штрихкоды
   
   СГРУППИРОВАТЬ ПО
       Штрихкоды.Штрихкод) КАК ВложенныйЗапрос
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Штрихкоды КАК Штрихкоды
       ПО ВложенныйЗапрос.Владелец = Штрихкоды.Владелец
           И ВложенныйЗапрос.Штрихкод = Штрихкоды.Штрихкод