![]() |
![]() |
|
В каких случаях ТЧ документа и таб. поле на форме док-та могут не совпадать? | ☑ | ||
---|---|---|---|---|
0
Prog111
07.11.14
✎
11:10
|
У документа есть табличная часть, заполненная данными. На обычной форме документа есть табличное поле, у которого в свойствах "данные" стоит эта табличная часть документа. Сколько ни наблюдал - всегда эти 2 таблицы совпадают друг с другом. Тем не менее, у табличного поля есть 2 свойства - "ТекущиеДанные" и "ТекущаяСтрока", то есть подразумевается, что данные в ТЧ документа и данные в табличном поле могут различаться. Подскажите, в каких случаях это может быть?
|
|||
1
User_Agronom
07.11.14
✎
11:11
|
Например, когда на форме изменил, а документ ещё не записал.
|
|||
2
Defender aka LINN
07.11.14
✎
11:11
|
"у табличного поля есть 2 свойства - "ТекущиеДанные" и "ТекущаяСтрока"" - пока все ок.
"то есть подразумевается, что данные в ТЧ документа и данные в табличном поле могут различаться" - а вот тут контакт с реальностью уже прерван |
|||
3
butterbean
07.11.14
✎
11:12
|
>> подразумевается, что данные в ТЧ документа и данные в табличном поле могут различаться
откуда такой пятничный вывод?? |
|||
4
Prog111
07.11.14
✎
11:25
|
(2), (3) Ну вот например: v8: Просвятите по ТекущаяСтрока ТекущиеДанные
Первый комментарий. |
|||
5
Prog111
07.11.14
✎
11:28
|
(1) Вот я написал в процедуре "ПриНачалеРедактирования" у табличного поля: Сообщить(Оплаты.Количество()). И каждый раз при добавлении строки это количество увеличивается, хотя я документ не записывал. Получается, что табличная часть документа всё равно меняется при изменении на форме документа...
|
|||
6
silent person
07.11.14
✎
11:29
|
"ТекущаяСтрока" это то место где у тебя сейчас стоит курсор, а "ТекущиеДанные" это данные из этого места.
|
|||
7
vicof
07.11.14
✎
11:30
|
(5) а теперь Сообщить(Ссылка.Оплаты.Количество())
|
|||
8
Prog111
07.11.14
✎
11:32
|
(7) А это разве не одно и то же?
|
|||
9
Prog111
07.11.14
✎
11:34
|
(6) Ну, например, ТекущаяСтрока.Сумма выдает то же самое, что и ТекущиеДанные.Сумма
|
|||
10
butterbean
07.11.14
✎
11:34
|
(5) ты меняешь данные в объекте, полученном по ссылке из базы данных. при этом в самой базе ничего не меняется, пока ты не запишешь свои изменения
|
|||
11
vicof
07.11.14
✎
11:36
|
(0) Табличное поле - просто элемент формы, который отображает данные, записанные в табличную часть, при это часть данных может быть скрыта. Или наоборот, показаны дополнительные. Но базовый функционал остается базовым.
|
|||
12
МишельЛагранж
07.11.14
✎
11:48
|
(1) это вообще не при чем
(6) нет (8) нет (10) ерунду толчете в ступе Если данные не записаны - их де-факто и не сущетсвует. Речь про другие "особенности" работы 1С. |
|||
13
МишельЛагранж
07.11.14
✎
11:51
|
(0) ТекущаяСТрока - это данные текущей строки ТП, которые могут абсолютно не совпадать с данными ТЧ.
А вот ТекущиеДанные - это именно данные базы, т.е. данные ТЧ по этой строке. ПОчему строка ТП и ТЧ могут не совпадать - спросите 1С, зачем реализован хитропо-й механизм виртуальных полей ТП, когда это можно было сделать (и правильней) на уровне самой ТЧ. Или ТЗ. Не той ТЗ, которая в ТП встроена, а той, которая, как и ТЧ, подключается к ТП и является источником данных. |
|||
14
МишельЛагранж
07.11.14
✎
11:56
|
(11) это мозгоплюй-во реализвоано только в 1С - когда не данные диктуют элементу, сколько их будет выводиться, а элемент диктует данным, какими им быть.
|
|||
15
Defender aka LINN
07.11.14
✎
12:36
|
(13) "А вот ТекущиеДанные - это именно данные базы, т.е. данные ТЧ по этой строке".
http://risovach.ru/upload/2013/09/mem/villi-vonka_29305696_orig_.jpeg |
|||
16
МишельЛагранж
07.11.14
✎
12:53
|
тоже не знал?
|
|||
17
Defender aka LINN
07.11.14
✎
13:30
|
(16) И продолжаю этого не знать
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |