Имя: Пароль:
1C
 
Эффект обновления формы в ПриАктивизацииСтроки
0 mikecool
 
28.09.25
20:10
1С:Предприятие 8.3 (8.3.26.1521)
В ПриАктивизацииСтроки использую ПодключитьОбработчикОжидания  , чтобы отобразить доп информацию в надписи на форме.
Однако, нарвался на эффект - как только надпись обновляется, получается - обновляется и сама форма, я находился в конце таб части, и тут - перепрыгиваю в ее начало, если при этом редактирую значение ячейки - редактирование отменяется.

Эффект известный? Как избежать?
1 PR
 
28.09.25
20:13
Три раза прочитал, ничего не понял
Почему что-то сбрасывается, что там обновляется, кто на ком стоял, кто кого погонял...
2 Asmody
 
28.09.25
20:23
(0) небось где-то вызов сервера затесался явный или неявный?
3 mikecool
 
29.09.25
09:40
Процедура ДФ_ТоварыПриАктивизацииСтрокиПосле(Элемент)
	
	Если СегментыИспользуются Тогда 
		ПодключитьОбработчикОжидания("ЗаполнитьСтрокуСегментовНоменклатуры", 0.5, Истина);
	КонецЕсли;
	
КонецПроцедуры  

&НаКлиенте
Процедура ЗаполнитьСтрокуСегментовНоменклатуры() Экспорт

	ТекДанные = Элементы.Товары.ТекущиеДанные;
	Если ТекДанные = Неопределено Тогда 
		Возврат;
	КонецЕсли;  
	_Сегменты = Новый Соответствие(СегментыНоменклатуры); 
	
	ТекущиеСегменты = _Сегменты.Получить(ТекДанные.Номенклатура);
	Если ТекущиеСегменты = Неопределено Тогда 
		ТекущиеСегменты = "";
		//ТекущиеСегменты = ПолучитьСегментыНоменклатуры(ТекДанные.Номенклатура);
		//_Сегменты.Вставить(ТекДанные.Номенклатура, ТекущиеСегменты);
		//СегментыНоменклатуры = Новый ФиксированноеСоответствие(_Сегменты);
	Иначе
		
	КонецЕсли;  
	
	Элементы.НадписьСегментыНоменклатуры.Заголовок = "Сегменты: " + ?(ЗначениеЗаполнено(ТекущиеСегменты), ТекущиеСегменты, "<нет>");
	
КонецПроцедуры 


вот такой кусок кода, закомментил кусок - сначала подумал, что внеконтекстный вызов сервера роняет, но нет - именно обновление заголовка надписи на форме вызывает эффект
4 mikecool
 
28.09.25
20:25
(2) на это подумал в первую очередь, но нет, не он
проверил после того, как закомментил кусок кода
5 Asmody
 
28.09.25
20:27
А привязать надпись к реквизиту формы и менять реквизит, а не значение элемента?
6 mikecool
 
28.09.25
20:28
(5) гм, попробую, спасибо ))
7 PR
 
28.09.25
20:40
Никогда в жизни не работал со значением элемента напрямую
Делаешь реквизит формы, через него пляшешь, как в (5)
К чему эти хождения по болотам, когда есть шоссе?
8 mikecool
 
28.09.25
20:44
(5) работает, еще раз огромное спасибо )))
9 mikecool
 
28.09.25
20:44
(7) я этим "баловался" еще на ОФ, тут попросили добавить корявку, я по старой памяти и накорявил )
10 Маленький Вопросик
 
28.09.25
22:11
(0) В ПриАктивизацииСтроки использую ПодключитьОбработчикОжидания  , чтобы отобразить доп информацию в надписи на форме

Весьма странно, активизация строки - это и есть событие для обновления

К чему обработки ожидания? Используй ожидание при открытии и закрытии формы…