Имя: Пароль:
1C
1С v8
Народ помогите плиз
0 koketka
 
06.09.11
08:33
1С 8.0. У меня документ. В документе табличная часть. В документной части поля "счетдебет""субконто1""субконто2""субконто3". У субконто составной тип данных (справочник документ перечисление)Субконто меняется в зависимости от счета
КредитыСчетДебетаПриИзменении(Элемент)
   Стр = ЭлементыФормы.Кредиты.ТекущиеДанные;
   
   Счет = Стр.СчетДебета;
   Если Счет.ВидыСубконто.Количество()>0 Тогда
       ТипСубк = Счет.ВидыСубконто[0].ВидСубконто.ТипЗначения;
       //                 Стр.Субконто1.ВыбиратьТип = ложь;
       Если ТипСубк.ПривестиЗначение(Стр.Субконто1)  <> Стр.Субконто1 Тогда
           Стр.Субконто1 = ТипСубк.ПривестиЗначение(Стр.Субконто1);
       КонецЕсли;
       //      Иначе Стр.Субконто1.Доступность = ложь;
   КонецЕсли;  
   Если Счет.ВидыСубконто.Количество()>1 Тогда
       ТипСубк = Счет.ВидыСубконто[0].ВидСубконто.ТипЗначения;
       //                 Стр.Субконто1.ВыбиратьТип = ложь;
       Если ТипСубк.ПривестиЗначение(Стр.Субконто2)  <> Стр.Субконто2 Тогда
           Стр.Субконто2 = ТипСубк.ПривестиЗначение(Стр.Субконто2);
       КонецЕсли;
   //    Иначе Стр.Субконто2.КнопкаВыбора = ложь;

       
   КонецЕсли;            
   Если Счет.ВидыСубконто.Количество()>2 Тогда
       // Субконто1 имеет индекс 0
       ТипСубк = Счет.ВидыСубконто[0].ВидСубконто.ТипЗначения;
       //                 Стр.Субконто1.ВыбиратьТип = ложь;
       Если ТипСубк.ПривестиЗначение(Стр.Субконто3)  <> Стр.Субконто3 Тогда
           Стр.Субконто3 = ТипСубк.ПривестиЗначение(Стр.Субконто3);
       КонецЕсли;
       // Иначе Стр.Субконто3.
       
   КонецЕсли;            
   
КонецПроцедуры
Если субконто у счета нет хочу чтобы кнопка выборка не работала. пробовала так
"Иначе Стр.Субконто2.КнопкаВыбора = ложь;"
выдает ошибку
"Значение не является значением объектного типа"
это ошибка из-за того что субконо1 неопределено
НО КАК ЗАКРЫТЬ ВЫБОР????
1 DJ Anthon
 
06.09.11
08:33
нужно это делать у элемента формы, а не у реквизита
2 DJ Anthon
 
06.09.11
08:36
Табличноеполе.Колонки.Субконто1.ЭлементУправления.Кнопкавыбора = Ложь

что-то типа этого
3 Wobland
 
06.09.11
08:36
не хватает женскости пола и резкости фотографии в личной карточке
4 koketka
 
06.09.11
08:37
что то я запуталась а как? просто только вышла из дикрета все позабывала!
5 unregistered
 
06.09.11
08:37
(0) Программировать не надо. Надо задать в свойствах у каждого элемента формы СубконтоN СвязьПоТипу - "ЭлементыФормы.ТабличноПолеМоегоДокумента.ТекущиеДанные.СчетДебет" ЭлементСвязиПоТипу - N
6 DJ Anthon
 
06.09.11
08:37
не дикрета, а декрета.


табличное поле называется Кредиты?
7 koketka
 
06.09.11
08:38
спасибо!!!!
8 Wobland
 
06.09.11
08:38
(4) д_е_крета. Если <НетСубконто: Счет.ВидыСубконто.Количество()> Тогда (2)