Вход | Регистрация


1С:Предприятие :: 1С:Предприятие 8 общая

Программное изменение формы документа

Программное изменение формы документа
Я
   Gangar
 
29.10.17 - 16:33
Доброго дня, уважаемые.

Дано:
 -некая "нетленка" - в её настройках в пользовательском режиме указывается регистр накопления и вид движений, для определения, формы каких документов надо изменять;
 -подписка на событие ОбработкаПолученияФормы, вызывающая форму обработки;
 -изменения непосредственно форм и модулей документов запрещены, расширения не подходят.

Как добавить реквизит и элемент в форму нужного документа из обработки?
 
 
   h-sp
 
1 - 29.10.17 - 17:40
(0) синтакс помощником пользуйтесь.
   Gangar
 
2 - 29.10.17 - 19:04
(1) ткните, пожалуйста, носом
   h-sp
 
3 - 29.10.17 - 20:17
УправляемаяФорма.ИзменитьРеквизиты (ManagedForm.ChangeAttributes)
УправляемаяФорма (ManagedForm)
ИзменитьРеквизиты (ChangeAttributes)
Синтаксис:

ИзменитьРеквизиты(<ДобавляемыеРеквизиты>, <УдаляемыеРеквизиты>)
Параметры:

<ДобавляемыеРеквизиты> (необязательный)

Тип: Массив.
Массив, содержащий объекты типа РеквизитФормы.
Добавлять можно реквизиты верхнего уровня и вложенные реквизиты, являющиеся колонками.
К добавленным реквизитам верхнего уровня из модуля можно обращаться только с помощью конструкции ЭтотОбъект.<Имя реквизита>.
<УдаляемыеРеквизиты> (необязательный)

Тип: Массив.
Массив, содержащий строки, описывающие пути к удаляемым реквизитам.
Удалять можно только ранее программно добавленные реквизиты.
Описание:

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

Доступность:

Сервер, мобильное приложение(сервер).
--------------------------------------------------------------------------------

     Методическая информация
   Gangar
 
4 - 29.10.17 - 20:33
(3) это работает в модуле формы. а изменить форму надо из обработки
   Филиал-msk
 
5 - 29.10.17 - 21:23
(4) Еще один писатель не читатель...

Это - Метод. Управляемой. Формы. Его. Можно. Позвать. Через точку. От. Переменной.

Если тебе так будет понятней.
   Филиал-msk
 
6 - 29.10.17 - 21:24
Как ты передашь форму на сервер, это уже второй вопрос
   Филиал-msk
 
7 - 29.10.17 - 21:44
(3) > ресуркоемкой

Хе. Надо будет банде с Дмитровского Шоссе про суркоемкость написать (:
   Gangar
 
8 - 29.10.17 - 22:09
(6) вопрос именно как передать её на серевер
   Cyberhawk
 
9 - 29.10.17 - 22:16
"вопрос именно как передать её на серевер" // Кого "ее" и откуда?
   Gangar
 
10 - 29.10.17 - 22:37
(9) попробую еще раз - возможно не слишком понятно выразился ранее.

1. делаем подписку на событие ОбработкаПолученияФормы, которая будет вызываться для ВСЕХ документов.
2. определяем, вызван ли нужный документ.
3. если вызван нужный - заменяем форму документа на форму внешней обработки.
4. из внешней обработки вызываем форму нужного документа.
5. как-то передаём управляемую форму нужного документа с клиента на сервер, что бы применить метод ИзменитьРеквизиты.

вопрос в том - как обратиться к методу ИзменитьРеквизиты, если управляемую форму передать на сервер нельзя.
 
 Рекламное место пустует
   Kuzen
 
11 - 30.10.17 - 04:39
(10) можно. к примеру в присозданиинасервере сделай вызов серверной процедуры и передай в качестве параметра «этаформа»
   Cyberhawk
 
12 - 30.10.17 - 08:54
(10) Нигде в перечисленных пунктах у тебя нет объекта формы на сервере, так что держи карман шире
   h-sp
 
13 - 30.10.17 - 09:31
(10) а зачем вызывать форму документа. Можно ведь создать точно такую же форму во внешней обработке.
   Segate
 
14 - 30.10.17 - 09:38
(10) Зачем тебе менять реквизиты формы, когда ты ее все равно не открываешь. А если тебе надо менять реквизиты объекта а не формы, то он, !ВНЕЗАПНО!, есть на сервере. так что ты можешь менять его хоть до посинения.
   Gangar
 
15 - 30.10.17 - 10:22
(11) я писал
-изменения непосредственно форм и модулей документов запрещены, расширения не подходят.

(13) "нетленка" планируется интегрируемой со всеми конфигурациями - рисовать формы всех документов не вариант.

(14) мне надо добавить реквизит формы и добавить элемент формы, привязанный к реквизиту. и обработчики создать. объект мне не нужен, совсем.
   h-sp
 
16 - 30.10.17 - 10:32
(15) зачем нужно создавать реквизит формы? Можно создать точно такой же реквизит во внешней обработке.
   FIXXXL
 
17 - 30.10.17 - 10:36
(15) т.е. ты хочешь свой нетленный кусок реквизитов приделать к любой типовой форме?
посмотри в сторону БСП, сейчас в типовых практически все формы ПриСозданииНаСервере "дергают" процедуры общего модуля
может сможешь через какой-нить Переопределяемый "подрубиться"
   Gangar
 
18 - 30.10.17 - 10:57
(16) и что мне это даст? мне надо заполнять реквизит в форме документа.
   Gangar
 
19 - 30.10.17 - 10:57
(17) спасибо, посмотрю.
   h-sp
 
20 - 30.10.17 - 11:07
(18) если у вас полностью типовые формы, то зачем туда лепить свои какие-то реквизиты?
   Gangar
 
21 - 30.10.17 - 12:46
(20) а зачем вообще дорабатывают 1с под требования заказчика? пусть не выеживается и пользуется типовыми - так?


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует