Ресурсы Шаблон отчета на СКД 1.3

В нем уже реализованы все рутинные действия при создании отчетов на СКД

  1. TopicStarter Overlay
    nbIpKuH_BaH9I
    Online

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.991
    Симпатии:
    399
    Баллы:
    104
    Пользователь nbIpKuH_BaH9I разместил новый ресурс:

    Шаблон отчета на СКД - В нем уже реализованы все рутинные действия при создании отчетов на СКД

    Узнать больше об этом ресурсе...
    bajiepka и Inkeeper нравится это.
  2. vartanet
    Offline

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

    Регистрация:
    16 ноя 2010
    Сообщения:
    2.698
    Симпатии:
    15
    Баллы:
    29
    имхо - лучше использовать возможности платформы по максимуму. сэкономит время, деньги и нервы.
  3. TopicStarter Overlay
    nbIpKuH_BaH9I
    Online

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.991
    Симпатии:
    399
    Баллы:
    104
    В смысле? А я что использую, не возможности платформы чтоли?
    Смысл шаблона в том, что ты просто создаешь СКД. Не нужно создавать форму, прописывать тупые процедуры, которые прописываешь в каждом отчете. Не знаю как у других, но у меня много времени уходит на это. Я решил создать его. Пользуюсь уже года 2-3 им. Все довольны. И корректировки потом вносятся очень быстро.
  4. Sert
    Offline

    Sert Опытный в 1С

    Регистрация:
    4 фев 2011
    Сообщения:
    365
    Симпатии:
    12
    Баллы:
    29
    Вопрос(ы)
    Взял шаблон. Просто скопировал СКД в отчет, назначил его основным. Сохранил.
    Формирую Ошибка первая:
    Макет = ЭтотОбъект.ПолучитьМакет("Макет");
    Не может получить иакой макет (ну нет никаких), я посмотрел, нигде не используется, заремарил.
    Ошибка вторая:
    {ВнешнийОтчет.ШаблонОтчетаСКД.МодульОбъекта(240)}: Значение не является значением объектного типа (ПараметрыВывода)
    НастройкиКомпоновки.ПараметрыВывода.Элементы[10].Значение = ТипВыводаТекстаКомпоновкиДанных.Выводить;
    Вписал в форме в ПолучитьНастройки
    Код:
        мСхемаКомпоновкиДанных = ЭтотОбъект.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
        ИмяКомпоновкиДанных    = "ОсновнаяСхемаКомпоновкиДанных";
        КомпоновщикНастроек.ЗагрузитьНастройки(мСхемаКомпоновкиДанных.НастройкиПоУмолчанию);
        мНастройкиКомпоновки = КомпоновщикНастроек.Настройки;
        ЭлементыФормы.ТПБыстрыйОтбор.Значение = мНастройкиКомпоновки.Отбор;
    
    Ошибка третья:
    {ВнешнийОтчет.ШаблонОтчетаСКД.МодульОбъекта(229)}: Индекс находится за границами массива
    ОтборДатаОтчета = НастройкиКомпоновки.ПараметрыДанных.Элементы[2];
    Полагаю, мне эта дата не нужна, заремарил. Запустил. Ура заработало.
    Пробую применить фильтр. Хочет сначала, чтоб я выбрал тип (справочник номенклатура и Поле компоновки данных). Выбрал справочник Номенклатура, выбрал позицию, поставил галочку, нажал сформировать, галочка слетела, фильтр не сработал.
    Вот тут я пока застрял.

    Шаблон в принципе хороший. Фишки прикольные уже добавлены. Смотрю ещё заготовки есть, пока незадействованные или отключенные.
    Хорошо бы задокументировать вот то, на чём я споткнулся. Ну или в целом описать последовательность внедрения отчёта на базе этого шаблона в различных вариантах исполнения.
  5. Sert
    Offline

    Sert Опытный в 1С

    Регистрация:
    4 фев 2011
    Сообщения:
    365
    Симпатии:
    12
    Баллы:
    29
    Исправил содержимое ПолучитьНастройки в Форме на
    (взял из заремаренных образцов)
    Код:
        СтарыйОтбор = ЭлементыФормы.ТПБыстрыйОтбор.Значение;
        мСхемаКомпоновкиДанных = ЭтотОбъект.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
        ИмяКомпоновкиДанных    = "ОсновнаяСхемаКомпоновкиДанных";
        КомпоновщикНастроек.ЗагрузитьНастройки(мСхемаКомпоновкиДанных.НастройкиПоУмолчанию);
        мНастройкиКомпоновки = КомпоновщикНастроек.Настройки;
        ЭлементыФормы.ТПБыстрыйОтбор.Значение = мНастройкиКомпоновки.Отбор;
        // Присвоим значения, которые пользователь уже сделал, дабы он ничего не заметил. ))
        Для каждого СтрокаНовогоОтбора Из ЭлементыФормы.ТПБыстрыйОтбор.Значение.Элементы Цикл
            Для каждого СтрокаСтарогоОтбора Из СтарыйОтбор.Элементы Цикл
                Если СтрокаНовогоОтбора.ЛевоеЗначение = СтрокаСтарогоОтбора.ЛевоеЗначение Тогда
                    СтрокаНовогоОтбора.ВидСравнения   = СтрокаСтарогоОтбора.ВидСравнения;
                    СтрокаНовогоОтбора.Использование  = СтрокаСтарогоОтбора.Использование;
                    СтрокаНовогоОтбора.ПравоеЗначение = СтрокаСтарогоОтбора.ПравоеЗначение;
                КонецЕсли;
            КонецЦикла;
        КонецЦикла;
    
    Заработала фильтрация. Костыли, но...
  6. TopicStarter Overlay
    nbIpKuH_BaH9I
    Online

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.991
    Симпатии:
    399
    Баллы:
    104
    Да, не спорю, очень сырой шаблон. Но если в компоновки разбираетесь, труда не составит подкорректировать под себя. Зато очень много времени экономит. Что такое Заремарил?
  7. Sert
    Offline

    Sert Опытный в 1С

    Регистрация:
    4 фев 2011
    Сообщения:
    365
    Симпатии:
    12
    Баллы:
    29
    Отключил путём добавления "//" в начало строки.

    Время экономит, что правда, то правда. СКД ток начал осваивать, программную оболочку СКД пока знаю чрезвычайно плохо. Приходится ковыряться.
    --- Объединение сообщений, 22 июн 2015 ---
    Следующие проблемки. Не отображаются кнопки группировки колонок, не могу найти где включить обратно.
    Не знаю где вписать в шаблоне
    Код:
        Результат.ПоказатьУровеньГруппировокСтрок(1);
    
        Результат.ПоказатьУровеньГруппировокКолонок(1);
    чтоб отображался отчёт при формировании сразу свернутым до первого уровня. В СформироватьОтчёт не прокатило, не до не после "ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);" в форме в ВыполнитьФормированиеСКД в конце тоже не сработало.
  8. TopicStarter Overlay
    nbIpKuH_BaH9I
    Online

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.991
    Симпатии:
    399
    Баллы:
    104
    У меня коллега тоже все ремарит, а потом удивляется "Почему ничего не работает". Так что аккуратнее. Я не просто так там все это написал.
    Ковыряйтесь. Учитесь. будут вопросы, задавайте. :)
  9. Sert
    Offline

    Sert Опытный в 1С

    Регистрация:
    4 фев 2011
    Сообщения:
    365
    Симпатии:
    12
    Баллы:
    29
    Ну я конечно же с умом делаю. (на сколько знания позволяют). Но вроде пока критичного ничего не ремарил. Макета у меня и правда нет, третьей даты тоже.

    Вопросы появились. Чуть выше "озвучил".
  10. TopicStarter Overlay
    nbIpKuH_BaH9I
    Online

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.991
    Симпатии:
    399
    Баллы:
    104
    Процедура ВыполнитьФормированиеСКД в модуле формы.

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