#0
by NikePopov
Доброго всем дня! Для БСП версии 2.1 начал делать обработку. Обработка представляет собой внешнюю печатную форму, очень простую по своей структуре. В обработке есть - макет(куча текста, в паре мест подставляются номер и дата документа и реквизиты контрагента и организации) - модуль объекта с текстом Собственно отлично все кроме одного: надо чтобы макета пользователь в дальнейшем мог бы изменить. То есть текст макета может меняться и пользователь достаточно компетентен для того, чтобы его сам поправить не сломав указанные там параметры. Не могу понять, какую функцию требуется использовать в БСП для получения актуального пользовательского макета(пример использования есть в БП 3.0 для счета на оплату), чтобы использовать стандартный механизм получения пользовательской формы. Я знаю, что строку надо поменять на что-то типа Но конкретной функции найти не могу. А в бухгалтерии вообще запутался в куче вызываемых процедур. Никто не сталкивался с таким вопросом?
#1
by NikePopov
Что макет хранится в регистре сведений "ПользовательскиеМакетыПечати" я знаю. И написать такую функцию не сложно. Просто в следующий раз не придется этим заниматься, если сейчас найти решение.
#4
by Леха Дум
Эта функция используется для встроенных объектов - если макет встроен в конфу - работать будет, для внешнего макета - хз - попробуй - расскажешь. Смысл в том, что пользователь может измененить исходный макет - измененный макет сохраняется в регистре сведений. Функция анализирует наличие макета в рег.сведений - есть берет из регистра, нет - берет указанный в пути
#5
by NikePopov
Это понятно. судя по коду возьмет из внешней обработки без проблем. Но после первого запуска она не появляется в регистре. Функция "УправлениеПечатью.ПолучитьМакет" только проверяет есть ли он в регистре и возвращает какой сможет, но не кладет его для редактирования в регистр. А значит пользователь не сможет его поменять.
#7
by NikePopov
Если способ единственный, тогда всё ясно. И тут я ошибся процедура ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени не работает с внешними обработками. И мне стало совсем грустно.
#8
by Леха Дум
я чего то не понял - на кой ляд тебе эта функция, если печатная форма подключаемая? Если все же нужно дать возможность пользователям редактировать макет - укажи в параметре функции путь на встроенный макет (добавь его в конфигурацию) и все должно получиться
#9
by NikePopov
Я не планирую выезжать на 1 ч. для "настройки макета" или консультировать по телефону(например, поменялась формулировка "исполнение соглашения" на "выполнение обязательств"). То есть, мне нужно, чтобы пользователь смог сам решить "свои" проблемы в данном случае. Я могу написать инструкцию: 1. Зайди в дополнительные отчеты и обработки(прав, кстати у него на это нет) 2. Сохрани обработку на диск 3. Открой ее конфигуратором(тоже проблема с правами) 4. Измени макет(там внизу ...) 5. Сохрани обработку 6. Загрузи ее обратно(тоже прав нет) Итог: 1. Напряг администратора БД 2. Неизвестно будет ли работать обработка 3. Заморочил человека Хочу написать инструкцию: 1. Сформируй отчет(права есть) 2. Нажми на карандашик над отчетом(права есть) 3. Исправь макет(права есть) 4. Нажми кнопку "закончить рекдактирование" 5. Переформируй отчет. Итог: 1. Я не нужен для решения данной проблемы 2. Администратор БД не нужен 3. Сотруднику интуитивно понятно что делать Вариант с добавлением макета в конфигурацию известен, но не хочу включать возможность редактирования в девственную информационную базу. Во-первых, просто интересно сделать без снятия с поддержки. Во-вторых, это дает повод другим пришедшим 1С-никам без зазрения совести что-то подменять в конфигурации БД с лозунгом: "Она у вас всё равно уже измененная, что с ней будет?"
#10
by Kamas
сохрани mxl на диск или в базу куда нить хоть как доп реквизит к справочнику внешние обработки
#11
by Kamas
да значение в строку пихаеш в допреквизиты значение из строки достаеш и заполняеш. И отдельно функция для редактирования нажал подправил сохранил печатаеш.
#13
by NikePopov
Это проще в стандартном и предназначенном для этого регистре. Он вполне для этого подходит. Не подходит только процедура редактирования.
#14
by GreatOne
вроде оно. Нет сейчас под рукой базы с БСП( Если не ошибаюсь, префикс ПФ_MXL тоже обязательный для имя макета.
#15
by Злопчинский
на Инфостарте есть разработки подобного рода, по первому осмотру/впечатлению - вроде неплохие
#16
by NikePopov
Не смог найти что-то похожее на "МакетПечатнойФормы" ни в одном из методов модулей УправлениеПечатью*. Не нашел Обработка.ПечатьОбщихФорм, и какого-либо специфичного алгоритма анализа данного значения, а обработки такой нет. Выдаст ошибку при получении макета. Вариант логичен с точки зрения методологии БСП, но не могу найти ничего на это похожего. Был бы признателен, если поделитесь более подробной информацией. До создания ветки форма - прошерстил довольно много информации, в том числе и на infostart. Ничего похожего не нашел.
#17
by МимохожийОднако
Добавь в обработку форму настройки макета с соответствующей командной кнопкой. Макет выведи на форму и сохраняй с реквизит типа Хранилище значений. При открытии формы заполняй макетом по умолчанию или из заполненного реквизита с макетом, который правит пользователь. При формировании используй сохраненный макет.
#18
by NikePopov
Благодарю за идею. Но с ней как и с остальными обходится стандартный механизм(БСП). В этом собственно и проблема. Сделать макет редактируемым проблемы нет. Можно его хранить в хранилище значений, в соседнем файле, в допреквизите в специализированном регистре(раз уж БСП есть в конфигурации). Все эти варианты одинаково хороши. Но задача была другой: Использовать механизм БСП. Если выполнить данную задачу можно достигнуть следующие бонусы: 2. Обработка прогрессирует(или деградирует) вместе с БСП; 3. Не надо писать никаких дополнительных форму, команд или прочего кода; 4. Надежность: механизм тестируется огромным числом пользователей "1С:Предприятие 8". Как решается задача в обход стандартного механизма - вполне понятно. Как реализовать в общепринятом порядке - вот какой вопрос.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- У кого есть внешняя печатная форма "Унифицированная форма № МХ-1"
- Печатная форма "Печатная форма"
- Внешняя управляемая печатная форма с формой обработки, с использованием БСП
- Печатная форма в Word (БСП) и параметры страницы
- Обмен из БСП - как с ним работать?
- БСП в чистую конфигурацию
- БСП 2.1.6, подсистема вариантов отчета
- БСП кто как осваивает? Навеяно другими ветками про полезность БСП.
- 1с 8.3 Форма.Форма.Форма(9,17): Тип не определен (Запрос)
- БСП, есть вопросы.
- БСП. Не открывается форма внешней обработки
- Внешняя печатная форма на упр. формах (конф. БСП)
В этой группе 1С
- проблема с virtualbox
- Уникальный идентификатор предопределённого элемента справочника.
- Добавить страницу на форму. Управляемую
- Последовательное применение скидок в Рознице 1.0
- Как поменять параметры в синхронизации данных между УТ - БП выдает ошибку
- Компьютер не пингуется по имени но пингуется по IP
- Глюк загрузи базы данных в конфигурацию
- УПП 1.3 Возврат ГП в производство на доработку
- ЗУП дополнительные страховые взносы в пфр
- СКД Сортировка по строке как по числу
- Как в отчете на скд после каждой группировки выводить разделитель?
- Быстродействие новой базы 1С БП 3.0 на платформе 8.3, файловый вариант.
- Обмен ЗУП 3.0 с УПП 1.3
- РИБ УТ 11 (Док не может быть изменен у подчиненного узла)
- Обработчик событий формы Создание
- v8: Как зарегистрировать в обмене удаленный объект
- Значение не является значением объектного типа
- v7: 1C 7.7 + PHP Кто знает?
- Случайно в базе заменил стандартный отчет на внешний. Вернул все обратно. Ошибка
- После замены блока питания компьютер/жесткий диск стал тормозить