Имя: Пароль:
1C
1C 7.7
v7: Значение реквизита через атрибут формы
,
0 Злопчинский
 
29.11.12
22:54
Справочник. Форма элемента.
На форму в качестве реквизитов формы положены реквизиты справочника.
ПриЗаписи() хочу проверить заполнение
.
Процедура ПриЗаписи()

   СтрокаПредупреждение = "";
   
   КР = Метаданные.Справочник("ТранспортныеСредства").Реквизит();
   Для ы=1 По КР
   Цикл
       ИмяРеквизита = Метаданные.Справочник("ТранспортныеСредства").Реквизит(ы).Идентификатор;
       Синоним = Метаданные.Справочник("ТранспортныеСредства").Реквизит(ы).Синоним;
       Если ПустоеЗначение(Синоним)=1
       Тогда
           Синоним = ИмяРеквизита;
       КонецЕсли;    
       Если ПустоеЗначение(Форма.ПолучитьАтрибут(ИмяРеквизита))=1
       Тогда
           СтрокаПредупреждение = СтрокаПредупреждение + РазделительСтрок+Синоним;
       КонецЕсли;
   КонецЦикла;
   
   Если ПустоеЗначение(СтрокаПредупреждение)=1
   Тогда
       Возврат;
   КонецЕсли;

   Предупреждение("Не заполнены реквизиты: "+СтрокаПредупреждение+РазделительСтрок+РазделительСтрок+"Запись отменена...",30);
   СтатусВозврата(0);
   
КонецПроцедуры //ПриЗаписи()
.
Почему
Форма.ПолучитьАтрибут(ИмяРеквизита)=НеизвестныйОбъект
???
1 K-5
 
29.11.12
22:57
А атрибут точно выведен на форму?
2 Злопчинский
 
29.11.12
22:58
(1) да. Но сейчас еще проверяю упорно...
3 K-5
 
29.11.12
22:59
И чему равно значение ИмяРеквизита?
4 K-5
 
29.11.12
22:59
Код точно выводишь на форму?))
5 Злопчинский
 
29.11.12
23:00
(3) имени реквизита справочника...
6 Злопчинский
 
29.11.12
23:02
из табло:
ИмяРеквизита = "Марка"
Синоним = "Марка/тип"
Форма.ПолучитьАтрибут(ИмяРеквизита) = НеизвестныйОбъект
Форма.ПолучитьАтрибут("Марка")  = НеизвестныйОбъект
Марка = "PEUGEOT BOXER                 "
7 K-5
 
29.11.12
23:03
(5) понятно что имени.Добавь

Если ПустоеЗначение(Форма.ПолучитьАтрибут(ИмяРеквизита))=1
       Тогда
           Сообщить("Пусто "+строка(ИмяРеквизита));
           СтрокаПредупреждение = СтрокаПредупреждение + РазделительСтрок+Синоним;
       КонецЕсли;
8 Злопчинский
 
29.11.12
23:04
(7) Не получится...
но добавлю...
9 K-5
 
29.11.12
23:07
(8)  Ну как все реквизиты пустые ими нет?
10 Злопчинский
 
29.11.12
23:07
(7) по барабану...
т.к.
Форма.ПолучитьАтрибут(ИмяРеквизита) возвращает НеизвестныйОбъект
то ПустоеЗначение(Форма.ПолучитьАтрибут(ИмяРеквизита))=0
11 Злопчинский
 
29.11.12
23:08
(9) заполнены...
12 Злопчинский
 
29.11.12
23:09
блин... ау... люди... заклинило меня...
13 Тьма
 
29.11.12
23:19
14 Тьма
 
29.11.12
23:20
Если короче - юзай Шаблон
15 Злопчинский
 
29.11.12
23:23
Шаблон не потянет...
например если лежит числовой реквизит справочника в виде флажка и он выключен, то шаблон вернет строку "0", а нужно число 0
.
????
16 Злопчинский
 
29.11.12
23:28
(14) по ссылке понятно.. но как же это раньше у мен яработало..??? хз...
17 Злопчинский
 
29.11.12
23:34
Вопрос закрыт.