0
- 01.11.2016 - 07:30
|
Всем привет. Помогите разобраться, можно ли не трогая типовой документ скажем Поступление добавить туда кнопку (с этим проблем нет) и добавить туда действие вызов обработки, которая есть в конфе не меняя код документа? Кнопки = ФормаОбъекта.ЭлементыФормы.КоманднаяПанельТовары.К нопки.ПодменюЗаполнить.Кнопки; Если Кнопки.Найти("ЗагрузкаИзЕкселя") = Неопределено Тогда НоваяКнопка = Кнопки.Добавить(); НоваяКнопка.ТипКнопки = ТипКнопкиКоманднойПанели.Действие; НоваяКнопка.Имя = "ЗагрузкаИзЕкселя"; НоваяКнопка.Подсказка = "Загрузить из Excel"; НоваяКнопка.Пояснение = НоваяКнопка.Подсказка; НоваяКнопка.Текст = "Загрузить из Excel"; НоваяКнопка.ИзменяетДанные = Истина; //НоваяКнопка.Действие = Новый Действие("ЗагрузкаПоступленийИзExcel"); КонецЕсли; Вот что в Действие записать, чтобы сделать это или это не возможно и должны быть только процедуры/функции формы документа? | | ||
1
- 01.11.2016 - 09:28
| Типовой механизм обработок заполнения таб.частей не устравает? | | ||
2
- 01.11.2016 - 10:31
| к сожалению нет, заказчика не устраивает. | | ||
3
- 01.11.2016 - 10:43
| Заказчик говорит - не надо типовой конфигурации. Мы хотим ежемесячно платить Одинэсникам за обновление нетиповой? Да и чем отличается - Действия - запустить нетленку от Заполнить - заполнить нетленкой? | | ||
4
- 01.11.2016 - 10:46
|
Есть свои типы фактур, которые нужно загрузить. Загрузить одной кнопкой. Это и делает обработка. Нужно просто добавить кнопку (программно, а не каждый раз возвращать ее) и при ее нажатии вызвать обработку. Просил совета, а не то как и что навязывать заказчику. | | ||
5
- 01.11.2016 - 10:49
| Есть несколько способов. Наиболее логичный - обработка табличных частей. У тебя появляется одна(!!! как ты и хочешь) кнопка. Открываешь документ и у тебя в документе кнопка "заполнить - Что то заполнить". Чем этот способ противоречит сказанному в (0) и (4) ??? | | ||
6
- 01.11.2016 - 10:55
| А куда код из (0) вставляешь? | | ||
7
- 01.11.2016 - 10:55
|
(4) см (1) чтобы сделать это нужно куда-то написать код, который вызовет твою обработку. Такой код уже написан в механизмах подключаемых обработок заполнения и подменю печати. Не устраивает - пиши свой. Но его где-то в доступном в контексте формы месте придётся разместить. | | ||
8
- 01.11.2016 - 11:45
|
(6) УстановитьЗаголовокФормыДокумента в РаботаСДиалогами там одна строчка и вызывает мой общий модуль. этот модуль через форму добавляет кнопку, а вот с действием беда. | | ||
9
- 01.11.2016 - 11:50
| (5) обработку то придется менять и каждый раз при обновлении следить все равно не затереть же. | | ||
10
- 01.11.2016 - 11:52
| 8-pavlo1c > Вот я пользователь. Как я могу отличить кнопку, которую ты добавил через ... РаботаСДиалогами и кнопку которая появилась в результате стандартного механизма подключения обработки табличных частей? | | ||
11
- 01.11.2016 - 11:52
|
2(8) У тебя два варианта: 1. Вносим изменения в конфу: - копируем Форму ФОрмаДокумента в МояФормаДокумента; - Устнавливаем у документа в качестве формы документа форму МояФормаДокумента; - В форме МояФормаДокумента делаем все необходимые свистелки и перделки; - Профит! 2. Конфу не трогаем. Никаких собственных кнопок на форме не появляется. Используем штатный механизм обработок заполнения. | | ||
12
- 01.11.2016 - 11:53
| характерная картинка, не? | | ||
13
- 01.11.2016 - 11:55
| (11) как же не трогаем? обновился и по умолчанию форма перешла назад. И в догонку не получишь новые пополнения формы от новых версий типовой. | | ||
14
- 01.11.2016 - 11:56
| Цитата:
Мы все таки на разных языках с тобой разговариваем https://www.google.ru/search?q=1%D1%...82%D0%B5%D0%B9 | | ||
15
- 01.11.2016 - 11:59
| +14 Сделал, поставил - забыл. Совсем забыл. Ничего при обновлении затереться не может. | | ||
16
- 01.11.2016 - 12:04
| для китайцев делаешь? без картинки не поймут куда жать надо? | | ||
17
- 01.11.2016 - 13:04
|
(14) спасибо, понял о чем речь, но у меня не удается запустить этот механизм. Не дает открыть форму самой обработки :( Саму обработку сразу открывать тоже не удается, так как Инициализировать() срабатывает, но дальше форма обработки не открывается. | | ||
18
- 01.11.2016 - 13:06
| (16) ну ты спросил как (ты пользователь) поймешь что жать, вот как и все остальные кнопки знают что жать. Картинку к примеру тебе написал :) | | ||
19
- 01.11.2016 - 13:16
|
17-pavlo1c > Как вариант: Перем ДокументОбъект экспорт; Процедура Инициализировать(Объект,ТабЧасть,ТабличноеПолеОбъе кта) экспорт ДокументОбъект = Объект; Форма = ЭтотОбъект.ПолучитьФорму("Форма"); форма.ЭлементыФормы.СсылкаНаОбъект.доступность =ложь; //Это поле на форме и данную строку можно удалить- используется для отладки (если запускать обработку не подключая к справочнику допобработок) Форма.Открыть(); КонецПроцедуры | | ||
20
- 01.11.2016 - 13:23
| 18-pavlo1c >Я тебе говорил о том, что пользователю наплевать как ты сделаешь - внешней обработкой ТЧ, в копии форме, в общем модуле - он этого даже не заметит. А то что нельзя картинку подвесить к пункту меню заполнить - так это вообще не проблема, подписать кнопку для пользователя можно на любом языке мира. | | ||
21
- 01.11.2016 - 15:49
|
(19) хм, через ОткрутьФорму() не взлетело, да и не верно было, а как ты предложил вполне верное и не плохое решение, спасибо большое. Это решит вопрос, но вот вопрос можно ли добавлять именно программно кнопки с внешним действием остался открыт (уже из спортивного интереса) Если действия могут быть функции/процедуры самого объекта, то возможно ли добавить туда свою динамически сначала? (20) Как я сделаю ему наплевать, но это должно быть не мене удобно чем есть. Я и не говорил, что нужно только так, но я подумал сделать так и спросил может кто знает почему не получается. | | ||
22
- 01.11.2016 - 16:59
| Да ладно: Тебе в (1) сказали как надо делать. а ты : Цитата:
Цитата:
1. Создаешь пустую управляемую форму своего документа. В обработчике ПриОткрытии пишешь Закрыть(); Назначаешь эту форму основной 2. Создаешь подписку на ОбработкаПолученияФормы для ДокументМенеджер 3. В модуле подписки открываешь стандартную форму и делаешь с формой что хочешь. При обновлении следишь что бы форма по умолчанию оставалась ТвояНоваяФорма И как говориться успехов в личной жизни... Отредактировано GariPortman; 01.11.2016 в 17:02. Причина: .... | | ||
23
- 01.11.2016 - 17:13
| +22 А обработчики свои на элементы формы ты так не повесишь. Так что бубен. | | ||
24
- 01.11.2016 - 17:22
|
(0) СП наше всё КнопкаКоманднойПанели (CommandBarButton) Действие (Action) Использование: Чтение и запись. Описание: Тип: Действие. ======= Читаем описание типа Действие (Action) .... Описание: Предназначен для получения действия, которое можно назначить в качестве обработчика события элемента управления или команды пользовательского интерфейса. Для обработки события может быть вызвана процедура или функция модуля формы или общего модуля, имя которой задано в конструкторе. При использовании в форме в качестве имени процедуры может использоваться только процедура модуля данной формы. Доступность: Толстый клиент. Сериализуется. | | ||
25
- 01.11.2016 - 19:05
|
(22) делаешь форму основной это вообще не вариант, снесется. (23) так и подозревал, спс (24) потому и спросил, может есть возможность динамически добавить процедуру и тогда она будет удовлетворять этому описанию. | |
| Интернет-форум Краснодарского края и Краснодара |