Установить курсор на нужную строку в 1с 8.3 Управляемая форма
Добрый день. Управляемые формы.
Есть форма. На форме Таблица Значений.
Обработчик события ТЗ => Выбор
&НаКлиенте
Процедура ТЗ_Выводим_ТоварыНаСкладахВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
ВремТекущаяСтрока = ВыбраннаяСтрока;// сохраняем значение выбранной строки
Оповещение = Новый ОписаниеОповещения("ПослеВводаКоличества", ЭтотОбъект,СтруктураДанных);
ПоказатьВводЧисла(Оповещение, 1, "Введите количество", 15, 2);
КонецПроцедуры
Запускаю оповещение. При завершении Оповещение ТЗ обновляется :
Врем_ТЗ = РеквизитФормыВЗначение("ТЗ");
...........
ЗначениеВРеквизитФормы(Врем_ТЗ,"ТЗ");
т.е. таблица значений изменилась.
Как мне установить курсор обратно на ту же строку???
Есть форма. На форме Таблица Значений.
Обработчик события ТЗ => Выбор
&НаКлиенте
Процедура ТЗ_Выводим_ТоварыНаСкладахВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
ВремТекущаяСтрока = ВыбраннаяСтрока;// сохраняем значение выбранной строки
Оповещение = Новый ОписаниеОповещения("ПослеВводаКоличества", ЭтотОбъект,СтруктураДанных);
ПоказатьВводЧисла(Оповещение, 1, "Введите количество", 15, 2);
КонецПроцедуры
Запускаю оповещение. При завершении Оповещение ТЗ обновляется :
Врем_ТЗ = РеквизитФормыВЗначение("ТЗ");
...........
ЗначениеВРеквизитФормы(Врем_ТЗ,"ТЗ");
т.е. таблица значений изменилась.
Как мне установить курсор обратно на ту же строку???
По теме из базы знаний
- Реализация поиска по первым символам в Управляемых формах
- Загрузка номенклатуры c картинками (несколько потоков одновременно) и сопутствующими данными в базу и любые документы из yml, xls, xlsx, xlsm, ods, ots, csv для УТ 10.3, УТ 11 (все), БП 3, КА 2, ERP 2, УНФ 1.6/3.0, Розница 2
- Фишки платформы 1С 8.3 для начинающего разработчика
- Интеграции с маркетплейсами из одного окна: Озон, ВБ, Яндекс, Сбер, Али, ЛаМода для 1С:УНФ, УТ, КА, ERP
- Расширяемый редактор форматированного текста для 1С (WYSIWYG)
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Мне нужна работать с ТЗ на Форме. т.е. добавлять, удалять, сворачивать. Мне нужно как-то заново получить текущую строку.
Т.е. в Событии Выбор я могу указать : Элементы.ТЗ.ТекущаяСтрока = <Значение>
НО! я вышел уже с процедуры и данный метод не работает.
Т.е. в Событии Выбор я могу указать : Элементы.ТЗ.ТекущаяСтрока = <Значение>
НО! я вышел уже с процедуры и данный метод не работает.
(5)Если нажимать кнопку Ответить, то в тексте сообщения ответа появляется в скобках номер сообщения, например - (5), и приходит уведомление об ответе на сообщение.
Какое еще значение текущей строки, что за бред?
Вы сохраняете идентификатор строки.
При использовании метода ЗначениеВРеквизитФормы идентификаторы перезаполняются другими значениями. И смысла в сохранении идентификатора в данном случае нет.
Прочитайте еще раз, что я написал...
Значения реквизитов колонок выбранной строки сохранять, чтобы ее можно было потом найти.
Значение текущей строки я записал.
Какое еще значение текущей строки, что за бред?
Вы сохраняете идентификатор строки.
При использовании метода ЗначениеВРеквизитФормы идентификаторы перезаполняются другими значениями. И смысла в сохранении идентификатора в данном случае нет.
Прочитайте еще раз, что я написал...
Значения реквизитов колонок выбранной строки сохранять, чтобы ее можно было потом найти.
У меня динамическая ТЗ ТЗДвижение.
В таком варианте нормально работает отрисовка при изменении, добавлении, удалении строк на форме.
&НаКлиенте
Процедура ПриИзмененииТЗДвижения(Элемент)
НомерСтроки = ТЗдвижение.Индекс(ТЗдвижение.найтипоидентификатору(Элемент.ТекущаяСтрока));
ПриИзмененииТЗДвиженияНаСервере(Элемент.ТекущийЭлемент.Имя, НомерСтроки );
Элементы.ТЗДвижение.ТекущаяСтрока = ТЗДвижение[НомерСтроки].ПолучитьИдентификатор();
КонецПроцедуры
&НаСервере
Процедура ПриИзмененииТЗДвиженияНаСервере(пИмя, пНомерСтроки)
ТЗ_движение = РеквизитФормыВЗначение("ТЗДвижение");
....
ЗначениеВРеквизитФормы(ТЗ_движение, "ТЗДвижение");
КонецПроцедуры
В таком варианте нормально работает отрисовка при изменении, добавлении, удалении строк на форме.
&НаКлиенте
Процедура ПриИзмененииТЗДвижения(Элемент)
НомерСтроки = ТЗдвижение.Индекс(ТЗдвижение.найтипоидентификатору(Элемент.ТекущаяСтрока));
ПриИзмененииТЗДвиженияНаСервере(Элемент.ТекущийЭлемент.Имя, НомерСтроки );
Элементы.ТЗДвижение.ТекущаяСтрока = ТЗДвижение[НомерСтроки].ПолучитьИдентификатор();
КонецПроцедуры
&НаСервере
Процедура ПриИзмененииТЗДвиженияНаСервере(пИмя, пНомерСтроки)
ТЗ_движение = РеквизитФормыВЗначение("ТЗДвижение");
....
ЗначениеВРеквизитФормы(ТЗ_движение, "ТЗДвижение");
КонецПроцедуры
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот