Вход | Регистрация


1С:Предприятие ::

Метки: 

количество реквизитов в документе

Я
   Term2
 
11.03.04 - 10:50
Как получить количество реквизитов в документе?
Пробую
КолРек=Метаданные.Документ(ДокВид).Реквизит();
Выдает ошибку поле агрегатного объекта не обнаружено
 
  Рекламное место пустует
   GrayT
 
1 - 11.03.04 - 10:54
Реквизиты шапки бывают и Табличной части
РеквизитШапки() и РеквизитТабличнойЧасти()
   Кое-кто@где-то.там
2 - 11.03.04 - 11:05
... + ОбщийРеквизитДокумента()
   Term2
 
3 - 11.03.04 - 11:07
Почему-то в синтаксис-помощнике об этом ничего нет. Кто-нибудь дайте ссылку, где это есть :)
   SnarkHunter
 
4 - 11.03.04 - 11:14
(3)Хочешь новость? Синтаксис-помощника тоже нету...
   Term2
 
5 - 11.03.04 - 11:17
Синтакс-помощник, опячатка подумаешь
   Кое-кто@где-то.там
6 - 11.03.04 - 11:18
Справочный файл "Синтакс-помощника" по метаданным от Моисеенко П.П. (редакция от декабря 2002 г.)
http://www.sinor.ru/%7Efilez/meta.zip
   Term2
 
7 - 11.03.04 - 11:37
(6) А как его установить? Просто скопировать в папку с 1с?
   Кое-кто@где-то.там
8 - 11.03.04 - 11:39
В каталог Bin
   BorisG
 
9 - 11.03.04 - 11:42
(8) Ну ты еще добавь, что это pit... он же 345, он же 327...
   Рупор абсурда
 
10 - 11.03.04 - 11:49
(9) А давайте ему за мета.алс звезду дадим и ругаться разрешим тут?
 
  Рекламное место пустует
   BorisG
 
11 - 11.03.04 - 12:10
(10) Мне и мои то дали не спросив, надо написать, чтоб убрали.
   Term2
 
20 - 12.03.04 - 04:14
РекШ = Метаданные.Документ(ДокРеал).РеквизитШапки();
РекТ = Метаданные.Документ(ДокРеал).РеквизитТабличнойЧасти() ;
Для Рек = 1 по РекШ Цикл
Атр = ДокТам.ПолучитьАтрибут(Метаданные.Документ(ДокРеал).РеквизитШапки(Рек).Идентификатор);
Сообщить (Атр);                
КонецЦикла;

В результате сообщает все атрибуты и срузу же аварийно вываливается. При следующем запуске просит проиндексировать таблицы. Что за ерунда такая?
   Term2
 
21 - 12.03.04 - 08:32
Ну ни чё я глючный кодик написал, сразу на 20 место попал вместо 12.
   327
22 - 12.03.04 - 08:56
Задрал ты уже

вот это работает
Процедура Сформировать()   
    
   // Док - реквизит формы обработки. 

   // тип - документ  

   // выбирается вручную любой документ 

    
   // это - для простоты примера 

    
    if Док.Selected() <> 1 then
        DoMessageBox ("Бурундук - птиса... Пшел ХХХХХ крылья искать"); 
        return;
    endIf; 
    
    
    for Индекс = 1 to Metadata.Document(Док.Kind()).HeadAttribute() do
        Message ("========================разделитель==="); //  реквизитшапки

        Message ("Наименование реквизита "+Metadata.Document(Док.Kind()).HeadAttribute(Индекс).Identifier);  
        if EmptyValue(Док.GetAttrib(Metadata.Document(Док.Kind()).HeadAttribute(Индекс).Identifier)) = 1 then
            Message ("Реквизит не заполнен");
        else
            Message ("Значение реквизита "+Док.GetAttrib(Metadata.Document(Док.Kind()).HeadAttribute(Индекс).Identifier));
        endIf; 
    endDo; 
КонецПроцедуры
   Term2
 
23 - 12.03.04 - 09:28
И все равно не работает.
В строке
if EmptyValue(Док.GetAttrib(Metadata.Document(Док.Kind()).HeadAttribute(Индекс).Identifier)) = 1 then

что такое Kind() ?
   GrayT
 
24 - 12.03.04 - 10:49
(23)Все работает. Kind() = Вид(). Включи в синтакс-помощнике оба языка
   ПРосто Гений
25 - 02.09.04 - 16:14
Одежда для спорта и активного отдыха !
NORMANN - восторг заразителен !
NORMANN - представляет свою продукцию - комфортную и уютную,
качественную и недорогую одежду для спорта и активного отдыха.
Спешите NORMANN - уже в Москве !
наши цены Вас приятно удивят - лучшее предложение недели.
www.normann-es.ru
   Фокусник
 
26 - 02.09.04 - 18:43
(25)
Ну ты гений...



Список тем форума
  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует