Добрый день!
Платформа 8.3.12.1567
Есть документ с табличной частью (номенклатура, цены, количество и т.п.), есть реквизит на форме типа "надпись". Логика проста: активизируем какой-либо элемент из табличной части и в надпись выводится некая информация о выбранной номенклатуре, динамика увеличения/снижения цены и т.п.
Изначально делал так:
Процедура "ПолучитьИнформационнуюСтроку" выполняется на сервере. После ее внедрения 1С теперь всегда пытается спозиционировать текущую строку в центре экрана, что неочень удобно пользователям. Прочитал в СП:
Синтаксис:
ПриАктивизацииСтроки()
Примечание:
В обработчике данного события нельзя использовать серверные методы формы с директивой компиляции &НаСервере.
Ладно, согласен, далеко не оптимально каждый раз обращаться к серверу когда пользователь просто так тыкает по строкам. В табличную часть формы добавил еще одну колонку "ИнформацияОНоменклатуре", описал ее заполнение при открытии и обновление при редактировании строки. В итоге получилось так:
Все-равно центрирует, хотя уже вроде нет серверных обращений. Если закомментировать эту строку, то центрирование исчезает. Или обращение к текущим данным и есть серверное обращение?
Изменение заголовка приводит к перерисовыванию формы, поэтому текущая строка сбрасывается. Попробуй вместо заголовка заюзать текстовый реквизит формы с элементом типа поле надписи.
Спасибо за советы, помогли. Создал реквизит формы, путь к данным указал как "Элементы.Запасы.ТекущиеДанные.ИнформацияОНоменклатуре". Все нормально работает. Осталось только оформить подобающе :)
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой