Имя: Пароль:
1C
1С v8
Как установить тип значения для реквизита неопределенного типа значения
0 Birmingem
 
01.08.12
19:42
Пытаюсь изучать 1С 8.2.
В моем документе ПКО есть реквизит КоррСчет (счет кредита проводки), при выборе которого нужно установить типы значения для реквизитов Субконто1, Субконто2, Субконто3 (аналитика КоррСчета, тип значения "Неопределенный" или как это в восьмерке называется). В семерке это делалось просто:

НазначитьТип("Субконто1",КоррСчет.ВидСубконто(1));

А как это сделать в восьмерке?
1 Ненавижу 1С
 
гуру
01.08.12
19:49
зачем собственно?
2 GROOVY
 
01.08.12
19:53
См. ПривестиЗначение
3 Birmingem
 
01.08.12
20:12
1) Чтобы пользователь в реквизитах СубконтоХ мог указать аналитику КоррСчета, которая пойдет в проводку.
2) Если не сложно, пример кода пожалуйста?
4 NcSteel
 
01.08.12
20:16
(0) Это делается на автомате, если конечно связь укажешь.
5 Birmingem
 
03.08.12
11:40
4) ого ... есть такая штука? а как указать связь?
6 Birmingem
 
07.08.12
16:02
Наваял такой код. Оцените пожалуйста. Что то сложновато получилось. Больше чем 3 строки на семерке :)

Наверняка можно улучшить, подскажите как?

  Для к=1 По 3 Цикл
      Если КоррСчет.ВидыСубконто.Количество()>=к Тогда
          ТипСубк = КоррСчет.ВидыСубконто[к-1].ВидСубконто.ТипЗначения;
          ЭлементыФормы.Найти("Субконто"+к).ВыбиратьТип = ложь;
          Если ТипСубк.ПривестиЗначение(ЭлементыФормы.Найти("Субконто"+к).Значение)  <> ЭлементыФормы.Найти("Субконто"+к).Значение Тогда
              ЭлементыФормы.Найти("Субконто"+к).Значение = ТипСубк.ПривестиЗначение(ЭлементыФормы.Найти("Субконто"+к).Значение);
          КонецЕсли;
      Иначе
          ЭлементыФормы.Найти("Субконто"+к).Значение = "";
      КонецЕсли;
  КонецЦикла;