0
Euroset1
23.08.15
✎
14:35
|
Доброго дня. Кто-то можешь мне объяснить суть сего явления?
Есть таблица формы на одной из форм отчета, на вход ей подается коллекция пользовательских полей СКД. Из полей в таблице только Заголовок - и всё. Следовательно, чтобы добраться до поля (т.е. до элемента) нужно действовать либо через ТекущаяСтрока, либо через ВыбранныеСтроки - ведь в ТекущиеДанные нет никаких данных для корректной идентификации.
Итак, открываем форму, в таблицу попадают 2 строки из источника, заранее введенных. Ставим курсор на строку 2 для наглядности и жмем команду, которая должна НА КЛИЕНТЕ сообщить ТекущиеДанные.Заголовок и ТекущаяСтрока. Мне говорят, что "Строка 2" и "Неопределено" - при этом происходит что-то сбрасывающее курсор на первую строку таблицы. Сразу опять ставлю курсор на 2 строку и опять жму ТУ ЖЕ кнопку - выдает "Строка 2" и "ПользовательскиеПоля.Поле2". То есть я 2 раза проделал одно и то же, но работать как задумано начинает только со второй попытки. Тот же эффект предварительной осечки можно достигнуть не переоткрывая форму: достаточно очистить таблицу и ввести в нее что-то заново - первая попытка вернет в качестве текущей строки "Неопределено".
Теперь проделываем те же действия, но уже вызывая для Сообщить ТекущаяСтрока процедуру на сервере - в этом случае значение сразу выводится корректно, но сброс курсора наверх таблицы все же происходит единожды в те же моменты, что было описано выше.
Кто-то может объяснить природу этих явлений и как любой программист без танцев с бубнами должен узнавать о таких особенностях, за исключением танцев с бубном?
p.s. по выбранным полям тоже самое, что и с текущей строкой: они оказываются заполненными только после похода на сервер, либо после одной осечки на клиенте. и также происходит сброс выбора и перевод курсора на 1 позицию.
|
|