|
Как добавить строку в табличное поле и заполнить ее данными? | ☑ | ||
|---|---|---|---|---|
|
0
Владислав
31.10.06
✎
06:44
|
есть внешняя обработка, у нее есть табличная часть, когда я размещаю табличную часть на форме получается Табличное поле, где в данных написано имя Табличной части, а в значении - ВнешняяОбработка.... я создал четыре колонки интерактивно, а добавить строки не могу, как это сделать, вроде все по книжке делаю, а все равно не выходит.
вот код: тч=ЭлементыФормы.тзТабличнаяЧасть тч.ДобавитьСтроку(); тч.ДобавитьСтроку(); тч.ДобавитьСтроку(); тч.ДобавитьСтроку(); тч.ДобавитьСтроку(); ни одна строка не добавляется, |
|||
|
1
ТелепатБот
гуру
31.10.06
✎
06:44
|
||||
|
2
Владислав
31.10.06
✎
06:51
|
еще варианты будут?
|
|||
|
3
TormozIT
гуру
31.10.06
✎
06:53
|
|
|||
|
4
Владислав
31.10.06
✎
06:54
|
(3) пишет "Значение не является значением объектного типа (кВид)" кВид - это ижентификатор колонки
|
|||
|
5
Владислав
31.10.06
✎
06:54
|
идентификатор ;))
|
|||
|
6
Tristan
31.10.06
✎
06:57
|
я конечно затрудняюс сказать что это: "а в значении - ВнешняяОбработка", если это имеется ввиду поле "Тип значения", то там должно стоять как минимум ТаблицаЗначений. И то что в 0 будет работать.
|
|||
|
7
Владислав
31.10.06
✎
06:59
|
(6) я согласен, тогда скажите как мне поступить: есть табличная часть, мне нужно разместить ее на форме и заполнить некоторыми данными перед открытием.
|
|||
|
8
Tristan
31.10.06
✎
07:01
|
(7) улыбнуло =) Перед открытием табличной части не существует, если она не реквизит обработки, используй процедуру ПриОткрытии, или объяви ее реквизитом обработки
|
|||
|
9
Zlodey-Drive
31.10.06
✎
07:03
|
Процедура ПриОткрытии()
Для каждого СтрокаМетаданное Из Метаданные.Документы Цикл Если Строка(СтрокаМетаданное.Проведение) = "Разрешить" Тогда НоваяСтрока = ТаблицаДокументы.Добавить(); НоваяСтрока.Представление = СтрокаМетаданное.Синоним; НоваяСтрока.ИмяДокумента = СтрокаМетаданное.Имя; НоваяСтрока.Выводить = Истина; Если СтрокаМетаданное.Реквизиты.Найти("Контрагент") <> Неопределено И СтрокаМетаданное.Реквизиты.Найти("Договор") <> Неопределено Тогда НоваяСтрока.ЕстьДоговор = Истина; Иначе НоваяСтрока.ЕстьДоговор = Ложь; КонецЕсли; КонецЕсли; КонецЦикла; ОстанавливатьсяПоОшибке = Истина; КонецПроцедуры внешняя обработка проведения документов, есть таб поле ТаблицаДокументы вней выводятсы все доки |
|||
|
10
Tristan
31.10.06
✎
07:04
|
(9) да (0) просто пытался на форме сделать что-то до открытия формы
|
|||
|
11
Владислав
31.10.06
✎
07:05
|
(10) я пытаюсь заполнить ТЧ в процедуре ПриОткрытии()
|
|||
|
12
Zlodey-Drive
31.10.06
✎
07:06
|
(11) Чем хочешь заполнить та
|
|||
|
13
Владислав
31.10.06
✎
07:07
|
в одной колонке данные строкового типа, в трех - Число
|
|||
|
14
Zlodey-Drive
31.10.06
✎
07:10
|
Откуда ты их берешь
|
|||
|
15
Владислав
31.10.06
✎
07:12
|
(14) ни откуда, просто нужно заполнить 15 строк значениями, без цикла, т.е. для каждой строки вручную нужно установить значения
|
|||
|
16
Владислав
31.10.06
✎
07:42
|
1С 8.0 уже далеко не первый день существует, нежуели никто не знает?
|
|||
|
17
Zlodey-Drive
31.10.06
✎
07:43
|
Процедура ПриОткрытии()
// Вставить содержимое обработчика. Для i=1 По 15 Цикл НоваяСтрока = Пример.Добавить(); новаястрока.Колонка1=" "; новаястрока.Колонка2=" "; новаястрока.Колонка3=" "; новаястрока.Колонка4=" "; КонецЦикла; КонецПроцедуры первая колонка тип данных строка, остальные число |
|||
|
18
Владислав
31.10.06
✎
07:44
|
(17) а Пример это что, имя Табличного поля?
|
|||
|
19
Zlodey-Drive
31.10.06
✎
07:44
|
Да
|
|||
|
20
Владислав
31.10.06
✎
07:48
|
у него же нет метода Добавить(), есть ДобавитьСтроку()
|
|||
|
21
it086
31.10.06
✎
07:54
|
метод Добавить() есть у табличной части или у таблицы значений. Зачем добавлять строки в табличное поле? Лучше сразу в источник данных для этого таб.поля.
|
|||
|
22
Владислав
31.10.06
✎
08:04
|
обращаясь к табличной части МояТабличнаяЧасть методом Добавить удалось добавить строки, it086 большое спасибо, теперь эти строки нужно заполнить данными, попробовал тремя способами:
НоваяСтрока=МояТабличнаяЧасть.Добавить(); НоваяСтрока.кВид="Б"; , МояТабличнаяЧасть.Добавить(); МояТабличнаяЧасть.кВид="Б"; , МояТабличнаяЧасть.Добавить(); МояТабличнаяЧасть["кВид"]="Б"; все варианты не работают |
|||
|
23
it086
31.10.06
✎
08:07
|
табличная часть должна содержать соответствующие реквизиты (не путайте с колонками таб.поля)
|
|||
|
24
Владислав
31.10.06
✎
08:08
|
точно
|
|||
|
25
Владислав
31.10.06
✎
08:11
|
it086 спасибо большое, все получилось
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |