Менеджер вариантов отчетов (копирование, удаление)

Копирование вариантов отчетов

Управляемая форма.

Обработка позволяет копировать и удалять варианты отчетов пользователей.

Работает с ХранилищеВариантовОтчетов (проверено на конфигурации, где варианты отчетов сохраняются в стандартном хранилище).

Теоретически должно работать на любой конфигурации, где у отчета «не переопределннно хранилище варианта».

Тоесть, если отчет открыть в конфиграторе, на закладке «Прочее», реквизит «Хранилище вариантов» — должно быть пусто.

 

Для копирования варианта отчета нужно :

 

1. установить курсор на строку с вариантом отчета, в колонке с пользователем, вариант которого нужно скопировать

2. нажать правую кнопку мыши и выбрать пункт «Скопировать»

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

4. нажать «ок»

21 Comments

  1. Поручик

    (0) В общем, я понял в чём дело. Ошибка выскакивает на строке ниже в том случае, когда имя пользователя не соответствует требованиям к наименованиям переменных, то есть содержит спецсимволы, пробелы, etc.

    Код
          ДеревоОбъект.Колонки.Добавить(СтрокаПользователь, Новый ОписаниеТипов("Булево"));
    

    Показать полностью

    Для полной универсальности следует переписать функцию ПолучитьМассивПользователей() для возврата результата в виде таблицы значений или структуры.

    Для преобразования имен пользователей в имена для колонок дарю функцию.

    Код
    // Преобразует строку для использования в качестве имени переменной.
    //
    // Параметры:
    //  пТекст        – Строка.
    //
    // Возвращаемое значение:
    //  Строка – преобразованная строка.
    //
    Функция ПреобразоватьТекстВИмяПеременной(Знач пТекст) Экспорт
    
       РазрешенныеСимволы = " _";
       РазрешенныеСимволы = РазрешенныеСимволы + "АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ";
       РазрешенныеСимволы = РазрешенныеСимволы + "0123456789ABCDEFGHIKLMNJOPQRSTUVWXYZ";
       
       Текст = "";
       Для Счетчик = 1 По СтрДлина(пТекст) Цикл
          СимволСтроки = Сред(пТекст, Счетчик, 1);
          Если Найти(РазрешенныеСимволы, ВРег(СимволСтроки)) > 0 Тогда
             Текст = Текст + СимволСтроки;
          КонецЕсли;
       КонецЦикла;
       
       Текст = СтрЗаменить(Текст, " ", "_");
       Возврат Текст;
    
    КонецФункции // ПреобразоватьТекстВИмяПеременной()

    Показать полностью

    Reply
  2. Поручик

    А теперь внимание. Конфа та же

    {Форма.Форма.Форма(87)}: Метод объекта не обнаружен (ПолучитьСписок)
    СписокВариантовОтчета = ХранилищеВариантовОтчетов.ПолучитьСписок(КлючОбъекта,ТекПользователь); 

    То есть на конфигурациях с переопределённым хранилищем не работает. В Рознице 2 тоже не будет работать.

    Reply
  3. Поручик

    Этот пост считать первым.

    (0) Управление торговлей, редакция 11.0 (11.0.7.13)

    Код

    {Форма.Форма.Форма(77)}: Ошибка при вызове метода контекста (Добавить)

    ДеревоОбъект.Колонки.Добавить(СтрокаПользователь, Новый ОписаниеТипов(«Булево»));

    по причине:

    Неверное имя колонки

    Reply
  4. serg_gres

    Обновил обработку, исправлена ошибка с недопустимыми символами в именах пользователей (с использованием любезно предоставленной Поручиком функцией).

    Reply
  5. Поручик

    (8) Но в УТ 11, Рознице 2, УНФ по прежнему не работает, у меня взлетело на демо-базе БСП.

    Reply
  6. serg_gres

    Взлетит только на конфигурациях у которых не переопределено хранилище вариантов отчетов.

    Обработка работает с ХранилищеВариантовОтчетов (ReportsVariantsStorage)

    Тип: СтандартноеХранилищеНастроекМенеджер;

    Если я правильно понимаю конфигурации (УТ 11, Розница 2 УНФ) сохраняют варианты не в (Тип: СтандартноеХранилищеНастроекМенеджер),

    а в (Тип: ХранилищеНастроекМенеджер).

    И у переопределенного хранилища нет метода ПолучитьСписок().

    В этих случаях настройки хранятся видимо в регистре сведений, с ним и нужно работать.

    Переделывать обработку не буду, т.к. на моей конфигурации все работает хорошо.

    И обработку делал именно для себя, и выложил ее не для рейтинга или денег, а просто чтобы помочь людям.

    PS по идее в конфигурациях, где определены свои хранилища должны быть и менеджеры работы с этими настройками…

    Reply
  7. hulio

    Представил, как будет выглядеть дерево в базе с хотя бы 50 пользователями — стало жутко 😀

    Это ж на каждого пользователя отдельная колонка полагается …

    Reply
  8. Поручик

    (11) Воспринимайте обработку, как пример динамической генерации формы по данным информационной базы с корректным формированием имён реквизитов. Для типовых конфигураций на основе БСП она всё равно практического применения не имеет.

    Reply
  9. vladimir_che

    неудобно

    Reply
  10. serg_gres

    С 50 пользователями — возможно и не удобно, для больших баз видимо пользователей нужно разворачивать вниз.

    А с 10 пользователями гораздо удобнее вправо, чем вниз.

    Reply
  11. serg_gres

    Первоначально думал сделать вообще без разворота пользователей (только с отбором по одному), но решил что для меня это будет не удобно. И переделал так как есть сейчас, и очень этим доволен.

    Reply
  12. vitaliy.ermolenko

    при копировании из колонки «Объект» выдает ошибку (стр.187), видимо нужно добавить проверку

    Reply
  13. ivdic

    Не все варианты отчетов выдает в 1С Документооборот

    Reply
  14. GrayMaster

    на ERP не работает

    Reply
  15. Siba

    на новых версиях 8.3 Бух будет работать?

    Reply
  16. TheRealStanly

    Автор, напиши мне в л/с, скину тебе обработку, доработанную под немодальный режим.

    Reply
  17. TheRealStanly

    (19) возможно, что работать не будет. У меня на версии УНФ 1.6.7.43 уже не взелетело, пришлось дорабатывать под немодальный режим.

    Reply
  18. lenafV

    На УТ 11.2 не работает — не копирует варианты отчетов другим пользователям, а только удаляет варианты отчетов для пользователя, который их и создал….

    Reply
  19. yc_2011

    Не показывает сохраненные варианты в самописной, все хранилища пустые. А как быть с вариантами? Н-р, для отчета «Ведомость по контрагентам» сделал варианты «Ведомость» и «Остатки». Где достать варианты (Ключ «Отчет.ВедомостьПоКонтрагентам/Ведомость»)?

    Reply
  20. XelOla

    (15)

    сработает в Розница 2.2?

    Reply
  21. Светлый ум

    +1 взял на вооружение «менеджер вариантов отчета»

    Reply

Leave a Comment

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