Ввод на основании из расширения

1. tirli41 3 21.08.20 06:09 Сейчас в теме
Коллеги приветствую, задача: Конфа на БСП, в расширении есть самописный документ "ЗаказНаПроизводство". Нужно чтоб на его основании создавался док "СчетНаОплатуПокупателю" - из основной конфы. Док "СчетНаОплатуПокупателю" является самостоятельным, т.е. не вводится на основании, возможно из-за этого у меня ошибка при открытии формы с последующим заполнением. Создал в заимствованном объекте дока реквизит и тем не менее ошибка есть, даже не смотря на то что ОбработкаЗаполнения есть (отладчик до нее не доходит). Как исправить?
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
2. MuxaH 21.08.20 07:04 Сейчас в теме
В расширении можно только команду ввода на основании создать. В обработчике команды формируем структуру с заполняемыми данными, создаём нужный документ и вызываем у него метод Заполнить, передавая в него сформированную структуру. Там же в расширении обработку заполнения подкорректировать. Если обработка структуры там уже есть, то может будет достаточно сформировать аналогичную структуру с данными. Разместить эту команду в группе ввод на основании и красота - реквизитов создавать не надо, основную конфигурацию курочить не надо. Только структуру подчиненности проблематично посмотреть.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. user958326 21.08.20 10:50 Сейчас в теме
(1)
1. В расширении в разделе Общие -> Общие команды, создаете новую команду. Группу у команды указываете "Командная панель формы. Создать на основании". Тип параметра команды: Ссылки тех документов, в которых появится новая строка в подменю ВводаНаОсновании. Режим использования параметра - одиночный.
2. В модуле команды в процедуре ОбработкаКоманды пишите код, который будет выводить новый документ. Что то типа:

&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
        
    СтрДанные = Новый Структура("Основание", ПараметрКоманды);
    ПараметрыФормы = Новый Структура("ЗначенияЗаполнения", СтрДанные);
    
    ОткрытьФорму("Документ.Доверенность.ФормаОбъекта", ПараметрыФормы, ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Окно, ПараметрыВыполненияКоманды.НавигационнаяСсылка);
    
КонецПроцедуры
Показать




3. Для того, что бы новая команда из расширения стала доступна пользователям, в расширении надо захватить или создать новую роль, и вклчить в неё созданную вами на первом шаге команду.
4. При необходимости включить команду в нужную подсистему.
5. Для того что бы документ, который вы создаете на основании правильно заполнялся, возможно потребуется захватить его в расширении и поправить в модуле Объекта процедуру ОбработкаЗаполнения. Старайтесь использовать типовые функции заполнения документов.

3. Профит. В меню нужного вам документа появится новая команда ввода на основании.
2. MuxaH 21.08.20 07:04 Сейчас в теме
В расширении можно только команду ввода на основании создать. В обработчике команды формируем структуру с заполняемыми данными, создаём нужный документ и вызываем у него метод Заполнить, передавая в него сформированную структуру. Там же в расширении обработку заполнения подкорректировать. Если обработка структуры там уже есть, то может будет достаточно сформировать аналогичную структуру с данными. Разместить эту команду в группе ввод на основании и красота - реквизитов создавать не надо, основную конфигурацию курочить не надо. Только структуру подчиненности проблематично посмотреть.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот