Пример доработки сложного отчета из типовой конфигурации
(21 минута видео)



Сегодня мы рассмотрим одну из самых частых задач, с которой сталкиваются специалисты по 1С – доработку отчета типовой конфигурации.

О чем эта статья

В статье рассмотрен пример доработки типового отчета «Расчетный листок» в конфигурации «Зарплату и Управление Персоналом 3.0». На данном примере показываются общие шаги разработчика, в случае если он слабо знаком с конкретной реализацией конкретного типового отчета на базе СКД.

Применимость

В материалах статьи в качестве примера используется конфигурация, «Зарплата и Управление Персоналом», редакции 3 3.0.25.122. Но от этого примеры доработки, продемонстрированные в видео, не стали устаревшими, т.к. акцент сделал именно на логике рассуждений разработчика перед которым поставлена подобного рода задача. Смело смотрите видео, это must have!

В качестве конфигурации выбрали “Зарплату и Управление Персоналом 3.0” – в силу следующих причин:

  • Отчеты из ЗУП традиционно считаются сложными
  • Иногда даже задача – понять, откуда берутся данные в отчет – вызывает у специалистов сложности.

Что конкретно мы будем делать

Это реальная задача из Мастер-группы – доработаем отчет “Расчетный листок” так, чтобы в шапке выводилась информация о дате приема сотрудника на работу.

Очень простая задача :)

Но есть одна сложность – информацию о дате приема типовой отчет не содержит, её нужно получать с помощью отдельного запроса.

И запрос этот нужно интегрировать в типовой отчет…

А параллельно мы разберем и приемы работы с СКД:

  • Анализ программного кода типового отчета – определение точек минимального воздействия на конфигурацию
  • Использование расширения языка запросов для системы компоновки данных – выражения в фигурных скобках
  • Программное формирование отчета на СКД – доработку процедуры ПриКомпоновкеРезультата
  • Вывод результата компоновки в коллекцию – дерево значений
  • Доработку текста запроса типового отчета – получение связанной информации
  • Работу с настройками компоновки – определение структуры, использование нескольких группировочных полей в одной группировке
  • Использование макета – табличного документа при выводе отчета на СКД
  • Отладку типового отчета, запущенного в фоновом режиме

Итак, поехали! 21 минута видео :)

Видео 1: Как за 10 минут понять логику формирования типового отчета

В этом уроке приступаем к решению задачи по модификации Расчетного листка в ЗУП 3.0.

Суть задачи состоит в том, чтобы вывести в отчет связанную информацию из других объектов – необходимо запросом получать дополнительные данные.

Но прежде, чем писать код, нужно найти точки минимального воздействия – чтобы внести в конфигурацию как можно меньше изменений.

В данном уроке мы показываем, как понять логику формирования типового отчета на СКД с программным заполнением полей и ручным выводом данных в табличный документ.

Видео 2: Как с помощью 2 строк кода изменить заполнение отчета

В уроке показано, как найти, где хранятся требуемые пользователю данные – это могут быть различные объекты системы. В этой задаче очень помогает умение читать объемные запросы.

В итоге задача решается с минимальными изменениями:

  • Новая строка в макете
  • Левое соединение в запросе
  • Две строки в программном коде.

Также из видео Вы узнаете, для чего в запросе может использоваться конструкция “Выбрать Первые 0”.

P.S.

Эта тема детально раскрыта в курсе:

«Профессиональная разработка отчетов в 1С 8.3 на Системе Компоновки Данных (СКД)»

Поддержка – 2 месяца. Объем курса – 34 учебных часа.

Описание курса

Не откладывайте свое обучение!

Комментарии / обсуждение (69):

  1. Людмила

    Огромное спасибо за видео-уроки.! Кратко, понятно. Получила ответы на многие вопросы.

  2. Алена

    Еще один вариант решения:
    Вместо левого соединения с регистром ТекущиеКадровыеДанные добавить в список полей первого запроса в СКД строку: ДатаВремя(1, 1, 1) КАК ДатаПриема,
    и его выборку во втором запросе, т.к. дата приема входит в список полей – кадровых данных сотрудников и заполнится системой автоматически.

    • Василий Ханевич

      Добрый день!
      Интересное предложение. Не пробовал так сделать, но должно сработать!

  3. also11

    Добрый день! Вопрос по УТ 11. В типовых отчётах добавляются доп. реквизиты. Вопрос: как их исключить из отчетов?
    Подробнее.
    Существует, примерно, 100 видов номенклатуры, к каждому из которых привязан свой набор доп. реквизитов от 5 до 10).
    При изменении варианта отчета, где используется номенклатура, при раскрытии её, вываливается список всех доп. реквизитов. Жуткий тормоз. Можно ли сделать так, чтобы при отборе или добавлении поля, не выводились эти доп. реквизиты?

    • Василий Ханевич

      Добрый день!
      Нет, поскольку это платформенный механизм – для справочника Номенклатура в конфигураторе настроены характеристики на уровне объектов метаданных. Поэтому они будут добавляться в список полей номенклатуры при работе с отчетами, динамическими списками, т.е. в механизмах, базирующихся на системе компоновки данных.
      Рассмотрите вариант переноса доп. реквизитов в обычные реквизиты справочника Номенклатура. Это должно увеличить производительность описанных действий.

      • also11

        Раньше, помнится, надо было настраивать в СКД на закладке “Характеристики”, а сейчас, выходит, на Табл. часть “Доп. реквизиты” программист повлиять не может?

        • Василий Ханевич

          В УТ 11 не требуется заполнять закладку Характеристики в тексте запроса набора данных.
          Дело в том, что в этой конфигурации настроены характеристики на уровне объектов метаданных. Например, можно в конфигураторе обратиться к справочнику Номенклатура, в контекстном меню выбрать пункт Характеристики:
          Характеристики
          Здесь указано, откуда система будет получать перечень характеристик и их значения.
          СКД учитывает эту настройку, поэтому дополнительно прописывать характеристики в запросе не нужно.

      • also11

        По поводу переноса в обычне реквизиты. Дело в том, что у каждого вида номенклатуры свои доп. реквизиты и они не пересекаются. Это сколько же их будет?!

        • Василий Ханевич

          Можно на копии базы сделать тестовый пример, проверить производительность и все остальные аспекты, принять решение, стоит ли выполнять такие действия на рабочей базе.

  4. SinO

    Добрый день! Прошу помощи подскажите пожалуйста?
    Клиент попросил доработать типовой отчет в БП 3.0 , конфигурация на поддержке. Было принято решение сделать отчет внешним, но столкнулся с проблемой…

    Сохраняю отчет как внешний и пытаюсь открыть его через файл открыть и тут же выдается ошибка “не известный тип объекта метаданных, ВнешнийОтчет.ЗадолженностьПокупателейПоСрокамДолга”. Как победить эту ошибку? В УТ 11.4 таких проблем не возникало.

    • Василий Ханевич

      Добрый день!
      Причина ошибки заключается в том, что у внешнего отчета или обработки в принципе нет модуля менеджера. А у отчета или обработки из конфигурации такой модуль присутствует.
      В БП в модуле менеджера отчетов есть программный код, а в УТ – нет. Этим объясняется разница в поведении конфигураций.
      При сохранении отчета или обработки во внешний файл модуль менеджера будет потерян. Поэтому нужно учесть этот момент, доработать внешний отчет, например, добавив нужные процедуры в модуль объекта.
      Альтернативный вариант – создать расширение, в котором реализовать новый отчет, модуль менеджера в таком случае будет доступен.

  5. Сергей Назаренко

    >> Также из видео Вы узнаете, для чего в запросе может использоваться конструкция “Выбрать Первые 0”
    А я так и не понял для чего используется такая конструкция?
    Ведь на выходе такой запрос будет возвращать пустую таблицу с колонками.
    А как тогда выбираются данные для этой таблицы?

    • Василий Ханевич

      Добрый день!
      Этот текст запроса программно при компоновке отчета будет заменен на сложный запрос, который действительно извлекает данные из базы, а нем уже не будет конструкции ВЫБРАТЬ ПЕРВЫЕ 0.
      Текст такого запроса формируется программно из отдельных кусочков, временных таблиц, зависит от различных условий, поэтому указать его непосредственно в отчете не получится.
      Но в то же самое время нужно определить, какие поля набора данных должны быть в отчете. Для этого создается фиктивный текст запроса в наборе данных отчета. Он не будет выполняться, единственная его задача – описать поля отчета, а также типы данных этих полей.

      • Сергей Назаренко

        Благодарю за ответ.
        То, что это не запрос, а его “набросок” – это понятно.
        Но не понятно назначение конструкции “ВЫБРАТЬ ПЕРВЫЕ 0”. Ведь если ее убрать (заменить на “ВЫБРАТЬ”), то ничего не изменится, т.к. этот запрос все равно не исполняется, а модифицируется из кода.

        • Василий Ханевич

          Да, конечно, не изменится. Но можно выделить 2 способа использования именно такой конструкции:
          1. Она обеспечивает формирование пустого результата запроса с набором колонок нужного типа. Если использовать просто ВЫБРАТЬ, то в результате будут данные (одна строка с пустыми значениями).
          2. Это может быть удобным маркером, признаком, что именно этот запрос нужно подменить. Потому что в обычном запросе для получения данных из базы такая конструкция точно не будет применяться.

          • Сергей Назаренко

            Да. Действительно. Для получения пустой таблицы, указанного пользователем формата – весьма интересный прием.
            Благодарю за ответы.

  6. Максим

    Добрый день, помогите с расчетным листком?
    Есть база расчет стипендии студентам,
    Нужно сформировать отчет по каждому студенту(Результаты сдачи всех его предметов )
    https://docs.google.com/document/d/1fac3d_3J8yn_Q3TKNhhmfxbO7wdQLlLJakw95IB-Uic/edit?usp=sharing

    Процедура Печать(ТабДок, Ссылка) Экспорт
    //{{_КОНСТРУКТОР_ПЕЧАТИ(Печать)
    Макет = Документы.РасчетСтипендии.ПолучитьМакет(“Печать”);
    Запрос = Новый Запрос;
    Запрос.Текст =
    “ВЫБРАТЬ
    | РасчетСтипендии.Дата КАК Дата,
    | РасчетСтипендии.Номер КАК Номер,
    | РасчетСтипендииСтуденты.Студент КАК Студент,
    | РасчетСтипендииСтуденты.Группа КАК Группа,
    | РасчетСтипендииСтуденты.ТипСтипендии КАК ТипСтипендии,
    | РасчетСтипендииСтуденты.НомерСеместра КАК НомерСеместра
    |ИЗ
    | Документ.РасчетСтипендии.Студенты КАК РасчетСтипендииСтуденты
    | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РасчетСтипендии КАК РасчетСтипендии
    | ПО РасчетСтипендииСтуденты.Ссылка = РасчетСтипендии.Ссылка
    |ГДЕ
    | РасчетСтипендии.Ссылка В(&Ссылка)
    |;
    |
    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ
    | РасчетСтипендииРезультатыСдачи.НомерСтроки КАК НомерСтроки,
    | РасчетСтипендииРезультатыСдачи.Предмет КАК Предмет,
    | РасчетСтипендииРезультатыСдачи.РезультатСдачи КАК РезультатСдачи,
    | РасчетСтипендииРезультатыСдачи.Студент КАК Студент
    |ИЗ
    | Документ.РасчетСтипендии.РезультатыСдачи КАК РасчетСтипендииРезультатыСдачи
    |ГДЕ
    | РасчетСтипендииРезультатыСдачи.Ссылка В(&Ссылка)”;

    Запрос.Параметры.Вставить(“Ссылка”, Ссылка);

    РезультатЗапроса = Запрос.ВыполнитьПакет();
    Выборка = РезультатЗапроса[0].Выбрать();

    ОбластьЗаголовок = Макет.ПолучитьОбласть(“Заголовок”);
    ОбластьИнформацияСтудента = Макет.ПолучитьОбласть(“ИнформацияСтудента”);

    Выборка2 = РезультатЗапроса[1].Выбрать();

    ОбластьРезультат = Макет.ПолучитьОбласть(“Результат”);
    ОбластьРезультатыСдачиШапка = Макет.ПолучитьОбласть(“РезультатыСдачиШапка”);
    ОбластьРезультатыСдачи = Макет.ПолучитьОбласть(“РезультатыСдачи”);

    ТабДок.Очистить();

    ВставлятьРазделительСтраниц = Ложь;
    Пока Выборка.Следующий() Цикл
    //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

    Если ВставлятьРазделительСтраниц Тогда
    ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
    КонецЕсли;

    ОбластьЗаголовок.Параметры.Заполнить(Выборка);
    ОбластьЗаголовок.Параметры.Дата = Формат(Выборка.Дата, “ДФ=dd.MM.yyyy”);
    ТабДок.Вывести(ОбластьЗаголовок);
    //ТабДок.Вывести(ОбластьРезультаты);

    ОбластьИнформацияСтудента.Параметры.Заполнить(Выборка);
    ТабДок.Вывести(ОбластьИнформацияСтудента, Выборка.Уровень());

    ТабДок.Вывести(ОбластьРезультат);
    ТабДок.Вывести(ОбластьРезультатыСдачиШапка);
    //Выборка = Выборка.РезультатыСдачи.Выбрать();

    //Каждому студенту свои предметы
    Выборка2.Следующий();

    ОбластьРезультатыСдачи.Параметры.Заполнить(Выборка2);
    ТабДок.Вывести(ОбластьРезультатыСдачи, Выборка2.Уровень());

    ВставлятьРазделительСтраниц = Истина;

    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    КонецЦикла;
    //}}
    КонецПроцедуры

    • Василий Ханевич

      Добрый день!
      Поскольку вопрос не относится к возможностям СКД, которые разбираются в данной статье, конфигурация, на которой нужно создать отчет, неизвестна, а что именно не получается – непонятно, могу дать только общие рекомендации.
      Например, использовать в запросе итоги по Студенту, а также обход результата запроса по группировке. Это позволит на уровне итогов по студенту вывести в отчет самого студента, затем вывести детальные записи с результатами сдачи по этому студенту. После вывода сведений о каждом студенте можно вывести разделитель страниц, чтобы каждый листок располагался на отдельной странице.

      Также могу порекомендовать курс Разработка и оптимизация запросов в 1С:Предприятие 8.2 и 8.3, где в Мастер-группе Вы сможете получить ответы на конкретные вопросы по разработке запросов в конфигурациях на платформе “1С:Предприятие”.

  7. kvt500

    Пытался повторить на конфигурации 3.1.13, там уже всё совсем по другом, вообще в шоке от того что там наворотили.

    • Василий Ханевич

      Добрый день!
      Да, в других релизах конфигурации программный код или тексты запросов могут отличаться.

  8. isp06@mail.ru

    почему валится ошибка всегда?

    Процедура ТелефонНеФиз()
       
       
       
                //{{КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
        // Данный фрагмент построен конструктором.
        // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
       
        Запрос = Новый Запрос;
        Запрос.Текст =
            "ВЫБРАТЬ
            |   ОбращениеКлиентаКонтактнаяИнформация.АдресЭП КАК АдресЭП,
            |   ОбращениеКлиентаКонтактнаяИнформация.Представление КАК Представление,
            |   ОбращениеКлиентаКонтактнаяИнформация.НомерТелефона КАК НомерТелефона
            |ИЗ
            |   Документ.ОбращениеКлиента.КонтактнаяИнформация КАК ОбращениеКлиентаКонтактнаяИнформация
            |ГДЕ
            |   ОбращениеКлиентаКонтактнаяИнформация.Ссылка.Ссылка = &Ссылка";
       
        Запрос.УстановитьПараметр("Ссылка",Ссылка);
        РезультатЗапроса = Запрос.Выполнить();
       
        ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
       
       
        Если выборкаДетальныеЗаписи.Количество()> 0
            тогда
            Объект.ТелефонДляЭлемента = ВыборкаДетальныеЗаписи.НомерТелефона
        КонецЕсли;
       
        Записать();
       
           
       
       
        КонецПроцедуры

    {Документ.ОбращениеКлиента.Форма.ФормаДокумента.Форма(1313,40)}: Переменная не определена (Ссылка)
    Запрос.УстановитьПараметр(“Ссылка”,<>Ссылка); (Проверка: Сервер)

  9. Сергей

    Добрый день! ЗУП 8.3.1. При попытке изменить макет ПФ_MXL_РасчетныйЛистокНастраиваемый. В режиме предприятия ничего не меняется. Параметр не видит. Такое впечатление что не тот макет. Но макет точно тот. В чем может быть проблема?

    • Василий Ханевич

      Добрый день!
      В типовых конфигурациях на базе БСП есть возможность изменить макет в пользовательском режиме. Для этого нужно обратиться к разделу НСИ и администрирование – Печатные формы, отчеты и обработки – Макеты печатных форм.
      Возможно, Ваш макет был изменен в пользовательском режиме, поэтому берется именно доработанный макет, а не из конфигуратора.

      • Сергей

        Да спасибо. Вы правы. Пришлось посидеть с отладчиком…. нашел вчера. Еще один вопрос: если мне понадобится на форму настроек добавить галку, предполагаю это то же делается программно. В каком месте искать?

        • Василий Ханевич

          Не обязательно. Это могут быть пользовательские настройки, которые заданы в схеме компоновки.

  10. Влад

    Здравствуйте!
    Подскажите, а есть в этом курсе процесс создания внешнего отчета из типового отчета?
    Чтобы дорабатывать не в конфигурации (т.к. она на замке), а на внешнем отчете.

  11. Надежда

    Спасибо! Наконец-то сделала формирование расчетных листков по группам сотрудников (Справочник Группы сотрудников) нормально, а не добавлением вычисляемого поля и не подменой строк в группировках отчета!

  12. ismdmr

    Добрый день!

    И снова вопрос ) Дело в том, что мне как раз дали поправить Расчетный листок. И для выполнения этой задачи возникла необходимость изменить текст запроса до компоновки данных. Делаю так,

    ТекстЗапроса = НаборыДанных[0].Запрос;
    ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ВТДвиженияВзаиморасчетов КАК ДанныеСотрудников", "МояВременнаяТаблица КАК ДанныеСотрудников");             
    НаборыДанных[0].Запрос = ТекстЗапроса;

    Текст конечно меняется, но отчет выдает ошибку:

    “В настройку отчета Расчетный листок” внесены критичные изменения.”

    Подскажите пожалуйста, кто знает как решить эту проблему.

    Спасибо.

    • Василий Ханевич

      Добрый день!
      Посмотрите, какая ошибка при этом зафиксирована в журнале регистрации – какой модуль, какая строка кода вызывают ошибку.
      Проанализируйте, в чем разница исходной временной таблицы в запросе и Вашей временной таблицы, на которую производится замена. Возможно, каких-либо полей не хватает.
      Также в 3.1.3.157 была исправлена ошибка 40000543, которая выдавала похожее сообщение об ошибке. Исправлялся текст запроса, формируемый в общем модуле.

  13. ismdmr

    Добрый день!

    1С:Предприятие 8.3 (8.3.10.2580)

    1С:ERP Управление предприятием 2

    Точка останова не срабатывает при “ПриКомпоновкеРезультата”. В настройках отладки Фоновое задание установил. Запускаю под толстым клиентом.

    Вот кусочек кода:

    #Область ОбработчикиСобытий

    Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
       
    КлючВарианта = ЗарплатаКадрыОтчеты.КлючВарианта(КомпоновщикНастроек);
    ИнициализироватьОтчет();

    ...............................


    КонецПроцедуры

    #КонецОбласти
    • Василий Ханевич

      Добрый день!
      Необходимо проверить, что служба сервера “1С:Предприятие” запущена с ключом -debug. В конфигураторе в меню Отладка – Подключение включить автоматическое подключение фоновых заданий. Проверил на ЗУП 3.1 под тонким клиентом – отладка расчетного листка, формируемого в фоновом задании, в таком случае срабатывает.

      • ismdmr

        Спасибо за ответ, Василий.

        Но служба сервера с ключом -debug у меня запущена. Фоновое задание включил. Запускал и под тонким и толстым клиентами.

        Проблему удалось решить добавив свою форму в отчет. Пока не понял почему так сработало )

  14. Zladey

    Подскажите, пожалуйста где в ЗУП 3.1 шаблон запроса Расчетного листка из СКД заменятся на реальный запрос?

    • Василий Ханевич

      Добрый день!
      В отчете АнализНачисленийИУдержаний, в процедуре ПриКомпоновкеРезультата модуля объекта есть вызов ИнициализироватьОтчет, где и происходит заполнение текстов запросов наборов данных.

      • Zladey

        Спасибо. Я искал по точке останова после нажатия на кнопку “сформировать”. Оказалось, что тексты запросов заполняются ранее)

    • Юлия Толстых

      Добрый день! Проверили: видео воспроизводится полностью, значит, проблема локальная, именно на Вашем компьютере.
      Почистите кэш, если не поможет – попробуйте просмотреть видео с помощью другого браузера.

  15. Максим

    Любо слушать вашего нового лектора :-))
    говорит не быстро, слова не съедает
    а главное – комментирует все свои действия, что и зачем делает.
    Четко видно логику действий, логику размышлений.

    Очень круто.

  16. Esagila

    Здравствуйте!

    Замечательная инструкция! И именно по Зарплате Отчеты кажутся страшными. Большое спасибо!

  17. rashiid

    Добрый день!
    Публикую мобильное приложение в ISS и пытаюсь открыть через планшет – выдает ошибку доступа. При открытии через веб(это же база, но веб-публикация) запрашивает учетку ОС. Ввожу и база открывается в браузере.
    Собственно вопрос, как получить доступ для мобильного приложения?

    • Юлия Толстых

      Добрый день, Рашид!
      В этой ветке мы отвечаем только на вопросы по содержанию статьи, консультации на все темы, касающиеся 1С мы не оказываем.
      Вы можете получить ответ на вопрос в рамках Мастер-группы после покупки соответствующего курса: http://курсы-по-1с.рф/1c-v8/1c-mobile-2016/

  18. kukuepta

    неужели 1сники настолько отупели, что не могут в отладку? пичалька. напомнило мне, как я учил студента обновлять “настроенные” базы 6 лет назад.

  19. Владислав

    изменения внесены в 3х местах: скд, макет и формирование выходного файла.
    после обновления все придется в 3х местах восстанавливать.
    по моему гораздо практичнее при выводе области шапки макета определить значение поля и вывести – будет 4-5 строчек кода, зато в одном месте

    • Евгений Гилев (Мастер-тренер)

      Цель была показать работу с отчетами, которая будет характерна только для конкретного отчета, но и для других отчетов, в других типовых решениях.

      Поэтому работа с изменением схемы компоновки данных обязательна в этом видео.

      • Василий Ханевич

        Дополню комментарий Евгения.
        Я так понял, что предлагается для каждого расчетного листка по каждому сотруднику отдельно получать дату приема на работу. Т.е. получается запрос в цикле вместо того, чтобы получить все данные одним запросом. Это может быть не оптимально с точки зрения производительности на больших объемах данных.

  20. Сергей

    мда… приехали, что бы добавить в отчет простейшее поле, нужно изгаляться так, что мама не горюй… 1С просто “браво”!

    • nike

      Да ладно вам! Обратная сторона медали этого – рост стоимости услуг технаря, который это поле добавляет. Все привыкли, что доработка в 1С это тяп-ляп на коленке за 15 минут. Клиент как рассуждает – да что там делать, это же просто вывод одного поля в отчет, за что час оплаты??? А вы ему ссылку на это видео, с комментарием, вот, посмотрите, подобная задача, лектор почти полчаса возился! А у нас отчет сложнее, поэтому оценка работы – 1 час и ни минутой меньше. ;)
      Надо уже избавлять клиентов от стереотипа, что 1С это дешево. По сравнению с SAP да, дешево (если это не внедрение ERP). А так вполне себе серьезные деньги!
      Одно поле – один час, десять полей – червончик. Да еще и обновление потом делать, дабы сохранить важные изменения в коде. :))))

  21. Оксана

    Здравствуйте.
    Видео недоступно ни из какого браузера(((
    Помогите пожалуйста.

    • Насипов Фарит

      Возможно, что есть блокировка на уровне провайдера / политик безопасности / настроек роутеров и много чего еще.

      Технически видео доступно без ограничений и имеет более 2000 просмотров. Что мешает конкретно в вашей ситуации – нужно смотреть на месте.

      Возможно, решением является просмотр просто из другого места.

    • Насипов Фарит

      Что-то с браузером. Либо скрипт блокируется, либо закешировалось что-то и конфликтует.
      Шаг 1 – зачистить кеш, проверить. Шаг 2 – проверить в другом браузере.

  22. Александр

    Может лучше сделать функцию в общем модуле, в которой будет возвращаться дата приема? По крайне мере обновлять будет легче.

    • Василий Ханевич

      Добрый день!
      Как вариант можно вообще не изменять типовой отчет. А создать свой внешний отчет, который решает задачу пользователя. И подключить его в конфигурацию, загрузив в справочник дополнительных отчетов. Так тоже можно решить вопрос с удобством обновлением.

  23. Алексей

    Добрый день.

    Очень хорошее описание. Но, при обновлении конфигурации, изменения внесенные в схему компоновки скорее всего будут утеряны, так как нет ни комментариев ни инструмента сравнения макетов СКД.

    • Василий Ханевич

      Добрый день!
      В тексте запроса набора данных действительно можно потерять добавленные комментарии при повторном обращении к конструктору запроса, поскольку конструктор запроса не работает с комментариями в тексте запроса.
      А для выявления отличий в схемах компоновки данных (макетах) можно воспользоваться возможностями функционала сравнения-объединения. Можно сформировать отчет о сравнении объектов, в котором графически будут отмечены различия:
      Сравнение-объединение

      • Roman_Ziborov

        Вот как раз отсутствие такого инструмента сравнения непосредственно из окна обновления мешает активно работать с типовыми отчетами на СКД. Просто констатация факта.

        Стандартное сравнение файлов не предлагать. Уверен, что для большинства ваше предложение не удобно. Потому и обходятся по возможности без коррекций таких емких структур как СКД

        • Василий Ханевич

          Я открывал отчет о сравнении объектов непосредственно из окна сравнения-объединения конфигураций:
          Отчет о сравнении
          Как вариант – можно реализовать внешний отчет, не изменяя типовой объект, и подключить его в режиме “1С:Предприятие”. Тогда и обновлять конфигурацию проще будет.

  24. GolD

    Хорошее видео. Причем те, кто планирует поддерживать ЗУП 3.0 и тем более сдавать по нему специалиста, должен хорошо изучить этот “финт” конфигурации с запросом-шаблоном, который потом дорабатывается в общих модулях – задачи на знание этой особенности на экзамене будут обязательно.

  25. Александр

    Здравствуйте, уважаемые Сенсэ!
    Есть купленный курс, но не активировал его, т.к. времени не было. Вот дождался второго потока.
    Мои действия, чтобы на него попасть: активировать токен 13-14 июля?

    • Евгений Гилев (Мастер-тренер)

      Добрый день!

      Активируйте токен с 14 июля, причем это можно сделать прямо сейчас.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Вход на сайт

Зарегистрироваться

Подтверждение регистрации будет отправлено на указанный e-mail.

Я подтверждаю, что ознакомлен(а) с Пользовательским соглашением, принимаю его условия и даю свое согласие на обработку моих персональных данных.

Восстановить доступ

E-mail или логин

Ссылка на создание нового пароля будет отправлена на указанный e-mail.