| 0
    
        vlasabo   17.08.16✎ 16:24 | 
        Доброго дня.
Вчера случился переезд с файловой базы на клиент-серверное взаимодействие, после этого как минимум одна функция работает некорректно. Понять причину не смог, помогите пожалуйста. Конфа самописка.
 
 
 &НаКлиенте
 Процедура НаименованиеОкончаниеВводаТекста(Элемент, Текст, ДанныеВыбора, Параметры, СтандартнаяОбработка)
 а=ПоискДублей(Текст);
 Если (ЗначениеЗаполнено(а)) тогда
 Отказ = Истина;
 Ответ = Вопрос("Данный пациент уже существует." + Символы.ПС + "Если вы хотите изменить написание ФИО пациента - нажмите кнопку ""Нет""
 |
 |если желаете переместить пациента из группы прошедших лечение в группу лечащихся на данный момент - нажмите кнопку ""Да"" и в открывшемся окне нажмите желтую кнопку ""Обновить дату и переместить...""" +
 Символы.ПС + Символы.ПС +Символы.ПС +"Закрыть форму создания пациента и перейти к существующему?",РежимДиалогаВопрос.ДаНет );
 Если Ответ = КодВозвратаДиалога.Да тогда
 ЭтаФорма.Модифицированность = Ложь;
 ЭтаФорма.Закрыть();
 ОткрытьЗначение(а);
 КонецЕсли;
 иначе ;
 КонецЕсли;
 
 КонецПроцедуры
 
 Функция "ПоискДублей(...)" является запросом, который по переданным данным ищет пациентов с теме же ФИО и отдаёт нам назад выборку,  в которой содержится найденная ссылка на элемент справочника. в переменной Текст, насколько я понимаю из справки, содержится строка, введенная оператором в поле Наименование. Процедура стартует после схода с поля ввода, НО: дубль обрабатывается корректно, возникает диалог и далее по плану. Если же дубля нет - поле очищается.
 |  | 
    
        | 1
    
        Mauser   17.08.16✎ 16:30 | 
        Описание:
 Возникает при формировании значения по отредактированному тексту. Например, в момент перехода на другой элемент управления формы, при закрытии формы и т.д.
 
 Примечание:
 
 В обработчике данного события нельзя использовать серверные методы формы с директивой компиляции &НаСервере
 |  | 
    
        | 2
    
        vlasabo   17.08.16✎ 16:59 | 
        Воистиину я заведу себе резинового утёнка и буду излагать проблемы ему.
Решилось так:
 Процедура НаименованиеОкончаниеВводаТекста(Элемент, Текст, ДанныеВыбора, Параметры, СтандартнаяОбработка)
 б=Текст;
 а=ПоискДублей(Текст);
 .
 .
 .
 .
 .
 иначе Объект.Наименование=б;
 КонецЕсли;
 
 КонецПроцедуры
 |  |