Имя: Пароль:
1C
1С v8
Из поля справочника вызываю форму другого справочника, передаю
0 Ivan_495
 
25.10.16
16:04
Из поля справочника вызываю форму другого справочника, передаю параметры в эту формы, нажимаю кнопку записать . Открываю элемент поля в которые писал параметры пустые записалось только наименование?

&НаСервере
Функция ПолучитьПараметрыОткрываемойФормы()
      
   СтруктураПараметров = Новый Структура;
   СтруктураПараметров.Вставить("Н",Объект.Материал);
   СтруктураПараметров.Вставить("Р",Объект.Родитель);
   СтруктураПараметров.Вставить("М",Объект.Марка);
   СтруктураПараметров.Вставить("Е",Объект.ЕдИзм);
  

   Возврат СтруктураПараметров;
    
КонецФункции

&НаКлиенте
Процедура СоздатьЭлемент(Команда)
    пар=ПолучитьПараметрыОткрываемойФормы();
    ОткрытьФорму("Справочник.урскКлассификаторТМЦ.Форма.ФормаЭлементаУправляемая",пар);    

КонецПроцедуры
1 mikecool
 
25.10.16
16:06
нихрена не понял
а зачем за структурой на сервер бегать?
2 Ivan_495
 
25.10.16
16:08
(1) да хрен с ней со структурой вопрос не в том, почему данные не записываются?
3 Ivan_495
 
25.10.16
16:09
параметры в поля попадают
4 Ivan_495
 
25.10.16
16:09
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    Объект.Наименование=Параметры.Н;
    Объект.ПолноеНаименованиеМТР=Параметры.Н;
    Объект.Родитель=Параметры.Р;
    Объект.Марка_условноеОбозначение=Параметры.М;

КонецПроцедуры
5 Ivan_495
 
25.10.16
16:15
как правильно использовать для создания нового элемента справочника КлассификаторТМЦ ?
ОткрытьФорму("Справочник.КлассификаторТМЦ.Форма.ФормаЭлеме
нтаУправляемая",пар);
6 Ivan_495
 
25.10.16
16:16
как правильно использовать
ОткрытьФорму("Справочник.КлассификаторТМЦ.Форма.ФормаЭлеме
нтаУправляемая",пар);

для создания нового элемента справочника КлассификаторТМЦ ?
7 singlych
 
25.10.16
16:32
Если я правильно понял (0), то когда ты открываешь свой классификатор второй раз, у тебя опять отрабатывает (4), и твои поля опять заполняются из параметров, в которых на этот раз пустые значения.
8 Ivan_495
 
25.10.16
16:34
(7) точно , благодарю
9 Ivan_495
 
25.10.16
16:47
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)


    Если Параметры.Ключ.Пустая() = Истина тогда
    Попытка
    
    Объект.Наименование=Параметры.Н;
    Объект.ПолноеНаименованиеМТР=Параметры.Н;
    Объект.Родитель=Параметры.Р;
    исключение
КонецПопытки;
    КонецЕСли;


КонецПроцедуры
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший