|
Получить значение из ячейки табличного поля | ☑ | ||
---|---|---|---|---|
0
Darsky
28.05.24
✎
09:05
|
платформа 8.3, обычное приложение.
имеется внешняя обработка, в ней основная форма, на форме есть таблица ТабличноеПоле с именем Заказы22. Данные в таблицу берутся из Табличной части. Необходимо получить данные из ячейки таблицы. Итак, внутри модуля формы беру табличное поле: Таб = ЭлементыФормы.Заказы22; Далее, если брать данные таблицы вот так ДанныеТаб = Таб.Значение; - тогда данные берутся из табличной части. Но мне нужно брать данные именно из таблицы формы, притом актуальные (пользователь их мог изменить, ввести свои). подскажите, как это сделать? |
|||
1
mikecool
27.05.24
✎
21:32
|
прочитал два раза, и не понял - в чем проблема? строку получить?
|
|||
2
Климов Сергей
28.05.24
✎
09:02
|
Область = Таб.Область(Строка, Столбец, Строка, Столбец);
ДанныеТаб = Область.Текст; |
|||
3
lEvGl
28.05.24
✎
09:12
|
ТабличноеПоле.ТекущиеДанные
|
|||
4
Darsky
28.05.24
✎
09:50
|
(1) Данные из всей таблицы. Из ЭлементыФормы типа ТабличноеПоле
(2) не получается вызвать метод Область. я так понимаю, метод Область есть у объекта Табличного документа. а у моего объекта Таб тип ТабличноеПоле (3) пробовал. но метод ТекущиеДанные возвращает пустое значение с типом данных Неопределено. В синтаксис-помощнике есть такая инфа: Для табличных полей, отображающих иерархический список в виде дерева, свойство может принимать значение Неопределено. - Но тут не совсем понятно что имеется ввиду. У меня на форме обычная таблица с данными, никакого иерархического списка. В отладчике же мое ТабличноеПоле Таб выглядит в виде дерева свойств объекта |
|||
5
lEvGl
28.05.24
✎
10:08
|
это не метод, это свойство. В какой момент вам надо эти данные получить? Неопределено будет, если ни одна строка в таблице не выделена, не активна. Данные какой строки нужны? Их же может быть много, а может ни одной
Необходимо получить данные из ячейки таблицы. то есть, из какой ячейки надо, в какой момент. Опишите как в этой форме должен работать пользователь, что и когда он нажимает |
|||
6
Darsky
28.05.24
✎
10:15
|
нужны данные всех строк но только определенного столбца, по нажатию на кнопку (расположена на той же форме что и таблица).
свойство ТекущиеДанные имеет Неопределено даже когда выделяю строку в таблице. точнее, не строку: у меня по нажатию выделяется только ячейка |
|||
7
Волшебник
28.05.24
✎
10:17
|
(6) Циклы умеете крутить?
|
|||
8
Darsky
28.05.24
✎
10:21
|
(7) да, пробовал. в таком виде ругается, что Итератор для значения не определен:
Таб = ЭлементыФормы.Заказы22; Для Каждого Стр Из Таб Цикл Сообщить(Стр); КонецЦикла |
|||
9
lEvGl
28.05.24
✎
10:27
|
(6) данные в табличной части лежат, обращаться к табличной части по имени (отчеству). Берите, в чем проблема. То есть их не надо получать, они уже есть. Что с ними надо сделать?
|
|||
10
Волшебник
28.05.24
✎
10:27
|
(8) Попробуйте цикл
Для НомерСтроки = 1 По 1000 Цикл |
|||
11
Darsky
29.05.24
✎
11:31
|
(9) к табличной части я обращаюсь без проблем.
но если пользователь изменит данные в таблице (ТабличноеПоле на форме) - данные в табличной части не изменятся. мне нужны данные в т.ч. с учетом измененных пользователем, то есть, данные именно с таблицы формы |
|||
12
Darsky
29.05.24
✎
11:42
|
возможно, я что то упускаю.
в таблицу, расположенной на форме, данные подтягиваются из табличной части. при изменении данных в таблице пользователем данные в табличной части не изменяются. возможно, так понятнее. но вообще я предполагал что данные можно брать непосредственно из таблицы формы (тип этого элемента ТабличноеПоле), куда пользователь может ввести уже свои значения. |
|||
13
Мультук
29.05.24
✎
11:55
|
>>> возможно, я что то упускаю.
Учиться, учиться и еще раз учиться (с) Дедушка в кепке === Смотрим рис.1 в синей рамочке написано имя таблицы значений, где лежат данные. Сама таблицазначений объявлена на странице "Реквизиты" Обычно её имя совпадает с именем табличного поля, но не обязательно. Для каждого строка из ТабличноеПоле1 Цикл лКолонка1 = строка.Колонка1; лКолонка1 = строка.Колонка2; КонецЦикла;
|
|||
14
lEvGl
29.05.24
✎
12:48
|
(12)
в таблицу, расположенной на форме, данные подтягиваются из табличной части. при изменении данных в таблице пользователем данные в табличной части не изменяются. возможно, так понятнее. Это не так. ТабПоле - визуальное представление ТЧ, ТЗ или еще чего-то. Предназначено для Редактирования данных этих коллекций. Что однозначно определяет: если в табполе данные изменены, то они изменены и в ТЧ. Это одно и тоже, только табполе еще глазами видно. ДатаСет, ДатаГрид и остальное - аналоги 1Сных тч и табполя. Хотя с отношением кто чей аналог не так все. |
|||
15
Мультук
29.05.24
✎
12:59
|
(14)
>> Что однозначно определяет:если в табполе данные изменены, то они изменены и в ТЧ Тут либо слово "однозначно" лишнее, либо "ТЧ" нужно менять на другой термин. P.S. Даже во времена УТ10 "УстановкаЦенНоменклатуры" отображала не табличную часть, а данные из таблицыЗначений, куда табличная часть была трансформирована. То же самое происходит и сейчас, примеров куча (например ЗУП) |
|||
16
lEvGl
29.05.24
✎
13:07
|
(15)
P.S. Даже во времена УТ10 "УстановкаЦенНоменклатуры" отображала не табличную часть, а данные из таблицыЗначений, куда табличная часть была трансформирована. Было такое, да. И меняло это табполе свои данные, то что в реквизите Данные указано. Я же и говорю, что меняет, то, данные чего отображает (ТЧ, ТЗ), а то что там потом трансформация происходит.. ну да и чего). Вобщем в ОФ связь между источником и ТП однозначная, предупреждая вопрос о колонках без данных - за исключением таких колонок |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |