![]() |
![]() |
![]() |
|
Обработка на управляемых (список на форму). | ☑ | ||
---|---|---|---|---|
0
lirt82
04.04.17
✎
14:55
|
Пишу обработку для управляемой конфы, реквизитов обработки нет, на форме создал объект Результат тип СписокЗначений, и команду "Заполнить" с процедурой НаКлиенте, суть при нажатии на форму в этом СписокеЗначении должны отобразиться все напрм. ВидыДокументов.
т.е. где запустить цикл по метаданным чтоб заполнить список и потом передать его с сервера на клиент на форму? |
|||
1
DrShad
04.04.17
✎
15:10
|
метаданные есть только на сервере
|
|||
2
lodger
04.04.17
✎
15:10
|
вопрос "где запустить цикл".
ответ "с сервера". |
|||
3
1Снеговик
гуру
04.04.17
✎
15:12
|
Формируй список на сервере, потом ЗначениеВРеквизитФормы
|
|||
4
lodger
04.04.17
✎
15:13
|
&НаКлиенте
процедура Заполнить() ЗаполнитьНаСервере(); конецпроцедуры &НаСервере процедура ЗаполнитьНаСервере() //Цикл по Метаданные.Документы //Результат.Добавить(ТекМетаданные); конецпроцедуры и не надо ЗначениеВРеквизитФормы. |
|||
5
lirt82
04.04.17
✎
19:00
|
(4) +1, спасибо, получилось без (ЗначениеВРеквизитФормы).
|
|||
6
lirt82
04.04.17
✎
19:09
|
как теперь обработать полученный вид документа из списка значений?
т.е. на форме список видов документов с флажками, напрм. пользователь поставил флажок рядом с Реализацией, далее жмет на кнопку "Выполнить" к ней процедура напрм. выбранный вид документа помечает на удаление. кнопку сделал &НаКлиенте Процедура Выполнить(Команда) ВыполнитьНаСервере(); КонецПроцедуры &НаСервере Процедура ВыполнитьНаСервере() Для каждого ТекСтрока Из РезультатСписок Цикл Если ТекСтрока.Пометка Тогда // тут должны получить объект и далее с ним работать, но у ТекСтроки Тип Строка а Значение "РеализацияТМЗ" КонецЦикла; КонецПроцедуры |
|||
7
lodger
04.04.17
✎
19:17
|
(6) ну... я бы может нагородил запрос вида
ШаблонЗапроса = "Выбрать Доки.Ссылка ИЗ Документ.ТаблицаДоков КАК Доки" Для каждого ТекСтрока Из РезультатСписок Цикл Если ТекСтрока.Пометка Тогда Запрос = Новый Запрос; Запрос.Текст = СтрЗаменить(ШаблонЗапроса,"ТаблицаДоков",ТекСтрока.Значение); Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл ДокОбъект = Выборка.Ссылка.ПолучитьОбъект(); Если НЕ ДокОбъект.ПометкаУдаления Тогда ДокОбъект.УстановитьПометкуУдаления(); КонецЕсли конеццикла КонецЕсли; КонецЦикла; КонецПроцедуры |
|||
8
jsmith82
04.04.17
✎
19:18
|
Запрос = Новый Запрос();
Запрос.Текст = "ВЫБРАТЬ Таб.Ссылка ИЗ Документы.%ИмяДок КАК Таб"; Запрос.Текст = СтрЗаменить(Запрос.Текст", "%ИмяДок", ТекСтрока.Значение); Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл Обт = Выборка.Ссылка.ПолучитьОбъект(); Обт.ПометкаУдаления = Истина; Обт.Записать(); КонецЦикла; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |