Имя: Пароль:
1C
1С v8
К вопросу о быстром исчезновении текста после ввода в поле
0 Гена
 
гуру
07.06.25
13:18
Ветка навеяна сообщением на партнёрском форуме:
"Тут с новым релизом БП 3.0 (3.0.176.38) прилетела фича - наименование банковского счета формируется автоматически и его нельзя изменить вручную.
Что самое интересное, у этого поля на форме есть обработчик ПриИзменении. Но он даже не успевает отработать, наименование изменяется на автонаименование в процессе набора. Т.е. начинаю вводить буквы и буквально через секунду-другую все заменяется автонаименованием.
Отладчик не перехватывает ничего, где-бы это менялось.
"

И вспомнилась наша архивная ветка о подобной же проблеме в справочнике Контрагентов:
Исчезает текст после ввода.

Там же в конце упоминается, что такой же баг был в прошлом для платёжных поручений.

Из анализа предложенного свежего патча EF_60023407
https://bugboard.v8.1c.ru/error/000176580

вырисовывается интересная картина: фирма 1С давно втихаря пользуется одной и той же конструкцией для обхода данной несомненно платформенной ошибки:
Процедура ПредотвратитьСбросРедактируемогоЗначения(Форма) Экспорт
    
    // Обход особенности платформы, когда затирается редактируемое значение
    // в текущем элементе при изменении формы.
    //@skip-warning
    Если НЕ ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент() Тогда
        Если ТипЗнч(Форма.ТекущийЭлемент) = Тип("ПолеФормы") И Форма.ТекущийЭлемент.Вид = ВидПоляФормы.ПолеВвода Тогда
            Форма.ТекущийЭлемент.ОбновлениеТекстаРедактирования = ОбновлениеТекстаРедактирования.ПриИзмененииЗначения;
        КонецЕсли;
    КонецЕсли;
    
КонецПроцедуры

Она как раз прописана и доке ПлатежноеПоручение, и в справочнике Контрагенты и теперь вот предлагается для справочника БанковскиеСчета.

Я к чему? Если у кого-нибудь после обновления платформы будет исчезать текст после ввода текста в какое-нибудь поле, то достаточно только будет в модуле формы задействовать данную процедуру.
1 Злопчинский
 
07.06.25
14:16
Гена - Всехний Побеждатель!