Если у вас также, то делюсь решением задачи, а именно - возможностью вместо договора выбрать либо счет либо реализацию/поступление.
Пользователь изначально решал задачу так: находит счет на оплату или реализацию, смотрит, какой там договор, и вставляет его в документ списания/поступления ДС.
Упростил его работу при помощи расширения. Расширение добавляет (программно) на форму списка договоров динамический список с документами с отбором по контрагенту и организации:
- для списания ДС:
- Счет на оплату покупателю
- Реализация товаров и услуг
- Счет-фактура выданная
- для поступления ДС:
- Счет на оплату от поставщика
- Поступление товаров и услуг
- Счет-фактура полученная
Счета-фактуры отключены в запросе (функция ПолучитьЗапрос() в модуле формы Справочники.ДоговорыКонтрагентов.ФормаВыбора), так как нам не нужны, а без них запрос работает быстрее.
Пользователь находит нужный документ, кликает по нему два раза, и на форму документа подставляется договор из указанного документа.
При этом стандартный функционал выбора именно договора сохраняется.
Выбор договора на форме "Разбивка платежа" выглядит также, но с нюансами:
- Из документа вытаскивается также сумма и вставляется в текущую строку
- Вызывается обработчик события РасшифровкаПлатежаСуммаПлатежаПриИзменении()
- Из документа переносится счет на оплату
- Для поступления ДС есть оповещение, если сумма документов превышает сумму поступления
О расширении:
- Все элементы и реквизиты добавляются только программно
- Не хранит значения
- Код открыт для редактирования
Тестировалось на:
- 18 авг. 2023. Бухгалтерия предприятия 3.0 (3.0.139.19), платформа 8.3.22.1923.