Вход | Регистрация
 

Программная установка текущей строки на строку таблицы формы. 1С 8.3

Программная установка текущей строки на строку таблицы формы. 1С 8.3
Я
   tabarigen
 
04.08.21 - 12:01
Всем добра.
Мобильная платформа 8.3.18. Пробую установить текущую устроку программно. Но к сожалению не работает. Пособите молодому советом, добрые люди.
Код
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
    
    Если ИмяСобытия = "Штрихкод" Тогда
        ПараметрыОтбора = Новый Структура;
        ПараметрыОтбора.Вставить("Штрихкод", Параметр);
        ТоварыПоШК = Штрихкоды.НайтиСтроки(ПараметрыОтбора);
        Если ТоварыПоШК.Количество()=1 Тогда
            //Если находим товаро то меняем количество на +1
            //и устанавливаем текущее поле на строку
            ТоварПоШК = ТоварыПоШК[0].Владелец_Key;
            
            //Ищем в ТЗ товары формы с отборам по ключу номенклатуры
            Парам = Новый Структура;
            Парам.Вставить("Номенклатура_Key", ТоварПоШК);
            строкиТз = Товары.НайтиСтроки(Парам);
            //Если мы нашли штрихкод в ТЗ штрихкоды то пытаемся узнать идентификатор
            Если строкиТз.Количество() =1 Тогда
                Элементы.Товары.ТекущаяСтрока = строкиТз[0].ПолучитьИдентификатор();
                Элементы.Товары.ТекущиеДанные.Факт = Элементы.Товары.ТекущиеДанные.Факт + 1;
                Элементы.Товары.ТекущиеДанные.Штрихкод = СокрЛП(Параметр);
                ВыделенныеСтроки = Элементы.Товары.ВыделенныеСтроки;
                ВыделенныеСтроки.Очистить();
                ВыделенныеСтроки.Добавить(строкиТз[0].ПолучитьИдентификатор());
                ЭтаФорма.ТекущийЭлемент = Элементы.Товары.ПодчиненныеЭлементы.ТоварыФакт;
                //ЭтаФорма.ОбновитьОтображениеДанных();
            КонецЕсли;    
        ИначеЕсли ТоварыПоШК.Количество()>1 Тогда
            Сообщить("Найдено несколько товаров по данному штрихкоду", СтатусСообщения.ОченьВажное);
        Иначе
            Сообщить("Не найдено товаров по данному штрихкоду", СтатусСообщения.ОченьВажное);
        КонецЕсли;
    КонецЕсли;

КонецПроцедуры
   acht
 
1 - 04.08.21 - 12:10
А просто поменять данные в строкиТз[0] аллах не велит?
   tabarigen
 
2 - 04.08.21 - 12:12
(1) высрал конечно знатно
   tabarigen
 
3 - 04.08.21 - 12:12
но ладно, голову отрубать не буду на первый раз
   tabarigen
 
4 - 04.08.21 - 12:15
В на форме установил для таблицы свойство "ИспользованиеТекущейСтроки = Отображение выделения и выбор"
Теперь текущая строка устанавливается но текущий элемент нет.
Не происходит прокрутки к полю ввода.
   tabarigen
 
5 - 04.08.21 - 13:04
Парни подскажите вот так правильно?
ЭтаФорма.ТекущийЭлемент = Элементы.Товары.ПодчиненныеЭлементы.ТоварыФакт;
   tabarigen
 
6 - 04.08.21 - 13:05
Делая так я предполагаю, что в подчиненных элементах будет именно нужная мне строка, так ранее я установил ее кодом
 Элементы.Товары.ТекущаяСтрока = строкиТз[0].ПолучитьИдентификатор();
   tabarigen
 
7 - 05.08.21 - 10:30
7up

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.