Команда работает как с выбранной строкой, так и с пустой таблицей. Проверка отсутствия текущих данных предотвращает обращение к свойствам Неопределено.
Где и как запускать
Клиент управляемой формы обработки; команда формы ПоказатьКоличество.
Подготовка
Добавьте реквизит Товары типа ТаблицаЗначений с колонками Наименование (Строка) и Количество (Число), разместите таблицу Товары на форме.
Создайте команду ПоказатьКоличество с клиентским обработчиком и кнопкой вне таблицы.
Добавьте строки Книга — 3 и Тетрадь — 5.
&НаКлиенте
Процедура ПоказатьКоличество(Команда)
СтрокаТоваров = Элементы.Товары.ТекущиеДанные;
Если СтрокаТоваров = Неопределено Тогда
Сообщить("Сначала выберите строку товаров");
Возврат;
КонецЕсли;
Сообщить(СтрШаблон("%1: %2",
СтрокаТоваров.Наименование, СтрокаТоваров.Количество));
КонецПроцедурыРазбор по шагам
Получаем данные текущей строки визуальной таблицы через ТекущиеДанные.
При отсутствии строки выводим подсказку и завершаем процедуру до чтения колонок.
В непустой строке читаем именно колонки реквизита, созданные при подготовке.
СтрШаблон собирает представление, Сообщить показывает его пользователю.
Как проверить результат
Выберите Книга и нажмите команду: ожидается Книга: 3.
Выберите Тетрадь: ожидается Тетрадь: 5.
Удалите все учебные строки и выполните команду: должна появиться подсказка, а не ошибка обращения к свойству.
Ожидаемый результат
Команда сообщает данные выбранной строки и корректно обрабатывает отсутствие выбора.
На что обратить внимание
Имена Наименование и Количество должны совпадать с колонками вашего реквизита.
ТекущаяСтрока и ТекущиеДанные не взаимозаменяемы: первое свойство содержит идентификатор строки, второе — доступные данные строки.
Для динамического списка набор доступных колонок определяется его настройками; этот сценарий подготовлен для таблицы данных формы.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.