[РЕШЕНО] Как прокрутить/пролистать таблицу

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем Leks, 18 янв 2017.

  1. TopicStarter Overlay
    Leks
    Offline

    Leks Новичок в 1С

    Регистрация:
    10 янв 2017
    Сообщения:
    18
    Симпатии:
    1
    Баллы:
    4
    Приветствую! Имеется таблица в документе УстановкаЦенНоменклатуры. При подборе через штрихкод, когда последняя внесённая запись отображается за пределами окна самой таблицы, не происходит перемещение курсора таблицы к последней записи, или она просто не пролистывается для отображения крайней записи.. В документе же ПоступлениеТоваров это реализовано. После просмотра событий таблиц и сравнения их, всё же не нашёл решения. Кто-то сталкивался ?
  2. TerANik
    Offline

    TerANik Профессионал в 1С

    Регистрация:
    19 ноя 2014
    Сообщения:
    1.124
    Симпатии:
    83
    Баллы:
    54
    Нужно активной делать строку , которая вводится. Смотрите на свойства таблицы
  3. TopicStarter Overlay
    Leks
    Offline

    Leks Новичок в 1С

    Регистрация:
    10 янв 2017
    Сообщения:
    18
    Симпатии:
    1
    Баллы:
    4
    в смысле, смотреть в код событий? что там искать ? Или какие-то галочки ? Ничего похоже по смыслу не нахожу. Есть пункт "Начальное отображение", но он работает только с отображением при открытии документа.
  4. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    15.088
    Симпатии:
    543
    Баллы:
    204
    Свойство Ввод новой строки можно сделать в начало списка
  5. TopicStarter Overlay
    Leks
    Offline

    Leks Новичок в 1С

    Регистрация:
    10 янв 2017
    Сообщения:
    18
    Симпатии:
    1
    Баллы:
    4
    Вот что нарыл. Решил эмулировать нажатие клавиши END кодга в фокусе таблица. Но наткнулся на следующее непонятное. Есть такая процедура для подбора по штрихкоду

    Код:
    Процедура КоманднаяПанельТаблицыТиповЦенПоискПоШтрихКоду(Кнопка)
              
      
                Результат = РаботаСТорговымОборудованием.ВвестиШтрихкод();
                    ШТКЕщеРаз = Не ПустаяСтрока(Результат);
                Если Не ПустаяСтрока(Результат) Тогда
                        ПолучитьСерверТО().ОбработатьВведенныйШтрихкод(Результат, ЭтаФорма);
                КонецЕсли;
                 
                Если ШТКЕщеРаз Тогда
                        КоманднаяПанельТаблицыТиповЦенПоискПоШтрихКоду(Кнопка);
                        ТекущийЭлемент = ЭлементыФормы.ТаблицаЦен;
                        Shell = Новый COMОбъект("WScript.Shell");
                        Shell.SendKeys("^{END}");
                КонецЕсли;
        КонецПроцедуры // КоманднаяПанельТоварыПоискПоШтрихКоду()
    
    Этот кусок вставлен для достижения нужного эффекта:
    Код:
    ТекущийЭлемент = ЭлементыФормы.ТаблицаЦен;
                        Shell = Новый COMОбъект("WScript.Shell");
                        Shell.SendKeys("^{END}");
    Но он срабатывает только если окно ввода штрихкода закрыть. Да, таблица прокручивается вниз, но не тогда когда нужно. Я так понял, этот срабатывает с окном на первом плане.
  6. TopicStarter Overlay
    Leks
    Offline

    Leks Новичок в 1С

    Регистрация:
    10 янв 2017
    Сообщения:
    18
    Симпатии:
    1
    Баллы:
    4
    Нашёл решение

    Код:
    Результат = РаботаСТорговымОборудованием.ВвестиШтрихкод();
                    ШТКЕщеРаз = Не ПустаяСтрока(Результат);
                Если Не ПустаяСтрока(Результат) Тогда
                        ПолучитьСерверТО().ОбработатьВведенныйШтрихкод(Результат, ЭтаФорма);
                КонецЕсли;
                
                Если ШТКЕщеРаз Тогда
                        КоманднаяПанельТаблицыТиповЦенПоискПоШтрихКоду(Кнопка);
                  
                  КоличествоСтрок = ЭлементыФормы.ТаблицаЦен.Значение.Количество()-1;
                 ЭлементыФормы.ТаблицаЦен.ТекущаяСтрока = ТаблицаЦен[КоличествоСтрок];
    
                КонецЕсли;
        КонецПроцедуры // КоманднаяПанельТоварыПоискПоШтрихКоду()
    Всем спасибо за поддержку!

Поделиться этой страницей