Имя: Пароль:
1C
 
Как проверить РЕКВИЗИТ регистра сведений?
,
0 MrBen
 
05.04.24
10:27
В общем нужно проверить заполненность именно реквизита РС.
2 Amra
 
05.04.24
10:32
Надо сделать над собой усилие и указать это в свойствах этого реквизита....
3 MrBen
 
05.04.24
10:35
(1) Я так понимаю никакой разницы от ресурса?
(2) не надо делать усилие надо сделать проверку в ПриЗаписи
4 Лирик
 
05.04.24
10:40
Свойство реквизита "ПроверкаЗаполнения" поставить в "Выдавать ошибку" не предлагать?
5 Amra
 
05.04.24
10:41
(4) В (3) же сказали уже что это не путь самурая, только код, только хардкор
6 MrBen
 
05.04.24
10:44
(5) Так надо! Буду плакать и колоться но продолжу кушать кактус
7 MrBen
 
05.04.24
10:44
(4) Увы рад бы но надо именно код!
8 Смотрящий
 
05.04.24
10:45
(3) Тормоза будут - выборка не по индексу пойдет
9 Адинэснег
 
05.04.24
10:50
если (2) не подошло и надо ПриЗаписи(), то обходом набора записей
Для Каждого ЗаписьНабора Из ЭтотОбъект Цикл
	//ЗначениеЗаполнено(ЗаписьНабора.Реквизит1)
КонецЦикла;
10 MrBen
 
05.04.24
11:02
(9) То самое. Работает как надо
11 yopQua
 
05.04.24
11:03
(9) если смотреть на вопрос как задан, без фантазий, то выдавать ошибку появилось с выходом 1С версии 8
12 yopQua
 
05.04.24
11:04
(10) как надо?
13 lodger
 
05.04.24
11:19
(10) ужос. есть же специальное ОбработкаПроверкиЗаполнения?
14 Лирик
 
05.04.24
12:59
(11) Так и регистры сведений появились там же
(9) а почему не ПередЗаписью()?
15 Лирик
 
05.04.24
13:02
(7) Если надо именно код можно так:
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
    Если ПроверяемыеРеквизиты.Найти(<ИмяРевизита>) = Неопределено Тогда
         ПроверяемыеРеквизиты.Добавить(<ИмяРевизита>);
    КонецЕсли;
КонецПроцедуры
16 Волшебник
 
05.04.24
13:11
(10) Вранье!
17 MrBen
 
10.04.24
09:12
(16)
Процедура ПередЗаписью(Отказ, Замещение)    
    НужноеЗначениеРеквизита = "НужноеЗначение";    
    Для Каждого ТекущаяЗапись Из ЭтотОбъект Цикл        
        ЕстьЗначениеРеквизита = ЗначениеЗаполнено(ТекущаяЗапись.Реквизит );        
        Если НЕ ЕстьЗначениеРеквизита Тогда         
            ТекущаяЗапись.Реквизит = НужноеЗначениеРеквизита;
        КонецЕсли;
    КонецЦикла;
КонецПроцедуры      

Вот что у меня получилось
(12) См. выше
(13) Не в этот раз
(14) сам именно там сделал мне было непонятно как проверить. А где писать и что писать я в курсе был тогда.
(15) см.выше
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн