|
Обращение к программно созданной колонке в ТЧ | ☑ | ||
---|---|---|---|---|
0
Letuchiy Gollandets
22.03.13
✎
01:16
|
Коллеги, такая проблема:
1. Сначала я программно создал 31 колонку в табличной части (ТЧ была создана в конфигураторе, также как и две колонки) с именами Реквизит1, Реквизит2,...,Реквизит31 2. после того, как ТЧ вместе с программно созданными колонками удачно отобразилась на управляемой форме, я пытаюсь передать значения, введенные интерактивно пользователями в другую ТЧ. Но при этом не могу "обратиться" к тем колонкам, которые были созданы программно. Вот код, что я делаю неправильно? Итого=0; Для к=1 по 31 Цикл ИскомаяСтрока=СписокСотрудников[с-1]; //СписокСотрудников - это ТЧ ЗначениеКолонки=ИскомаяСтрока["Реквизит"+к]; Итого=Итого+ЗначениеКолонки; КонецЦикла; Программа ругается на до, что поля "Реквизит1" нет ( |
|||
1
hhhh
22.03.13
✎
02:09
|
точно в ТЧ создавали колонки? Может в табличном поле?
|
|||
2
DirecTwiX
22.03.13
✎
02:30
|
Стесняюсь спросить.. Зачем это могла понадобиться???
Вспомнил, как сапёра писал в 1С.. |
|||
3
DirecTwiX
22.03.13
✎
02:31
|
Показывай как создавал
|
|||
4
Wobland
22.03.13
✎
06:07
|
(0) обращаешься к несуществующему полю. с уважением, ваш К.О.
|
|||
5
Капитан О
22.03.13
✎
06:11
|
ну нельзя программно колонки у ТЧ делать. автор врёт
|
|||
6
Web00001
22.03.13
✎
07:40
|
(5) Тоже очень долго рассматривал СП, http://take.ms/Jhb0JV так и не понял а как? Как автор создал колонки у ТЧ программно?
|
|||
7
Wobland
22.03.13
✎
07:47
|
(6) может, внешнюю приблуду написал, которая метаданные правит
|
|||
8
Михаил 1С
22.03.13
✎
07:47
|
(5), (6) "Как автор создал колонки у ТЧ программно?"
Я тоже недоумеваю. Думаю, просто ошибся, с кем не бывает. |
|||
9
Wobland
22.03.13
✎
08:03
|
(8) поди пойми его с такой ошибкой
|
|||
10
Letuchiy Gollandets
22.03.13
✎
10:46
|
Коллеги, вот код, которым программно создаю колонки:
ТипыРеквизита=Новый Массив; ТипыРеквизита.Добавить(Тип("Число")); ОписаниеТиповДляРеквизита=Новый ОписаниеТипов(ТипыРеквизита, Новый КвалификаторыЧисла(2,0)); Д1=День(Объект.ДатаС); Д2=Д1+((Объект.ДатаПо-Объект.ДатаС)/(24*60*60)); Для с=Д1 по Д2 цикл; ДобавляемыеРеквизиты=Новый Массив; НовыйРеквизит=новый РеквизитФормы("Реквизит"+с,ОписаниеТиповДляРеквизита,"Объект.СписокСотрудников",с,истина); ДобавляемыеРеквизиты.Добавить(НовыйРеквизит); ИзменитьРеквизиты(ДобавляемыеРеквизиты); НовыйЭлемент=Элементы.Добавить("Реквизит"+с,Тип("ПолеФормы"),Элементы.СписокСотрудников); НовыйЭлемент.ПутьКДанным="Объект.СписокСотрудников"+"."+"Реквизит"+с; НовыйЭлемент.Вид=ВидПоляФормы.ПолеВвода; НовыйЭлемент.Заголовок=С; КонецЦикла; Когда дело доходит до того кода, который я описал вначале, то программа действительно "не видит" программных колонок - это и есть мой вопрос - почему? ведь они то уже программно созданы...! |
|||
11
Letuchiy Gollandets
22.03.13
✎
10:48
|
"СписокСотрудников" - это в конфигураторе созданная табличная часть..
|
|||
12
Wobland
22.03.13
✎
10:50
|
(11) с колонками типа РеквизитН, разумеется ;)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |