Имя: Пароль:
1C
 
КодКонтрагента
0 Chuchi
 
22.08.14
16:06
ут 10.3
как в скд правильно сформировать запрос который вывел бы ВСЮ номенклатуру и соответствующие ей кодыКонтрагента.. там где нет записи в регистре сведений номенклатура контрагента были бы "-"
1 Chuchi
 
22.08.14
16:07
ВЫБРАТЬ
    Номенклатура.Артикул,
    Номенклатура.БазоваяЕдиницаИзмерения,
    Номенклатура.Ссылка
ПОМЕСТИТЬ Ном
ИЗ
    Справочник.Номенклатура КАК Номенклатура
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    НоменклатураКонтрагентов.Контрагент,
    НоменклатураКонтрагентов.Номенклатура,
    НоменклатураКонтрагентов.КодНоменклатурыКонтрагента,
    НоменклатураКонтрагентов.ЕдиницаНоменклатурыКонтрагента
ПОМЕСТИТЬ Контр
ИЗ
    РегистрСведений.НоменклатураКонтрагентов КАК НоменклатураКонтрагентов
ГДЕ
    НоменклатураКонтрагентов.Контрагент = &Контрагент
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Ном.Артикул,
    Ном.БазоваяЕдиницаИзмерения,
    Ном.Ссылка,
    Контр.Контрагент,
    Контр.КодНоменклатурыКонтрагента,
    Контр.ЕдиницаНоменклатурыКонтрагента
ИЗ
    Ном КАК Ном
        ЛЕВОЕ СОЕДИНЕНИЕ Контр КАК Контр
        ПО Ном.Ссылка = Контр.Номенклатура
2 barrgand
 
22.08.14
16:09
(1) ЕСТЬNULL(Контр.КодНоменклатурыКонтрагента, "-")
3 Chuchi
 
22.08.14
16:12
а есть ли возможность не вводить параметр контрагента и выдать по колонкам коды всех поставщиков?
4 salvator
 
22.08.14
16:14
Еще в условном оформлении можно указать еще.
КодНоменклатурыКонтрагента "не заполнено" и текст "-"
5 ShoGUN
 
22.08.14
16:15
А что, вложенные запросы уже устарели? О_о Теперь надо всё пихать во временные таблицы?
Обычное левое соединение таблиц + (2).
6 ShoGUN
 
22.08.14
16:15
Точней, тут даже вложенные не нужны.
7 Бледно Золотистый
 
22.08.14
16:15
(3) СКД может
8 salvator
 
22.08.14
16:15
ВЫБРАТЬ
    НоменклатураКонтрагентов.Контрагент,
    НоменклатураКонтрагентов.Номенклатура,
    НоменклатураКонтрагентов.КодНоменклатурыКонтрагента,
    НоменклатураКонтрагентов.ЕдиницаНоменклатурыКонтрагента
ПОМЕСТИТЬ Контр
ИЗ
    РегистрСведений.НоменклатураКонтрагентов КАК НоменклатураКонтрагентов
ГДЕ
    НоменклатураКонтрагентов.Контрагент = &Контрагент
;

А это вообще супер.
Зачем тебе вообще временные таблицы тут?
9 barrgand
 
22.08.14
16:16
(3) В СКД это называется "Таблица"
10 Chuchi
 
22.08.14
16:19
(2) спасибо так все выводит)
(9) таблица и группировка колонок как я понимаю по контрагенту, но никак не получается в колонку контрагента запихнуть кодКонтрагента
11 ShoGUN
 
22.08.14
16:21
(10) По ходу ещё один не знает, что такое "детальные записи" в СКД :))
В пустой настройке добавь группировку без указания поля группировки. Увидишь, что будет :)
12 barrgand
 
22.08.14
16:21
(10) Код контрагента должен быть ресурсом. На вкладке ресурсы перетащи кодКонтрагента, в поле Выражение оставь только кодКонтрагента
13 ShoGUN
 
22.08.14
16:27
Нормальный запрос из (1):
ВЫБРАТЬ
    Номенклатура.Артикул,
    Номенклатура.БазоваяЕдиницаИзмерения,
    Номенклатура.Ссылка
    ЕСТЬNULL(НоменклатураКонтрагентов.Контрагент,"-") КАК Контрагент,
ЕСТЬNULL(НоменклатураКонтрагентов.КодНоменклатурыКонтрагента,"-") КАК КодНоменклатурыКонтрагента,    ЕСТЬNULL(НоменклатураКонтрагентов.ЕдиницаНоменклатурыКонтрагента,"-") КАК ЕдиницаНоменклатурыКонтрагента
ИЗ
    Справочник.Номенклатура КАК Номенклатура ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НоменклатураКонтрагентов КАК НоменклатураКонтрагентов ПО Номенклатура.Ссылка = НоменклатураКонтрагентов.Номенклатура
14 Chuchi
 
22.08.14
16:28
!!! (12),(11) ! СПАСИБО ВАМ БОЛЬШОЕ за объяснение! обязательно почитаю для чего нужны ресурсы...но всегда все как обычно..срочно надо и всю ночь руками сводила эти коды((((

(13) именно так и прописала

СПАСИБО БОЛЬШОЕ ЗА ПОМОЩЬ!
15 Chuchi
 
25.08.14
16:45
В продолжение темы не могли бы подсказать как использовать функцию СОЕДИНИТЬСТРОКИ()
в отчете не очень красиво сейчас получается

Товар1  -  КодПоставщика1 - ..
Товар1 - .. - КодПоставщика2 - ...
..
Товар1 - .. - КодПоставщика10

я используя функцию хочу соединить коды в 1 строку чтобы было
Товар1 - КодПоставщика1-КодПоставщика2-..-Кодпоставщика10
16 salvator
 
25.08.14
17:02
(15) В конфигураторе Alt+F1 - поиск по справке.
17 Chuchi
 
26.08.14
15:23
не помогло
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.