8.х Количество(Различные ...) в СКД

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем Smartie, 24 май 2012.

  1. TopicStarter Overlay
    Smartie
    Offline

    Smartie

    Регистрация:
    24 май 2012
    Сообщения:
    20
    Симпатии:
    0
    Баллы:
    1
    Пытаюсь перевести "ручные" отчёты на СКД. Есть такой запрос (убрал всё не относящееся к делу):


    ВЫБРАТЬ Материал, Склад, "" КАК КолВПапке
    ИЗ РегистрНакопления.ОстаткиТоваров.Остатки
    УПОРЯДОЧИТЬ ПО Материал.Наименование
    ИТОГИ Количество(Различные Материал) КАК КолВПапке ПО Материал ТОЛЬКО ИЕРАРХИЯ

    Получаем иерархическое дерево справочника, в каждой ветке указано, сколько элементов (материалов) "живёт" в соответствующей папке (и всех подпапках), для каждого элемента видим его наименование и склады, где он находится.

    Пытаюсь сделать всё тоже самое на СКД. Завожу вычисляемое поле КолВПапке с выражением "", добавляю ресурс (Поле - КолВПапке, Выражение - Количество(Различные Материал)) - и фигвам, подсчитывает количество папок, но не количество элементов в них.

    В какую сторону смотреть?
  2. x_under
    Offline

    x_under Модераторы Команда форума Модератор

    Регистрация:
    25 апр 2007
    Сообщения:
    2.576
    Симпатии:
    13
    Баллы:
    29
    А зачем вам заводить вычисляемое поле? Чем само поле запроса вам не угодило?
  3. TopicStarter Overlay
    Smartie
    Offline

    Smartie

    Регистрация:
    24 май 2012
    Сообщения:
    20
    Симпатии:
    0
    Баллы:
    1
    А вроде как "ИТОГИ .. ПО" в наборе данных недопустимо. Вообще-то я нашёл некое решение: вывожу не в список, а в таблицу, и тогда считает правильно. Но уверенности в правильности своих действий у меня нет.
  4. TopicStarter Overlay
    Smartie
    Offline

    Smartie

    Регистрация:
    24 май 2012
    Сообщения:
    20
    Симпатии:
    0
    Баллы:
    1
    Совсем весело ведёт себя СКД. Приаттачил результат своих экспериментов:

    Посмотреть вложение 11210

    С дефолтными настройками работает, но стОит лишь поменять "Авто позиция ресурсов" => "Не использовать", тут же перестаёт считать количество в папке, возвращаемся к тому, что было при выводе в список.

    Я догадываюсь, что дело в моём подходе к решению проблемы, ну не хочет СКД подсчитывать КОЛИЧЕСТВО(Различные ...) в любом варианте, кроме "в последнюю очередь"... но как же нужно делать эти вещи правильно?

    Запрос под самописную конфигурацию, но его легко можно переделать под стандартные.

    Есть идеи?

    Вложения:

  5. x_under
    Offline

    x_under Модераторы Команда форума Модератор

    Регистрация:
    25 апр 2007
    Сообщения:
    2.576
    Симпатии:
    13
    Баллы:
    29
    Итоги конечно же не работают. Ими СКД занимается самостоятельно.

    Вложения:

  6. TopicStarter Overlay
    Smartie
    Offline

    Smartie

    Регистрация:
    24 май 2012
    Сообщения:
    20
    Симпатии:
    0
    Баллы:
    1
    Гм, так и я умею... но хочется посчитать количество РАЗЛИЧНЫХ в папке. Номенклатура - по складам, т.е. в папке один и тот же элемент номенклатуры может встречаться несколько раз (если размазан по нескольким складам). Нужно не количество элементов в папке, а количество РАЗЛИЧНЫХ в папке.

    Надеюсь, понятно объяснил.
  7. x_under
    Offline

    x_under Модераторы Команда форума Модератор

    Регистрация:
    25 апр 2007
    Сообщения:
    2.576
    Симпатии:
    13
    Баллы:
    29
    Ерунда какая-то... Ну не используйте склад и сверните в запросе данные, взяв для количества не сумма, а максимум как агрегатную функцию.
  8. TopicStarter Overlay
    Smartie
    Offline

    Smartie

    Регистрация:
    24 май 2012
    Сообщения:
    20
    Симпатии:
    0
    Баллы:
    1
    В детальных записях мне нужно иметь материал, склад и остаток на этом складе, а не общий остаток на всех складах: Примерно такой вид:

    Папка -- количество материалов в ней
    • Материал-1, Склад-1, Остаток
    • Материал-1, Склад-2, Остаток
    • Материал-2, Склад-1, Остаток
    Следующая папка...

    В этом примере количество материалов в "Папка" должно быть 2, а не 3 (поэтому КОЛИЧЕСТВО(Различные ...)).
  9. vartanet
    Offline

    vartanet Опытный в 1С Команда форума

    Регистрация:
    16 ноя 2010
    Сообщения:
    2.698
    Симпатии:
    15
    Баллы:
    29
    Код:
    ВЫБРАТЬ
    ТоварыНаСкладахОстатки.Номенклатура,
    ТоварыНаСкладахОстатки.КоличествоОстаток КАК КоличествоРазличных
    ИЗ
    РегистрНакопления.ТоварыНаСкладах.Остатки КАК ТоварыНаСкладахОстатки
    оно?

    запрос простейший. весь дальнейший вывод смотри через настройки СКД.

    ЗЫ. если я конечно правильно понял, что нужно ;)

    Вложения:

  10. TopicStarter Overlay
    Smartie
    Offline

    Smartie

    Регистрация:
    24 май 2012
    Сообщения:
    20
    Симпатии:
    0
    Баллы:
    1
    Не то :( Пожалуйста, попробуйте запустить в своей конфигурации такой запрос:
    Код:
    ВЫБРАТЬ
    Номенклатура,
    Склад,
    КоличествоОстаток КАК Остаток,
    "" КАК КоличествоРазличных
    ИЗ
    РегистрНакопления.ТоварыНаСкладах.Остатки
    ИТОГИ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Номенклатура) КАК КоличествоРазличных ПО Номенклатура
    
    Писал вслепую, надеюсь, сработает и поможет Вам понять, что именно я хочу получить.

Поделиться этой страницей