Имя: Пароль:
1C
1С v8
Передача параметров в запись регистра сведений
0 IoannVic
 
03.09.15
12:12
Задача следующая. При интерактивном добавлении записи из формы списка, открывается форма записи. туда необходимо передать параметр. У справочника делаю такую штуку через ДополнительныеПараметрыСоздания. А у регистра в форме записи свойства ДополнительныеПараметры отчего-то нет. Никто просветить по этому поводу не сможет?
1 IoannVic
 
03.09.15
12:31
Вот что за беда в последнее время, как вопрос не касается геополитики и макроэкономики, так тишина под вопросом. напиши я тут про Украину тут умников бы понабежало. Превратили ИТ-форум в лавочку у подъезда.
В СП глянул для регистров отчего-то нет такого свойства, видимо пока не предвидится. Нашел только решение с помощью костыля через ЗначенияЗаполнения. Все это положил в событие ПередНачаломДобавления динамического списка

ЭлементыОтбора = Новый Структура("Договор", Параметры.Договор);
    ПараметрыФормы = Новый Структура("ЗначенияЗаполнения", ЭлементыОтбора);
    ОткрытьФорму("РегистрСведений.КР_ПараметрыДоговоровСНерезидентами.ФормаЗаписи", ПараметрыФормы);

А потом отлавливаю при СозданииНаСервере формы записи

Если Не ЗначениеЗаполнено(Запись.Договор) и Параметры.ЗначенияЗаполнения.количество()<>0 тогда
        Запись.Период = НачалоДня(ТекущаяДатаСеанса());
        Запись.Договор = Параметры.ЗначенияЗаполнения.Договор;
    КонецЕсли;

Может кому пригодится
2 Nuobu
 
03.09.15
12:32
(1) Назови его как угодно и отлавливай в параметрах.
3 IoannVic
 
03.09.15
12:35
(2) Зачем плодить лишние не ключевые параметры?
4 Nuobu
 
03.09.15
12:36
(3) Потому что если ты сделаешь такую штуку с документом, например, то отработает ОбработкаЗаполнения.
5 IoannVic
 
03.09.15
12:40
(4) С документом я сделаю ДополнительныеПараметрыСоздания
6 IoannVic
 
03.09.15
12:41
(4) Да и с документом мне просто не придется писать код при СозданииНаСервере у формы документа. Получу то же самое
7 Nuobu
 
03.09.15
12:44
(5) Я говорю о том, что если что-то не предусмотрено, то добавляй своё и не бойся.
А ты сделал каку.
Я, если захочу, чтобы форма записи открылась с заполненными определёнными измерениями, не смогу это сделать, если ты навесил свою обработку событий на стандартные реквизиты в параметре ЗначениеЗаполнения.
Мне придётся залезть в твой код и подпилить его.
8 Nuobu
 
03.09.15
12:45
Запись.Договор = Параметры.ЗначенияЗаполнения.Договор;
Вот эта строка лишняя.
9 IoannVic
 
03.09.15
12:49
(7) Так у Формы записи не срабатывает обработкаЗаполнения, в том то весь и прикол. Иначе просто эта строка была бы не нужна
Запись.Договор = Параметры.ЗначенияЗаполнения.Договор;

Без нее он не заполняет штатно как это работает со справочниками, документами и т.д.
10 Nuobu
 
03.09.15
13:05
(9) По поводу первого поста - согласен полностью.
11 Nuobu
 
03.09.15
13:07
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.