Имя: Пароль:
1C
1С v8
Вылетает 1с при изменении видимости элемента
,
0 daringer
 
28.03.13
11:59
Здравствуйте. Была немного переписанная УНФ 1.4.1.19, обновили на 1.4.5.25. По какой причине 1с может вылетать при изменении контрагента?
&НаСервере
Функция ПолучитьДанныеКонтрагентПриИзменении(Дата, ВалютаДокумента, Контрагент, Организация)
   
   ДоговорПоУмолчанию = ПолучитьДоговорПоУмолчанию(Объект.Ссылка, Контрагент, Организация, Объект.ВидОперации);
   
   СтруктураДанные = Новый Структура;
   
   СтруктураДанные.Вставить(
       "Договор",
       ДоговорПоУмолчанию
   );
       
   СтруктураДанные.Вставить(
       "ВалютаРасчетов",
       ДоговорПоУмолчанию.ВалютаРасчетов
   );
   
   СтруктураДанные.Вставить(
       "ВалютаРасчетовКурсКратность",
       РегистрыСведений.КурсыВалют.ПолучитьПоследнее(Дата, Новый Структура("Валюта", ДоговорПоУмолчанию.ВалютаРасчетов))
   );
   
   СтруктураДанные.Вставить(
       "ВидЦенКонтрагента",
       ДоговорПоУмолчанию.ВидЦенКонтрагента
   );
   
   СтруктураДанные.Вставить(
       "РасчетыВУсловныхЕдиницах",
       ДоговорПоУмолчанию.РасчетыВУсловныхЕдиницах
   );
   
   УстановитьВидимостьДоговора();
   
   Возврат СтруктураДанные;
   
КонецФункции // ПолучитьДанныеКонтрагентПриИзменении()

// Процедура устанавливает видимость договора в зависимости от установленного параметра контрагенту.
//
&НаСервере
Процедура УстановитьВидимостьДоговора()
   
   КонтрагентВестиРасчетыПоЗаказам = Объект.Контрагент.ВестиРасчетыПоЗаказам;
   Элементы.Договор.Видимость = Объект.Контрагент.ВестиРасчетыПоДоговорам; //здесь 1с вылетает.
   
КонецПроцедуры // УстановитьВидимостьДоговора()

На данный момент я просто закомментировал строку установки видимости элемента договор. Но проблема все равно не решена.
Еще вопрос в том что в новой версии унф не сохраняются настройки отчетов.Как с этим бороться?
1 Ёпрст
 
28.03.13
12:11
на сервере и элементы формы ?
2 daringer
 
28.03.13
12:16
Да. Это типовой код
3 hhhh
 
28.03.13
12:18
делайте на клиенте
4 daringer
 
28.03.13
12:21
я конечно понимаю что можно переделать на клиенте. Но все равно 1с не должна вылетать при изменении на сервере. Вопрос почему она может вылетать?
5 daringer
 
28.03.13
12:22
Может это связано как то с обновлением конфигурации? Я обновлял с приоритетом основной конфигурации, может структура нарушилась
6 Паланик
 
28.03.13
12:23
А вылетает молча или с виндовым сообщением?
7 daringer
 
28.03.13
12:24
С виндовым
8 daringer
 
28.03.13
12:24
завершение работы программы
9 daringer
 
28.03.13
12:26
я подозреваю что нарушена структура формы при переносе. К примеру в измененной форме договоре при выборе элемента формы в дереве элементов на форме помечается не тот элемент который я выбрал или цвет выделения серый
10 daringer
 
28.03.13
12:28
Но это все один вопрос. Если кто то пользовался отчетами в последенем релизе УНФ скажите, у вас тоже не сохраняются настройки отчета?
11 hhhh
 
28.03.13
12:34
(10) ну вы откройте конфигурацию поставщика и скопируйте нам эту процедуру

УстановитьВидимостьДоговора()

как у них там написано?
12 daringer
 
28.03.13
12:47
&НаСервере
Процедура УстановитьВидимостьДоговора()
   
   КонтрагентВестиРасчетыПоЗаказам = Объект.Контрагент.ВестиРасчетыПоЗаказам;
   Элементы.Договор.Видимость = Объект.Контрагент.ВестиРасчетыПоДоговорам;

   
КонецПроцедуры // УстановитьВидимостьДоговора()

это и есть из конфы поставщика
13 daringer
 
28.03.13
12:48
Сама фирма 1с меняет видимость на сервере. я ничего не менял