Не удаляется строка табличной части в управляемой форме #625998


#0 by ChAlex
Очередной косяк. Как блин это уже задолбало !! Управляемая форма документа. На форме есть табличная часть документа и реквизит в виде таблицы. При удалении строки табличной части мне нужно убрать видимость соответсвующей колонки таблицы. В событии ПередУдалением делаю вызов серверной функции УдалитьСтатью(Элемент.ТекущиеДанные.ID) В которой выполняется некий алгоритм и нужным колонкам реквизита таблицы устанавливаю Видимость=ложь. В результате удаляемая строка табличной части НЕ УДАЛЯЕТСЯ!!! А остается, как ни в чем не бывало. Если комментирую изменение видимости колонок - строка удаляется!
#1 by hhhh
отказ = истина видимо вставил.
#2 by ChAlex
да нету никакого отказа. Стоит закомментировать только изменеие видимости колонок - и строка удаляется.
#3 by hhhh
стоп. Как же ты делаешь изменение видимости. Ты же уничтожаешь этим свой Элемент.ТекущиеДанные. Причеи прям перед его удалением. Походу ты сам себя задолбал.
#4 by ChAlex
еще раз поясню: на форме документа 2 (ДВЕ!!!) таблицы - одна - табличная часть документа, другая - ТАБЛИЦА (просто таблица значений, реквизит формы). Удаляю строку в табличной части документа, а видимость убираю в другой таблице. И что тут нелогичного?! При этом что не следует удалить строку?
#5 by ChAlex
механизм этого косяка я догадываюсь - просто при смене видимости сервер назад видимо возвращает удаляемую строку.
#6 by SUA
СП Примечание: В обработчике данного события нельзя использовать серверные методы формы с директивой компиляции &НаСервере.
#7 by SUA
собственно все верно перед удалением можно запомнить ИД удаляемой колонки и в обработчике после удаления менять форму как угодно
#8 by ChAlex
-  :) вы не поверите, я все тоже самое написал в самом обработчике : результат естественно тот-же.Тогда уже в документации следовало бы написать "В обработчике данного события нельзя использовать ВЫЗОВ сервера" - ибо ни одной процедуры не компилируется на сервере - а результат тот же (вызов сервера делается неявно).
#9 by SUA
а как видимость реквизита формы не на сервере поменять?
#10 by SUA
получить данные с сервера не меняя формы как раз легко можно
#11 by ChAlex
- ага, меня вот только все время мучает вопрос а нафиг изменение различного рода видимости и прочие интерфейсные вещи нужно делать на сервере? Просто сделали не совсем удачную модель управляемой формы - отсюда и все корни. Неужели управлять поведением окна формы не проще на самой станции. Ничего нового в оптимизации трафика 1С не придумала. Еще с самого появления С+ (подозреваю еще и раньше) известна технология DocView - только там нормально оптимизируется взаимодействие представления данных и их извлечением с сервера и никто не пытается на сервере строить саму форму. Ладно - это все равно в пустоту
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С