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


1С:Предприятие :: 1С:Предприятие 7.7 и ранее

v7: Как узнать значение реквизита

v7: Как узнать значение реквизита
Я
   tmpnikl
 
21.01.13 - 11:26
Если ТекущийЭлемент().Выбран() = 1 Тогда
     Сообщить(ТекущийЭлемент().Наименование);
     Колво_Док=Метаданные.Документ();
     Для к1=1 по Колво_Док Цикл
        Сообщить("Идентификатор:"+Метаданные.Документ(к1).Идентификатор);
         Сообщить("Синоним:"+Метаданные.Документ(к1).Синоним);
         Колво_РШ=Метаданные.Документ(к1).РеквизитШапки();
         Для  к2=1 по Колво_РШ Цикл
             Сообщить(Метаданные.Документ(к1).РеквизитШапки(к2));
 // Вот здесь хотелось бы вывести значение реквизита Сообщить(Метаданные.Документ(к1).РеквизитШапки(к2).значение);
 
         КонецЦикла;        
     КонецЦикла;        
КонецЕсли;
 
 
   vinogradъ
 
1 - 21.01.13 - 11:27
значение реквизита какого объекта?
   Godofsin
 
2 - 21.01.13 - 11:28
сначала спозиционироваться на конкретном объекте
   Андрей_Андреич
 
3 - 21.01.13 - 11:28
ПолучитьАтрибут(<?>);
Синтаксис:
ПолучитьАтрибут(<ИмяРеквизита>)
Назначение:
Получить значение реквизита по имени идентификатора. Возвращает значение реквизита.
Параметры:
<ИмяРеквизита> - строковое выражение, содержащее имя реквизита, как оно задано в конфигураторе.
   tmpnikl
 
4 - 21.01.13 - 11:31
спасибо
   tmpnikl
 
5 - 21.01.13 - 11:37
Что-то пишет ошибка в выражении..
ПолучитьАтрибут(Метаданные.Документ(к1).РеквизитШапки(к2))
   dk
 
6 - 21.01.13 - 11:40
дык ты получитьатрибут должен применять к спозиционированному документу
либо в модуле самого документа выполнять
   Mikeware
 
7 - 21.01.13 - 11:40
(5)1986?
   tmpnikl
 
8 - 21.01.13 - 11:42
А если это модуль справочника, то как получить значение реквизита документа..
   tmpnikl
 
9 - 21.01.13 - 11:42
я не знаю чтозначит в вашем сленге 1986
   dk
 
10 - 21.01.13 - 11:44
(8) сам подумай хоть немного
вот в базе 10 000 документов, ты говоришь "хочу получить значение реквизита документа"
Спрашивается реквизит КАКОГО документа тебе 1 должна вернуть? )))
 
 Рекламное место пустует
   1Сергей
 
11 - 21.01.13 - 11:45
Метаданные - это структура документов, справочников etc. А тебе нужно спозиционироваться на конкретном объекте, заномером таким-то от такой-то даты
   Mikeware
 
12 - 21.01.13 - 11:49
(9) год рождения - 86?
   tmpnikl
 
13 - 21.01.13 - 11:54
Понял.., тогда переформулируем...Как можно построить цикл по всем значениям конкретного реквизита...
Для  к3=1 по Колво_значений(записей)этого документа Цикл

ПолучитьАтрибут(Метаданные.Документ(к1).РеквизитШапки(к2))

КонецЦикла;

Как правидьно надо спозиционировать...
   1Сергей
 
14 - 21.01.13 - 11:54
(13) либо запросом, либо выборкой всех документов
   dk
 
15 - 21.01.13 - 12:00
можно спозиционироваться на самом первом
Док = СоздатьОбъект("Документ." + Метаданные.Документ(к1).Идентификатор);
Если Док.ВыбратьДокументы() = 1 Тогда
       Сообщить("Идентификатор:"+Метаданные.Документ(к1).Идентификатор);
       Сообщить("Синоним:"+Метаданные.Документ(к1).Синоним);
       Колво_РШ=Метаданные.Документ(к1).РеквизитШапки();
       Для  к2=1 по Колво_РШ Цикл
             Сообщить(Метаданные.Документ(к1).РеквизитШапки(к2).Идентификатор);
             Сообщить(Док.ПолучитьАтрибут(Метаданные.Документ(к1).РеквизитШапки(к2).Идентификатор));
       КонецЦикла
КонецЕсли

   tmpnikl
 
16 - 21.01.13 - 12:05
спасибо.. а я пытался через Метаданные.Документ(к1).РеквизитШапки(к2).ВыбратьДокументы(), что приводило к ошибке...
   tmpnikl
 
17 - 21.01.13 - 12:07
Где-то, не помню точно, писали, чтоб пытались обходиться без команды "Создатьобъект", в каких случаях уже не помню...
   Mikeware
 
18 - 21.01.13 - 12:14
(16) в данном случае к ошибке приводило не это...
   tmpnikl
 
19 - 21.01.13 - 12:22
Ваш последующий ответ, уже можно догадаться.."не хватает мозгов..."
   1Сергей
 
20 - 21.01.13 - 12:40
(17) у тебя создатьобъектофобия?
   tmpnikl
 
21 - 21.01.13 - 12:50
нет е фобия, просто очередная стадия акцентуации
   Mikeware
 
22 - 21.01.13 - 12:54
(21) говори проще: "обострение"
:-))
   tmpnikl
 
23 - 21.01.13 - 12:57
На каком форуме поведёшься, того и наберёщься..., ладно пусть обострение, лишь бы не затупление...


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