|
Команда "создать на основании" через БСП Prog_man, РыбаАист, dmt, Группа неравнодушных, Мультук, 2S, Страждущий, фросия, formista2000, SleepyHead, Spyke, Климов Сергей, ASV, craxx, LienXo, Доминошник, AAA, ass1c, Builder, maxab72, Silgis, runuts, Timon1405, denk32, RVN, Hawk_1c, Tarlich, nick86, Мыхалыч, lexx256, Guk, Многолетний Апельсин, Telcher, lEvGl, Шурик71, crasler, calmius, Krendel, shuhard, программистище, CepeLLlka, AlexKimp, Djelf, Смотрящий, osa1C, DemonShinji2, d4rkmesa, Rokford, Libertus, arsik
| ☑ | ||
|---|---|---|---|---|
|
0
РыбаАист
04.10.24
✎
11:07
|
Добрый день, форумчане.
Разрабатываю расширение для УНФ (3.0.9), пытаюсь активно использовать БСП. Задача формировать документ Заказ на перемещение на основании Заказа покупателя с дополнительной обработкой данных. Видел тему на инфостарте, каюсь, не разобрался. Раньше тупо делал общую команду и запихивал её в соответствую папку, за что поплатился с одним из недавних обновлений. Делаю: 1) В модуле менеджера "заказ на перемещение" обработчик ДобавитьКомандыСозданияНаОсновании - добавляю свою команду: Если ПравоДоступа("Добавление", Метаданные.Документы.ЗаказНаПеремещение) Тогда
КомандаСоздатьНаОсновании = КомандыСозданияНаОсновании.Добавить(); КомандаСоздатьНаОсновании.Менеджер = Метаданные.ОбщиеКоманды.ААТ_СоздатьЗаказНаПеремещение.МодульКоманды; КомандаСоздатьНаОсновании.Обработчик = "ОбработкаКоманды"; КомандаСоздатьНаОсновании.Представление = "Заказ на перемещение (по всем этапам)"; КонецЕсли; Документы.ЗаказПокупателя.ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании); 2) ...??? а что дальше-то? Как видите ссылаюсь на общую команду, потому что не понимаю где ещё разместить свой обработчик заполнения (пытался посмотреть пример в типовой конфиге, запутался ещё больше). Да и в целом хватаюсь за голову, потому что не могу разобраться что куда откуда. И на ИТСе не ищется ничего конкретного. |
|||
|
1
РыбаАист
04.10.24
✎
13:26
|
забавно, что даже если добавить команду так, как я это сделал, то в списке её нет, но если нажать "настроить", то там она есть 👍
|
|||
|
2
dmt
04.10.24
✎
11:22
|
(0) вроде все правильно сделал, по методичке
https://its.1c.ru/db/bsp3110doc#content:4:hdoc:issogl3_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0_%D0%B8_%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4_%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%BD%D0%B0_%D0%BE%D1%81%D0%BD%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B8 |
|||
|
3
Prog_man
04.10.24
✎
11:24
|
(0) расширение не лучший вариант, я бы сделал подпиской на событие
|
|||
|
4
РыбаАист
04.10.24
✎
11:47
|
(2) За ссылку спасибо!
1 шаг мне не нужен, так как ЗНП определен у Заказа покупателя в типовом решении, так? 2 шаг, 3 шаг - ДобавитьКомандуНаСоздание - судя по всему свой код я должен был вставить сюда, но функцию в расширение я могу забрать только "вместо", а я не хочу заменять типовую команду. 4 шаг - ДобавитьКомандыНаСоздание - судя по всему эту процедуру я должен был бы забрать в модуль менеджера Заказа покупателя, но опять-таки ЗНП указан в этой процедуре по умолчанию, так что мне это не нужно? |
|||
|
5
РыбаАист
04.10.24
✎
12:39
|
я схожу с ума, добавил команду в одном месте, кнопка появилась на форме вне каких-либо групп.
Почему она не добавляется в списке "создать на основании", но при это видна в настройках этого списка, я тоже не понимаю. кнопка добавленная через команду "ААТ команды" - тут всё ясно
|
|||
|
6
AAA
04.10.24
✎
13:19
|
(3)Поясните то, что Вы написали. Как соотносятся расширение и подписка на событие ?
|
|||
|
7
craxx
04.10.24
✎
13:29
|
(0) Команды мало, надо еще кнопку из нее создать
|
|||
|
8
Prog_man
04.10.24
✎
13:35
|
(6) имеется ввиду в основной конфе для Заказа на перемещение в свойствах добавить вводится на основании... далее подпиской на событие обработка заполнения если данные заполнения = документ основание... далее заполнение документа..
|
|||
|
9
РыбаАист
04.10.24
✎
14:28
|
Решение:
1) В модуле менеджера Заказа покупателя тащим процедуру ДобавитьКомандыСозданияНаОсновании из типовой, в ней описываем создание команды (у меня на скриншоте оно отдельной функцией ААТ_ДобавитьКомандуДокументЗаказНаПеремещениеПоВсемЭтапам) 1.1) В обработчике команды указываем процедуру (я ссылаюсь на типовой модуль, добавленный в расширение, куда вписал свою процедуру по примеру из типовой) 1.2) По-непонятным причинам в команду в параметр "функциональные опции" встаёт какая-то дрянь, поэтому принудительно очищаю его (ура костыль). 2) В данные заполнения указываю свой параметр 3) В обработчике заполнения использую указанный параметр для определения, и заполняю документ как мне надо спасибо БСП за упрощение жизни программиста и за то что не даёшь скучать
|
| Форум | Правила | Описание | Секции | Поиск |