Изменить динамический список программно
Для программного изменения динамического списка на управляемой форме 1С (версии 8.3) используется работа с реквизитом формы типа "Динамический список". Основные шаги:
1. **Доступ к реквизиту динамического списка**
Обычно динамический список — это реквизит формы, например:
1C ДинамическийСписок = ЭтаФорма.ДинамическийСписокИмя;
2. **Изменение текста запроса**
Если динамический список построен на произвольном запросе, можно изменить текст запроса:
1C ДинамическийСписок.ТекстЗапроса = НовыйТекстЗапроса;
3. **Установка параметров запроса**
Если в запросе используются параметры, их можно установить так:
1C
ДинамическийСписок.Параметры.УстановитьЗначениеПараметра("ИмяПараметра", Значение);
4. **Обновление данных динамического списка**
После изменения запроса или параметров нужно обновить данные:
1C ДинамическийСписок.Обновить();
5. **Пример процедуры обновления динамического списка с параметром**
1C
&НаКлиенте
Процедура ОбновитьДинамическийСписок(КлиентСсылка)
ДинамическийСписок = ЭтаФорма.ДинамическийСписокФинансы;
ДинамическийСписок.Параметры.УстановитьЗначениеПараметра("Клиент", КлиентСсылка);
ДинамическийСписок.Обновить();
КонецПроцедуры
6. **Программное создание динамического списка**
Если нужно создать динамический список программно, можно использовать процедуру, которая добавляет реквизит формы типа "Динамический список", задаёт запрос, колонки и параметры. Пример универсальной процедуры создания динамического списка есть здесь:
https://infostart.ru/1c/articles/728597/
7. **Обновление отображения формы**
После обновления данных динамического списка можно обновить отображение формы:
1C ЭтаФорма.ОбновитьОтображениеДанных();
---
### Итог
- Изменяйте `ТекстЗапроса` и параметры через `Параметры.УстановитьЗначениеПараметра`.
- Вызывайте метод `Обновить()` для обновления данных.
- При необходимости обновляйте отображение формы.
---
Рекомендую посмотреть здесь:
https://helpf.pro/faq/view/1657.html
https://infostart.ru/1c/articles/728597/
https://helpf.pro/faq82/view/1658.html