Имя: Пароль:
1C
1C 7.7
v7: Установить значение реквизита справочника неопределенного типа
0 ChMikle
 
16.04.13
10:49
Задача : установить значение реквизита (неопределенного типа )создаваего элемента справочника из обработки
Как программно установить тип значения этого реквизита
Кусок кода :
СпрШаблон=СоздатьОбъект("Справочник.ШаблонВыгрузкиФинПланСтатейРасходов");

СпрШаблон.Новый();
СпрШаблон.СчетДТ=СчетДТ;
Если ПустоеЗначение(СубконтоДт1)=0 тогда
НазначитьВид(СпрШаблон.СубконтоДт1,СчетДТ.ВидСубконто(1));
СпрШаблон.СубконтоДт1=?(СубконтоДт1.Вид() ="Подразделения",СпрЦФО.Подразделение,СубконтоДт1);
КонецЕсли;
1 zak555
 
16.04.13
10:50
НазначитьВид(<?>,);
Синтаксис:
НазначитьВид(<Значение>,<Вид>)
Назначение:
Процедура НазначитьВид используется для установки значениям типа ''Документ неопределенного вида'', ''Справочник неопределенного вида'', ''Счет неопределенного вида'' конкретного вида. При этом, если существующее значение не соответсвует вновь установленному виду - то оно очищается.
Данная процедура может использоваться в сочетании с методом элемента формы НеИзменятьВид. Это возволяет регулировать программно собственно вид, а само значение предоставить выбирать пользователю интерактивно.
Параметры:
<Значение> - Значение типа документ/справочник/счет неопределенного вида - обычно реквизит документа, справочника или диалога формы.
<Вид> - строковое выражение - вид значения. Может быть задан строкой, содержащей идентификатор конкретного справочника, документа, плана счетов.
Вид субконто - вид значения может быть задан видом субконто, который имеет тип соответственно конкретного справочника, документа, счета.
2 ChMikle
 
16.04.13
10:52
(1) не срабатывает , открываю элемент - там пустоые значения этих реквизитов
3 zak555
 
16.04.13
10:52
ТипЗначенияСтр(СчетДТ.ВидСубконто(1)) <> "Строка"
4 ChMikle
 
16.04.13
10:53
(3)  это субконто
5 Bigbro
 
16.04.13
10:53
..вид().Наименование..
6 ChMikle
 
16.04.13
10:57
"ВидСубконто"
7 viktor_vv
 
16.04.13
10:58
НазначитьТип(СпрШаблон.СубконтоДт1,СчетДТ.ВидСубконто(1));
8 viktor_vv
 
16.04.13
10:58
(7)+ Для неопределенного типа.
9 ChMikle
 
16.04.13
10:59
(7) щас попробую
10 viktor_vv
 
16.04.13
11:01
Вернее так

СпрШаблон.НазначитьТип("СубконтоДт1",СчетДТ.ВидСубконто(1))
11 ChMikle
 
16.04.13
11:05
(10) щас набью код
12 ChMikle
 
16.04.13
11:06
да получилось, спасибо большое за помощь всем откликнувшимся !
13 zak555
 
16.04.13
11:13
(12) ты думаешь, что с (1) не вышло бы ?
14 viktor_vv
 
16.04.13
11:15
(13) Не уверен, но нваерное не получилось бы. Там в описании написано, что это для Документа или Справочника общего вида, а у него реквизит вообще неопределнного вида.
15 viktor_vv
 
16.04.13
11:19
И для реквизита с типом значения Документ или Справочник общего вида для присвоения необязательно усатанавливать конкретный вид, оно и так присвоится, а НазначитьВид() используется в этом случае , чтобы при выборе не появлялось окно выбора вида документа или справочника.
16 zak555
 
16.04.13
11:21
(14) точно неопределенный ?
17 viktor_vv
 
16.04.13
11:25
(16) Ну это надо у ТС уточнить, что он имел ввиду под

"установить значение реквизита (неопределенного типа )создаваего элемента справочника"
18 ChMikle
 
16.04.13
11:48
(16) Точно , точно :))