Имя: Пароль:
1C
1C 7.7
v7: Как в Formex получить только имена атрибутов многострочной части документа
0 GrayS19
 
31.03.21
09:12
Доброго дня.
Пытаюсь получить список колонок многострочной части документа для последующей раскраски.
Классическое описание из документации по Формексу:

    ФормаРасш = СоздатьОбъект("РасширениеФормы");
    ФормаРасш.УстановитьФорму(Форма);
    Для Х = 0 По ФормаРасш.КоличествоАтрибутов() - 1 Цикл
        текИД = ФормаРасш.ПолучитьАтрибут(Х).Идентификатор;
        текТип = ФормаРасш.ПолучитьАтрибут(Х).Тип;
    КонецЦикла;

позволяет получить все атрибуты формы. По какому признаку из них выделить только атрибуты многострочной части ?
1 Djelf
 
31.03.21
09:30
(0) У Атрибута МСЧ АтрибутФормы.Дескриптор=0
И еще вот так можно

    Для НомерКолонки=1 По РасширениеФормы.ПолучитьКоличествоКолонокМногострочнойЧасти() Цикл
        ШиринаКолонки    = РасширениеФормы.ПолучитьШиринуКолонки("МногострочнаяЧасть",НомерКолонки-1);
        ИндексКолонки    = РасширениеФормы.ПолучитьИндексКолонкиМногострочнойЧасти(НомерКолонки);
        Положение        = РасширениеФормы.ИзменитьПоложениеКолонкиМногострочнойЧасти(НомерКолонки,);
        Видимость        = РасширениеФормы.ПолучитьВидимостьКолонкиМногострочнойЧасти(НомерКолонки);
        ИДКолонки        = РасширениеФормы.ПолучитьИДКолонкиМногострочнойЧасти(НомерКолонки);
    КонецЦикла;
2 GrayS19
 
31.03.21
09:54
Большое человеческое спасибо. В документации по Formex - (эта самая цитируемая https://www.1cpp.ru/docum/html/FormEx.html) - не нашёл  ПолучитьКоличествоКолонокМногострочнойЧасти().

Сделал:

РасширениеФормы = СоздатьОбъект("РасширениеФормы");
РасширениеФормы.УстановитьФорму(Форма);
   Для НомерКолонки=1 По РасширениеФормы.ПолучитьКоличествоКолонокМногострочнойЧасти() Цикл
        ШиринаКолонки    = РасширениеФормы.ПолучитьШиринуКолонки("МногострочнаяЧасть",НомерКолонки-1);
        ИндексКолонки    = РасширениеФормы.ПолучитьИндексКолонкиМногострочнойЧасти(НомерКолонки);
        Положение        = РасширениеФормы.ИзменитьПоложениеКолонкиМногострочнойЧасти(НомерКолонки,);
        Видимость        = РасширениеФормы.ПолучитьВидимостьКолонкиМногострочнойЧасти(НомерКолонки);
        ИДКолонки        = РасширениеФормы.ПолучитьИДКолонкиМногострочнойЧасти(НомерКолонки);
        Сообщить("Колонка № " + НомерКолонки + " = " + ИДКолонки);
    КонецЦикла;

Сообщение об ошибке:

Для НомерКолонки=1 По РасширениеФормы.ПолучитьКоличествоКолонокМногострочнойЧасти() Цикл
{Документ.БыстраяПродажаДемо.Форма.Модуль(3349)}: Поле агрегатного объекта не обнаружено (ПолучитьКоличествоКолонокМногострочнойЧасти)
3 Djelf
 
31.03.21
10:03
Может старый Формекс? Я эти методы в коде нашел, а исходники АЛьФ давал в начале прошлого года.
4 GrayS19
 
31.03.21
11:20
(3)действительно, был 2.0.5.93 - он давал ошибку, сейчас 2.0.5.166 - отработал. Ещё раз большое спасибо.
5 Злопчинский
 
31.03.21
12:21
(4) ну так текущая уже 175 релиз..
6 tgu82
 
31.03.21
13:28
Полезная весчь
7 Arbuz
 
31.03.21
15:36
(2) На текущий момент документация на формекс, это в основном прилагаемый als-файл в комплекте актуальной версии.
8 GrayS19
 
31.03.21
15:47
(5) в кладовочке Альфа - http://dorex.pro/?projects&formex&download - 2.0.5.166 только
9 GrayS19
 
31.03.21
15:49
(7) спасибо
10 Arbuz
 
31.03.21
15:51
(8) Клюшки - они такие!
(3) А ещё что-нибудь недокументированное известно? Я понимаю, что можно получить/посмотреть все методы несколькими способами, но проще же спросить. (;
11 Злопчинский
 
31.03.21
15:53
(8) надо знать волшебное слово!
12 Arbuz
 
31.03.21
15:54
13 Злопчинский
 
31.03.21
15:54
(10) ну, в 1С++ есть недокументированное полезное...
14 Mikeware
 
31.03.21
15:56
(11) "бегомбля!"®?
(13) а что именно?
15 Arbuz
 
31.03.21
15:57
(13) Не соблаговолит ли уважаемый сударь быть чуть конкретнее чем доселе?
16 Злопчинский
 
31.03.21
15:59
(15) не саблаговолит ;-) мне самому рассказали. хз - может это ваще сакральное знание и озвучивать нельзя...
скорее всего все на форуме 1С++ есть.
17 Djelf
 
31.03.21
16:02
(10) Для этого в 1С++ существует объект - Информатор.
Он и выводит секретные методы...
18 GrayS19
 
31.03.21
16:03
(10) догадывался, что поискав среди 967 сообщений найду ссыль на новую версию, но да - ленив :)
19 GrayS19
 
31.03.21
16:04
(18) к (12)
20 Arbuz
 
31.03.21
16:30
(17) Дык, лень же, проще спросить. (ᵔᴥᵔ)