Имя: Пароль:
1C
1С v8
изменить значение в колонке табличной части не привязанной к реквизиту
0 squall84
 
02.04.20
15:07
Обычные формы.
На форме есть табличная часть. Мне нужно добавить 2 колонки, которые будут рассчитываться динамически, т.е. получать данные при изменении определенных ячеек. Добавлять их в реквизиты я не хочу.

Присваиваю значение:  ЭлементыФормы.ДрагМатериалы.Колонки.Итог.ЭлементУправления.Значение=4
При входе в режим редактирования я вижу цифру, но если выхожу из режима редактирования - нет, отображается пустая ячейка. Видимость и доступность везде включена.
1 acht
 
02.04.20
15:16
(0)
> Мне нужно добавить
...
> Добавлять их в реквизиты я не хочу.

Сильная позиция. Уважаю. И где ты собираешся в этом случае хранить данные?
2 squall84
 
02.04.20
15:17
(1) Мне не нужно хранить данные. Это просто информационные поля для расчета. Т.е. пользователь вводит значение и в этих полях видит цифры после произведенного расчета на дату документа.
3 acht
 
02.04.20
15:18
И как сочетается "будут рассчитываться динамически, т.е. получать данные при изменении определенных ячеек." с "При входе в режим редактирования" ?
4 mistеr
 
02.04.20
15:19
(2) Ну рассчитывай их в ПриПолученииДанных().
5 acht
 
02.04.20
15:20
(2)
> Мне не нужно хранить данные
...
> пользователь вводит значение

Вот-вот.
То, что данные не сохраняются в базе не говорит о том, что данные не хранятся в форме.
Выбраным тобой методом можно только отображать вычисленное, но не хранить введенное.
6 squall84
 
02.04.20
15:23
(3) Вот отобразить я не могу.
Т.е. допустим присваиваю: ЭлементыФормы.ДрагМатериалы.Колонки.Итог.ЭлементУправления.Значение=4;
Открываю форму и "4" я не вижу. Изначально ячейка была только для просмотра и доступность = ложь;

Убираю только просмотр и доступность и могу войти в режим редактирования ячейки. Вот когда я вхожу в режим редактирования - я вижу значение. А когда выхожу - нет.
Даже если я в ручную ввожу значение, то все-равно при выходе из редактирования число исчезает.
7 squall84
 
02.04.20
15:24
(4) Дело не в расчете. А в том, что значений ячеек не видно на форме, пока не войдешь в режим редактирования.
8 acht
 
02.04.20
15:26
(6)
> ЭлементыФормы.ДрагМатериалы.Колонки.Итог.ЭлементУправления.Значение=4;

Прделгаю задуматься - к какой строке таблицы это должно относитьcя?
9 squall84
 
02.04.20
15:29
(8) Видимо к текущей. -) В текущей строке нет колонок. А в колонках текущей строки. Я смог только так попасть в колонки.
10 acht
 
02.04.20
15:35
(9) Ну, если уж решил программировать методом яростного тыка, то добавь еще пару строк в таблицу и попробуй повводить разные цифры.
11 squall84
 
02.04.20
15:38
(10) Сейчас проверю, но возможно получает только значение первой строки.
Но как тогда к этим колонкам достучаться и ввести значение?
12 acht
 
02.04.20
15:39
(11) Никак. Их можно использовать только для отображения вычисляемых данных, зависящих от других источников. Хранить в них данные нельзя.
13 squall84
 
02.04.20
15:41
(12) Ну так, а как отобразить? Мне и нужно просто, чтобы в них отобразился итог вычислений. Я не могу к ним достучаться, чтобы присвоить значение.
14 mistеr
 
02.04.20
15:51
(13) Еще раз. Если ты хочешь, чтобы 1С сама отображадла твои расчеты, их придется где-то хранить.

Если хранить не хочешь, вычисляй в тот момент, когда нужно их отобразить. См. (4).
15 acht
 
02.04.20
15:52
(13) В обработчике таблицы ПриПолученииДанных через ОформлениеСтроки -> Ячейки -> УстановитьТекст. Там у тебя будет и контекст текущей выводимой строки и все остальные данные формы
16 squall84
 
02.04.20
15:59
(14) (15) Спасибо! Как раз примерно это же в интернете нарыл. Теперь буду знать.