Имя: Пароль:
1C
1С v8
Как при выборе счета назначить соответствующее субконто
,
0 Yafakir
 
03.08.11
10:07
Выбираю счет в Т.Ч. Нужно получить тип первого субконто этого счета в след столбце. И в каком обработчике лучше определять тип?
1 lxs
 
03.08.11
10:08
Типовые смотри.
2 Yafakir
 
03.08.11
10:35
Почему не срабатывает
СтрокаТЧ = ЭлементыФормы.СписокСчетов.ТекущиеДанные;
   Счет   = СтрокаТЧ.СчетДт;

   Если Счет.ВидыСубконто.Количество() > 0 Тогда
       СтрокаТЧ.СубконтоДт1 = Новый(Счет.ВидыСубконто[0].ВидСубконто.ТипЗначения.Типы()[0])
   Иначе
       СтрокаТЧ.СубконтоДт1 = Неопределено;
   КонецЕсли;

   ЭлементыФормы.СписокСчетов.Колонки.СубконтоДт1.Доступность = НЕ (НЕ ЗначениеЗаполнено(Счет) ИЛИ (Счет.ВидыСубконто.Количество() = 0));
3 Yafakir
 
03.08.11
10:36
Делаю в обработчике при изменении
4 unregistered
 
03.08.11
10:44
(0) В типовых в общем модуле БухгалтерскийУчет есть специальные процедуры УстановитьСубконто,  ОпределитьВидСубконтоПоСчету, УстановитьСубконтоПоВидуСубконто.

А вообще в твоем конкретном случае правильнее будет писать:

ТипСубконто1Счета = Счет.ВидыСубконто[0].ВидСубконто.ТипЗначения;
СтрокаТЧ.СубконтоДт1 = ТипСубконто1Счета.ПривестиЗначение(СтрокаТЧ.СубконтоДт1);

Если значение СубконтоДт1 уже установлено и соответствует допустимому типу для субконто1 счета, то оно останется неизменным, а если не соответствует, то будет получено пустое значение нужного типа (если тип субконто не составной) или Неопределено (если тип значения субконто составной).
5 Yafakir
 
03.08.11
10:55
(4) не пойму в чем дело. Просто открывается ПВХ виды субконто
6 Maxus43
 
03.08.11
10:56
конфа какая?
7 Господин ПЖ
 
03.08.11
10:56
>конфа какая?

правильный вопрос - "насколько прямые руки?"
8 unregistered
 
03.08.11
10:56
(5) Где открывается?

Что указано в качестве типа значения реквизита СубконтоДт1?

Подозреваю, что ПВХСсылка.ВидыСубконто А должно быть ХАРАКТЕРИСТИКАСсылка.ВидыСубконто
9 Maxus43
 
03.08.11
10:57
В типовых процедура:

   РаботаСДиалогами.ПриВыбореСчетаВТабличномПоле(Элемент.Значение,
   ТекущиеДанные.Субконто1,
   Колонки.Субконто1,
   ТекущиеДанные.Субконто2,
   Колонки.Субконто2,
   ТекущиеДанные.Субконто3,
   Колонки.Субконто3);

и не лохматьте бабушку
10 Axel2009
 
03.08.11
10:59
КолонкиТЧ["Субконто"].ЭлементУправления.ОграничениеТипа = Новый ОписаниеТипов(Счет.ВидыСубконто[0].ВидСубконто.ТипЗначения);
СтрокаТЧ["Субконто"] = ЭлементУправления.ОграничениеТипа.ПривестиЗначение(СтрокаТЧ["Субконто"])
11 Yafakir
 
03.08.11
11:04
(8) ты прав
Программист всегда исправляет последнюю ошибку.