Имя: Пароль:
1C
 
Правильный перебор ТЗ из формы с "актуальными данными"
,
0 Midasu
 
27.08.13
15:16
Добрый день.
Документ - УстановкаЦенНоменклатуры.
Конфа - УТ 10.3.

Задача - получить доступ к актуально изменяющимся данным в ТЗ.
ТЗ называется Товары, табличное поле на форме - ТаблицаЦен.

Пробую 2 варианта:

1) Очевидный вариант, просто перебрать ТЧ и реквизитов.
Для Каждого Товар из Товары Цикл
   Сообщить(Товар.Номенклатура);
КонецЦикла;

В итоге получает только данные, записанные в документ, интерактивные изменения вообще не учитывает.

2) Итерирую через ТЧ из реквизитов, получаю данные от элемента формы.
Для Каждого Товар Из Товары Цикл
   Стр = ЭлементыФормы.ТаблицаЦен.ДанныеСтроки(Товар);
   Сообщить(Стр.Номенклатура);
КонецЦикла;

Тот же самый результат. Казалось бы, через элемент обращение.
Что не так? Какие ещё варианты есть?
Хотелось бы что-нть по-хардкорнее, чтоб по-прямее.
1 Midasu
 
27.08.13
15:17
//самофикс//
Не ТЗ, а ТЧ.
2 Rie
 
27.08.13
15:19
(0) Что такое "актуальные данные"?
3 Midasu
 
27.08.13
15:20
(2)
>>В итоге получает только данные, записанные в документ, интерактивные изменения вообще не учитывает.

Я имел ввиду, что только записанные данные получаю обоими способами, не учитывая того, что в данный момент в табличном поле.
4 Rie
 
27.08.13
15:20
(1) Да нет, Вы правильно написали. Там есть ТЧ, а есть - ТЗ.
5 Midasu
 
27.08.13
15:21
(4) Ну, я имел ввиду именно ТЧ.
6 Rie
 
27.08.13
15:22
(3) То есть, Вам нужны данные из таблицы значений на форме?
Тогда зачем Вы обращаетесь к табличной части?
7 Rie
 
27.08.13
15:22
(5) А "актуальные данные" лежат в _таблице значений_ ТаблицаЦен.
8 Midasu
 
27.08.13
15:24
(7) Ну, я так же думал.
Только всё-равно получаю тоже самое.
Для Каждого Товар Из Товары Цикл
   Стр = ЭлементыФормы.ТаблицаЦен.ДанныеСтроки(Товар);
   Сообщить(Стр.Номенклатура);
КонецЦикла;

Или тут что-то не так?
9 Midasu
 
27.08.13
15:29
Хорошо... Как перебрать таблицу значений? :3
10 Rie
 
27.08.13
15:31
(9) Циклом.
Для каждого СтрокаТЗ из ТаблицаЦен Цикл
    // и тут обращаться к СтрокаТЗ
УонецЦикла;

Причём это возможно только в модуле формы, но не в модуле документа.
11 Ненавижу 1С
 
гуру
27.08.13
15:31
если это в модуле объекта документа:

Для Каждого Товар Из Товары Цикл
   Стр = ЭлементыФормы.ТаблицаЦен.ДанныеСтроки(Товар);
   Сообщить(Стр.Номенклатура);
КонецЦикла;

то нифига это не записанные данные
12 Midasu
 
27.08.13
15:31
(7) Спасибо. Всё было слишком просто.

Для Каждого Товар из ТаблицаЦен Цикл
   Сообщить(Товар.Номенклатура);
КонецЦикла;
13 Midasu
 
27.08.13
15:34
(11) Попробуйте. Не знаю с чем это связано...
14 Midasu
 
27.08.13
15:35
(11) А, в модуле объекта. Спасибо. Буду теперь знать. :3
15 Rie
 
27.08.13
15:48
(11) ЭлементыФормы в модуле объекта?!
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн