8.х отчет в отчете, 1С скд 8.2, подскажите в каком направление думать

Тема в разделе "Отчеты и обработки для "1С:Предприятие 8"", создана пользователем Дмитрий Игоревич, 30 апр 2013.

  1. TopicStarter Overlay
    Дмитрий Игоревич
    Offline

    Дмитрий Игоревич Опытный в 1С

    Регистрация:
    11 апр 2013
    Сообщения:
    152
    Симпатии:
    0
    Баллы:
    26
    Есть отчет, который выдает информацию по недоприемке товара, есть другой отчет. который выдает классификацию абц в зависимости от продаж товара за определенные периоды.
    Внимание вопрос!
    Задача состоит в следующем, чтобы в первом отчете недоприемке товара, он показывал классификацию абц этого товара, в принципе сама функция распределения абц это общий модуль, и если подвязать регистр.товары.обороты к первому запросу, который выдает нам сумму продажи, по которой рассчитывается данная классификация, то мы получаем готовый необходимый нам (мне, если честно), отчет. Но получаем мы такой отчет, только при условие, что формируем его по группе товара (т.е. по родителю товара). А если мы формируем по одному единственному товарчику, то мы всегда будем получать группу А1, так как он будет считать классификация товара одного (который выбран). Как можно реализовать данную задумку так, чтобы допустим первая часть формирует нам недоприемку, а вторая часть отчета которая считает классификацию АБЦ, формируется где-нибудь на стороне по ВСЕЙ группе выбранного товара, и возвращает нам его классификацию в отчет. Буду очень признателен за совет!
  2. mialord
    Offline

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

    Регистрация:
    31 июл 2009
    Сообщения:
    5.400
    Симпатии:
    40
    Баллы:
    54
    Опять не понятно с какой конфигурацией работаете и к чему привязывать мысли об общем модуле.
    Думаю Вам надо не привязывать второй отчет к первому, а собирать таблицу1 и таблицу2, потом собирать из них таблицу3, отдавать её в запрос СКД как внешний объект после чего и выводится данный отчет.
  3. TopicStarter Overlay
    Дмитрий Игоревич
    Offline

    Дмитрий Игоревич Опытный в 1С

    Регистрация:
    11 апр 2013
    Сообщения:
    152
    Симпатии:
    0
    Баллы:
    26
    Конфигурация - рукописная, Есть общий модуль подключается в скд в выражениях АБЦ.ABCКлассификация(ГрупповаяОбработка("ГруппаРаспределения")). Да)! Именно это мне и необходимо)! Только вот знаний 1с недостаточно чтобы это реализовать, но я бы с удовольствием рассмотрел какие-нибудь примеры, где это реализовывается и приобрел необходимые знания! непонятна следующая фраза "отдавать её в запрос СКД как внешний объект". ? Т.е. я Формирую 2 разных запроса Типа


    Запрос 1 парапам пам (Недоприемка)
    //////////////////////////////
    Запрос 2 парампам пам(АБЦ)


    Вопрос такой! отбор в отчете я делаю по методу
    Код:
     ПолеСклад = Новый ПолеКомпоновкиДанных("Склад");[/font][/color]
    [color=#282828][font=helvetica]	 Для каждого Элемент Из КомпоновщикНастроек.Настройки.Отбор.Элементы Цикл
    Если Элемент.ЛевоеЗначение = ПолеСклад Тогда
    ЭлементОтбора = Элемент;
    Прервать;
    КонецЕсли;
    КонецЦикла;
    Если ЭлементОтбора = Неопределено Тогда
    ЭлементОтбора = КомпоновщикНастроек.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
    КонецЕсли;
    ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
    ЭлементОтбора.ЛевоеЗначение = ПолеСклад;
    ЭлементОтбора.ПравоеЗначение = ВыбСклад.ВыгрузитьЗначения();
    ЭлементОтбора.Использование = ?(ВыбСклад.Количество()>0, Истина, Ложь);
    

    Т.е. данный отбор будет распространяться на весь отчет? и нужно его изменить как (&ДатаНачала, &ДатаОкончания, Запись, Склад В (&СписокСкладов))?
    ну это первое что пришло в голову, в принципе это все мелочи к которым можно придти путем проб и ошибок, но вот как собрать две разных таблицы на стороне а потом из них сделать третью, я так понимаю это придется делать все непосредственно в форме? и выводить отчет руками (не по средствам СКД) ?
  4. mialord
    Offline

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

    Регистрация:
    31 июл 2009
    Сообщения:
    5.400
    Симпатии:
    40
    Баллы:
    54
    Ловите пример, только он для УТ писал в 2010 году
    Посмотреть вложение 14571
    1. Принцип действия прост, таблица данных формируется не в запросе самого СКД, а собирается самостоятельно, после чего передается в СКД в виде внешнего источника данных, а СКД просто рисует результат по Вами созданной таблице, с группировками, итогами, как угодно. Единственный минус, поля СКД придется прописать вручную.
    2. Использовать при вычислении выражения общие модули не рекомендую, необоснованная нагрузка на платформу, я понимаю что 1Сники добавили такую возможность, но они часто добавляют то, что даром не нужно и необоснованно замедляет работу ПО. Доказательство - тормозная БП 3.0
    С отборами даже голову не ломайте, у меня в отчете есть кнопочка которая открывает доступ к отборам, причем в запросах и таблицах отборов нет он работает на уровне СКД.

    Вложения:

  5. TopicStarter Overlay
    Дмитрий Игоревич
    Offline

    Дмитрий Игоревич Опытный в 1С

    Регистрация:
    11 апр 2013
    Сообщения:
    152
    Симпатии:
    0
    Баллы:
    26
    Спасибо большое)! Сейчас будем разбираться!

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