|
Не удаляется строка табличной части в управляемой форме | ☑ | ||
---|---|---|---|---|
0
ChAlex
21.08.12
✎
12:56
|
Очередной косяк. Как блин это уже задолбало !!
Управляемая форма документа. На форме есть табличная часть документа и реквизит в виде таблицы. При удалении строки табличной части мне нужно убрать видимость соответсвующей колонки таблицы. В событии ПередУдалением делаю вызов серверной функции УдалитьСтатью(Элемент.ТекущиеДанные.ID) В которой выполняется некий алгоритм и нужным колонкам реквизита таблицы устанавливаю Видимость=ложь. В результате удаляемая строка табличной части НЕ УДАЛЯЕТСЯ!!! А остается, как ни в чем не бывало. Если комментирую изменение видимости колонок - строка удаляется! |
|||
1
hhhh
21.08.12
✎
13:02
|
отказ = истина видимо вставил.
|
|||
2
ChAlex
21.08.12
✎
13:03
|
да нету никакого отказа. Стоит закомментировать только изменеие видимости колонок - и строка удаляется.
|
|||
3
hhhh
21.08.12
✎
13:07
|
(2) стоп. Как же ты делаешь изменение видимости. Ты же уничтожаешь этим свой Элемент.ТекущиеДанные. Причеи прям перед его удалением.
Походу ты сам себя задолбал. |
|||
4
ChAlex
21.08.12
✎
13:12
|
(3) еще раз поясню: на форме документа 2 (ДВЕ!!!) таблицы - одна - табличная часть документа, другая - ТАБЛИЦА (просто таблица значений, реквизит формы). Удаляю строку в табличной части документа, а видимость убираю в другой таблице. И что тут нелогичного?! При этом что не следует удалить строку?
|
|||
5
ChAlex
21.08.12
✎
13:16
|
механизм этого косяка я догадываюсь - просто при смене видимости сервер назад видимо возвращает удаляемую строку.
|
|||
6
SUA
21.08.12
✎
13:22
|
СП
Примечание: В обработчике данного события нельзя использовать серверные методы формы с директивой компиляции &НаСервере. |
|||
7
SUA
21.08.12
✎
13:23
|
собственно все верно
перед удалением можно запомнить ИД удаляемой колонки и в обработчике после удаления менять форму как угодно |
|||
8
ChAlex
21.08.12
✎
13:28
|
(6) - :) вы не поверите, я все тоже самое написал в самом обработчике : результат естественно тот-же.Тогда уже в документации следовало бы написать "В обработчике данного события нельзя использовать ВЫЗОВ сервера" - ибо ни одной процедуры не компилируется на сервере - а результат тот же (вызов сервера делается неявно).
|
|||
9
SUA
21.08.12
✎
13:30
|
(8)а как видимость реквизита формы не на сервере поменять?
именно "серверные методы формы" тут |
|||
10
SUA
21.08.12
✎
13:31
|
получить данные с сервера не меняя формы как раз легко можно
|
|||
11
ChAlex
21.08.12
✎
13:43
|
(10) - ага, меня вот только все время мучает вопрос а нафиг изменение различного рода видимости и прочие интерфейсные вещи нужно делать на сервере? Просто сделали не совсем удачную модель управляемой формы - отсюда и все корни. Неужели управлять поведением окна формы не проще на самой станции. Ничего нового в оптимизации трафика 1С не придумала. Еще с самого появления С+ (подозреваю еще и раньше) известна технология DocView - только там нормально оптимизируется взаимодействие представления данных и их извлечением с сервера и никто не пытается на сервере строить саму форму. Ладно - это все равно в пустоту
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |