Имя: Пароль:
1C
1С v8
ОФ. Получить список реквизитов текущей формы
,
0 DirecTwiX
 
05.08.14
17:23
Метода Метаданные() не увидел..
1 Wobland
 
05.08.14
17:23
а ну и чо?
2 Лодырь
 
05.08.14
17:25
попкорн тащить? или вы по быстрому?
3 Timon1405
 
05.08.14
17:25
Внезапно

УправляемаяФорма (ManagedForm)
ПолучитьРеквизиты (GetAttributes)
Синтаксис:

ПолучитьРеквизиты(<Путь>)
Параметры:

<Путь> (необязательный)

Тип: Строка.
Указывает путь к родительскому реквизиту. Если параметр опущен или указана пустая строка, возвращаются реквизиты верхнего уровня.
Возвращаемое значение:

Тип: Массив.
Массив объектов РеквизитФормы.
Описание:

Получает описание реквизитов формы.

Доступность:

Сервер, мобильное приложение(сервер).
4 Wobland
 
05.08.14
17:26
(3) очень внезапно. была обычная, стала управляемой
5 Timon1405
 
05.08.14
17:28
(3)(4) ой извиняйте, прохлопал ОФ
6 ДенисЧ
 
05.08.14
17:28
ЭтаФорма.Элементы ?
7 Wobland
 
05.08.14
17:33
так себе вариант
8 acsent
 
05.08.14
17:34
именно реквизиты или элементы?
9 Lexey_
 
05.08.14
17:49
Если только так:
СтрокаФормы = ЗначениеВСтрокуВнутр(ЭтаФорма);
    
    выхХМЛТело = СтрЗаменить(СтрокаФормы,СИМВОЛЫ.ПС,"");
    выхХМЛТело = СтрЗаменить(выхХМЛТело,СИМВОЛЫ.ВК,"");
    выхХМЛТело = СтрЗаменить(выхХМЛТело,",","</data><data>");
    выхХМЛТело = СтрЗаменить(выхХМЛТело,"{","<elem><data>");
    выхХМЛТело = СтрЗаменить(выхХМЛТело,"}","</data></elem>");
    выхХМЛТело = СтрЗаменить(выхХМЛТело,"<data><elem>","<elem>");
    XMLСтрокаФормы = СтрЗаменить(выхХМЛТело,"</elem></data>","</elem>");
    
    ЧтениеXML = Новый ЧтениеXML;
    ЧтениеXML.УстановитьСтроку(XMLСтрокаФормы);
    ПостроительDOM = Новый ПостроительDOM;
    ДокументDOM = ПостроительDOM.Прочитать(ЧтениеXML);
    
    РазыменовательПИ = Новый РазыменовательПространствИменDOM(ДокументDOM);
    СтрокаXPath = "/elem[1]/elem[1]/elem[2]/elem[2]/elem/data[4]/text()";
    РезультатXPath = ДокументDOM.ВычислитьВыражениеXPath(СтрокаXPath, ДокументDOM,
    РазыменовательПИ, ТипРезультатаDOMXPath.НеупорядоченныйИтераторУзлов);
    Пока 1 = 1 Цикл
        Узел = РезультатXPath.ПолучитьСледующий();
        Если Узел = Неопределено Тогда
            Прервать;
        КонецЕсли;
        Текст = Узел.ТекстовоеСодержимое;
        Длина = СтрДлина(Текст);
        Текст = Сред(Текст, 2, Длина - 2);
        Сообщить(Текст);
    КонецЦикла;
10 Лодырь
 
05.08.14
17:51
(9) Мсье знает толк в извращениях!
11 Lexey_
 
05.08.14
17:51
(10) а других вариантов нет
12 Лодырь
 
05.08.14
17:53
(11) Это я уважительно, хитро придумано
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс