Версия для печати темы (https://pro1c.org.ua/index.php?s=0bf4d256f5867c8d14e305fe7053b69e&showtopic=18505)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование обычных форм 1С 8.2 и не интерфейсной логики _ Получить количество строк у не записанного документа

Автор: Log1c 25.06.14, 11:10

Что хочу:
получить количество строк из формы документа у не записанного документа

Что делаю:

ЭтотОбъект.Товары.Количество() //0
Товары.Количество() //0


Если эти же методы выполнять у записанного документа тогда работает
ЭтотОбъект.Товары.Количество() //18
Товары.Количество() //18


Доп. инфа:
Товары - имя табличной части документу
Вызываю методы из формы документа
18 - количество строк в документа

Автор: TipsyKID 25.06.14, 11:13

Товары.Количество() просто пишется и будет работать, проверил на не управляемых формах.

Автор: Log1c 25.06.14, 11:21

Цитата(TipsyKID @ 25.06.14, 12:13) *
Через ЭлементФормы.Товары.Количество() пробовали ?

да

ЭлементыФормы.Товары

ЭлементыФормы.Товары {(1)}: Поле объекта не обнаружено (Товары)

в ЭлементыФормы нет Товары, я так понимаю что если Товары это ТЧ документа, а не ТЧ формы то и не должно её быть в ЭлементыФормы.

Автор: Rayne 25.06.14, 12:06

Цитата(Log1c @ 25.06.14, 12:21) *
в ЭлементыФормы нет Товары, я так понимаю что если Товары это ТЧ документа, а не ТЧ формы то и не должно её быть в ЭлементыФормы.


Если у Вас на форме есть табличная часть для заполнения, то определенно есть элемент формы типа ТабличноеПоле. Значит, к нему можно обратиться. Но, как уже сказали выше, отрабатывает и Товары.Количество() даже для не записанных документов.

Автор: Agapov_Stas 25.06.14, 12:46

мне кажется у него Управляемая форма. иначе бы работало все!

Автор: Rayne 25.06.14, 12:52

Цитата(Agapov_Stas @ 25.06.14, 13:46) *
мне кажется у него Управляемая форма. иначе бы работало все!


Так в разделе Обычный интерфейс.

Автор: Log1c 25.06.14, 13:32

Цитата(Agapov_Stas @ 25.06.14, 13:46) http://pro1c.org.ua/index.php?act=findpost&pid=88203
Если у Вас на форме есть табличная часть для заполнения, то определенно есть элемент формы типа ТабличноеПоле. Значит, к нему можно обратиться. Но, как уже сказали выше, отрабатывает и Товары.Количество() даже для не записанных документов.


Посмотрел визуально свойства табличной части документа.
В поле Данные указано название ТаблицаЦен.

Попробовал вызвать
ЭлементыФормы.ТаблицаЦен //возвращает значение типа ТабличноеПоле


ЭлементыФормы.ТаблицаЦен.Количество()  //так естественно не работает

Автор: Vofka 25.06.14, 13:35

Количество = ТаблицаЦен.Количество();

Автор: TipsyKID 25.06.14, 13:40

В таких случаях, когда уже все говорят , что работает : ИмяТабличнойЧасти.Количество() ( без ЭтотОбъект ) , а я еще и проверил, то тут только пруфы в студию, пошагово картинки или давайте тимвивер я подключусь посмотрю !

Автор: Log1c 25.06.14, 13:54

Цитата(TipsyKID @ 25.06.14, 14:40) *
В таких случаях, когда уже все говорят , что работает : ИмяТабличнойЧасти.Количество() ( без ЭтотОбъект ) , а я еще и проверил, то тут только пруфы в студию, пошагово картинки или давайте тимвивер я подключусь посмотрю !


Моя проблема была в том что кто-то изменил источник данных для ТЧ, а я не проверил. Я никогда с таким не сталкивался.

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua